1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp: Nghiên cứu mô hình đa tác tử hút và đẩy cho phương pháp lọc cộng tác

61 8 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 61
Dung lượng 2,46 MB

Nội dung

Đề tài nghiên cứu lý thuyết về hệ tư vấn và phương pháp lọc cộng tác; lý thuyết về tác tử, hệ thống đa tác tử, mô hình đa tác tử hút và đẩy; đề xuất mô hình đa tác tử hút và đẩy cho hướng tiếp cận lọc cộng tác; nghiên cứu các công cụ, kỹ thuật, nền tảng lập trình được sử dụng để xây dựng hệ thống.

i i Khoá luận tốt nghiệp MỤC LỤC LỜI CẢM ƠN i MỤC LỤC ii DANH MỤC HÌNH ẢNH v DANH MỤC CÁC TỪ VIẾT TẮT vii PHẦN MỞ ĐẦU Tính cấp thiết đề tài Mục tiêu, nhiệm vụ, đối tượng nghiên cứu Phạm vi nghiên cứu 10 Phương pháp nghiên cứu 10 Kết cấu đề tài 11 Chương 1: TỔNG QUAN VỀ HỆ TƯ VẤN VÀ PHƯƠNG PHÁP LỌC CỘNG TÁC 12 1.1 Tổng quan hệ tư vấn 12 1.1.1 Giới thiệu hệ tư vấn 12 1.1.2 Chức hệ tư vấn 14 1.1.3 Các thông tin sử dụng hệ tư vấn 17 1.1.4 Các hướng tiếp cận hệ tư vấn 19 1.1.5 Phương pháp đánh giá hệ tư vấn 21 1.2 Phương pháp lọc cộng tác 22 1.2.1 Tổng quan 22 1.2.2 Lọc cộng tác dựa láng giềng 23 Sinh viên thực hiện: Nguyễn Minh Đức ii Khoá luận tốt nghiệp Chương 2: MƠ HÌNH ĐA TÁC TỬ HÚT VÀ ĐẨY CHO PHƯƠNG PHÁP LỌC CỘNG TÁC 26 2.1 Lý thuyết tác tử hệ thống đa tác tử 26 2.1.1 Tác tử 26 2.1.2 Hệ thống đa tác tử 29 2.2 Mơ hình đa tác tử sử dụng lực hút đẩy 32 2.2.1 Mơ hình đa tác tử cho phân loại email 32 2.2.2 Mô hình đa tác tử cho tìm kiếm ảnh 33 2.3 Mơ hình đa tác tử hút đẩy cho phương pháp lọc cộng tác 34 2.3.1 Tổng quan mơ hình 34 2.3.2 Lực hút đẩy mơ hình 38 2.3.3 Mơ hình tự tổ chức 41 Chương 3: HỆ THỐNG THỬ NGHIỆM TƯ VẤN PHIM SỬ DỤNG MƠ HÌNH ĐA TÁC TỬ HÚT VÀ ĐẨY 43 3.1 Giới thiệu hệ thống tư vấn 43 3.1.1 Mô tả toán 43 3.1.2 Mô tả liệu MovieLens 43 3.1.3 Ưu, nhược điểm liệu MovieLens 45 3.2 Ngơn ngữ lập trình Objective-C thư viện đồ hoạ OpenGL 46 3.2.1 Ngôn ngữ lập trình Objective-C 46 3.2.2 Thư viện đồ hoạ OpenGL 47 3.3 Cài đặt hệ thống 49 3.3.1 Các yếu tố đầu vào 49 3.3.2 Các yếu tố đầu 50 Sinh viên thực hiện: Nguyễn Minh Đức iii Khố luận tốt nghiệp 3.3.3 Quy trình hoạt động 50 3.4 So sánh, đánh giá mơ hình đa tác tử hút đẩy với phương pháp lọc cộng tác 58 KẾT LUẬN 60 DANH MỤC TÀI LIỆU THAM KHẢO 61 Sinh viên thực hiện: Nguyễn Minh Đức iv Khố luận tốt nghiệp DANH MỤC HÌNH ẢNH Hình 1.1 Hệ tư vấn trang web www.amazon.com 13 Hình 1.2 Ma trận đánh giá người dùng 18 Hình 1.3 Tư vấn dựa lọc cộng tác dựa nội dung 20 Hình 1.4 Hệ thống tư vấn lọc cộng tác trang web www.amazon.com 22 Hình 1.5 Lọc cộng tác dựa người dùng dựa sản phẩm 25 Hình 2.1 Tác tử tương tác với mơi trường 27 Hình 2.2 Mơ hình đa tác tử hút đẩy cho phân loại email 33 Hình 2.3 Mơ hình đa tác tử hút đẩy cho tìm kiếm ảnh 34 Hình 2.4 Khơng gian mơ hình 35 Hình 2.5 Mơi trường tác tử 36 Hình 2.6 Quản lý lực qn tính mơ hình 36 Hình 2.7 Các cách chọn láng giềng 37 Hình 2.8 Tính chất lực độ mạnh lực dựa độ tương tự khoảng cách (cách tiếp cận rời rạc) 39 Hình 2.9 Tính chất lực độ mạnh lực dựa độ tương tự khoảng cách (cách tiếp cận liên tục) 39 Hình 2.10 Ví dụ phản ứng tác tử với hai láng giềng 40 Hình 3.1 Ngơn ngữ lập trình Objective-C 46 Hình 3.2 Thư viện đồ họa OpenGL 48 Hình 3.3 Ảnh đại diện phim / tác tử 49 Hình 3.4 Sơ đồ quy trình hoạt động 50 Sinh viên thực hiện: Nguyễn Minh Đức v Khoá luận tốt nghiệp Hình 3.5 Cách quản lý lưới mơ hình 52 Hình 3.6 Thuật tốn chọn láng giềng lân cận 53 Hình 3.7 Mơ hình mức độ địa phương 54 Hình 3.8 Mơ hình mức độ tồn cục 55 Hình 3.9 Thuật tốn tính giá trị dự đốn 57 Hình 3.10 Danh sách tư vấn phim 57 Hình 3.11 Biểu đồ biểu diễn kết MAE liệu kiểm tra 58 Hình 3.12 Biểu đồ biểu diễn kết MAE hai phương pháp 59 Sinh viên thực hiện: Nguyễn Minh Đức vi Khoá luận tốt nghiệp DANH MỤC CÁC TỪ VIẾT TẮT CF : Collaborative filtering – Lọc cộng tác MAE : Mean Absolute Error – Sai số tuyệt đối trung bình MAM : Multi-Agents System – Hệ thống đa tác tử RMSE : Root Mean Squared Error – Sai số bình phương trung bình Sinh viên thực hiện: Nguyễn Minh Đức vii Khố luận tốt nghiệp PHẦN MỞ ĐẦU Tính cấp thiết đề tài Trong kỷ nguyên bùng nổ thơng tin, internet với tiện ích có ảnh hưởng lớn cộng đồng sử dụng mạng Với lượng thông tin khổng lồ, nhu cầu người dùng ngày tăng thêm, người dùng cần có tư vấn xác kịp thời để tìm kiếm thơng tin cách nhanh chóng tiết kiệm thời gian cách tối đa Có nhiều hệ tư vấn áp dụng website thuộc lĩnh vực sách, âm nhạc, phim ảnh,… Tuy nhiên, sống lại phong phú lĩnh vực nhu cầu lớn yêu cầu đặt cũng sẽ phải cao nhiều Khi người dùng cần tìm kiếm thơng tin sản phẩm đó, giải pháp sử dụng hầu hết đưa câu hỏi vào máy tìm kiếm thay tìm đến website/forum chuyên ngành Tuy nhiên, máy tìm kiếm khơng phải lúc cũng hiệu Máy tìm kiếm chỉ đưa danh sách lựa chọn (có thể lên đến hàng triệu) khơng thể nói lựa chọn tốt Chẳng hạn, khách hàng cần mua đĩa phim hay, họ cần vài tên để tham khảo lựa chọn, đa số họ sẽ vào Google tìm kiếm thơng tin với lượng thơng tin loại phim q phong phú, lại khơng có nhiều thời gian để tìm hiểu từng kết đề xuất, họ khó lịng tìm số lượng phim định cũng loại phim vừa ý, sở thích Lúc này, họ cần tư vấn Hệ tư vấn đời điều tất yếu để đáp ứng nhu cầu người Trong kỹ thuật dùng phương pháp lọc cộng tác kỹ thuật phổ biến hệ tư vấn Các hệ thống sử dụng phương pháp biểu diễn người sử dụng vectơ sở thích m chiều, chiều tương ứng với sản phẩm (một điểm du lịch, hàng, sách,…) Hệ thống sẽ tư vấn cách lọc người sử dụng có sở thích gần với người cần tư vấn Những sản phẩm họ thích mà người cần tư vấn chưa bình chọn sẽ sản phẩm chọn để tư vấn Nếu đặt không gian tốn học tốn lọc người sử dụng có sở thích gần giống Sinh viên thực hiện: Nguyễn Minh Đức Khoá luận tốt nghiệp tốn tính khoảng cách vectơ sở thích m chiều Mặc dù đạt số hiệu định, kỹ thuật tồn nhiều hạn chế vấn đề thưa thớt thay đổi liệu, cũng độ phức tạp tính tốn thời gian Kỹ thuật sử dụng tác tử thông minh (agent) xem giải pháp hữu hiệu nhằm giải hạn chế nói trên, đồng thời đảm bảo cung cấp lời tư vấn xác có giá trị, đặc biệt nguồn liệu đầu vào hỗn tạp Nghiên cứu Cao Hồng Huệ cộng [4] hệ thống tìm kiếm truy hồi ảnh sử dụng mơ hình đa tác tử hút đẩy Hệ thống nhằm mục đích tổ chức ảnh không gian chiều dựa độ tương tự, ảnh biểu diễn tác tử không cần phải xác định trục cũng cách để biểu diễn thơng tin Mơ hình cho phép tác tử tự động tổ chức cách có chọn lọc khơng gian chiều Với khơng q nhiều ràng buộc, hệ thống tổ chức (gom cụm/phân lớp) thông tin cho phép người dùng tương tác với Trong đề tài này, tác giả sẽ giữ ý tưởng việc sử dụng tác tử với lực hút đẩy nghiên cứu nói nhằm tổ chức liệu không gian chiều nghiên cứu để áp dụng mơ hình đa tác tử hút đẩy thay cho hướng tiếp cận lọc cộng tác Xuất phát từ tầm quan trọng hệ tư vấn hoàn chỉnh, tồn phương pháp lọc cộng tác vấn đề cấp thiết quan trọng nên tác giả định chọn: “Nghiên cứu mơ hình đa tác tử hút đẩy cho phương pháp lọc cộng tác” làm hướng nghiên cứu cho đề tài Mục tiêu, nhiệm vụ, đối tượng nghiên cứu  Mục tiêu nghiên cứu - Lý thuyết hệ tư vấn phương pháp lọc cộng tác - Lý thuyết tác tử, hệ thống đa tác tử, mô hình đa tác tử hút đẩy - Đề xuất mơ hình đa tác tử hút đẩy cho hướng tiếp cận lọc cộng tác - Nghiên cứu công cụ, kỹ thuật, tảng lập trình sử dụng để xây dựng hệ thống Sinh viên thực hiện: Nguyễn Minh Đức Khoá luận tốt nghiệp - Xây dựng hệ thống thử nghiệm tư vấn phim sử dụng mô hình đa tác tử hút đẩy đề xuất - So sánh, đánh giá mơ hình đa tác tử hút đẩy với phương pháp lọc cộng tác  Nhiệm vụ nghiên cứu Để đạt mục đích nghiên cứu nêu trên, đề tài tập trung giải nhiệm vụ chủ yếu sau: Về mặt lí luận: 1) Phân tích, tổng hợp kiến thức hệ tư vấn bảo đảm tính logic, đầy đủ, xác; 2) Giải thích vấn đề liên quan đến lọc cộng tác; 3) Nêu khái niệm, phân loại, ứng dụng tác tử hệ thống đa tác tử; 4) Giới thiệu mơ hình đa tác tử hút đẩy Về mặt thực tiễn: 1) Xây dựng hệ thống thử nghiệm tư vấn phim sử dụng mơ hình đa tác tử hút đẩy; 2) So sánh, đánh giá mơ hình đa tác tử hút đẩy với phương pháp lọc cộng tác, từ rút kết quả, hướng phát triển tương lai  Đối tượng nghiên cứu Đối tượng nghiên cứu đề tài là: “Mơ hình đa tác tử hút đẩy cho phương pháp lọc cộng tác” Phạm vi nghiên cứu Các phương pháp lọc cộng tác phân thành tiếp cận nhỏ hướng tiếp cận dựa láng giềng (neigborhood-based) dựa mơ hình (model-based) Mơ hình đa tác tử hút đẩy cho phương pháp lọc cộng tác chỉ nghiên cứu dựa láng giềng, sử dụng kỹ thuật tư vấn dựa sản phẩm (item-based) Phương pháp nghiên cứu Phương pháp nghiên cứu tài liệu: chủ động tìm kiếm, nghiên cứu tài liệu liên quan đến đề tài, phương pháp hệ tư vấn để từ đánh giá ưu nhược điểm, học hỏi cách thức xây dựng để từ đề xuất mơ hình đa tác tử hút đẩy thay cho phương pháp lọc cộng tác áp dụng cho hệ tư vấn hỗ trợ khách hàng Sinh viên thực hiện: Nguyễn Minh Đức 10 Khoá luận tốt nghiệp Năm 1994, NeXT Computer phối hợp với Sun Microsystems chuẩn hóa lại NEXTSTEP đặc tả tên OPENSTEP Bản thực OPENSTEP GNUStep Một hệ thống bao gồm Linux kenel mơi trường phát triển GNUStep lúc gọi LinuxSTEP Đến năm cuối tháng 12 năm 1996, hãng Apple mua lại công ty NeXT Software môi trường NEXTSTEP/OPENSTEP trở thành thành phần cột lỗi hệ điều hành OS X mà Apple giới thiệu sau Phiên thức mơi trường phát triển Apple giới thiệu ban đầu có tên Cocoa Bằng việc hỗ trợ sẵn ngôn ngữ ObjectiveC, đồng thời tích hợp số cơng cụ phát triển khác Project Builder (đây tiền thân Xcode) Interface Builder, Apple tạo môi trường mạnh mẽ để phát triển ứng dụng MAC OS X Đến năm 2007, Apple tung bảng nâng cấp cho ngơn ngữ Objective-C gọi Objective-C 2.0 Cho đến Apple thức giới thiệu iPhone vào năm 2007, rất nhiều nhà phát triển mong muốn tham gia phát triển ứng dụng thiết bị mang tính cách mạng cơng nghệ Ban đầu, Apple khơng khuyến khích việc tham gia phát triển ứng dụng từ bên thứ ba mà chỉ cho phép ứng dụng chạy web chạy thơng qua ứng dụng dạng trình duyệt Safari mà họ cấy sẵn iPhone Điều làm cho ứng dụng muốn chạy phải yêu cầu kết nối tới máy chủ web host ứng dụng developers tham gia phát triển Rõ ràng động tác Apple đáp ứng nhu cầu nhà phát triển cho có nhiều hạn chế việc phát triển ứng dụng web-based Ngay sau đó, Apple trấn an giới phát triển ứng dụng việc thức thơng báo nhà phát triển sẽ phát triển ứng dụng iPhone Tức ứng dụng nằm iPhone chạy hệ điều hành iPhone giống ứng dụng có sẵn Apple Contacts, Stocks, Weather, chạy thiết bị đặc biệt 3.2.2 Thư viện đồ hoạ OpenGL OpenGL giao diện phần mềm hướng thủ tục theo chuẩn công nghiệp hỗ trợ đồ hoạ chiều Được phát triển Silicon Graphic Inc, bao gồm khoảng 250 câu lệnh hỗ trợ nhiều ngôn ngữ C, C++, Objective-C, Java, cho phép người Sinh viên thực hiện: Nguyễn Minh Đức 47 Khố luận tốt nghiệp lập trình sử dụng tạo đối tượng đồ họa OpenGL thiết kế không phụ thuộc vào tảng phần cứng cũng hệ điều hành máy tính (independence of hardware platform and operating system) Với OpenGL ta sẽ tạo mơ hình từ đối tượng hình học điểm (point), đường (line) đa giác (polygon) Cú pháp lệnh OpenGL: Các câu lệnh OpenGL sử dụng tiền tố gl từ bắt đầu kí tự hoa, ví dụ: glClearColor() Các định nghĩa tiền tố GL_ từ viết hoa ngăn cách kí tự gạch dưới, ví dụ GL_COLOR_BUFFER_BIT Hình 3.2 Thư viện đồ họa OpenGL Các thư viện liên quan của OpenGL: Mặc dù OpenGL công cụ mạnh đối tượng vẽ đối tượng hình học Để đơn giản hóa số công việc, trang bị thêm số thư viện cho phép sử dụng thủ tục vẽ mức cao hơn: - OpenGL Utility Library (GLU): Bao gồm số thủ tục thiết lập ma trận xác định hướng nhìn (viewing orientation), ma trận phép chiếu (projection), biểu diễn mặt không gian chiều (redering surfaces) - OpenGL Utility Toolkit (GLUT): Là công cụ viết Mark Kilgard bao gồm thủ tục giúp cho đơn giản hóa việc xây dựng đối tượng hình học Sinh viên thực hiện: Nguyễn Minh Đức 48 Khoá luận tốt nghiệp Với hỗ trợ đa ngơn ngữ tính phong phú OpenGL, tác giả định chọn thư viện để mô phỏng hệ thống 3.3 Cài đặt hệ thống 3.3.1 Các yếu tố đầu vào Hệ thống nhận yếu tố đầu vào sau: Bộ dữ liệu MovieLens: Như giới thiệu phần 3.1.2, hệ thống sẽ sử dụng liệu mẫu MovieLens để hoạt động Các file cần thiết là: u.item, u.user, u.base u.test Hình ảnh cho phim: Nghiên cứu tác giả theo hướng tiếp cận dựa sản phẩm (item-based), phim sẽ tác tử hoạt động mơi trường Tác giả lấy hình ảnh phim để đại diện cho tác tử mơ hình Cách lấy hình ảnh phim cũng đơn giản Trong thư mục u.item có lưu đường dẫn đến phim trang web www.us.imdb.com Tác giả phân tích đoạn code html trang web để tải ảnh Những phim q cũ nên khơng cịn ảnh, thay vào hình màu trắng có viết tên phim lên Khi có liệu ảnh phim, tác giả nhận thấy dung lượng chúng lớn, chạy mơ hình sẽ làm giảm tốc độ Vì vậy, hệ thống, tác giả chỉ sử dụng ảnh thu nhỏ (thumbnail) ảnh Do đó, mơ hình chạy mượt mà tốc độ tính tốn tăng đáng kể Hình 3.3 Ảnh đại diện phim / tác tử Sinh viên thực hiện: Nguyễn Minh Đức 49 Khoá luận tốt nghiệp 3.3.2 Các yếu tố đầu Đầu hệ thống bao gồm: Hình ảnh hoạt động của mơ hình: cho người dùng thấy trực quan hoạt động mơ hình Dự đốn giá trị bình chọn: giá trị làm để đánh giá hệ tư vấn Lập danh sách tư vấn: kết để tư vấn cho người dùng 3.3.3 Quy trình hoạt động Quy trình hoạt động mơ hình đề xuất mơ tả qua hình sau: Hình 3.4 Sơ đồ quy trình hoạt động Trong quy trình trên, bước lại phân chia thành quy trình nhỏ sau: Đọc dữ liệu: - Tạo danh sách Sản phẩm (Item) - Tạo danh sách Người dùng (User) - Tạo lưới quản lý tác tử không gian (Grid) - Thiết lập tham số cần thiết Chạy mơ hình đa tác tử: - Tính lực địa phương (Lực láng giềng lân cận) - Tính lực tồn cục (Lực láng giềng ngẫu nhiên) Sinh viên thực hiện: Nguyễn Minh Đức 50 Khoá luận tốt nghiệp - Di chuyển tác tử Vẽ bước kết quả chạy: - Vẽ hình ảnh tác tử vị trị mơ hình Tính giá trị dự đốn: - Khi mơ hình ổn định, tính giá trị dự đốn để đánh giá hệ tư vấn Lấy danh sách tư vấn: 1) Khi mơ hình ổn định, lấy danh sách tư vấn cho từng người dùng Đọc liệu Objective-C ngôn ngữ lập trình hướng đối tượng, cho phép người dùng quản lý đối tượng thông qua lớp (class) Trong mơ hình này, phim sẽ lưu trữ danh sách Item danh sách User sẽ lưu trữ người dùng Đồng thời, tác tử xem đối tượng Item, đối tượng có thuộc tính hành vi đặc trưng sau: - Chuỗi itemID: lưu trữ mã phim - Mảng arrayUserRate: lưu trữ mảng đánh giá tất người dùng cho đối tượng Những người chưa đánh giá phần tử sẽ có giá trị Vị trí phần tử mảng vị trí người dùng danh sách người dùng Ví dụ: mảng (3,4,0,5), người dùng thứ đánh giá 3, người dùng thứ hai đánh giá 4,… - Đối tượng hình ảnh NSImage: lưu trữ hình ảnh phim - Đối tượng Điểm: lưu trữ cặp giá trị x,y tác tử không gian - Đối tượng Vector Quán tính: lưu trữ quán tính ngẫu nhiên tác tử - Hàm move dùng để di chuyển hình ảnh, draw dùng để vẽ hình ảnh Các đối tượng User cũng quản lý tương tự Item, sau chúng lưu vào hai danh sách Item User riêng biệt Riêng danh sách User dùng vào việc dự đốn giá trị bình chọn người dùng Sinh viên thực hiện: Nguyễn Minh Đức 51 Khoá luận tốt nghiệp Mơi trường có chiều dài rộng nghìn (1000) pixel Để thuận tiện việc lựa chọn láng giềng, mơ hình có kích thước 10x10 số mơ hình 100x100 = 1000 Khi tác tử khởi tạo di chuyển, tùy vào vị trí mà lưu trữ tác tử vào ô lưới cho phù hợp Đó cách quản lý tác tử theo lưới cách đặc biệt mà khóa luận đề xuất Cách quản lý việc thuận tiện theo dõi hoạt động tác tử dùng để lấy láng giềng lân cận ngẫu nhiên Cách lấy láng giềng theo lưới sẽ trình bày bước chạy mơ hình đa tác tử Hình 3.5 Cách quản lý lưới mơ hình Cuối cùng, tham số chương trình cũng sẽ khởi tạo, kể đến vài tham số đặc biệt khác như: đếm số lần lặp mơ hình, số láng giềng tối thiểu, số láng giềng tối đa,… Sinh viên thực hiện: Nguyễn Minh Đức 52 Khố luận tốt nghiệp 2) Chạy mơ hình đa tác tử a) Tính lực địa phương (Lực láng giềng lân cận)  Chọn láng giềng lân cận Dựa vào cấu trúc lưu trữ theo lưới vừa trình bày trên, tác tử sẽ nằm ô định, vùng láng giềng tác tử tác tử nằm chung ô tám (8) ô xung quanh Thuật toán có độ phức tạp O(n2), thể hình 3.6 bên Hình 3.6 Thuật tốn chọn láng giềng lân cận Ngồi ra, để hạn chế việc tính lại độ tương tự, hệ thống sử dụng cấu trúc liệu từ điển (Dictionary) để lưu cặp < id sản phẩm láng giềng, độ tương tự > Ví dụ: tác tử có độ tương tự với tác tủ khác có id 100 0.5 tơi sẽ lưu vào Dictionary cặp giá trị (100,0.5) Đồng thời, mơ hình cũng lưu cặp giá trị vào láng giềng xét Phương pháp giúp giảm thiểu số lần tính tốn, góp phần đẩy nhanh tốc độ mơ hình Đây cũng biện pháp để tơi khắc phục điểm yếu mơ hình Sinh viên thực hiện: Nguyễn Minh Đức 53 Khố luận tốt nghiệp  Tính lực địa phương Dựa vào cơng thức tính lực phần 2) mục 2.3.2 Sau khoảng 100 bước lặp sử dụng lực địa phương, mơ hình lúc mơ tả hình 3.7 Hình 3.7 Mơ hình mức độ địa phương Lực địa phương chỉ phân cụm tác tử thành nhóm nhỏ bị giới hạn khoảng cách, điều khiến mơ hình chạy chưa xác Khi đó, cần lực tồn cục để gom nhóm lại với Phần c) d) sẽ trình bày phương pháp b) Tính lực tồn cục (Lực láng giềng ngẫu nhiên)  Chọn láng giềng ngẫu nhiên Chọn láng giềng ngẫu nhiên nhằm phục vụ cho việc tính lực tồn cục Các bước chọn láng giềng ngẫu nhiên cũng giống chọn láng giềng lân cận, chỉ khác láng giềng sẽ chọn vị trí ngẫu nhiên mơ hình mà thơi Do đó, khóa luận khơng Sinh viên thực hiện: Nguyễn Minh Đức 54 Khố luận tốt nghiệp trình bày thuật toán chọn láng giềng ngẫu nhiên Kết thúc bước này, có danh sách láng giềng ngẫu nhiển để tiếp tục tính tốn  Tính lực tồn cục Việc tính lực tồn cục khơng thực liên tục mơ hình hoạt động mà chỉ thực vài vòng lặp dựa vào biến lưu trữ số vòng lặp khởi tạo trước Việc khiến thời gian mơ hình hội tụ chậm chút độ xác tương đối cao tác tử chỉ di chuyển khoảng cách ngắn Hình 3.8 Mơ hình mức độ tồn cục Hình 3.8 cho thấy tác tử kéo phía trung tâm giống mơ hình Cao Hồng Huệ [4] mơ hình tự tổ chức Các tác tử nằm riêng lẻ ngồi có đánh giá tác tử này, khiến tác tử có độ tương tự so với tác tử cịn lại Vấn đề gặp phải vấn đề thưa thớt liệu tránh khỏi Sinh viên thực hiện: Nguyễn Minh Đức 55 Khoá luận tốt nghiệp c) Di chuyển tác tử Việc di chuyển tác tử thực đơn giản, chỉ cần xác định lại vị trí tác tử thơng qua giá trị biến lưu trữ tọa độ Hình dung việc di chuyển chúng làm phim hoạt hình, vật di chuyển nhiều hình mơ tả hoạt động cách liên tục Di chuyển tác tử cũng vậy, thay đổi liên tục vị trí với khoảng cách ngắn nguyên lý Do đó, lực tác động mạnh mà làm thay đổi vị trí lớn so với vị trí ban đầu sẽ tơi làm giảm lực để hồn thành mục tiêu vừa nêu Thuật toán di chuyển tác tử hay cịn gọi xác định vị trí sau: - Giảm lực quán tính theo thời gian - Kiểm tra lực địa phương lực toàn cục, q lớn giảm bớt Trong mơ hình đề xuất, tác giả giảm độ lớn lực ba (3) lần - Cộng dồn ba (3) lực vừa nêu vào tọa độ tác tử - Nếu tác tử vượt ngồi phạm vi mơ hình kéo tác tử lại Đương nhiên sau thay đổi vị trí tác tử, vị trí lưới quản lý cũng thay đổi theo để tiến hành lấy láng giềng lân cận lần lặp 3) Vẽ bước kết chạy Để vẽ tác tử lên không gian hai chiều, tác giả sử dụng hàm sẵn có thư viện OpenGL Các bước vẽ tóm gọn bước sau: 4) - Lấy đối tượng NSImage có sẵn tác tử - Gán đối tượng NSImage cho hàm GL_TEXTURE_2D OpenGL - Lấy tọa độ tác tử, sau dùng hàm GL_TEXTURE_2D để vẽ Tính giá trị dự đốn Khi mơ hình đạt trạng thái ổn định, hệ thống tính giá trị dự đoán cho người dùng Đối với thuật tốn tính giá trị dự đốn, đầu vào item cần dự đốn user đầu giá trị dự đốn Khi đó, thuật tốn có độ phức tạp O(n) biểu diễn hình 3.9 Sinh viên thực hiện: Nguyễn Minh Đức 56 Khố luận tốt nghiệp Sau có giá trị dự đốn cho tồn người dùng, tác giả tiến hành tính giá trị sai số tuyệt đối trung bình MAE để đánh giá hệ tư vấn Kết tính giá trị MAE thực tồn năm tập liệu u.base u.test Hình 3.9 Thuật tốn tính giá trị dự đốn 5) Lấy danh sách tư vấn Sau xác định giá trị dự đoán cho người dùng, hệ thống chỉ cần lấy phim có giá trị dự đốn cao mà người dùng chưa xem để tư vấn Danh sách tư vấn cho người dùng mô tả hình 3.10 Hình 3.10 Danh sách tư vấn phim Sinh viên thực hiện: Nguyễn Minh Đức 57 Khoá luận tốt nghiệp 3.4 So sánh, đánh giá mơ hình đa tác tử hút đẩy với phương pháp lọc cộng tác Như đề cập bước tính giá trị dự đốn quy trình hoạt động nêu trên, sau dự đốn giá trị bình chọn người dùng, tác giả tiến hành tính kết MAE cho năm tập liệu kiểm tra Kết thể hình 3.11 Hình 3.11 Biểu đồ biểu diễn kết MAE liệu kiểm tra Như giá trị trung bình MAE cho năm liệu khoảng 0.724 Điều nói lên rằng, mơ hình đa tác tử hút đẩy mà tác giả đề xuất đưa giá trị dự đốn có sai số tuyệt đối trung bình 0.724 Trong đó, nghiên cứu [2] đưa giá trị MAE cho phương pháp lọc cộng tác 0.723 Hai kết hai phương pháp gần tương đương nhau, cho thấy lời tư vấn chúng có giá trị Ở góc độ khác, số láng giềng lân cận chọn ảnh hưởng nhiều đến kết MAE Qua nhiều lần thực nghiệm, tác giả nhận thấy rằng, lượng láng giềng chọn 50 giá trị MAE cao, cịn 50 giá trị MAE ổn định giảm dần sau Điều thể hình 3.12 Sinh viên thực hiện: Nguyễn Minh Đức 58 Khố luận tốt nghiệp Hình 3.12 Biểu đồ biểu diễn kết MAE hai phương pháp Qua hình 3.12 ta nhận thấy rằng, mơ hình đề xuất tác giả ổn định nhiều so với phương pháp lọc cộng tác Mơ hình mang lại kết tốt Xử lý liệu bị thưa thớt hay liệu có q đánh giá ln nhược điểm phương pháp lọc cộng tác Việc thưa thớt liệu làm q trình tính tốn phương pháp khơng cịn xác, dẫn đến kết tư vấn không Đối lập với lọc cộng tác, phim có số lượng người dùng đánh giá nhiều hay thể trực quan khơng gian mơ hình, lời tư vấn lấy theo ngun tắc trình bày mà khơng cần quan tâm đến liệu Tác giả nghiên cứu [2] cũng thừa nhận rằng: có xảy thay đổi giá trị MAE lớn tốc độ tính tốn hệ thống chậm có thêm sản phẩm người dùng Thật vậy, lọc cộng tác, xuất đối tượng hệ thống, phải tính tốn lại từ đầu, gây lãng phí tài nguyên chậm trễ đưa lời tư vấn Ngược lại, mơ hình mà tác giả đề xuất lại không bị ảnh hưởng tiêu cực kiện Trong trường hợp này, tác tử xuất sẽ đưa vào mơ hình, tiếp tục thực việc tính tốn di chuyển đến tìm vị trí xác Đây ưu điểm lớn mơ hình Với ưu điểm kể trên, tác giả tin mơ hình hồn tồn thay cho phương pháp lọc cộng tác thời gian không xa Sinh viên thực hiện: Nguyễn Minh Đức 59 Khố luận tốt nghiệp KẾT LUẬN Tóm lại, sau hồn thành đề tài “Nghiên cứu mơ hình đa tác tử hút đẩy cho phương pháp lọc cộng tác”, tác giả đưa kết luận sau: Hệ tư vấn công cụ phần mềm kỹ thuật cung cấp mặt hàng đề xuất cho người sử dụng Những lời tư vấn liên quan đến khía cạnh khác trình định, chẳng hạn nên mua mặt hàng nào, nên nghe thể loại nhạc nào, nên đọc loại tin tức Hiện nay, quan tâm hệ tư vấn cao cần thiết ứng dụng giúp người dùng xử lý với tình trạng tải thông tin & đưa nội dung lời khuyên phù hợp cho từng cá nhân Tuy nhiên, phương pháp tư vấn bộc lộ nhiều khuyết điểm như: vấn đề nhớ tư vấn dựa nội dung hay tốc độ tính tốn lọc cộng tác Khóa luận đề xuất mơ hình đa tác tử hút đẩy cho phương pháp lọc cộng tác, hướng tiếp cận dựa láng giềng Các phim mà hệ thống tư vấn kết có dựa phân tích lựa chọn, đánh giá hàng trăm người dùng trước Qua trình thực nghiệm hệ thống, tác giả nhận thấy mơ hình đề xuất đáp ứng u cầu khóa luận Các giá trị tính tốn mang tính thực tiễn cao hồn tồn xác Đặc biệt giải khuyết điểm phương pháp lọc cộng tác như: tốc độ tính tốn, xuất người dùng sản phẩm Bên cạnh đó, mơ hình cho người dùng có nhìn trực quan hệ thống đa tác tử, đặc biệt áp dụng hệ thống đa tác tử hút đẩy cho hệ tư vấn phim Khóa luận mang lại giá trị cao tính khoa học thực tiễn để thay cho phương pháp lọc cộng tác vốn lâu đời Bên cạnh đó, mơ hình cịn số khuyết điểm như: chưa có tương tác với người dùng mơ hình tự tổ chức, chưa kết hợp với phương pháp tư vấn dựa nội dung, chỉ hoạt động hệ điều hành MacOS,… Những khuyết điểm cũng hướng phát triển đề tài tương lai, nhằm hồn thiện mơ hình để áp dụng rộng rãi vào hệ tư vấn Sinh viên thực hiện: Nguyễn Minh Đức 60 Khoá luận tốt nghiệp DANH MỤC TÀI LIỆU THAM KHẢO [1] Apple Inc, “OpenGL Programming Guide for Mac”, 2012 [2] Badrul Sarwar; George Karypis; Joseph Konstan; John Riedl, “Item-Based Collaborative Filtering Recommendation Algorithms”, 2001 [3] Francesco Ricci; Lior Rokach; Bracha Shapira; Paul B.Kantor, “Recommender Systems Handbook”, 2001 [4] Hue Cao Hong; Guillaume Chiron; Alain Boucher; “A Multi-Agent Model for Image Browsing and Retrieval” [5] Michael Wooldridge, “An introduction to Multiagent Systems”, 2002 [6] Renault V, “Organisation de Sociétés d'Agents pour la Visualisation d'Informations Dynamiques”, 2001 [7] Stephen G.Kochan, “Programming in Objective-C 2.0”, 2008 Sinh viên thực hiện: Nguyễn Minh Đức 61 ... cận phương pháp đánh giá hệ tư vấn Chương 2: Mơ hình đa tác tử hút đẩy cho phương pháp lọc cộng tác Chương sâu tìm hiểu lý thuyết tác tử, hệ thống đa tác tử, mơ hình đa tác tử sử dụng lực hút đẩy. .. luận tốt nghiệp Chương 2: MƠ HÌNH ĐA TÁC TỬ HÚT VÀ ĐẨY CHO PHƯƠNG PHÁP LỌC CỘNG TÁC 26 2.1 Lý thuyết tác tử hệ thống đa tác tử 26 2.1.1 Tác tử 26 2.1.2 Hệ thống đa tác. .. hai chiều) tác tử Do đó, tác giả đề xuất mơ hình đa tác tử sử dụng lực hút / đẩy cho tư vấn phim 2.3 Mơ hình đa tác tử hút đẩy cho phương pháp lọc cộng tác 2.3.1 Tổng quan mơ hình Mơ hình đề xuất

Ngày đăng: 18/04/2021, 13:05

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w