BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM - NGUYỄN LÊ DUY KỸ THUẬT MATRIX FACTORIZATION TRONG XÂY DỰNG HỆ TƯ VẤN LUẬN VĂN THẠC SĨ Chuyên ngành : Công nghệ thông tin Mã số ngành: 60480201 TP HỒ CHÍ MINH, tháng 10 năm 2015 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM - NGUYỄN LÊ DUY KỸ THUẬT MATRIX FACTORIZATION TRONG XÂY DỰNG HỆ TƯ VẤN LUẬN VĂN THẠC SĨ Chuyên ngành : Công nghệ thông tin Mã số ngành: 60480201 CÁN BỘ HƯỚNG DẪN KHOA HỌC: PGS TS QUẢN THÀNH THƠ TP HỒ CHÍ MINH, tháng 10 năm 2015 CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM Cán hướng dẫn khoa học : PGS TS Quản Thành Thơ Luận văn Thạc sĩ bảo vệ Trường Đại học Công nghệ TP HCM ngày 17 tháng 10 năm 2015 Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm: TT Họ tên Chức danh Hội đồng PGS TSKH Nguyễn Xuân Huy Chủ tịch TS Trần Đức Khánh Phản biện TS Lư Nhật Vinh Phản biện TS Võ Đình Bảy Ủy viên TS Nguyễn Thị Thúy Loan Ủy viên, Thư ký Xác nhận Chủ tịch Hội đồng đánh giá Luận văn sau Luận văn sửa chữa (nếu có) Chủ tịch Hội đồng đánh giá LV TRƯỜNG ĐH CÔNG NGHỆ TP HCM PHÒNG QLKH – ĐTSĐH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc TP HCM, ngày 15 tháng 09 năm 2015 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: NGUYỄN LÊ DUY Giới tính: NAM Ngày, tháng, năm sinh: 27/11/1985 Nơi sinh: TP HCM Chuyên ngành: Công nghệ thông tin MSHV: 1341860036 I- Tên đề tài: KỸ THUẬT MATRIX FACTORIZATION TRONG XÂY DỰNG HỆ TƯ VẤN II- Nhiệm vụ nội dung: Nghiên cứu kỹ thuật Matrix Factorization ứng dụng xây dựng hệ tư vấn phim III- Ngày giao nhiệm vụ: 03/04/2015 IV- Ngày hoàn thành nhiệm vụ: 15/09/2015 V- Cán hướng dẫn: PGS TS QUẢN THÀNH THƠ CÁN BỘ HƯỚNG DẪN PGS TS QUẢN THÀNH THƠ KHOA QUẢN LÝ CHUYÊN NGÀNH i LỜI CAM ĐOAN Tôi xin cam đoan công trình nghiên cứu riêng Các số liệu, kết nêu Luận văn trung thực chưa công bố công trình khác Tôi xin cam đoan giúp đỡ cho việc thực Luận văn cảm ơn thông tin trích dẫn Luận văn rõ nguồn gốc Học viên thực Luận văn Nguyễn Lê Duy ii LỜI CÁM ƠN Luận văn thực Khoa Công nghệ thông tin - Trường Đại học Công nghệ TP HCM, hướng dẫn khoa học PGS TS Quản Thành Thơ Trước tiên xin bày tỏ lòng biết ơn sâu sắc tới PGS TS Quản Thành Thơ đưa đến với lĩnh vực nghiên cứu Thầy tận tình giảng dạy, hướng dẫn giúp tiếp cận đạt thành công công việc nghiên cứu Thầy tận tâm động viên, khuyến khích dẫn giúp hoàn thành luận văn Tôi xin bày tỏ lòng biết ơn tới Thầy Cô thuộc Khoa Công nghệ thông tin cán phòng Quản lý khoa học đào tạo sau đại học - Trường Đại học Công nghệ TP HCM, tạo điều kiện thuận lợi giúp đỡ trình học tập nghiên cứu trường Tôi xin chân thành cảm ơn Thầy Cô Hội đồng đánh giá luận văn Thạc Sĩ đóng góp ý kiến quý báu giúp hoàn thiện luận án Học viên thực Luận văn Nguyễn Lê Duy iii TÓM TẮT Trong xu công nghệ thông tin phát triển, việc sử dụng mạng Internet trở thành công việc thiếu thời gian biểu ngày người đại Có nhiều thông tin đưa lên mạng, từ thông tin cá nhân, đánh giá, nhận xét dịch vụ, kiện, Cuộc sống người ngày bận rộn, đọc hết thông tin Internet để rút định cho riêng Do hệ tư vấn trở thành xu hướng phát triển Hệ tư vấn giúp người tham khảo định dựa tập hợp ý kiến, số liệu từ kinh nghiệm người trước Thấy cần thiết lợi ích hệ tư vấn muốn khai thác nguồn thông tin vô tận vô giá Internet, tác giả định chọn đề tài “Kỹ thuật Matrix Factorization xây dựng hệ tư vấn” Bên cạnh việc nghiên cứu lý thuyết, tác giả lập trình phần mềm mẫu áp dụng kỹ thuật để xây dựng hệ tư vấn nhằm đánh giá hỗ trợ người dùng chọn phim nên xem (vì thời gian có hạn nguồn phim vô tận) iv ABSTRACT Nowaday, with deveplopment of the information technology, using the internet has been a dispensable part of a modern man’s daily work You can find many types of information on the Internet, such as private information of someone, some comments about a service, events, etc Of course we cant check every information on the internet to make an our own decision Because of this matter, recommendation systems has been a global inevitable tendency A recommendation systems gathers and presents data from a wide range of sources, thus helps us with refering and making a decision Because of benefit and necessary characteristics of recommendation systems, as well as hoping to take advantage of an unlimited and invaluable information sourse from the internet, the writer chose the thesis on “recommendation systems with Matrix Factorization technology” Not only theoritical research, the writer also developed a demonstration software using a Matrix Factorization technology to develop a recommendation systems to evaluate and support users in choosing movies v MỤC LỤC LỜI CAM ĐOAN .i LỜI CÁM ƠN ii TÓM TẮT iii ABSTRACT iv DANH MỤC TỪ VIẾT TẮT vii DANH MỤC CÁC BẢNG viii DANH MỤC HÌNH VẼ, ĐỒ THỊ ix CHƯƠNG GIỚI THIỆU 1.1 LÝ DO CHỌN ĐỀ TÀI: 1.2 MỤC TIÊU CỦA ĐỀ TÀI: 1.3 CẤU TRÚC CỦA LUẬN VĂN: CHƯƠNG CÁC NGHIÊN CỨU LIÊN QUAN 2.1 TỔNG QUAN VỀ HỆ TƯ VẤN 2.1.1 GIỚI THIỆU HỆ TƯ VẤN 2.2 KIẾN TRÚC CƠ BẢN MỘT HỆ TƯ VẤN 2.3 MÔ TẢ BÀI TOÁN TƯ VẤN 2.4 PHÂN LOẠI HỆ TƯ VẤN 2.4.1 PHƯƠNG PHÁP DỰA TRÊN NỘI DUNG (CONTENT-BASED) 2.4.2 PHƯƠNG PHÁP CHỌN LỌC CỘNG TÁC (COLLABORATIVE FILTERING) 13 2.4.3 PHƯƠNG PHÁP DỰA TRÊN NHÂN KHẨU HỌC (DEMOGRAPHICBASED) 18 2.4.4 PHƯƠNG PHÁP DỰA TRÊN TRI THỨC (KNOWLEDGE-BASED) 20 2.4.5 PHƯƠNG PHÁP DỰA TRÊN CỘNG ĐỒNG (COMMUNITY-BASED) 23 vi 2.4.6 PHƯƠNG PHÁP LAI (HYBRID) 25 2.4.7 VẤN ĐỀ RAMP-UP 30 CHƯƠNG CƠ SỞ LÝ THUYẾT 32 3.1 MÔ HÌNH PHÂN RÃ MA TRẬN 32 3.2 CÁC THUẬT TOÁN HỌC (Learning Algorithms) 35 3.2.1 PHƯƠNG PHÁP GIẢM GRADIENT NGẪU NHIÊN (STOCHASTIC GRADIENT DESCENT) 35 3.2.2 PHƯƠNG PHÁP ALTERNATING LEAST SQUARE (ASL) 37 3.3 HỆ SỐ BIAS 38 3.4 REGULARIZATION 39 3.5 PHÂN RÃ MA TRẬN KHÔNG ÂM (NMF) 40 CHƯƠNG HỆ THỐNG ĐỀ NGHỊ 42 4.1 MÔ HÌNH HỆ THỐNG: 42 4.2 GIẢI THUẬT CHƯƠNG TRÌNH 42 4.2.1 ĐẦU VÀO: 42 4.2.2 ĐẦU RA: 43 4.2.3 LƯU ĐỒ THUẬT TOÁN: 43 CHƯƠNG HIỆN THỰC VÀ THÍ NGHIỆM 44 5.1 HIỆN THỰC 44 5.1.1 GIỚI THIỆU 44 5.2 MỘT SỐ THỬ NGHIỆM VÀ NHẬN XÉT VỀ THUẬT TOÁN 46 5.2.1 TẬP DỮ LIỆU: 10 Người dùng, 712 Hạng mục 47 5.2.2 TẬP DỮ LIỆU: 50 Người dùng, 1084 Hạng mục 51 5.2.3 TẬP DỮ LIỆU: 100 Người dùng, 1238 Hạng mục 54 CHƯƠNG KẾT LUẬN 57 TÀI LIỆU THAM KHẢO 59 47 − Giá trị phần tử ma trận kết tương ứng với phần tử có điểm đánh giá ma trận ban đầu xấp xỉ lớn xấp xỉ nhỏ − Điều kiện dừng minErr khó đạt tổng lỗi tăng tỷ lệ thuận với độ lớn tập liệu Thuật toán dừng chạy đủ số lần học − Lỗi bình phương không phụ thuộc vào số lần học Do cần chọn số lần học phù hợp với tập liệu để có lỗi bình phương tốt − Lỗi bình phương không phụ thuộc vào hệ số alpha Do cần chọn số lần học phù hợp với tập liệu để có lỗi bình phương tốt − Lỗi bình phương giảm dần ta giảm hệ số Beta, lỗi bình phương phụ thuộc vào hệ số Beta − Tùy độ lớn tập liệu, định chọn thông số phù hợp để tối ưu chi phí tính toán kết − Ta thực số thử nghiệm sau: 5.2.1 TẬP DỮ LIỆU: 10 Người dùng, 712 Hạng mục 48 Bảng 5.1 Thay đổi số lần học Lần thực 3 3 Số lần học Hệ số alpha Hệ số Beta 10,000 0.0003 0.02 30,000 0.0003 0.02 50,000 0.0003 0.02 90,000 0.0003 0.02 120,000 0.0003 0.02 Điểm đánh giá trung bình Lỗi bình phương 3.55 3.56 3.53 3.53 3.47 3.37 3.37 3.50 3.52 3.46 3.33 3.48 3.49 3.46 3.41 547.57 543.33 489.70 411.91 396.99 374.67 368.86 360.14 363.10 363.44 357.27 351.59 361.94 356.67 368.21 Thời gian thực (ms) 102,333 105,091 106,271 153,936 150,188 152,242 195,342 195,993 193,644 342,734 345,090 341,960 447,167 447,764 447,480 Lỗi bình phương trung bình 526.87 394.52 364.03 357.43 362.27 THAY ĐỔI SỐ LẦN HỌC Lỗi bình phương trung bình 600 526.87 500 394.52 400 364.03 357.43 362.27 300 200 100 10000 30000 50000 90000 Hình 5.2 Thay đổi số lần học 120000 49 Bảng 5.2 Thay đổi hệ số alpha Lần thực 3 3 Số lần học 90,000 Hệ số Beta Hệ số alpha 0.0001 0.02 0.0003 0.02 0.0004 0.02 0.0007 0.02 0.0009 0.02 Điểm đánh giá trung bình Lỗi bình phương 3.48 3.46 3.51 3.46 3.33 3.48 3.40 3.27 3.42 3.34 3.22 3.42 3.33 3.35 3.26 368.76 416.93 419.97 363.44 357.27 351.59 355.70 352.41 362.71 365.59 354.31 360.76 348.83 360.44 351.10 Thời gian thực (ms) 350,603 352,471 351,596 342,734 345,090 341,960 329,350 328,679 326,688 342,856 342,584 342,728 341,579 341,835 341,492 Lỗi bình phương trung bình 401.89 357.43 356.94 360.22 353.46 THAY ĐỔI HỆ SỐ ALPHA Lỗi bình phương trung bình 410 401.89 400 390 380 370 357.43 360 356.94 360.22 353.46 350 340 330 320 0.0001 0.0003 0.0004 0.0007 Hình 5.3 Thay đổi hệ số alpha 0.0009 50 Bảng 5.3 Thay đổi hệ số beta Lần thực 3 3 Số lần học Hệ số alpha Hệ số Beta 0.01 0.02 90,000 0.0009 0.04 0.07 0.08 Điểm đánh giá trung bình Lỗi bình phương 3.40 3.42 3.41 3.33 3.35 3.26 3.25 3.24 3.19 3.15 3.23 3.20 3.19 3.2 3.16 287.30 306.16 290.46 348.83 360.44 351.10 481.67 485.48 486.49 675.38 667.90 674.82 749.16 749.1 738.45 Thời gian thực (ms) 323,282 323,545 323,715 341,579 341,835 341,492 321,031 319,749 322,149 315,008 314,934 314,746 354,009 356,158 355,798 Lỗi bình phương trung bình 294.64 353.46 484.55 672.70 745.57 THAY ĐỔI HỆ SỐ BETA Lỗi bình phương trung bình 745.57 800 672.7 700 600 484.55 500 353.46 400 300 294.64 200 100 0.01 0.02 0.04 0.07 Hình 5.4 Thay đổi hệ số beta 0.08 51 5.2.2 TẬP DỮ LIỆU: 50 Người dùng, 1084 Hạng mục Bảng 5.4 Thay đổi số lần học Lần thực 3 3 Số lần học Hệ số Beta Hệ số alpha 10,000 0.0003 0.02 30,000 0.0003 0.02 50,000 0.0003 0.02 90,000 0.0003 0.02 120,000 0.0003 0.02 Điểm đánh giá trung bình 3.33 3.27 3.28 3.27 3.29 3.28 3.26 3.23 3.26 3.26 3.25 3.22 3.25 3.24 3.24 Lỗi bình phương Thời gian thực (ms) 3719.27 3397.26 3444.17 3304.99 3219.59 3234.66 3217.15 3191.09 3239.73 3258.33 3204.74 3197.61 3202.26 3216.94 3223.31 560,368 564,744 568,375 916,401 906,253 917,026 1,268,164 1,269,136 1,265,584 1,960,338 1,973,512 1,970,660 2,499,054 2,505,429 2,501,122 Lỗi bình phương trung bình 3520.23 3253.08 3215.99 3220.23 3214.17 THAY ĐỔI SỐ LẦN HỌC Lỗi bình phương trung bình 3550 3500 3450 3400 3350 3300 3250 3200 3150 3100 3050 3520.23 3253.08 3215.99 10000 30000 50000 3220.23 90000 Hình 5.5 Thay đổi số lần học 3214.17 120000 52 Bảng 5.5 Thay đổi hệ số alpha Lần thực 3 3 Số lần học 50,000 Hệ số alpha Hệ số Beta 0.0001 0.02 0.0003 0.02 0.0004 0.02 0.0007 0.02 0.0009 0.02 Điểm đánh giá trung bình 3.29 3.31 3.29 3.26 3.23 3.26 3.23 3.27 3.24 3.27 3.26 3.24 3.23 3.24 3.23 Lỗi bình phương Thời gian thực (ms) 3366.80 3226.97 3376.81 3217.15 3191.09 3239.73 3209.22 3186.24 3189.39 3260.79 3222.51 3214.79 3302.35 3298.30 3221.04 1,260,412 1,274,021 1,272,879 1,268,164 1,269,136 1,265,584 1,274,019 1,275,907 1,274,080 1,270,552 1,268,264 1,269,675 1,276,261 1,277,904 1,274,781 Lỗi bình phương trung bình 3323.53 3215.99 3194.95 3232.70 3273.90 THAY ĐỔI HỆ SỐ ALPHA Lỗi bình phương trung bình 3350 3323.53 3300 3273.9 3250 3232.7 3215.99 3194.95 3200 3150 3100 0.0001 0.0003 0.0004 0.0007 Hình 5.6 Thay đổi hệ số alpha 0.0009 53 Bảng 5.6 Thay đổi hệ số beta Lần thực 3 3 Số lần học Hệ số alpha Hệ số Beta 0.01 0.02 50,000 0.0004 0.04 0.07 0.08 Điểm đánh giá trung bình 3.27 3.26 3.27 3.23 3.27 3.24 3.19 3.21 3.20 3.18 3.18 3.16 3.16 3.14 3.16 Lỗi bình phương Thời gian thực (ms) 3000.51 2987.57 2996.37 3209.22 3186.24 3189.39 3638.62 3656.29 3667.46 4421.71 4300.36 4336.66 4546.89 4594.22 4528.15 1,273,171 1,274,104 1,271,919 1,274,019 1,275,907 1,274,080 1,274,988 1,277,150 1,266,903 1,290,834 1,300,757 1,289,963 1,273,829 1,285,163 1,275,604 Lỗi bình phương trung bình 2994.82 3194.95 3654.12 4352.91 4556.42 THAY ĐỔI HỆ SỐ BETA Lỗi bình phương trung bình 5000 4352.91 4500 4000 3500 3000 4556.42 3654.12 2994.82 3194.95 2500 2000 1500 1000 500 0.01 0.02 0.04 0.07 Hình 5.7 Thay đổi hệ số beta 0.08 54 5.2.3 TẬP DỮ LIỆU: 100 Người dùng, 1238 Hạng mục Bảng 5.7 Thay đổi số lần học Lần thực 3 3 Số lần học Hệ số alpha Hệ số Beta 10,000 0.0003 0.02 30,000 0.0003 0.02 50,000 0.0003 0.02 90,000 0.0003 0.02 120,000 0.0003 0.02 Điểm đánh giá trung bình 3.26 3.24 3.29 3.25 3.24 3.25 3.21 3.23 3.21 3.24 3.20 3.23 3.21 3.21 3.21 Lỗi bình phương Thời gian thực (ms) 7736.24 7797.87 7951.87 7623.24 7565.75 7620.86 7572.28 7561.10 7562.00 7673.57 7583.24 7534.99 7563.87 7538.96 7535.12 2,039,131 2,038,733 2,162,972 2,777,156 2,763,741 2,889,829 3,565,742 3,539,292 3,652,869 5,118,899 5,080,978 5,199,998 6,277,840 6,368,697 6,247,157 Lỗi bình phương trung bình 7828.66 7603.28 7565.13 7597.27 7545.98 THAY ĐỔI SỐ LẦN HỌC Lỗi bình phương trung bình 7850 7828.66 7800 7750 7700 7650 7603.28 7600 7597.27 7565.13 7545.98 7550 7500 7450 7400 10000 30000 50000 90000 Hình 5.8 Thay đổi số lần học 120000 55 Bảng 5.8 Thay đổi hệ số alpha Lần thực 3 3 Số lần học 50,000 Hệ số alpha Hệ số Beta 0.0001 0.02 0.0003 0.02 0.0004 0.02 0.0007 0.02 0.0009 0.02 Điểm đánh giá trung bình 3.25 3.26 3.28 3.21 3.23 3.21 3.27 3.23 3.23 3.22 3.21 3.23 3.25 3.24 3.21 Lỗi bình phương Thời gian thực (ms) 7559.34 7623.18 7768.03 7572.28 7561.10 7562.00 7566.37 7573.28 7572.62 7578.35 7579.46 7557.14 7708.95 7676.51 7559.40 3,564,284 3,551,323 3,659,491 3,565,742 3,539,292 3,652,869 3,552,408 3,569,563 3,652,290 3,575,039 3,540,954 3,663,336 3,573,138 3,548,942 3,665,732 Lỗi bình phương trung bình 7650.18 7565.13 7570.76 7571.65 7648.29 THAY ĐỔI HỆ SỐ ALPHA Lỗi bình phương trung bình 7660 7648.29 7650.18 7640 7620 7600 7565.13 7580 7571.65 7570.76 7560 7540 7520 0.0001 0.0003 0.0004 0.0007 Hình 5.9 Thay đổi hệ số alpha 0.0009 56 Bảng 5.9 Thay đổi hệ số beta Lần thực 3 3 Số lần học Hệ số alpha Hệ số Beta 0.01 0.02 50,000 0.0003 0.04 0.07 0.08 Điểm đánh giá trung bình 3.25 3.25 3.26 3.21 3.23 3.21 3.22 3.27 3.21 3.21 3.24 3.23 3.17 3.19 3.19 Lỗi bình phương Thời gian thực (ms) 7244.33 7105.93 7150.06 7572.28 7561.10 7562.00 8509.02 8599.95 8490.88 9894.75 9983.35 9938.69 10294.01 10247.75 10289.70 3,327,010 3,334,796 3,314,516 3,565,742 3,539,292 3,652,869 3,662,597 3,654,556 3,632,343 3,753,987 3,744,621 3,732,557 3,803,275 3,802,530 3,777,018 Lỗi bình phương trung bình 7166.77 7565.13 8533.28 9938.93 10277.15 THAY ĐỔI HỆ SỐ BETA Lỗi bình phương trung bình 12000 9938.93 10000 8000 10277.15 8533.28 7166.77 7565.13 6000 4000 2000 0.01 0.02 0.04 0.07 Hình 5.10 Thay đổi hệ số beta 0.08 57 CHƯƠNG KẾT LUẬN Kỹ thuật phân rã ma trận đóng góp đáng kể mặt phương pháp luận việc phát triển hệ thống tư vấn CF Các thử nghiệm nhiều nghiên cứu đánh giá kỹ thuật phân rã ma trận cho độ xác cao so với phương pháp áp dụng trước kỹ thuật k-nearest neighbor, v.v… Kỹ thuật phân rã ma trận tương đối dễ cài đặt Quá trình thử nghiệm chương trình kiểm thử cho thấy để kỹ thuật cho kết tốt cần có hệ số thích hợp Dù cố gắng tìm tòi nhiều hẳn luận văn không tránh khỏi khiếm khuyết Qua thực đề tài này, tác giả thu kết sau: Tìm hiểu cách hệ tư vấn Kỹ thuật phân rã ma trận vấn đề liên quan Rút số nhận xét liên quan đến hệ số kỹ thuật phân rã ma trận thông qua chạy thử nghiệm chương trình cài đặt ○ Hạn chế ứng dụng: Chỉ có ý nghĩa mặt phương pháp luận mà chưa thể xem ứng dụng thực tế chưa thực chức ánh xạ quan tâm user thuộc tính vốn có item (hệ số features hệ thống) Do hạn chế khả xử lý máy tính nên việc xử lý nguồn liệu có kích thước lớn công ty Netflix, MovieLens, v.v… chạy chậm Việc tìm kết trung bình n lần chạy cho tập hệ số mang tính thủ công mà chưa tích hợp ứng dụng ○ Định hướng phát triển ứng dụng: 58 Tích hợp chức tính kết trung bình n lần thử nghiệm cho tập hệ số Tích hợp chức hệ số với khoảng điều chỉnh phù hợp cho hệ số Tích hợp chức ánh xạ thuộc tính quan tâm người dùng thuộc tính vốn có hạng mục kết tư vấn cụ thể hơn, nâng tính thực tiễn ứng dụng 59 TÀI LIỆU THAM KHẢO [1] Sebastian Riedel, Limin Yao, Andrew McCallum, Benjamin M Marlin (2014), Relation extraction with matrix factorization and universal schemas [online], viewed 17 july 2015, from < https://people.cs.umass.edu/~lmyao/papers/univ-schema-tacl.pdf> [2] Nicolas Gillis, Stephen A Vavasis (2014), Fast and robust recursive algorithmsfor separable nonnegative matrix factorization [online], viewed July 2015, from < http://arxiv.org/pdf/1208.1237.pdf> [3] Hoàng Kiếm (2012) Các hệ thống thông tin tri thức hỗ trợ sáng tạo Đại Học Quốc Gia TP.HCM [4] F Ricci (2012) Content-Based Filtering and Hybrid Systems [online], viewed February 2015, from [5] F Ricci (2012) Knowledge-Based Recommender Systems (Part 15) [online], viewed February 2015, from [6] K Nykjaer (2012) How does the Amazon recommendation system work? – Analyze the algorithm and make a prototype that visualizes the algorithm [online], viewed 15 February 2015, from 60 [7] F Ricci et al (eds.) (2011) Recommender Systems Handbook DOI 10.1007/978-0387-85820-3_1, © Springer Science+Business Media [online], viewed January 2015, from [8] D Asanov (2010) Algorithms and Methods in Recommender Systems [online].viewed 11 March 2015, from [9] G Semeraro et al (2010) Content-based Recommender Systems: problems, challenges and research directions [online] Viewed January 2015, from http://ls13www.cs.tu-dortmund.de/homepage/ITWP2010/slides/semeraro.pdf [10] Y Koren, R Bell, C Volinsky (2009) Matrix factorization techniques for recommender systems Yahoo Research, AT&T Lab-Research [online] Viewed 30 January 2015, from http://www2.research.att.com/~volinsky/papers/ieeecomputer.pdf [11] G Adomavicius, A Tuzhilin (2005) Towards the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions IEEE Transactions on Knowledge and Data Engineering, 17(6):734–749 (online), viewed 17 January 2015, from [12] D D Lee, H S Seung (2001) Algorithms for nonnegative matrix factorization Neural Information Processing Systems 13, pp 556-562 [online], viewed March 2015, from 61 [13] R Burke (2000) Knowledge-based Recommender Systems In A Kent (ed.), [online], viewed January 2015, from [14] M J Pazzani (1999) A framework for collaborative, content-based and demographic filtering Artificial Intelligence Review, 13(5-6):393–408, [online], viewed 27 February2015, from [...]... Factorization) là một trong số các kỹ thuật được sử dụng để xây dựng một hệ tư vấn dựa trên các dữ liệu đánh giá Kỹ thuật này được đánh giá cao nhờ khả năng cải thiện độ chính xác của các thuật toán tư vấn khác, tính linh hoạt, thời gian thực thi thấp, v.v 1.2 MỤC TIÊU CỦA ĐỀ TÀI: Tìm hiểu các hệ tư vấn (recommendation systems) Tìm hiểu các khái niệm, phương pháp xây dựng 1 hệ tư vấn Tìm hiểu kỹ thuật phân... hệ tư vấn (recommendation systems) ra đời không nằm ngoài mục đích hỗ trợ cho người dùng trong các lựa chọn và/hoặc ra quyết định Có nhiều hướng tiếp cận để xây dựng một hệ tư vấn Tùy thuộc vào nguồn thông tin có được, nhu cầu tư vấn thực tế, đặc thù riêng của dịch vụ tư vấn cần cung cấp, v.v… mà mỗi hệ tư vấn sẽ có phương pháp và thuật toán phù hợp cho riêng mình Kỹ thuật phân rã ma trận (Matrix Factorization) ... trúc cơ bản một hệ tư vấn 6 Hình 2.3 Ví dụ về một hệ tư vấn trên website thương mại 9 Hình 2.4 Hoạt động của hệ tư vấn chọn lọc hợp tác 13 Hình 2.5 Mô hình hoạt động của hệ tư vấn dựa trên hạng mục của Amazon 16 Hình 2.6 Mô hình hệ tư vấn dựa trên nhân chủng học 19 Hình 2.7 Vòng tròn suy luận của kỹ thuật dựa trên trường hợp 22 Hình 2.8 Mô hình tư vấn dựa trên cộng... Ưu điểm của hệ tư vấn cộng tác so với hệ thống dựa trên nội dung là nó có thể xử lý mọi loại dữ liệu và tư vấn cho mọi loại sản phẩm, kể cả những sản phẩm hoàn toàn mới Tuy nhiên, với các sản phẩm chưa có điểm đánh giá thì hệ tư vấn cộng tác không thể xử lý được Ưu và khuyết điểm: o Ưu điểm: Tư vấn nhiều loại sản phẩm: hệ tư vấn CF có khả năng tư vấn nhiều loại sản phẩm trong cùng một hệ thống từ... ma trận để xây dựng 1 hệ tư vấn về phim 1.3 CẤU TRÚC CỦA LUẬN VĂN: Chương 1: Giới thiệu đề tài Chương 2: Các nghiên cứu liên quan Chương 3: Cơ sở lý thuyết Chương 4: Hệ thống đề nghị 2 Chương 5: Hiện thực và thí nghiệm Chương 6: Tổng kết 3 CHƯƠNG 2 CÁC NGHIÊN CỨU LIÊN QUAN 2.1 TỔNG QUAN VỀ HỆ TƯ VẤN 2.1.1 GIỚI THIỆU HỆ TƯ VẤN Hệ tư vấn (Recommender system) được xem là một hệ thống chọn... trường hợp Hệ tư vấn dựa trên tính hữu dụng (utility-based): Cùng đặc điểm với hệ tư vấn dựa trên tri thức, còn có một hình thức tư vấn khác là tư vấn dựa trên tính hữu dụng Trong đó, thay vì tính toán sự thỏa mãn nhu cầu của một hạng mục đối với người dùng như thế nào, thì hàm hữu dụng trong hệ tư vấn dựa trên tính hữu dụng sẽ tính toán tính hữu dụng của mỗi hạng mục đối với một đối tư ng người dùng... quan hệ giữa nhu cầu và khuyến nghị có thể có Hệ tư vấn loại này thực hiện kỹ thuật suy luận dựa trên trường hợp (case-based reasoning – 21 CBR), theo đó hệ sẽ tìm kiếm các vấn đề đã được giải quyết trong quá khứ để giải quyết một vấn đề mới tư ng tự Bốn bước cơ bản trong kỹ thuật này là: rút trích (retrieve), tái sử dụng (reuse), mô phỏng (adaptation) và duy trì (retain) Rút trích: tìm kiếm trong. .. hàng Đối với người sử dụng, hệ tư vấn mang lại một số lợi ích sau đây: Giúp họ giới hạn phạm vi tìm kiếm trong số vô vàn các thông tin thực và ảo Tự tin và quyết đoán hơn khi quyết định mua sản phẩm được tư vấn Nắm bắt kịp thời các xu hướng sử dụng hiện hành 5 Hình 2.1 Ví dụ về một hệ tư vấn trên website thương mại 2.2 KIẾN TRÚC CƠ BẢN MỘT HỆ TƯ VẤN Về cơ bản, một hệ tư vấn thường bao gồm các thành... bước giải quyết vấn đề của kỹ thuật suy luận dựa trên trường hợp Hệ thống loại này không sinh ra khám phá mới nào vì tác vụ chính của thuật toán tư vấn chỉ là rút ra trường hợp tư ng đồng nhất với vấn đề đang cần được giải quyết Hệ thống không gặp phải vấn đề ramp-up (sẽ bàn luận ở phần sau) vì hệ không phụ thuộc vào cơ sở điểm đánh giá của người dùng 22 Hình 2.7 Vòng tròn suy luận của kỹ thuật dựa trên... tắt các kỹ thuật cơ bản dùng để xây dựng một hệ tư vấn Thiết kế hệ tư vấn dựa vào kỹ thuật nào tùy thuộc vào lĩnh vực và đặc trưng của dữ liệu có sẵn 2.4.1 PHƯƠNG PHÁP DỰA TRÊN NỘI DUNG (CONTENT-BASED) Trong phương pháp này, hàm hữu dụng R(u,i) của hạng mục i đối với người dùng u được ước lượng dựa trên giá trị hữu dụng R(u,ik) của hạng mục ikI mà người dùng u đánh giá cao và được cho là tư ng tự ... Cụng ngh thụng tin MSHV: 1341860036 I- Tờn ti: K THUT MATRIX FACTORIZATION TRONG XY DNG H T VN II- Nhim v v ni dung: Nghiờn cu k thut Matrix Factorization v ng dng xõy dng h t phim III- Ngy giao... ỏnh giỏ ca Xỏc cng tỏc cỏc ngi nh cỏc dựng ngi dựng u cho ngi dựng trong U cho cỏc cỏc hng mc U tng ng hng mc tp I vi u, v ngoi I suy t im ỏnh giỏ ca cỏc ngi dựng ny cho hng mc i Theo ni c tớnh... mc I ngi dựng u cho hp gia thỏi cỏc hng mc v vic s dng hng mc i ca I ngi dựng u Nhõn khu Thụng hc khu hc ca cỏc khu tin nhõn Thụng tin nhõn Xỏc hc nh cỏc ca ngi dựng tng ngi dựng ngi dựng u ng