Nghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùngNghiên cứu ứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ý phim dựa trên thông tin đánh giá của người dùng
Trang 1NGHIÊN CỨU ỨNG DỤNG MÔ HÌNH LỌC CỘNG TÁC
VÀ PHÂN CỤM MỜ XÂY DỰNG HỆ THỐNG GỢI Ý PHIM DỰA TRÊN THÔNG TIN ĐÁNH GIÁ CỦA
NGƯỜI DÙNG
ĐỀ ÁN TỐT NGHIỆP THẠC SĨ HỆ THỐNG THÔNG TIN
Trang 2BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
NGUYỄN KIM LƯƠNG
NGHIÊN CỨU ỨNG DỤNG MÔ HÌNH LỌC CỘNG TÁC VÀ PHÂN CỤM MỜ XÂY DỰNG HỆ THỐNG GỢI Ý PHIM DỰA TRÊN THÔNG TIN ĐÁNH GIÁ CỦA NGƯỜI DÙNG
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan rằng đề án thạc sĩ Hệ thống thông tin “Nghiên cứuứng dụng mô hình lọc cộng tác và phân cụm mờ xây dựng hệ thống gợi ýphim dựa trên thông tin đánh giá của người dùng” là công trình nghiên cứucủa tôi dưới sự hướng dẫn của TS Mai Đình Sinh và TS Đặng Trọng Hợp
Toàn bộ nội dung được trình bày trong đề án này hoặc là đến từ sự tìmhiểu nghiên cứu của tôi hoặc là tổng hợp, thu thập từ các tài liệu khác nhauđều được trích dẫn đầy đủ trong phần tài liệu tham khảo Các tài liệu thamkhảo này được sử dụng một cách hợp lý và minh bạch Tôi xin cam đoan rằngkhông có bất cứ vi phạm nào đối với các quy định đạo đức nghiên cứu khoahọc trong quá trình thực hiện dự án
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theoquy định về tính chính xác và trung thực của đề án nghiên cứu này.
Hà Nội, ngày 28 tháng 04 năm 2024
Tác g
Nguyễn Kim Lương
iả đề án
Trang 4LỜI CẢM ƠN
Trước tiên, tôi muốn bày tỏ lòng biết ơn chân thành và sâu sắc củamình đến các thầy giáo Mai Đình Sinh tại Học viện Kỹ thuật Quân sự và thầygiáo Đặng Trọng Hợp tại Đại học Công nghiệp Hà Nội, những người đã hỗtrợ, khuyến khích và cung cấp cho tôi Các thầy không chỉ là những ngườihướng dẫn mà còn là nguồn động viên, đưa ra những ý kiến quan trọng giúptôi nhìn nhận vấn đề một cách toàn diện hơn Sự tận tâm và chia sẻ kiến thứcsâu rộng của các Thầy đã giúp tôi phát triển khả năng nghiên cứu và làm việcđộc lập
Tôi xin dành lời cảm ơn chân thành tới các thầy cô giáo khoa Côngnghệ thông tin, trường Đại học Công nghiệp Hà Nội đã tận tình đào tạo, chia
sẻ những kiến thức quý báu trong lĩnh vực của mình trong suốt quá trình tôihọc tập và nghiên cứu tại trường
Sau cùng, tôi muốn bày tỏ lòng biết ơn đến tất cả những người thân yêutrong gia đình, đồng nghiệp và bạn bè đã luôn bên cạnh tôi, giúp đỡ, độngviên và khích lệ tôi tham gia chương trình đào tạo sau đại học tại Đại họcCông nghiệp Hà Nội
Tôi xin chân thành cảm ơn!
Trang 5MỤC LỤC
DANH MỤC CÁC TỪ VIẾT TẮT i
DANH MỤC CÁC BẢNG BIỂU ii
DANH MỤC HÌNH ẢNH iii
MỞ ĐẦU 1
I Lý do chọn đề tài 1
II Tổng quan nghiên cứu 2
III Mục tiêu của đề tài 3
IV Nội dung nghiên cứu 3
V Kết cấu đề án 3
CHƯƠNG 1 4
TỔNG QUAN VỀ HỆ THỐNG GỢI Ý 4
1.1 MỘT SỐ KHÁI NIỆM PHỔ BIẾN VỀ HỆ THỐNG GỢI Ý 4
1.2 PHƯƠNG THỨC HOẠT ĐỘNG CỦA HỆ THỐNG GỢI Ý 8
1.3 PHƯƠNG PHÁP TIẾP CẬN KHI XÂY DỰNG HỆ THỐNG GỢI Ý 10
1.3.1 Lọc nội dung 10
1.3.2 Lọc cộng tác 14
1.3.3 Lọc kết hợp/lai ghép (Hybrid) 17
1.4 CÁC TIÊU CHUẨN ĐÁNH GIÁ HỆ GỢI Ý 20
1.4.1 Trung bình lỗi tuyệt đối 20
1.4.2 Lỗi bình phương trung bình 21
CHƯƠNG 2 22
HỆ GỢI Ý DỰA TRÊN LỌC CỘNG TÁC VÀ CÁC PHƯƠNG PHÁP PHÂN CỤM 22
2.1 BÀI TOÁN GỢI Ý DỰA TRÊN CỘNG TÁC 22
2.1.1 Lọc cộng tác dựa vào bộ nhớ 23
2.1.2 Lọc cộng tác dựa vào trên mô hình 26
2.2 SỬ DỤNG KỸ THUẬT PHÂN CỤM KẾT HỢP VỚI HỆ GỢI Ý 29
2.2.1 Phân cụm là gì? 29
2.2.2 Lý do nên sử dụng phân cụm cho hệ gợi ý 30
2.2.3 Cách sử dụng phân cụm cho hệ gợi ý 31
2.2.4 Những thách thức và hạn chế của việc phân cụm cho các hệ thống gợi ý 31
Trang 62.2.5 Lợi ích và cơ hội của việc phân cụm cho hệ gợi ý 32
CHƯƠNG 3 33
LỰA CHỌN MÔ HÌNH HỆ GỢI Ý SỬ DỤNG PHƯƠNG PHÁP PHÂN CỤM MỜ 33
3.1 LỰA CHỌN MÔ HÌNH HỆ GỢI Ý 33
3.1.1 K-means clustering dựa trên item 34
3.1.2 Fuzzy clustering dựa trên user 38
3.2 MỘT SỐ NHẬN XÉT VỀ MÔ HÌNH 42
CHƯƠNG 4 43
CÀI ĐẶT VÀ THỰC NGHIỆM TRÊN MÔ HÌNH LỰA CHỌN 43
4.1 TẬP DỮ LIỆU VÀ THIẾT LẬP MÔI TRƯỜNG 43
4.2 THỰC NGHIỆM VÀ ĐÁNH GIÁ 44
4.2.1 Tổng quan về tập dữ liệu thực nghiệm 44
4.2.2 Cài đặt thực nghiệm và đánh giá kết quả 51
KẾT LUẬN 66
TÀI LIỆU THAM KHẢO 68
Trang 7RMSE
Vấn đề dữ liệu thưaSparsity problem
SP
Độ phù hợpRelevant
IF
Sản phẩm
ItemI
Người dùngUser
Trang 8DANH MỤC CÁC BẢNG BIỂU
Bảng 3.1 Phân cụm của các mục dựa trên hồ sơ của mục với thuật toán
Kmeans 36Bảng 3.2 Mẫu dữ liệu của 15 mục được nhóm vào 4 cụm 38
Trang 9DANH MỤC HÌNH ẢNH
Hình 1.1 Sơ đồ tổng quát của một hệ thống gợi ý 6
Hình 1.2 Ma trận tương tác User - Item 7
Hình 1.3 Cách thức phương pháp lọc cộng tác hoạt động 11
Hình 1.4 Cơ chế hoạt động theo lọc nội dung 12
Hình 1.5 Cơ chế lọc kết hợp 19
Hình 2.1 Quy trình đề xuất dựa trên sự hợp tác 22
Hình 2.2 Lọc cộng tác dựa theo người dùng 24
Hình 2.3 Lọc cộng tác dựa theo sản phẩm 25
Hình 3.1 Biểu đồ của phương pháp đã lựa chọn về hệ thống gợi ý 34
Hình 3.2 Phân bổ người dùng vào 4 cụm với các bậc thành viên khác nhau bằng cách sử dụng Fuzzy C-means 40
Hình 4.1 Dữ liệu đánh giá các bộ phim 46
Hình 4 2 Biểu đồ phân phối điểm đánh giá 47
Hình 4 3 Số lượng phim mà mỗi người dùng xem và đánh giá 47
Hình 4 4 Số lượng đánh giá của mỗi bộ phim 48
Hình 4 5 Số lượng dữ liệu người dùng 48
Hình 4 6 Thông tin về giới tính của người dùng 49
Hình 4 7 Thông tin về tuổi của người dùng 49
Hình 4 8 Dữ liệu về nghề nghiệp của người dùng 50
Hình 4 9 Số lượng bộ phim 50
Hình 4 10 Dữ liệu về các bộ phim 51
Hình 4 11 Thông tin trích xuất từ OMDB API 52
Hình 4 12 Dữ liệu phim sau khi định dạng lại thời gian đánh giá 53
Hình 4 13 Tính toán Net Promoter Score cho từng đánh giá 54
Hình 4 14 Dữ liệu sẵn sàng phần cụm bằng K-means 54
Trang 10Hình 4 15 Lựa chọn số cụm K theo Silhouette Score 55
Hình 4 16 Lựa chọn số cụm K theo Distortion Score 55
Hình 4 17 Lựa chọn số cụm K theo Davies Bouldin 56
Hình 4 18 Lựa chọn số cụm K cho K-means 56
Hình 4 19 Dữ liệu sau khi phân cụm với K-means 57
Hình 4 20 Dữ liệu đầu vào cho việc phân cụm mờ với C-means 57
Hình 4 21 Dữ liệu sau khi phân cụm mờ với C-means 58
Hình 4 22 Sơ đồ mô hình hệ thống gợi ý 58
Hình 4 23 Kết quả gợi ý cho cụm người dùng Cluster 0 59
Hình 4 24 Kết quả gợi ý cho cụm người dùng Cluster 1 60
Hình 4 25 Kết quả gợi ý cho cụm người dùng Cluster 2 60
Hình 4 26 Kết quả gợi ý cho cụm người dùng Cluster 3 61
Hình 4 27 Kết quả gợi ý cho cụm người dùng Cluster 5 61
Hình 4 28 Kết quả gợi ý cho cụm người dùng Cluster 7 62
Hình 4 29 Kết quả gợi ý cho cụm người dùng Cluster 4 62
Hình 4 30 Kết quả gợi ý cho cụm người dùng Cluster 6 63
Hình 4 31 So sánh hiệu suất của bốn thuật toán bằng độ đo RMSE trên tập dữ liệu Movielens [5] 64
Hình 4 32 So sánh kết quả của hệ thống gợi ý đã xây dựng so với hệ thống gợi ý truyền thống 65
Trang 11vụ đa dạng.
Phim điện ảnh, một trong những dịch vụ phổ biến hiện nay, đã và đangthu hút được sự quan tâm đáng kể của khách hàng trên toàn thế giới Theothống kê của Box Office Mojo, một nguồn thông tin quan trọng về doanh sốbán vé và tài chính của các bộ phim trên toàn cầu, thị trường phim sẽ đạt tổngcộng 8 tỷ USD vào năm 2023 với khoảng 500 bộ phim được công chiếu Điềunày cho thấy thị trường này có khả năng kiếm được rất nhiều tiền Tuy nhiên,
sự đa dạng về thể loại và nội dung của phim cũng khiến khách hàng khó lựachọn bộ phim phù hợp
Để khách hàng có thể tiếp cận được với bộ phim mình đang phổ biến
và phù hợp với thị hiếu của mình thì sự tư vấn, gợi ý đóng vai trò rất quantrọng Một hệ thống gợi ý tốt có thể đóng vai trò như một người trung gian hỗtrợ khách hàng đưa ra các quyết định lựa chọn đúng đắn Bằng cách xác định
sở thích, nhu cầu kèm theo những thông tin nhận xét đánh giá của kháchhàng, hệ thống có thể đưa ra một tập các gợi ý giúp cho khách hàng dễ dàngchọn lựa những bộ phim có nội dung yêu thích hơn Qua đó hiệu suất của việckinh doanh được tăng cao một cách đáng kể
Mục tiêu chính của đề án là tạo ra một hệ thống gợi ý phim cho kháchhàng dựa trên những đánh giá của các bộ phim để tối ưu hóa dự đoán mức độ
Trang 12ưa thích của khách hàng đối với các bộ phim và sau đó đề xuất các bộ phim
mà khách hàng có thể quan tâm và ưa thích
II. Tổng quan nghiên cứu
Hệ thống gợi ý (RS) là một phương tiện và phương pháp phần mềmgiúp đề xuất tin tức và hành vi tiêu dùng cho người dùng Chúng tạo ra cácgợi ý tùy chỉnh, đưa ra danh sách các sản phẩm, dịch vụ, hoặc nội dung đượcsắp xếp theo thứ tự ưu tiên dựa trên sở thích cá nhân để dự báo lựa chọn phùhợp nhất với họ Những lựa chọn này bao gồm việc mua sắm, âm nhạc mà họlắng nghe, và tin tức trực tuyến mà họ đọc [1] Hệ thống này giải quyết đượctình trạng ngập lụt thông tin bằng cách cung cấp dịch vụ và nội dung riêngbiệt, phù hợp với nhu cầu và mong muốn của từng người dùng Mục tiêu của
RS là mang đến cho người dùng những đề xuất và ưu đãi cụ thể liên quan đếnnhững sản phẩm hoặc đối tượng mà họ có khả năng quan tâm đến Một ví dụđiển hình là Netflix, họ áp dụng hệ thống gợi ý để phân tích xu hướng và sởthích của người dùng, qua đó giới thiệu các bộ phim phù hợp trên trang webcủa mình để tăng cường trải nghiệm và thu hút lượng người xem lớn hơn [2]
Bạn có thể tạo hệ thống gợi ý bằng nhiều phương pháp và thuật toánkhác nhau Các khuyến nghị dựa trên nội dung, các khuyến nghị hợp tác vàcác phương pháp kết hợp (dựa trên tương tác và dựa trên nội dung) [1] [2],[3] Hệ thống gợi ý dựa trên nội dung cung cấp cho người dùng những món
đồ (mục) tương tự Những hệ thống gợi ý cộng tác người dùng sẽ cung cấpnhững mục tin mà một số người có cùng sở thích đã từng thích Các hệ thốngdựa trên đặc tính, dựa trên hành vi, dựa trên ngữ cảnh, dựa trên kiến thức, dựatrên luật và các hệ thống dựa trên đặc tính khác cũng bao gồm kỹ thuật không
cá nhân hóa [3]
Trang 13III. Mục tiêu của đề tài
Tạo ra một hệ thống gợi ý phim tiên tiến, giúp người dùng tìm được các
bộ phim phù hợp với sở thích cá nhân một cách nhanh chóng và hiệu quả, từ
đó nâng cao trải nghiệm giải trí của họ
IV. Nội dung nghiên cứu
Nghiên cứu, đánh giá ưu/nhược điểm các phương pháp gợi ý phổ biến trong các hệ thống hiện nay: Lọc dựa trên nội dung và Lọc cộng tác
Nghiên cứu về phân cụm mờ và thuật toán Fuzzy C-Means
Thu thập và xử lý dữ liệu đánh giá phim từ người dùng
Nghiên cứu mô hình kết hợp phương pháp Lọc cộng tác với thuật toánphân cụm mờ nhằm tăng hiệu năng, cải thiện tốc độ và độ chính xácgợi ý
Thiết kế và triển khai hệ thống gợi ý dựa trên mô hình đã lựa chọn
Thử nghiệm và đánh giá mô hình
V. Kết cấu đề án
Nội dung Đề án tốt nghiệp gồm các chương và phần chính sau:
Chương 1: Tổng quan về hệ thống gợi ý
Chương 2: Hệ gợi ý dựa trên lọc cộng tác và các phương pháp phân cụm Chương 3: Lựa chọn mô hình hệ gợi ý sử dụng phương pháp phân cụm mờChương 4: Cài đặt, thử nghiệm mô hình đã lựa chọn
Trang 14CHƯƠNG 1 TỔNG QUAN VỀ HỆ THỐNG GỢI Ý
1.1. MỘT SỐ KHÁI NIỆM PHỔ BIẾN VỀ HỆ THỐNG GỢI Ý
Hệ thống đề xuất, hay còn được biết đến dưới tên gọi RecommendationSystem, là một nền tảng sử dụng các kỹ thuật và công nghệ phần mềm hiệnđại để phân tích dữ liệu liên quan đến người dùng và các sản phẩm hoặc dịch
vụ Hệ thống này nhằm mục đích tối ưu hóa sự hài lòng của người dùng bằngcách cung cấp thông tin dựa trên sở thích cá nhân được hình thành từ các hoạtđộng và lựa chọn trước đây của họ Dựa vào việc phân tích sâu sở thích vànhu cầu của người dùng, hệ thống sẽ đề xuất các lựa chọn phù hợp nhất, giúp
họ lựa chọn sản phẩm hoặc dịch vụ mà tương thích nhất với mô hình ưachuộng cá nhân của họ
Chẳng hạn, khi người dùng ghé thăm Amazon, một trang web thươngmại điện tử hàng đầu, họ sẽ được đối mặt với hàng triệu lựa chọn sản phẩm
Hệ thống gợi ý trở thành công cụ không thể thiếu, giúp cá thể hóa dữ liệu và
đề xuất những sản phẩm mà người dùng có thể thích từ một kho dữ liệukhổng lồ Nhiệm vụ của hệ thống này là tận dụng hiểu biết sâu sắc về cơ sở
dữ liệu sản phẩm, thông tin cá nhân người dùng và sự tương tác giữa các sảnphẩm để đưa ra các gợi ý chính xác nhất, nhằm đảm bảo rằng mỗi người dùng
có thể tìm thấy những sản phẩm ưng ý nhất trong thời gian ngắn nhất [7]
Một hệ thống gợi ý hiệu quả thường dựa trên ba yếu tố cơ bản tạo nênkhung sườn của nó: [9]
- Tập hợp người dùng (U): Đây là danh sách chứa các thông tin cá nhân
của người dùng đã đăng ký hoặc được theo dõi bởi hệ thống, ký hiệu là
U={u1,u2, ,up} Những thông tin này có thể bao gồm lịch sử mua hàng,
sở thích, đánh giá sản phẩm, hoặc hành vi duyệt web
Trang 15- Tập hợp mục dữ liệu (I): Tập hợp này chứa thông tin về các sản phẩm
hoặc dịch vụ có sẵn trên hệ thống, thường được đánh dấu bằng các địnhdanh và kèm theo các thuộc tính đặc trưng, được ký hiệu là I={i1,i2, ,iq }
- Tập hợp mối quan hệ (R): Đây là tập hợp các "mối quan hệ" giữa người
dùng và mục dữ liệu, được biểu diễn dưới dạng các cặp (ui, ij) thể hiệnngười dùng ui có quan hệ như thế nào với mục dữ liệu ij Có thể là quaviệc mua hàng, xem sản phẩm, đánh giá hoặc tương tác khác
Hình 1.1 mô tả chi tiết hệ thống gợi ý [7] Trong bối cảnh của một hệthống gợi ý, tập hợp người dùng có thể đa dạng gồm nam giới, nữ giới, và trẻ
em, mỗi đối tượng sở hữu nhu cầu và sở thích riêng Mục dữ liệu là những thứ
có thể tương tác với người dùng, ví dụ như được mua, xem, lựa chọn, đọc,hoặc được đánh giá bởi họ Người dùng, trong vai trò của một yếu tố trong hệthống, có khả năng ảnh hưởng đến mục dữ liệu này Các mối quan hệ giữangười dùng và mục dữ liệu cũng rất phong phú, có thể là sự yêu thích, khaokhát, mua sắm, đọc đánh giá, và các hình thức tương tác khác Hệ thống gợi ýsau đó sẽ sử dụng những thông tin này để cung cấp một danh sách các mục dữliệu được cá nhân hóa, dựa trên sở thích và hành vi của người dùng [7] Mụctiêu cốt lõi của hệ thống gợi ý là chọn lọc và đề xuất một loạt các mục dữ liệuphù hợp, với mục đích không chỉ đáp ứng nhu cầu cơ bản mà còn tinh tế đếnnỗi có thể dự đoán và đáp ứng cả những mong muốn không rõ ràng của ngườidùng, nhằm nâng cao trải nghiệm và sự thỏa mãn của họ đối với hệ thống
Trang 16Hình 1.1 Sơ đồ tổng quát của một hệ thống gợi ý
Hiện nay, phương pháp phản hồi rõ ràng (explicit feedback) và phương pháp phản hồi ngầm (implicit feedback) là hai phương pháp phổ biến nhất để thu thập dữ liệu hồ sơ người dùng (user profile) Để tạo hồ sơ người dùng, hệ
thống sẽ yêu cầu người dùng cung cấp xếp hạng cụ thể cho từng mục dữ liệunếu phương pháp phản hồi rõ ràng Dữ liệu người dùng được truyền trực tiếplên hệ thống tư vấn bằng cách thực hiện các bước chuyển đổi trung gian, vàkết quả tư vấn được coi là đáng tin cậy nhất theo phương pháp này [1]
Mặc dù phương pháp này đưa ra kết quả đề xuất có độ tin cậy tốt hơn,nhưng nó yêu cầu công việc bổ sung trên hệ thống và có thể dẫn đến trảinghiệm kém hơn cho người dùng Ngoài ra, việc sử dụng các kỹ thuật thuthập phản hồi trong thực tế có thể sẽ gặp nhiều khó khăn vì người dùngthường không muốn chia sẻ nhiều thông tin cá nhân
Phương pháp thu thập phản hồi ẩn xử lý thông tin về sở thích của ngườidùng bằng cách ghi nhận các thông tin truy vết mà người dùng tạo ra trên hệthống, chẳng hạn như lịch sử mua hàng, thời gian xem trang web, số lần clickchuột vào các siêu liên kết và lịch sử truy cập trang web Điều này tạo điềukiện thuận lợi để tìm kiếm và khám phá thông tin về sở thích của người dùng
Do yêu cầu hệ thống cần phải phải tiến hành các thao tác chuyển đổi ban
Trang 17đầu để thu thập dữ liệu về hành vi của người dùng, phương pháp phản hồitường minh có khả năng nâng cao trải nghiệm người dùng với hệ thống [1].
Ma trận tương tác User—Item là một tập hợp dữ liệu được lưu trữ chothấy sở thích của mỗi người dùng đối với các sản phẩm trong hệ thống Dữliệu này có thể được hiển thị và lưu trữ trong cơ sở dữ liệu dưới dạng ma trận,trong đó mỗi hàng tương ứng với một người dùng và mỗi cột tương ứng vớimột sản phẩm Giá trị đánh giá của người dùng đối với mặt hàng được hiểnthị trong từng ô của ma trận chính
Hình 1.2 Ma trận tương tác User - Item
Người dùng sẽ thường không đánh giá tất cả những gì họ đã trải qua vì
lý do tâm lý Họ thường chỉ đưa ra đánh giá các mục với tình trạng tích cực,tức là rất thích hoặc tiêu cực Do đó, ma trận tương tác người dùng—sảnphẩm nói trên thường thiếu giá trị ở nhiều ô Đây được coi là vấn đề về sựkhông đầy đủ của dữ liệu hoặc dữ liệu thưa [10] Các phương pháp gợi ý dựatrên bộ nhớ, còn được gọi là các thuật toán khuyến nghị dựa trên bộ nhớ, gặpkhó khăn khi dữ liệu của ma trận tương tác bị thưa [1] Ngoài ra, các hànghoặc cột trong ma trận Người dùng – Sản phẩm sẽ trống hoàn toàn khi cótương tác giữa người dùng hoặc mặt hàng mới trong hệ thống Trong các hệthống khuyến nghị dựa trên cộng tác, Hiện tượng này được biết đến với tên
Trang 18gọi là vấn đề khởi động nguội [10] Khả năng tạo khuyến nghị bằng cách kếthợp các dữ liệu dựa trên sở thích tương tự của các nhóm người dùng và mục
bị hạn chế khi hệ thống đối mặt với các mục không có tương tác
1.2. PHƯƠNG THỨC HOẠT ĐỘNG CỦA HỆ THỐNG GỢI Ý
Thật vậy, khách hàng có khả năng cao sẽ đưa ra quyết định khi muasắm chủ yếu theo hai phương pháp Một là kiểm tra chi tiết các thông tin củasản phẩm, chẳng hạn như tính năng, công dụng và thành phần, tùy thuộc vàonhu cầu sử dụng của họ Trước khi đưa ra quyết định mua sắm, khách hàng cóthể xem xét những gới ý từ những người xung quanh về sản phẩm đó
Hệ thống khuyến nghị mô phỏng lại quá trình đưa ra quyết định muahàng của người dùng bằng hai kỹ thuật chính: gợi ý dựa trên lọc nội dung vàgợi ý dựa trên lọc cộng tác, dựa trên những phát hiện được nêu trên
Phương pháp lọc dựa trên nội dung tận dụng những thông tin tương táctrong quá khứ của người dùng cũng như thông tin về thuộc tính của đối tượng
để xác định các đặc tính có ảnh hưởng đáng kể đến đánh giá của người dùng.Các yếu tố nội dung của sản phẩm và giá trị trọng số 𝑤𝑖 thể hiện mức độ ảnhhưởng lớn của từng thành phần nội dung trong sở thích của người dùng, đượcbiểu diễn bởi vector Profile(U) = (𝑤1, 𝑤2, … , 𝑤𝑛) Khi hệ thống RSsử
dụng kỹ thuật Truy hồi thông tin (IR) để phân tích đối tượng I thành vectortrọng số Content(I) = (𝑤1, 𝑤2, … , 𝑤𝑛) của các thành phần nội dung, quátrình xây dựng profile người dùng giống như vậy
Ví dụ, thông tin liên quan đến một đối tượng thông thường được trìnhbày dưới dạng văn bản, chẳng hạn như một đoạn văn, bài viết hoặc mẩu tinngắn Kỹ thuật IR được sử dụng bởi hệ thống RS để trích xuất đặc tính như từkhóa, n-grams và thực thể để tạo mô hình biểu diễn dạng vector từ khóa củađối tượng [11] Do đó, hệ thống RS ánh xạ cả sở thích của người dùng và nội
Trang 19dung của đối tượng vào cùng một không gian vector, còn được gọi là khônggian thuộc tính của sản phẩm, trong cách tiếp cận lọc dựa trên nội dung.
Trong hệ thống gợi ý, để đo lường sự tương đồng giữa hai vector, độ đocosine thường được sử dụng để đánh giá độ phù hợp giữa sản phẩm I vàngười dùng U
𝑟(𝑈, 𝐼) = 𝑐𝑜𝑠(𝑃⃗
⃗𝑟⃗⃗𝑜⃗
⃗𝑓⃗
⃗𝑖⃗𝑙⃗⃗𝑒⃗⃗(⃗⃗𝑈⃗
⃗) , 𝐶⃗⃗𝑜⃗⃗𝑛⃗⃗𝑡⃗⃗𝑒⃗⃗𝑛⃗
⃗
Trong phương pháp lọc cộng tác, hệ thống gợi tìm kiếm những nhómngười dùng có hành vi "tương đồng" bằng cách phân tích lịch sử tương táccủa họ, được lưu trữ trong ma trận tương tác User – Item Hệ thống gợi ý đưa
ra đánh giá dựa trên độ phù hợp 𝑟(𝑈, 𝐼) giữa người dùng hiện tại 𝑈 và đốitượng 𝐼 bằng cách sử dụng độ phù hợp r(𝑈𝑗, I) của những người dùng 𝑈𝑗khác, có sở thích tương đồng với 𝑈
Trang 20 Phát biểu bài toán gợi ý:
Để giải quyết vấn đề này, ta cần phát triển một hàm 𝑟(𝑢𝑖, 𝑣𝑗) nhằm ướclượng giá trị xếp hạng mà người dùng 𝑢𝑖 đưa ra cho đối tượng 𝑣𝑗 Mục tiêu làlàm cho sai số giữa giá trị dự đoán 𝑟𝑖̂ 𝑗 và các giá trị xếp hạng 𝑟𝑖𝑗 đã biết trong
ma trận tương tác trở nên nhỏ nhất
1.3. PHƯƠNG PHÁP TIẾP CẬN KHI XÂY DỰNG HỆ THỐNG GỢI Ý
Dưới đây là một tổng quan về các phương pháp được sử dụng để xâydựng hệ thống gợi ý, dựa trên nguồn tham khảo
1.3.1. Lọc nội dung
Hệ thống gợi ý ghi lại hồ sơ người dùng dưới dạng vector 𝑢̂ ={𝑢1, 𝑢2, … , 𝑢𝑛}, trong đó 𝑢𝑖 biểu thị sự yêu thích và quan tâm đối với từngchi tiết sản phẩm của người dùng Vector hồ sơ sản phẩm 𝑣̂ = {𝑣1, 𝑣2,
… , 𝑣𝑛}, chứa thông tin chi tiết về sản phẩm bằng các đặc trưng 𝑣𝑖 Do đó, cảthông tin
Trang 21về sản phẩm và thông tin về sở thích của người dùng đều được thể hiện
trên một không gian vector chung bao gồm các đặc trưng của sản phẩm
Hình 1.3 cho thấy góc lệch giữa hai vector hồ sơ được sử dụng để đánh
giá khả năng thích hợp của sản phẩm đối với sở thích của người dùng
Hình 1.3 Cách thức phương pháp lọc cộng tác hoạt động
Phương pháp cosine góc lệch giữa là phương pháp so sánh hai vector𝑢⃗
và 𝑣 được sử dụng để đánh giá độ tương đồng và đưa ra khuyến nghị:
𝑢⃗ 𝑣
∑𝑛 𝑢𝑖 ∙ 𝑣𝑖𝑠𝑖𝑚𝑖𝑙𝑎𝑟𝑖𝑡𝑦 = cos(𝜃)
‖
= 𝑖=1 √∑𝑛 𝑢2 ∙ √∑𝑛
𝑣(1.2)
𝑖=1 𝑖 𝑖=1 𝑖
Trang 22Trong Hình 1.4 dưới đây, chúng ta có thể thấy được tổng quan mô hìnhcủa hệ thống gợi ý dựa trên nội dung:
Hình 1.4 Cơ chế hoạt động theo lọc nội dung
Phương pháp đề xuất dựa trên nội dung mang lại nhiều lợi ích cho hệthống gợi ý (RS), nhất là khi so sánh với phương pháp lọc cộng tác Dưới đây
là một số lợi ích chính:
Một trong những lợi thế lớn của phương pháp đề xuất dựa trênnội dung là khả năng cung cấp gợi ý chính xác và được người dùng chấp nhậncao mà không cần đến lượng lớn dữ liệu từ người dùng Điều này tạo nên sựkhác biệt rõ ràng so với phương pháp lọc cộng tác, trong đó hiệu suất của hệthống gợi ý phụ thuộc nhiều vào việc phân tích và xử lý tập hợp dữ liệu tươngtác lớn từ người dùng để tìm ra các mẫu và quy luật, như xác định sản phẩmđược ưa chuộng
Thứ hai, hệ thống có thể đưa ra gợi ý về sản phẩm mới kể cả khikhông có sẵn dữ liệu tương tác từ người dùng, nhờ vào việc sử dụng thông tin
mô tả sản phẩm Điều này là do cơ chế của phương pháp đề xuất dựa trên nội
Trang 23dung, nơi mà các đề xuất được tạo ra thông qua việc phân tích nội dung sảnphẩm Vì vậy, mỗi khi có một sản phẩm mới được thêm vào hệ thống và sảnphẩm đó có những đặc điểm tương tự với sản phẩm mà người dùng đã quantâm trước đây, hệ thống có khả năng đề xuất những sản phẩm mới này chongười dùng.
Thứ ba, trong trường hợp người dùng có sở thích đặc biệt chomột sản phẩm không mấy phổ biến trong dữ liệu tương tác, hệ thống vẫn cókhả năng nhận diện và hiểu rõ sở thích đó dựa trên nội dung của sản phẩm.Điều này cho phép hệ thống gợi ý các sản phẩm tương tự dựa vào các đặcđiểm nội dung cụ thể, ngay cả khi sản phẩm đó không được nhiều người dùngkhác biết đến hoặc quan tâm
Thứ tư, nhờ vào việc sử dụng giá trị trọng số trong vector hồ sơcủa mô hình, có khả năng tự giải thích cao về sự ảnh hưởng của các đặc trưngđến sở thích của người dùng Các giá trị trọng số lớn hơn báo hiệu mức độquan tâm cao hơn của người dùng đối với sản phẩm và các đặc tính của nó.Điều này cho phép doanh nghiệp tận dụng thông tin này để tối ưu hóa nộidung và tính năng sản phẩm, nhằm phục vụ tốt hơn cho sở thích cá nhân củangười dùng
Hệ thống gợi ý dựa trên nội dung có một số hạn chế, ngoài những ưuđiểm đã nêu, như sau:
Yêu cầu cao về đặc trưng chi tiết của sản phẩm: Hiện chưa cóphương thức thích hợp với độ chính xác cao để trích chọn dữ liệu liên quanđến các sản phẩm đa phương tiện như phim ảnh và âm nhạc Bởi lý do đó, đểtạo được vector đặc trưng cho các thuộc tính của tập sản phẩm này đặcbiệt khó khăn và chất lượng thông tin có thể không cao Phương pháp dựatrên lọc nội dung có thể không hiệu quả khi mô tả không chất lượng hoặc sai
Trang 24 Hiện tượng được gọi là "cứng nhắc" trong kết quả khuyến nghị(tăng chuyên môn): Hệ thống có thể trở nên "cứng nhắc" và gợi ý các sảnphẩm chỉ phù hợp với hồ sơ của người dùng cụ thể mà không tận dụng thôngtin của những người dùng khác có cùng sở thích Vấn đề này có thể gây cảntrở đối với phong phú và đa dạng của các gợi ý.
Bước 1: Độ tương tự của các người dùng được hệ thống tính toán nhưsau:
Trang 25 Những lợi ích của quy trình lọc cộng tác dựa trên bộ nhớ:
Một là, hệ thống gợi ý không yêu cầu xây dựng mô hình ngườidùng hoặc sản phẩm đòi hỏi rất nhiều chuyên gia ngành Đối với các sảnphẩm cụ thể, phương pháp lọc dựa trên cộng tác sử dụng các dữ liệu về sởthích của người dùng Do đó, khi hệ thống RS phát hiện ra những sản phẩmđược ưa thích, nó có thể đưa ra gợi ý trực tiếp cho chúng mà không cần quantâm đến thiết kế hay nội dung cụ thể của chúng Điều này mang lại cho hệthống khả năng cung cấp khuyến nghị cho nhiều loại đối tượng khác nhau
Hai là, hệ thống có thể đưa ra khuyến nghị bằng cách sử dụng dữliệu từ các nhóm người dùng tương tự để xác định khuynh hướng đối với sựyêu thích với mặt hàng của họ
Mặt khác, phương pháp dựa trên bộ nhớ vẫn có những hạn chế:
Hạn chế về tính đặc thù trong khuyến nghị là một vấn đề mà hệthống có thể gặp phải, đặc biệt là trong hệ thống lọc cộng tác Trong mô hìnhnày, việc đề xuất sản phẩm thường dựa trên sự tương đồng của hành vi hoặcđánh giá giữa các người dùng, mà không nhất thiết phản ánh chính xác sởthích cụ thể của mỗi cá nhân Điều này có thể dẫn đến tình trạng một sốkhuyến nghị không chính xác hoặc không hoàn toàn phản ánh được nhu cầuđặc biệt của người dùng, khiến hệ thống không thể cung cấp các gợi ý hoàntoàn phù hợp với mỗi người
Khuyến nghị thiếu dữ liệu và kém chất lượng là một thách thứclớn trong hệ thống lọc cộng tác dựa trên bộ nhớ, đặc biệt khi dữ liệu tương tácgiữa người dùng và sản phẩm trở nên thưa thớt Sự thực là, người dùngthường chỉ để lại đánh giá cho sản phẩm khi họ cảm thấy rất hài lòng hoặckhông hài lòng, điều này dẫn đến việc ma trận tương tác không phản ánhchính xác mức độ quan tâm đa dạng của người dùng đối với sản phẩm Kết
Trang 26quả là, việc sử dụng đo lường cosine để tìm sự tương đồng giữa người dùnghoặc giữa sản phẩm trở nên kém hiệu quả, gây ra việc khuyến nghị khôngchính xác hoặc thiếu độ tin cậy, làm giảm chất lượng tổng thể của các gợi ý.
Chi phí cao cho thời gian tính toán và bộ nhớ: Phương pháp lọccộng tác dựa trên bộ nhớ cần nhiều bộ nhớ và tốn kém Mỗi ma trận tương táccần có một mô hình riêng cho hệ thống Giá trị xếp hạng trung bình của tậpngười dùng có sở thích tương tự với người dùng hiện tại phải được tìm thấytrước khi thực hiện dự đoán giá trị xếp hạng theo công thức (2)
1.3.2.2. Lọc cộng tác dựa trên mô hình (Model-based Collaborative Filtering)
Sự phân biệt tường minh giữa hai nhiệm vụ chính trong phương pháp lọccộng tác phản ánh một cách tiếp cận nhằm giảm thiểu vấn đề về thời gian tínhtoán và yêu cầu bộ nhớ lớn, từ đó tối ưu hóa hiệu quả của hệ thống gợi ý Đầutiên là việc tạo ra mô hình từ dữ liệu huấn luyện, sau đó là việc tính toán kếtquả được gợi ý từ mô hình đã được thiết kế [4] Cụ thể, hệ thống RS sử dụngcác thuật toán học máy để rút gọn quá trình huấn luyện cho mô hình, thểhiện sở thích của người dùng, có hoặc không có giám sát
Sau khi nhận được mô hình này từ quá trình huấn luyện, hệ thống gợi
ý sử dụng nó trực tiếp để tạo ra kết quả khuyến nghị
Phương pháp dựa trên mô hình có ưu điểm so với phương pháp dựatrên bộ nhớ, bao gồm:
Bộ nhớ máy tính được tối ưu: Sau khi huấn luyện mô hình từ dữliệu tương tác, kích thước của mô hình thường giảm đáng kể so với dữ liệugốc Tuy nhiên, phương pháp dựa trên bộ nhớ đòi hỏi phải lưu trữ toàn bộ matrận tương tác trong bộ nhớ máy tính để nó có thể tính toán lại kết quả đề xuấtcho mỗi người dùng
Trang 27 Khả năng tính tốn nhanh: So với phương pháp dựa trên bộ nhớ,tốc độ tính tốn kết quả thường được rút ngắn Điều này là do mơ hình sau khitrainning cĩ kích thước nhỏ, giúp giảm thời gian truy vấn mơ hình so với việctruy vấn dữ liệu huấn luyện tồn diện.
1.3.3. Lọc kết hợp/lai ghép (Hybrid)
Nghiên cứu đã đề xuất kết quả của nghiên cứu để kết hợp các ưu điểmcủa cả hai phương pháp được gợi ý, dựa trên lọc cộng tác và dựa trên lọc nộidung Ngồi ra, một sơ kỹ thuật cụ thể đã được nghiên cứu, cụ thể là:
Lai ghép theo trọng số (Weighted): Để tạo ra một giá trị xếp hạng duy
nhất, hệ thống RS kết hợp giá trị xếp hạng từ cả thuật tốn lọc theo nội dung
và thuật tốn lọc cộng tác Đối với từng phương pháp, phương pháp tính tổngtheo trọng số được sử dụng Hệ thống khuyến nghị tin tức P-tango bao gồmcác khuyến nghị dựa trên nội dung và cộng tác trong nghiên cứu của Claypool
và đồng nghiệp [13] Đầu tiên, kết quả đề xuất của mỗi bộ phận được tínhtrọng số bằng nhau Mặt khác, trọng số sau đĩ kết quả được sử dụng để chỉnhsửa các trọng số được đưa ra bởi mỗi bộ phận Kỹ thuật lai ghép theo trọng số
cĩ ưu điểm là kết quả khuyến nghị rõ ràng
Lai ghép bằng cách chuyển đổi (Switching): Là một kỹ thuật trong hệ
thống gợi ý, nơi hệ thống tự động chuyển đổi giữa các phương pháp khuyếnnghị dựa trên tình huống cụ thể Điều này cho phép hệ thống lựa chọn phươngpháp tốt nhất cho từng ngữ cảnh hoặc mục tiêu cụ thể, tối ưu hĩa độ chính xác
và hiệu quả của gợi ý Một ví dụ điển hình của kỹ thuật này là hệ thốngDailyLearner [14], nơi hệ thống dự đốn sở thích tin tức của người dùng bằngcách chuyển đổi giữa hai mơ hình khác nhau: Nearest Neighbor cho mơ hìnhngắn hạn và Nạve Bayesian Classifier cho mơ hình dài hạn Mỗi mơ hình nàyđược sử dụng tùy thuộc vào loại dữ liệu và tình huống cụ thể, cho phép hệ
Trang 28thống cung cấp kết quả dự đốn với độ tin cậy cao hơn trong từng trường hợp.
Ưu điểm của phương pháp lai ghép bằng cách chuyển đổi là khả năng thíchứng linh hoạt với nhu cầu và hành vi thay đổi của người dùng Ví dụ, mơ hìnhngắn hạn như Nearest Neighbor cĩ thể hiệu quả hơn trong việc phản ánh sởthích cập nhật gần đây của người dùng, trong khi mơ hình dài hạn như NạveBayesian Classifier cĩ thể tốt hơn trong việc nhận diện xu hướng và sở thích
ổn định qua thời gian Sự chuyển đổi thơng minh giữa các mơ hình này giúp
hệ thống gợi ý đáp ứng tốt hơn với các yêu cầu đa dạng và phức tạp của ngườidùng, từ đĩ cải thiện trải nghiệm người dùng và hiệu quả của hệ thống
Lai ghép hỗn hợp (Mixed): Là một cách tiếp cận đa dạng, nơi hệ thống
đưa ra các gợi ý dựa trên kết quả từ nhiều thuật tốn khác nhau cùng một lúc.Điều này cho phép hệ thống tận dụng lợi thế của từng phương pháp cụ thể, từlọc cộng tác đến lọc dựa trên nội dung, và thậm chí là các phương pháp khácnhư phân tích ngữ cảnh hoặc phân cụm, để cung cấp một loạt các đề xuấtphong phú và đa dạng cho người dùng Bằng cách kết hợp các thuật tốn, hệthống cĩ thể cung cấp một danh sách sản phẩm gợi ý mà nắm bắt được sởthích và nhu cầu đa chiều của người dùng Ví dụ, một số gợi ý cĩ thể tậptrung vào sở thích cá nhân dựa trên lịch sử tương tác của người dùng, trongkhi những gợi ý khác cĩ thể khám phá các sản phẩm mới hoặc xu hướng phổbiến dựa trên sự lựa chọn của cộng đồng người dùng rộng lớn
Lai ghép bằng cách kết hợp nhiều đặc tính (Feature combination): Là
một phương pháp tiên tiến trong xây dựng hệ thống gợi ý, nơi các thuật tốnkhuyến nghị sử dụng thơng tin đặc trưng từ nhiều nguồn dữ liệu khác nhau đểđưa ra gợi ý Phương pháp này tận dụng đa dạng thơng tin để tạo ra gợi ýchính xác và cá nhân hĩa cao Một ví dụ điển hình của kỹ thuật này là hệthống Pipper [15], nơi giá trị xếp hạng từ người dùng được sử dụng làm đầuvào cho thuật tốn khuyến nghị dựa trên nội dung Điều này khơng chỉ bao
Trang 29gồm việc xem xét các đánh giá trực tiếp từ người dùng về các sản phẩm nhấtđịnh mà còn kết hợp thêm nhiều loại dữ liệu khác như thông tin mô tả sảnphẩm, thông tin người dùng, thậm chí cả dữ liệu ngữ cảnh như thời gian vàđịa điểm sử dụng sản phẩm, để tạo ra các đề xuất phong phú và đa chiều.
Lai ghép bằng việc xếp tầng (Cascaded): Là một cách tiếp cận trong hệ
thống gợi ý, nơi kết quả từ một thuật toán khuyến nghị được điều chỉnh hoặctinh chỉnh bởi một thuật toán khác Điều này tạo ra một quá trình sàng lọc kếtquả gợi ý qua nhiều giai đoạn, giúp tăng cường độ chính xác và giảm thiểunhiễu trong gợi ý cuối cùng Một ví dụ về cách tiếp cận này là hệ thốngkhuyến nghị nhà hàng Entree Chicago [16], sử dụng hệ thống khuyến nghịdựa trên tri thức FindMe để chỉnh sửa hoặc tinh chỉnh kết quả từ thuật toánlọc cộng tác Trong trường hợp này, FindMe (RS dựa trên tri thức) có thểcung cấp một lớp bổ sung của kiến thức hoặc logic, giúp cải thiện chất lượngcủa gợi ý bằng cách áp dụng những hiểu biết sâu sắc về ngữ cảnh hoặc đặcđiểm cụ thể của nhà hàng được đề xuất
Lai ghép tăng cường đặc tính (Feature Augmentation): Phương pháp
lai ghép này sử dụng cả đầu vào từ dữ liệu thô có sẵn và kết quả của một thuậttoán khuyến nghị để hỗ trợ một thuật toán khuyến nghị khác
Hình 1.5 Cơ chế lọc kết hợp
Trang 301.4. CÁC TIÊU CHUẨN ĐÁNH GIÁ HỆ GỢI Ý
Các nhà nghiên cứu đã đề xuất nhiều tiêu chí đánh giá khác nhau đểphản ánh đầy đủ các trường hợp cụ thể, tùy thuộc vào cách từng ngữ cảnh sửdụng hệ thống khuyến nghị Các tiêu chuẩn đánh giá có thể được chia thànhhai nhóm chính sau đây [1]:
Tiêu chí đánh giá độ chính xác thống kê, còn được gọi là tiêu chí đánhgiá độ chính xác thống kê, tập trung vào việc đánh giá mức độ tương đồnggiữa giá trị xếp hạng được dự đoán bởi thuật toán khuyến nghị và giá trị xếphạng thực tế của người dùng Nhóm này bao gồm các tiêu chí MAE và RMSE(Root Mean Square Error); Netflix thường chọn RMSE để đánh giá trongcuộc thi The Netflix Prize
Mức độ chính xác trong hỗ trợ ra quyết định, còn được gọi là tiêu chíđánh giá độ chính xác trong hỗ trợ ra quyết định, tập trung vào việc sử dụng
hệ thống khuyến nghị để cung cấp danh sách các đối tượng mà người dùng cóthể ưa thích Mối quan tâm chính của người dùng trong ngữ cảnh này là khảnăng hệ thống đưa ra những đối tượng mà họ quan tâm đúng cách, biến bàitoán khuyến nghị thành một bài toán phân loại đối tượng
1.4.1. Trung bình lỗi tuyệt đối
Giá trị sai số tuyệt đối trung bình (MAE) được tính bằng cách lấy giátrị trung bình của các sai số tuyệt đối giữa giá trị xếp hạng thực tế và dự đoán.Điều này được thực hiện bằng cách sử dụng công thức sau đây:
𝑛
1𝑀𝐴𝐸 =
Trang 311.4.2. Lỗi bình phương trung bình
Sai số bình phương trung bình gốc (RMSE) là sai số bình phương trungbình căn bậc hai giữa các giá trị đánh giá thực tế và dự đoán:
Kết luận chương 1: Chương 1 đã trình bày những nội dung cơ bản và
tổng quan về hệ thống gợi ý Chương tiếp theo sẽ thảo luận chi tiết về môhình đề xuất cộng tác sử dụng học máy trong chương tiếp theo và đề xuất một
mô hình cụ thể cho các hệ thống gợi ý, sử dụng thuật toán phân cụm mờ
Trang 32𝑢𝑖 chưa đánh giá hoặc chưa từng biết đến sản phẩm 𝑖𝑗 thì 𝑟𝑖𝑗 = ∅.
Output:
- Ma trận đầy đủ 𝑅, tức là với ∀𝑟𝑖𝑗 ∈ R, 𝑟𝑖𝑗 ≠ ∅
Hình 2.1 Quy trình đề xuất dựa trên sự hợp tác
Hai phương pháp chính được sử dụng là CF dựa trên bộ nhớ (còn đượcgọi là CF dựa trên vùng lân cận) [1] và lọc cộng tác dựa trên mô hình (cònđược gọi là CF dựa trên mô hình)
Trang 33∑𝑛 (𝑟𝑎,𝑖 − 𝑟̅𝑎)(𝑟𝑢,𝑖 − 𝑟̅𝑢)𝑠(𝑎, 𝑢) = 𝑖=1
√∑𝑛 (𝑟𝑎,𝑖 − 𝑟̅𝑎 )
2 √∑𝑛 (𝑟𝑢,𝑖 − 𝑟̅𝑢
Trong đó: 𝑟𝑎,𝑖 là điểm xếp hạng cho mặt hàng 𝑖 của người dùng
𝑎, 𝑟̅𝑎 là điểm xếp hạng trung bình của người dùng 𝑎 cho tất cảcác mặt hàng mà người dùng đã đánh giá
- Bước 2: Tính giá trị đánh giá (rating) dự đoán
∑𝑛 (𝑟𝑢,𝑖 − 𝑟̅𝑢) × 𝑠(𝑎, 𝑢)𝑟(𝑎, 𝑖) = 𝑟̅ + 2
Phương pháp dựa trên người dùng (Hình 2.2) tính toán độ tương
đồng giữa các người dùng dựa trên xếp hạng của họ cho các sảnphẩm tương tự Điều này được thực hiện bằng cách xem xét xếp hạngcủa các mặt hàng tương tự Bằng cách nhân xếp hạng trung bình củamặt hàng đó với trọng số để dự đoán xếp hạng hiện tại của người
Trang 34dùng; điều này chủ yếu dựa trên mức độ tương đồng của người dùnghiện tại với người dùng tương tự.
Phương pháp lọc dựa trên đối tượng (Hình 2.3) tính toán các giá trị
dự đoán dựa trên sự tương đồng của các sản phẩm Lấy tất cả cácmục được người dùng đánh giá hiện tại từ ma trận tương tác để tạo ra
mô hình về sự tương đồng giữa các mục Tiếp theo, đánh giá sựtương đồng giữa mục tiêu và mục được truy xuất Để làm như vậy,lựa chọn k các mặt hàng giống nhau nhất và dự đoán giá trị của chúngbằng cách lấy mức trung bình có trọng số của các đánh giá ngườidùng hiện tại về các mặt hàng giống nhau này
Hình 2.2 Lọc cộng tác dựa theo người dùng
Trang 35Hình 2.3 Lọc cộng tác dựa theo sản phẩm
Hệ số tương quan Pearson [17] và thước đo cosine [17] là những thước
đo tương tự phổ biến khác
- Mức độ hai biến có quan hệ tuyến tính với nhau được đo bằng hệ
số tương quan Pearson:
Trang 36∑𝑖 𝑟𝑢,𝑖𝑟𝑣,𝑖 =
𝑖 𝑣,𝑖
Trang 37Nhìn chung, kỹ thuật lọc cộng tác dựa trên bộ nhớ có nhiều hạn chế,chẳng hạn như nó minh bạch và dễ hiểu Trước hết, thuật toán này thuộcnhóm các phương pháp dựa trên cá thể, vì vậy mô hình dự đoán của nó chỉđược áp dụng cho một người dùng duy nhất Hệ thống phải xây dựng lại môhình từ dữ liệu gốc nếu cần dự đoán cho người dùng mới Điều này có thể gây
ra chi phí tính toán lớn nếu bạn có hàng triệu bản ghi dữ liệu người dùng vàđối tượng Thứ hai, thước đo cosin được sử dụng để đánh giá độ tương tựgiữa hai vectơ Khi một lượng lớn dữ liệu bị mất, biện pháp này trở nênkhông hiệu quả
2.1.2. Lọc cộng tác dựa vào trên mô hình
Lọc cộng tác dựa trên mô hình sử dụng học máy và thuật toán khai thác
dữ liệu để tính trước và dự đoán Sau đó, chiến lược này sử dụng các mô hìnhnày để tính toán trực tiếp các giá trị xếp hạng của người dùng Lọc cộng tácdựa trên mô hình giảm đáng kể chi phí tính toán và yêu cầu bộ nhớ trong khivẫn đạt được độ chính xác tương đương với các phương pháp dựa trên bộ nhớbằng cách sử dụng các phương pháp học máy hiện đại Hơn nữa, khi dữ liệuthưa thớt xảy ra, phương pháp này cũng có thể khắc phục được những hạn chếcủa phương pháp dựa trên bộ nhớ
Một số kỹ thuật lọc cộng tác phổ biến dựa trên mô hình bao gồm:
Luật kết hợp (Associate rules)[18]: là một phương pháp trong khai thác dữ
liệu giúp xác định các mối quan hệ giữa các vật phẩm trong một tập dữliệu lớn Cụ thể, thuật toán luật kết hợp phân tích các giao dịch để tìm racác quy tắc có thể dự đoán sự xuất hiện của một mục (item B) dựa trên sựxuất hiện của một hoặc nhiều mục khác (item A) trong cùng một giao dịch.Một quy tắc kết hợp thường được biểu diễn dưới dạng A → B, nghĩa là khi
Trang 38A xuất hiện, B cũng thường xuyên xuất hiện Điều này giúp cho việc tạo racác mô hình dự đoán từ dữ liệu giao dịch Ví dụ, nếu người mua thườngmua sữa và bánh mì cùng nhau, luật kết hợp sẽ nhận dạng mối quan hệ này
và có thể dùng nó để đề xuất sản phẩm cho người mua trong tương lai Cácthuật toán khai thác luật kết hợp có khả năng tạo ra các mô hình có kíchthước nhỏ hơn so với bộ dữ liệu gốc, giúp cải thiện hiệu quả về mặt tínhtoán và bộ nhớ lưu trữ Đây là một phương pháp đã được chứng minh là cóhiệu quả cao trong việc phân tích và khám phá dữ liệu, đặc biệt là trongcác ứng dụng liên quan đến việc đề xuất sản phẩm và dịch vụ theo sở thíchcủa người dùng
Phân cụm (Clustering)[19]: là một kỹ thuật quan trọng trong nhiều lĩnh
vực như nhận dạng mẫu, xử lý hình ảnh, phân tích dữ liệu thống kê vàkhám phá tri thức Thuật toán phân cụm phân chia một tập dữ liệu lớnthành các nhóm con, hay cụm, dựa trên độ tương tự của các đối tượngtrong dữ liệu Mục tiêu là tạo ra các cụm với sự tương tự cao bên trongcụm và sự tương tự thấp giữa các cụm khác nhau Trong hệ thống gợi ý,phân cụm có thể được dùng để nhóm các người dùng có sở thích tương tự.Điều này cho phép hệ thống dự đoán sở thích của một người dùng dựa trênđánh giá trung bình của nhóm mà người dùng đó thuộc về Nếu một ngườidùng thuộc về nhiều nhóm khác nhau, hệ thống có thể đề xuất sản phẩmdựa trên sự giao thoa của các sở thích trong các nhóm này K-mean là mộttrong những thuật toán phân cụm phổ biến nhất, chia tập hợp mục thành
K cụm, dựa trên các tính năng của dữ liệu Đây là một phương pháp họckhông giám sát, tức là không cần đến nhãn dữ liệu trước khi thực hiệnphân cụm Bản đồ tự tổ chức (SOM) là một kỹ thuật khác dựa trên mạngnơ-ron thần kinh nhân tạo và học không giám sát SOM làm việc bằngcách chuyển đổi không gian đa chiều của dữ liệu thành không gian hai
n
Trang 39chiều, giữ lại cấu trúc topological của dữ liệu ban đầu Trong thuật toándựa trên hợp tác, phân cụm có thể giúp giảm số lượng cụm ứng viên, làmcho việc tính toán trở nên hiệu quả hơn bằng cách giảm kích thước của matrận người dùng-mục đích cần xem xét, từ đó tăng cường hiệu suất của hệthống gợi ý.
Cây quyết định (Decision tree)[12]: là một công cụ mạnh mẽ và dễ hiểu
trong lĩnh vực học máy, được sử dụng để thực hiện các nhiệm vụ phân loại
và hồi quy Chúng hoạt động bằng cách phân tích một tập hợp dữ liệuhuấn luyện đã được gắn nhãn, từ đó xây dựng một mô hình dạng cây vớicác nút đại diện cho các quyết định dựa trên thuộc tính của dữ liệu và các
lá của cây đại diện cho kết quả phân loại hoặc giá trị đầu ra Thuật toáncây quyết định sử dụng mô hình cây này để phân loại hoặc dự đoán đầu racho các mẫu dữ liệu mới không có trong tập huấn luyện Một trong những
ưu điểm chính của cây quyết định là tính trực quan và dễ hiểu; chúng chophép chúng ta dễ dàng theo dõi cách một quyết định được đưa ra thôngqua một loạt các câu hỏi và quyết định dựa trên các thuộc tính dữ liệu Sovới các thuật toán phức tạp khác như Mạng nơ-ron nhân tạo (ANN) vàMáy vector hỗ trợ (SVM), cây quyết định thường được coi là dễ hiểu hơnnhiều bởi vì chúng thể hiện các quyết định và phân loại dữ liệu một cách
rõ ràng và logic Một điểm mạnh khác của cây quyết định là khả năng xử
lý dữ liệu hỗn hợp – tức là, chúng có thể đồng thời xử lý dữ liệu số (liêntục) và danh mục (phân loại) mà không cần phải chuyển đổi hay tiền xử lý
dữ liệu một cách phức tạp Thậm chí, chúng còn có khả năng xử lý dữ liệuthiếu một cách hiệu quả, một tính năng quan trọng trong các tình huống
mà dữ liệu thực tế thường không hoàn chỉnh Cây quyết định có thể được
sử dụng trong rất nhiều ứng dụng từ phân tích tín dụng, dự đoán khách
Trang 40hàng tiềm năng, đến chẩn đoán y tế và nhiều ngành khác, làm cho nó trởthành một công cụ đa năng trong học máy và phân tích dữ liệu
Mạng neural nhân tạo (Artificial Neural Network – ANN)[13]: Mạng
nơ-ron là một cấu trúc gồm nhiều nút thần kinh được kết nối thành các lớp.Các trọng số được sử dụng để xác định mức độ ảnh hưởng của mỗi nút đốivới các nút lân cận của nó Mạng nơ-ron có thể mô phỏng các mối quan hệphức tạp trong dữ liệu và giống như các hàm phi tuyến Tuy nhiên, nhượcđiểm của mạng nơron là hiệu suất của chúng phụ thuộc rất nhiều vào cấutrúc của mạng, và là một thách thức để tìm ra cấu trúc mạng tối ưu
Hồi quy (Regression)[14]: Đây là một phương pháp phổ biến để nghiên
cứu mối quan hệ giữa các biến giải thích và các biến phụ thuộc Điềuchỉnh đường cong, dự báo và kiểm tra giả thuyết thống kê là một sốphương pháp hồi quy phổ biến Các xu hướng ẩn trong các tập dữ liệu nhưtuyến tính, parabol và v.v có thể được tìm thấy bằng cách sử dụng kỹthuật nội suy đường cong
2.2. SỬ DỤNG KỸ THUẬT PHÂN CỤM KẾT HỢP VỚI HỆ GỢI Ý
2.2.1. Phân cụm là gì?
Phân cụm là một kỹ thuật Học máy nhằm mục đích nhóm các điểm dữliệu tương tự lại với nhau dựa trên các đặc điểm chung của chúng Trong bốicảnh của các hệ thống khuyến nghị, việc phân cụm có thể là một công cụmạnh mẽ để phân chia người dùng hoặc các mục thành các nhóm riêng biệt cócác sở thích hoặc thuộc tính chung Bằng cách này, hệ thống có thể cung cấpcác đề xuất được cá nhân hóa, có mục tiêu hơn, nâng cao trải nghiệm tổng thểcủa người dùng Ví dụ: xem xét một hệ thống đề xuất phim Bằng cách sửdụng các kỹ thuật phân cụm, những người dùng có sở thích hoặc kiểu xemphim tương tự có thể được xếp vào các cụm Mỗi cụm đại diện cho một phân