Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)Khai thác tính bất ngờ trong tư vấn thông tin (Luận văn thạc sĩ)
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM TP HỒ CHÍ MINH
Nguyễn Thị Út
KHAI THÁC TÍNH BẤT NGỜ TRONG TƯ VẤN THÔNG TIN
LUẬN VĂN THẠC SĨ MÁY TÍNH
Thành phố Hồ Chí Minh - 2017
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM TP HỒ CHÍ MINH
Nguyễn Thị Út
KHAI THÁC TÍNH BẤT NGỜ TRONG TƯ VẤN THÔNG TIN
Chuyên ngành: Khoa học máy tính
Trang 3Tôi xin cam đoan đây là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn khoa học của TS Nguyễn An Tế Các thông tin và số liệu của luận văn có nguồn gốc rõ ràng, cụ thể, các trích dẫn theo đúng quy định
Kết quả nghiên cứu của luận văn hoàn toàn trung thực, khách quan và chưa từng được sử dụng hay công bố trong bất kỳ công trình nghiên cứu nào khác
TP Hồ Chí Minh tháng 9 năm 2017
Học viên
Nguyễn Thị Út
Trang 4Lời đầu tiên, tôi xin bày tỏ lòng biết ơn chân thành và sâu sắc nhất đến Thầy Nguyễn An Tế - giảng viên hướng dẫn luận văn Trong quá trình tìm hiểu và nghiên cứu đề tài, tôi đã gặp rất nhiều khó khăn, nhưng nhờ Thầy luôn động viên, hết lòng hướng dẫn và giúp đỡ nên tôi đã hoàn thành luận văn này
Tôi cũng xin gửi lời cảm ơn chân thành đến quý Thầy/Cô – Trường Đại học
Sư phạm TP.HCM đã tận tâm dạy dỗ và truyền đạt những kiến thức quý báu trong quá trình học tập Đồng thời, tôi cũng xin cảm ơn Ban chủ nhiệm khoa Công nghệ Thông tin và phòng Sau đại học đã hỗ trợ và tạo điều kiện cho tôi trong thời gian qua
Cuối cùng, tôi xin bày tỏ lòng biết ơn sâu sắc đến gia đình đã luôn động viên
và giúp đỡ tôi trong suốt quá trình học tập cũng như thực hiện luận văn
TP Hồ Chí Minh tháng 9 năm 2017
Học viên thực hiện
Nguyễn Thị Út
Trang 5Trang phụ bìa
Lời cam đoan
Lời cảm ơn
Mục lục
Danh mục thuật ngữ và viết tắt
Danh mục các bảng
Danh mục hình vẽ
Chương 1 GIỚI THIỆU 1
1.1 Đặt vấn đề 1
1.2 Mục tiêu của luận văn 5
1.3 Nội dung thực hiện 5
1.4 Bố cục của luận văn 6
Chương 2 HỆ THỐNG TƯ VẤN 7
2.1 Các hệ thống tư vấn 7
2.1.1 Phương pháp lọc theo nội dung (Content based Filtering - CbF) 7
2.1.2 Phương pháp lọc cộng tác (Collaborative Filtering - CF) 10
2.1.3 Lai ghép các phương pháp 18
2.2 Các hệ thống tư vấn theo hướng bất ngờ 20
Chương 3 CHẤT LƯỢNG CỦA THÔNG TIN TƯ VẤN 23
3.1 Độ chính xác (precision) 24
3.2 Độ đa dạng (diversity) 26
3.3 Độ mới lạ (novelty) 27
3.4 Độ ngạc nhiên (unexpectedness) 29
Trang
Trang 63.5.1 Định nghĩa tính bất ngờ 33
3.5.2 Độ đo bất ngờ 34
3.5.3 Các thuật toán tư vấn theo hướng bất ngờ 35
Chương 4 TƯ VẤN THÔNG TIN BẤT NGỜ DỰA TRÊN CÁCH TIẾP CẬN LAI GHÉP 40
4.1 Cách tiếp cận lai ghép để tạo những thông tin tư vấn bất ngờ 40
4.2 Độ đo tính bất ngờ của danh sách tư vấn 41
4.3 Các bước tạo danh sách tư vấn bất ngờ dựa trên HASR 46
Chương 5 THỰC NGHIỆM 48
5.1 Qui trình thực nghiệm 48
5.1.1 Dữ liê ̣u 49
5.1.2 Phương pháp thực hiện 49
5.1.3 Độ đo sử dụng để so sánh hiệu quả của các thuật toán 51
5.2 Kết quả thực nghiệm và phân tích 52
5.2.1 Thực nghiệm 1: So sánh độ bất ngờ của các thuật toán 52
5.2.2 Thực nghiệm 2: So sánh độ chính xác của các thuật toán 53
5.2.3 Thực nghiệm 3: So sánh F-measure 54
5.2.4 Thực nghiệm 4: Phân tích tác động của β đối với độ đo F-measure và tác động của α đối với độ đo bất ngờ 56
Chương 6 TỔNG KẾT 58
6.1 Kết luận 58
6.2 Hướng phát triển 58
TÀI LIỆU THAM KHẢO 61
Trang 7CbF Content – based Filtering
Trang 8Bảng 2.1 Minh họa ma trận đánh giá 11
Bảng 3.1 Phân biệt tính bất ngờ với tính mới lạ và ngạc nhiên 31
Bảng 4.1 Ví dụ về ma trận đánh giá 43
Bảng 4.2 Một ví dụ khác của ma trận đánh giá 45
Trang 9Hình 2.1 Minh họa hai cách thành lập cộng đồng G(u) của NSD u 13
Hình 2.2 Cách tiếp cận của hệ thống tư vấn điển hình 22
Hình 2.3 Cách tiếp cận của hệ thống tư vấn bất ngờ 22
Hình 3.1 Ví dụ về 5 điểm số ratings trong tư vấn phim 25
Hình 3.2 Sơ đồ biểu diễn mối quan hệ giữa các tính chất của items 32
Hình 3.3 Sơ đồ các bước thực hiện của thuật toán SRH 35
Hình 3.4 Sơ đồ các bước thực hiện của thuật toán Inno 37
Hình 4.1 Thể hiện của ma trận đánh giá bằng đồ thị 44
Hình 4.2 Thể hiện khác của ma trận đánh giá 45
Hình 4.3 Các bước trong cách tiếp cận HASR 46
Hình 5.1 So sánh độ bất ngờ giữa các thuật toán 52
Hình 5.2 So sánh độ chính xác giữa các thuật toán 54
Hình 5.3 So sánh F-measure giữa các thuật toán 55
Hình 5.4 Tác động của β đến độ đo cân bằng E-measure 56
Hình 5.5 Tác động của α đối với độ bất ngờ của các tư vấn 57
Trang 10Chương 1 GIỚI THIỆU
Chương 1 sẽ trình bày một số vấn đề đã thúc đẩy việc tìm hiểu và tiến hành nghiên cứu về việc khai thác tính bất ngờ trong tư vấn thông tin Tiếp theo đó, chương mở đầu này cũng sẽ giới thiệu những mục tiêu, nội dung nghiên cứu và bố cục trình bày của luận văn
1.1 Đặt vấn đề
Với sự phát triển nhanh chóng và phổ biến của Internet, ngày càng có nhiều thông tin tràn ngập trên mạng Internet Đối mặt với một khối lượng thông tin khổng lồ như vậy, sẽ rất khó khăn cho người sử dụng (NSD) trong việc chọn lọc ra những thông tin
phù hợp với nhu cầu thật sự của từng cá nhân Các hệ thống tư vấn (Recommender Systems - RSs) được triển khai ứng dụng trong nhiều lĩnh vực khác nhau đóng một vai
trò cực kỳ quan trọng trong việc giảm bớt vấn đề quá tải thông tin [34] bằng cách cung
cấp cho NSD những thông tin về hàng hoá hay dịch vụ (gọi chung là items) phù hợp với
đặc trưng hay nhu cầu riêng của từng cá nhân RSs được áp dụng thành công trong nhiều lĩnh vực khác nhau, từ những ứng dụng truyền thống ban đầu như tư vấn phim của MovieLens và Netflix, tư vấn sách của Amazon và cho đến những ứng dụng tư vấn gần đây như du lịch, các mối quan hệ trên mạng xã hội, thương mại di động, nghệ thuật, học trực tuyến, y khoa, … [22], [30], [31]
Nhiều công trình nghiên cứu đã đề xuất những cách tiếp cận cho RS và đa số được
chia thành hai loại chính: Phương pháp lọc dựa vào nội dung (Content based Filtering - CbF) và phương pháp lọc dựa vào sự cộng tác (Collaborative Filtering - CF) [22], [30],
[31]
Trang 11Cách tiếp cận dựa trên nội dung CbF (xem phần 2.1.1) sử dụng các thuộc tính hay đặc trưng của items để tạo ra những thông tin tư vấn, và trong cách tiếp cận này mỗi
NSD sở hữu một hồ sơ đặc trưng (profile) gồm nhiều loại thông tin khác nhau như tuổi
tác, nghề nghiệp, giới tính, sở thích Sau đó, NSD sẽ thường xuyên nhận được những items phù hợp với đặc trưng hay sở thích của cá nhân nhờ vào việc hệ thống đã thực hiện sự so khớp giữa profile của NSD và các items Ngược lại, NSD cần phải cung cấp
cho hệ thống những ý kiến phản hồi (feedback) hay những đánh giá (ratings) trên các
items đã nhận được để hệ thống có thể cập nhật profile một cách đúng đắn [22] Hay nói cách khác, phương pháp này xem xét những lựa chọn của NSD trong quá khứ để gợi ý những items mà có thể hữu ích đối với NSD trong tương lai Ví dụ, nếu NSD xem bộ phim Star War I và II thì hệ thống sẽ đề xuất bộ phim Star War III và bất kỳ bộ phim khoa học viễn tưởng nào có liên quan đến thể loại này, hay liên quan đến các diễn viên trong những bộ phim này
Nhìn chung, các hệ tư vấn dựa vào CbF cũng khá đơn giản và rõ ràng, song vẫn còn tồn tại một vài hạn chế Thứ nhất, CbF thiếu sự đa dạng của các items được tư vấn,
do phương pháp CbF chỉ tư vấn những items tương tự với profile của NSD, do đó những items mà có nội dung khác biệt hay chưa từng xuất hiện trong profile sẽ không được tư vấn Ví dụ, nếu một người chưa bao giờ lựa chọn một bộ phim kinh dị trước đây thì hệ thống sẽ không tư vấn bất kỳ bộ phim kinh dị nào cho NSD này, mặc dù NSD này có
thể thích phim kinh dị Thứ hai, vấn đề cold – start, đối với NSD mới (new user), mà có
ít đánh giá trên items, RS dựa vào CbF sẽ khó có thể đưa ra các tư vấn chính xác
Hiện nay, cách tiếp cận dựa trên sự cộng tác CF (xem phần 2.1.2) đang phát triển rất mạnh và chiếm ưu thế Cách tiếp cận này xem xét các đánh giá của NSD trên các items Trong các hệ thống dựa vào CF, các đánh giá của NSD trên những items được
lưu trữ trong một ma trận đánh giá R (rating matrix), gồm các r u,i thể hiện điểm số của
NSD u dành cho item i Với mỗi NSD, hệ thống sẽ xác định cộng đồng cho người này
dựa trên độ tương đồng giữa vectơ điểm số của NSD này với các vectơ điểm số của
những NSD khác trong ma trận R Sau khi xác định được cộng đồng cho NSD u, người
này sẽ được hệ thống tư vấn những items mà cộng đồng của mình cho điểm cao (thể
Trang 12hiện sự ưa thích) [35] Cách tiếp cận CF sẽ tư vấn những items đa dạng hơn vì thông qua cộng đồng của mình, NSD có thể nhận được những items mà họ chưa hề biết trước
đó Ví dụ, đối với NSD mà chưa xem bất kỳ bộ phim hài nào trước đó, thì phương pháp
CF vẫn có thể tư vấn những bộ phim hài cho NSD này nếu những phim hài này đã được những người trong cộng đồng ưa thích
Ưu điểm của phương pháp CF chính là sự chia sẻ thông tin giữa những NSD, đồng thời hệ thống có thể bỏ qua giai đoạn phân tích nội dung, không cần phải so khớp giữa
profile và items mà chỉ cần dựa trên ma trận đánh giá Từ đó, CF giải quyết được vấn đề
lối mòn trong khai thác, bởi vì thông qua cộng đồng của mình, NSD có thể khám phá thêm những chủ đề mới, lĩnh vực mới, chưa từng được thể hiện trong profile mà có thể rất thú vị [35]
Bên cạnh đó, nguyên tắc của cách tiếp cận lai ghép (hybrid) (xem phần 2.1.3) là
sự kết hợp của nhiều phương pháp tư vấn khác nhau để tạo ra sự hỗ trợ qua lại giữa những ưu và khuyết điểm của từng phương pháp riêng lẻ [7], [10] Ví dụ, với ưu điểm
là khả năng chia sẻ thông tin, phương pháp CF có thể khắc phục được khuyết điểm của phương pháp CbF về lối mòn trong khai thác
Phần lớn các thuật toán tư vấn hiện nay được đề xuất nhằm để cải thiện độ chính xác của các tư vấn Vì vậy, để duy trì độ chính xác tốt, nhiều hệ tư vấn có xu hướng chỉ
tư vấn những items có liên quan và tương đồng với các lựa chọn trước đó của NSD Những tư vấn như vậy thường có độ chính xác cao và dễ dàng được chấp nhận Tuy nhiên, việc quá tập trung vào độ chính xác có thể hạn chế những lựa chọn của NSD, do
hệ thống chỉ tư vấn những items tương tự với lựa chọn trước đó Vì vậy, NSD có thể cảm thấy nhàm chán với những items quá quen thuộc như vậy và họ mong muốn những
tư vấn khác, mới mẻ hơn, lạ lẫm hơn, đặc biệt trong những lĩnh vực như giải trí (phim ảnh, âm nhạc, du lịch, thời trang, …) Hơn nữa, một vài danh sách tư vấn có thể đơn
giản đến mức quá hiển nhiên (obvious), thậm chí NSD có thể tự tìm thấy mà không cần
đến sự hỗ trợ của các hệ thống tư vấn [20], [34]
Trang 13Nói tóm lại, ngoài độ chính xác của thông tin tư vấn, ngày càng có nhiều công trình quan tâm và đề xuất những khái niệm khác nhau về chất lượng của danh sách tư
vấn như độ bao phủ (coverage), độ đa dạng (diversity), độ mới lạ (novelty), độ ngạc nhiên (unexpectedness) và độ bất ngờ (serendipity) [2], [8], [9] Mỗi khái niệm này có
liên quan tới những khía cạnh khác nhau của chất lượng tư vấn Ví dụ, độ bao phủ tập trung vào tỷ lệ phần trăm của những items được tư vấn, trong khi đó sự mới mẻ quan tâm tới việc tạo ra những tư vấn mới lạ cho NSD… Hầu hết các khái niệm nêu trên không quan tâm tới các tư vấn có hữu ích hay hấp dẫn đối với NSD hay không Hay nói cách khác, hầu hết các khái niệm trên đều không quan tâm đến các ý kiến phản hồi của NSD, ngoại trừ tính bất ngờ [13] Việc xem xét sự hài lòng của NSD đối với các tư vấn bất ngờ là chìa khoá quan trọng để tư vấn thành công, do đó luận văn sẽ tập trung chủ yếu vào tính bất ngờ trong tư vấn thông tin
Việc tư vấn những items bất ngờ đặt ra nhiều vấn đề cho các nhà nghiên cứu vì những lý do sau [20]:
Thứ nhất, khó có sự thống nhất về định nghĩa của tính bất ngờ trong RSs, vì vậy
sẽ dẫn đến cách đo tính bất ngờ không đồng nhất;
Thứ hai, tính bất ngờ bao gồm cả cảm xúc chủ quan của NSD và do đó, rất khó để
đưa ra lý do rõ ràng tại sao NSD cho rằng một item có tính bất ngờ;
Thứ ba, những tư vấn bất ngờ ít xảy ra hơn những tư vấn có liên quan, vì những
items bất ngờ không chỉ có liên quan mà còn mới lạ và vượt ngoài sự mong đợi của NSD [20]
Vì vậy, để nắm bắt và thực hiện những tư vấn thông tin bất ngờ trong thực tế sẽ có phần khó khăn hơn những tư vấn hướng đến những yếu tố chất lượng khác
Tóm lại, xu thế hiện nay của RSs là nhắm đến sự đa dạng, mới mẻ và bất ngờ của thông tin tư vấn, không chỉ đơn thuần giới hạn ở độ chính xác
Trang 141.2 Mục tiêu của luận văn
Dựa trên những vấn đề của các hệ tư vấn đã nêu ở trên, mục tiêu của luận văn là nghiên cứu một cách tiếp mới về tính bất ngờ trong tư vấn thông tin Tính bất ngờ được thể hiện qua việc xem xét các đánh giá của những NSD trong cộng đồng Ví dụ, nếu NSD chưa từng xem phim Star War nhưng phim này được cộng đồng đánh giá cao, thì
có nhiều khả năng phim này sẽ được NSD ưa thích Bên cạnh đó, tính bất ngờ còn được thể hiện thông qua sự tương đồng giữa profile của NSD và nội dung mô tả items Chẳng hạn như, nếu NSD chưa từng thể hiện sự yêu thích hay đánh giá trên bất kỳ thể loại nào của phim Star War thì khi đó việc gợi ý bộ phim này cho NSD cũng sẽ có khả năng được NSD đánh giá cao
1.3 Nội dung thực hiện
Nhằm đạt được những mục tiêu đã nêu trên, về mặt lý thuyết luận văn sẽ tiến hành nghiên cứu những công trình liên quan đến các hệ thống tư vấn theo hướng bất ngờ Những công việc cụ thể bao gồm:
• Tìm hiểu các định nghĩa và độ đo tính bất ngờ trong các công trình nghiên cứu trước đây
• Tìm hiểu sự khác nhau giữa tính bất ngờ và với các khái niệm liên quan khác
• Tìm hiểu cách xây dựng danh sách tư vấn thông qua các phương pháp
• Tìm hiểu các cách tiếp cận để cải thiện danh sách tư vấn bất ngờ
• So sánh những cách tiếp cận theo hướng bất ngờ trong các công trình nghiên cứu trước đây, từ đó sẽ đề xuất một cách tiếp cận mới để đo độ bất ngờ trong lĩnh vực
tư vấn phim
Về mặt thực nghiệm, cách tiếp cận do luận văn đề xuất sẽ được thử nghiệm trên
bộ dữ liệu mẫu của lĩnh vực tư vấn thông tin, ví dụ như MovieLens [23] được xem là một trong những bộ dữ liệu chuẩn để tiến hành những thực nghiệm trong phạm vi của luận văn
Trang 15Quá trình thử nghiệm của luận văn sẽ được tiến hành theo những bước chính sau:
• Chuẩn bị dữ liệu
• Xây dựng quy trình thử nghiệm (protocol)
• Tiến hành thử nghiệm theo phương pháp offline
• Phân tích và đánh giá kết quả
1.4 Bố cục của luận văn
Bố cục của luận văn được tổ chức thành sáu chương như sau:
Chương 1 giới thiệu tổng quan về những vấn đề của RSs hiện nay, nêu lên mục
tiêu, nội dung nghiên cứu và bố cục của luận văn
Chương 2 trình bày các RS truyền thống với những cách tiếp cận như: lọc theo
nội dung, lọc cộng tác và lai ghép các phương pháp, cũng như giới thiệu các RS theo hướng bất ngờ
Chương 3 trình bày các tiêu chí để đánh giá chất lượng của thông tin tư vấn và tập
trung chủ yếu vào tính bất ngờ
Chương 4 giới thiệu cách tiếp cận lai ghép cho các thông tin tư vấn bất ngờ do
luận văn đề xuất
Chương 5 trình bày quá trình tiến hành cũng như kết quả thử nghiệm của cách tiếp
cận đã đề xuất trên bộ dữ liệu MovieLens Những đánh giá và phân tích cũng được trình bày nhằm giúp cho việc áp dụng cách tiếp cận đã đề xuất
Chương 6 là phần kết luận và phác thảo một số hướng phát triển trong tương lai
của luận văn
Trang 16Đa số RSs hiện nay dựa trên ba cách tiếp cận chính: Thứ nhất là các hệ thống dựa
vào CbF, tư vấn những items tương đồng với những gì mà NSD ưa thích trong quá khứ
Thứ hai là phương pháp CF, tư vấn những items dựa vào những ý kiến đánh giá trong cộng đồng của NSD Thứ ba là cách tiếp cận lai ghép kết hợp cả hai phương pháp trên
để tận dụng ưu điểm và hạn chế nhược điểm của từng cách tiếp cận [3]
2.1.1 Phương pháp lọc theo nội dung (Content based Filtering - CbF)
Phương pháp CbF gợi ý cho NSD những items tương đồng về mặt nội dung của những gì mà NSD đã thích, đã mua, đã xem hay đã đánh giá trong quá khứ [22], [30],
[31] Trong cách tiếp cận này, mỗi NSD sẽ sở hữu một hồ sơ đặc trưng (profile) mô tả
chủ yếu những sở thích hay sự quan tâm của NSD
Trang 17Sau khi đã khởi tạo profile, hệ thống sẽ so khớp thông tin mô tả trong profile và phần biểu diễn nội dung của items để dự đoán mức độ ưa thích của NSD dành cho những items đó
Từ trước đến nay, nhiều nhóm nghiên cứu đã đề xuất những mô hình có thể được
áp dụng cho hệ thống CbF và trong phần này, luận văn sẽ trình bày một phương pháp khá đơn giản và phổ biến nhất, là cách tiếp cận dựa trên mô hình không gian vectơ, kế
thừa từ lĩnh vực tìm kiếm thông tin (Information Retrieval - IR) Trong cách tiếp cận
này, mỗi item và mỗi profile sẽ lần lượt được biểu diễn bằng các vectơ Để ước lượng
độ tương đồng giữa hai vectơ biểu diễn cho item và profile, phương pháp này thường sử dụng công thức cosine của góc tạo bởi hai vectơ [22]
Độ tương đồng và khoảng cách giữa vectơ profile 𝑝⃗ và item 𝑖⃗ thường được tính dựa trên cosine như sau:
-1 thì item i trái ngược hoàn toàn với sở thích và nhu cầu của NSD và khoảng cách tiến
về 1
Ví dụ, ta có vectơ profile biểu diễn mức độ yêu thích của NSD u dành cho các thể
loại phim như sau (giá trị dương là yêu thích, giá trị âm là không yêu thích):
Trang 18Action Adventure Children Comedy Horrior
phim hài hước Từ đó để xác định phim Star War có phù hợp để tư vấn cho NSD u hay
không thì hệ thống CbF sẽ tính độ tương đồng của hai vectơ thông qua độ đo cosine như sau:
𝑠𝑖𝑚(𝑢, 𝑆𝑡𝑎𝑟𝑊𝑎𝑟) = 𝑐𝑜𝑠𝑖𝑛𝑒(𝑢, 𝑆𝑡𝑎𝑟𝑊𝑎𝑟) =0.3 + 0.6 − 0.5
√1.35 √3 = 0.19 Ứng với độ tương đồng của hai vectơ, từ công thức (2.2) ta suy ra được khoảng
cách giữa profile của NSD u với nội dung của phim Star War như sau:
Trang 19Bên cạnh đó, các items được tư vấn dựa theo CbF rất ít khi thể hiện được tính đa dạng và bất ngờ vì NSD có thể dễ dàng hình dung trước hệ thống sẽ tư vấn những items
có nội dung tương tự như những items mà họ đã thích trước đó Ví dụ, nếu NSD thích phim tình cảm thì hệ thống RS áp dụng CbF sẽ chỉ tư vấn những phim thuộc thể loại tình cảm và điều này có thể gây nên sự nhàm chán cho NSD vì NSD không có cơ hội để khám phá những thể loại mới có thể rất thú vị mà trước đây họ chưa từng biết đến Hay nói cách khác, các hệ thống dựa vào CbF thường gặp phải vấn đề về lối mòn trong khai
thác (over-specialization) Vì vậy, một số hệ thống CbF tìm cách loại bỏ những items
mà quá tương tự với những items mà NSD đã từng đánh giá trước đây Việc sử dụng các độ đo để giảm bớt các items không cần thiết đã được Zhang và cộng sự đề xuất [38], [39], một item được xem là có liên quan nếu item này chứa một số thông tin cần thiết cho NSD
Tóm lại, vấn đề về lối mòn trong khai thác và thiếu tính bất ngờ là hai hạn chế quan trọng của các hệ thống tư vấn dựa vào CbF
2.1.2 Phương pháp lọc cộng tác (Collaborative Filtering - CF)
Cách tiếp cận CF là một trong những cách tiếp cận phổ biến nhất hiện nay Ý tưởng chính của cách tiếp cận này là tìm những NSD có cùng sở thích với NSD đang xét để tạo lập cộng đồng [35] Những người trong cộng đồng là những người cùng đánh giá những items giống nhau và có sở thích tương tự nhau Những NSD như vậy tạo thành
những láng giềng (neighborhood) hay lân cận của NSD đang xét Không giống như cách
tiếp cận CbF, thường sử dụng nội dung của những items đã được đánh giá trước đó của NSD để tạo ra các tư vấn, cách tiếp cận CF dựa vào các đánh giá của cộng đồng để đưa
ra các tư vấn cho NSD [15]
Cách tiếp cận CF vượt qua được một số mặt hạn chế của cách tiếp cận CbF Ví dụ, những items mà nội dung không có sẵn hay khó để rút trích đặc trưng thì vẫn có thể được tư vấn cho NSD thông qua các đánh giá của những NSD khác trong cộng đồng
Trang 20Ngoài ra, các hệ thống dựa vào CF có thể tư vấn những items có nhiều nội dung đa dạng khác nhau, miễn là những items này được những NSD trong cộng đồng ưa thích
Phương pháp CF được xem là một trong những cách tiếp cận thành công nhất cho việc xây dựng RSs [11], [35] Ý tưởng của cách tiếp cận này dựa vào ma trận đánh giá, trong đó những NSD và items lần lượt được biểu diễn ở các hàng và các cột của ma trận (xem Bảng 2.1) Mỗi ô của ma trận thể hiện đánh giá hay mức độ yêu thích của NSD dành cho item Những ô trống là trường hợp NSD chưa đánh giá items tương ứng
Bảng 2.1 Minh họa ma trận đánh giá
f: User x Item → Rating
Trong hàm f ở trên, Rating là thang điểm đánh giá của NSD dành cho item Thang
điểm này sẽ phụ thuộc vào từng hệ thống, ví dụ như giá trị rating nằm trong khoảng từ
1 (tương ứng với không thích) đến 5 (tương ứng với rất thích) hoặc chỉ hai giá trị (thích
hoặc không thích) Việc dự đoán trong CF là ước lượng các f (user, item) chưa được đánh giá bởi NSD Ví dụ, theo như ma trận trong Bảng 2.1 thì NSD u 1 đã đánh giá ba phim Titanic, Spider man và Bad Boys với lần lượt các số điểm là 4, 5, 5 và đánh giá
của NSD u 1 dành cho phim Star War là chưa biết, do đó RS cần dự đoán số điểm mà u 1
Trang 21sẽ dành cho bộ phim này để quyết định có nên tư vấn phim Star War cho NSD hay không
Việc quyết định hai NSD có phải là láng giềng trong cùng một cộng đồng hay không sẽ tùy thuộc vào độ tương đồng giữa các ratings của họ Hiện nay, các thuật toán
CF được chia thành hai nhóm chính, nhóm dựa vào cách thức xây dựng và khai thác
cộng đồng, hay còn được gọi là nhóm thuật toán dựa trên bộ nhớ (memory based) và nhóm thuật toán dựa trên mô hình (model based) [6], [22]
2.1.2.1 Cách tiếp cận dựa vào bộ nhớ
Cách tiếp cận dựa vào bộ nhớ (memory-based) hay còn được gọi là cách tiếp cận dựa vào láng giềng (neighborhood – based), tập trung chủ yếu vào việc khai thác mối
quan hệ giữa những NSD hoặc những items với nhau Trong cách tiếp cận này, các tư vấn được tạo ra bằng cách dựa vào đánh giá của những NSD trong cộng đồng có cùng
sở thích với NSD đó Nếu một item được cộng đồng ưa thích thì item này sẽ được tư vấn cho NSD Cách tiếp cận này không cần quá trình huấn luyện, bởi vì việc tư vấn dựa vào ratings của những láng giềng gần nhất với NSD đang được xét Hai phương pháp được sử dụng trong cách tiếp cận dựa vào bộ nhớ là cách tiếp cận dựa vào NSD và cách tiếp cận dựa vào item
Trong phương pháp dựa vào người dùng (user-based), để tìm các láng giềng gần
nhất của NSD, cách tiếp cận này sử dụng độ đo tương đồng (hay khoảng cách) giữa những NSD để tính độ tương đồng Các độ đo phổ biến nhất hiện nay gồm có độ tương đồng dựa vào tương quan Pearson, cosine hay khoảng cách Euclidean, … [6] Công thức
tính độ tương đồng giữa hai NSD u và v dựa vào tương quan Pearson được định nghĩa
như sau:
𝑠𝑖𝑚(𝑢, 𝑣) = ∑𝑖∈𝐼𝑢,𝑣(𝑟𝑢,𝑖 − 𝑟̅𝑢).(𝑟𝑣,𝑖− 𝑟̅𝑣)
√∑𝑖∈𝐼𝑢,𝑣(𝑟𝑢,𝑖− 𝑟̅𝑢)2√∑𝑖∈𝐼𝑢,𝑣(𝑟𝑣,𝑖− 𝑟̅𝑣)2 (2 3) Trong công thức (2.3), 𝐼𝑢,𝑣 là tập những items mà cả hai NSD u và 𝑣 cùng đánh
giá, 𝑟𝑢,𝑖 là rating của NSD 𝑢 dành cho cho item 𝑖, 𝑟̅𝑢 là rating trung bình của NSD u trên
Trang 22tất cả các items Giá trị của công thức tính tương quan Pearson sẽ nằm trong đoạn [-1,1] Nếu độ tương đồng của hai NSD là 1 có nghĩa là các ratings của họ dành cho những items chung là hoàn toàn giống nhau Ngược lại, nếu độ tương đồng có giá trị là -1 thì hai NSD có sự khác biệt lớn trong cách đánh giá các items chung
Xét ma trận đánh giá trong Bảng 2.1, giả sử hệ thống muốn tính độ tương đồng của hai NSD 𝑢1và 𝑢5 thì đầu tiên hệ thống cần xác định danh sách các phim mà cả hai NSD đã cùng đánh giá, là {Titanic, Spider man, Bad Boys} Trung bình đánh giá của
𝑢1 và 𝑢5 lần lượt là 4.67 và 2.75 điểm Áp dụng công thức (2.3), ta có độ tương đồng
𝑢1 và 𝑢5 được tính như sau:
𝑠𝑖𝑚(𝑢1, 𝑢5) = (4 − 4.67)(2 − 2.75) + (5 − 4.67)(3 − 2.75) + (5 − 4.67)(5 − 2.75)
√(4 − 4.67) 2 + (5 − 4.67) 2 + (5 − 4.67) 2 √(2 − 2.75) 2 + (3 − 2.75) 2 + (5 − 2.75) 2
= 0.76
Giá trị 0.76 cho thấy u 1 và u 5 có sở thích tương đồng với nhau Hệ thống cần tính
độ tương đồng giữa NSD u với tất cả những NSD còn lại trong cộng đồng Đối với bài toán tạo ra danh sách tư vấn top-N, ta cần tìm k NSD tương đồng nhất, nghĩa là hệ thống chọn lấy k láng giềng gần nhất (k-Nearest Neighborhood – kNN) với NSD u hoặc sẽ lựa chọn những NSD v có khoảng cách nhỏ hơn một ngưỡng 𝜀 (threshold) với NSD u, tức
là sim (u, v) < 𝜀 như trong Hình 2.1, để thành lập cộng đồng G(u) của NSD u Sau đó, kết hợp với những người trong cộng đồng để tạo ra top-N items được đánh giá nhiều
u dựa trên top k =3
Hình 2.1 Minh họa hai cách thành lập cộng đồng G(u) của NSD u
Trang 23Cuối cùng, để dự đoán rating của NSD u dành cho item i, hệ thống sẽ có nhiều
cách thực hiện Cách đầu tiên và đơn giản nhất là lấy trung bình cộng ratings của các
thành viên trong cộng đồng G(u) dành cho item i như trong công thức (2.4)
𝑟̂𝑢,𝑖 = 1
𝑁 ∑ 𝑟𝑣,𝑖
𝑣 𝜖𝐺(𝑢)
(2 4)
Tuy nhiên, với cách lấy trung bình theo công thức trên thì mức độ ảnh hưởng của
các thành viên trong cộng đồng G(u) đối với NSD u đã được cho là hoàn toàn giống nhau, nhưng trên thực tế, những láng giềng càng gần với NSD u thì mức độ tin cậy hay mức độ ảnh hưởng của họ đến rating của NSD u càng cao Ngoài ra, một số NSD có xu
hướng khắt khe trong việc chấm điểm nên cho điểm thấp hơn so với những NSD khác
Do đó, Breese và các cộng sự [6] đã đề xuất một công thức dự đoán đánh giá của NSD
u dành cho item i (công thức 2.5) phù hợp hơn và công thức này hiện nay vẫn còn đang
được sử dụng rất rộng rãi trong các thuật toán CF:
𝑟̂𝑢,𝑖 = 𝑟̅𝑢+∑𝑣 𝜖𝐺(𝑢)𝑠𝑖𝑚(𝑢, 𝑣) (𝑟𝑣,𝑖− 𝑟̅𝑣)
∑𝑣 𝜖𝐺(𝑢)|𝑠𝑖𝑚(𝑢, 𝑣)| (2 5)
Trong công thức (2.5), G(u) là cộng đồng của NSD u, 𝑟̅𝑢 là rating trung bình của
NSD u trên tất cả các items, sim (u, v) thể hiện độ tương đồng của hai NSD u và v, phần
mẫu số trong công thức (2.5) được dùng để chuẩn hóa giá trị dự đoán
Xét ma trận đánh giá trong Bảng 2.1, NSD u 1 chưa đánh giá phim Star War, ta cần
dự đoán rating của NSD u 1 đối với phim Star War (phim thứ 2 trong Bảng 2.1) Ta có trung bình đánh giá của u 1 là 4.67, cộng đồng của u 1 gồm những NSD đã đánh giá phim thứ 2 là G(1) = {u2, u4, u5} với rating trung bình lần lượt là 2.67, 4 và 2.75 Độ tương đồng Pearson của u 1 với những NSD trong cộng đồng G(1) lần lượt là {-0.98; 0; 0.76}
Áp dụng công thức (2.5) để dự đoán rating của u 1 đối với phim thứ 2 trong thuật
toán CF dựa vào cộng đồng, ta có:
𝑟̂1,2 = 4.67 +(−0.98)(2 − 2.67) + 0(4 − 4) + 0.76(1 − 2.75)
Trang 24Sau khi dự đoán rating của NSD, giai đoạn tiếp theo là tạo ra các tư vấn top-N, nghĩa là một tập hợp gồm N items đứng đầu danh sách sẽ là những items mà được dự
đoán là NSD sẽ quan tâm nhiều nhất Ví dụ, khi NSD đăng nhập tài khoản vào trang Web của Amazon thì danh sách những quyển sách mà NSD quan tâm sẽ được giới thiệu
[11] Kỹ thuật tư vấn top-N phân tích ma trận đánh giá R để tìm ra mối quan hệ giữa
những NSD hoặc giữa những items và sau đó sử dụng để đưa ra các tư vấn [31]
Các hệ thống CF sử dụng phương pháp user-based rất thành công trong quá khứ song vẫn còn tồn tại những hạn chế như vấn đề dữ liệu thưa (sparsity) [19] Trong thực
tế, nhiều RSs được sử dụng để đánh giá những bộ dữ liệu lớn (ví dụ như tư vấn sách của Amazon) Trong những hệ thống như vậy, NSD có thể đánh giá dưới 1% trên tổng số những items có sẵn của hệ thống (1% trên tổng số 2 triệu quyển sách là 20.000 quyển sách) Chính vì vậy, hệ thống dựa vào thuật toán láng giềng gần nhất kNN có thể không đưa ra được bất kỳ tư vấn nào cho NSD Vì vậy độ chính xác không được đảm bảo [13] Không giống như cách tiếp cận dựa vào người dùng, cách tiếp cận dựa vào item
(item-based) xem xét tập hợp những items mà đã được cộng đồng đánh giá và tính độ
tương đồng giữa những items đó Sau đó, những items tương đồng nhất sẽ được lựa chọn để tư vấn cho NSD Mặt khác, cách tiếp cận dựa vào item dự đoán rating của NSD
u dành cho item i dựa vào các đánh giá của NSD u dành cho các items tương tự với item
i Đối với cách tiếp cận này, hai items được xem là tương tự với nhau nếu một số NSD
trong hệ thống đều đã đánh giá những items này giống nhau
Việc tính độ tương đồng trong thuật toán CF dựa vào items sử dụng độ đo cosine
có một nhược điểm rất lớn là sự chênh lệch trong việc đánh giá các items của những NSD khác nhau không được quan tâm Hơn nữa, do thói quen đánh giá của NSD khác nhau, nhiều NSD thích cho điểm cao trên những items mà họ thích trong khi những NSD khác có phần khắt khe và thích cho điểm thấp mặc dù những items có cùng chất lượng
như nhau Do đó, độ đo tương đồng cosine đã được điều chỉnh (adjusted cosine similarity) để khắc phục nhược điểm này, bằng cách trừ đi trung bình đánh giá của NSD
Trang 25trên những items tương ứng Công thức tính độ tương đồng cosine điều chỉnh giữa item
i và j như sau:
𝑠𝑖𝑚(𝑖, 𝑗) = ∑𝑢∈𝑈𝑖,𝑗(𝑟𝑢,𝑖 − 𝑟̅𝑢).(𝑟𝑢,𝑗 − 𝑟̅𝑢)
√∑𝑢∈𝑈𝑖,𝑗(𝑟𝑢,𝑖− 𝑟̅𝑢)2√∑𝑢∈𝑈𝑖,𝑗(𝑟𝑢,𝑗− 𝑟̅𝑢)2 (2 6) Trong công thức (2.6), 𝑈𝑖,𝑗 là tập hợp những NSD đã cùng đánh giá item i và j, 𝑟̅𝑢
là trung bình đánh giá của NSD u Công thức tính độ tương đồng cosine điều chỉnh giữa items i và j tương tự với độ đo tương đồng Pearson trong công thức (2.3), ngoại trừ việc
trừ đi đánh giá trung bình của NSD tương ứng
Tóm lại, ưu điểm chính của cách tiếp cận dựa trên bộ nhớ là khá đơn giản trong việc cài đặt, không cần tốn chi phí cho quá trình huấn luyện, điều này được thực hiện thường xuyên trong các ứng dụng thương mại có quy mô lớn [11] Đôi khi ở giai đoạn
tư vấn có thể tốn chi phí nhiều hơn so với các phương pháp khác nhưng những láng
giềng gần nhất của NSD có thể được tính trước (off-line) nên có thể cung cấp các tư vấn
một cách nhanh nhất Hơn nữa, việc lưu trữ các láng giềng này đòi hỏi rất ít bộ nhớ, chính vì vậy cách tiếp cận này có thể áp dụng trên các tập dữ liệu gồm hàng triệu NSD
và items Ở một hình thức đơn giản nhất, cách tiếp cận này chỉ cần điều chỉnh một tham
số (số lượng láng giềng được sử dụng để dự đoán), giúp NSD có thể dễ dàng hiểu được tại sao họ lại nhận được nhưng items tư vấn như vậy, cũng như mối quan hệ giữa họ với cộng đồng [11]
Cuối cùng, cách tiếp cận này có được sự ổn định do không cần phải huấn luyện lại cho hệ thống Cách tiếp cận này ít bị ảnh hưởng khi thêm những NSD, những items và các đánh giá của NSD Một khi độ tương đồng giữa những NSD đã được tính thì hệ thống dựa vào NSD có thể dễ dàng đưa ra các tư vấn cho những NSD mới mà không cần huấn luyện lại hệ thống
2.1.2.2 Cách tiếp cận dựa vào mô hình
Ý tưởng chính của cách tiếp cận dựa vào mô hình (model based) là hệ thống sử dụng các ratings trước đây của NSD để xây dựng mô hình dự đoán lưu trữ sẵn (offline),
Trang 26sau đó mô hình này sẽ được áp dụng để dự đoán rating và đưa ra danh sách tư vấn trực tuyến một cách tốt nhất có thể được [6], [22] Ví dụ, hệ thống có thể xây dựng mô hình
gom nhóm (cluster model) để chia tập NSD thành k nhóm theo mức độ tương đồng Tiếp theo, việc xác định cộng đồng cho NSD mới trở thành bài toán phân lớp (classification)
Cách tiếp cận dựa trên mô hình có thể sử dụng rất nhiều phương pháp khác nhau
để xây dựng mô hình dự đoán bằng các phương pháp xác suất thống kê hay các phương
pháp học máy (machine learning) Trong mô hình dự đoán được xây dựng theo hướng
tiếp cận xác suất do Breese và cộng sự đề xuất [6], mỗi rating chưa biết giá trị sẽ được
dự đoán dựa vào công thức sau:
𝑟̂𝑢,𝑖 = ∑ 𝑗 Pr(𝑟𝑢,𝑖 = 𝑗|𝑟𝑢,𝑖′, 𝑖′ ∈ 𝐼𝑢)
𝑛 𝑗=0
(2 7)
Trong công thức (2.7), 𝑟̂𝑢,𝑖 là rating chưa biết và cần được dự đoán của NSD u đối với item i Phương pháp này giả định thang điểm đánh giá là từ 0 đến n Như vậy, j là
rating sẽ thuộc đoạn [0, n], 𝐼𝑢 là danh sách các items mà NSD u đã đánh giá Việc dự
đoán giá trị của 𝑟̂𝑢,𝑖 được chuyển thành bài toán tính xác xuất có điều kiện như sau: tìm
xác suất để NSD u sẽ đánh giá điểm j cho item i khi biết các ratings trước đó của NSD
u
Để giải quyết bài toán xác suất trên, các tác giả đã đề xuất sử dụng mô hình gom
nhóm và mạng Baysian (Baysian networks) Trong mô hình đầu tiên, những NSD có sự
tương đồng trên quan điểm đánh giá sẽ được gom vào các nhóm tương ứng Số lượng nhóm đã được xác định trước và dựa vào việc học các dữ liệu có sẵn Như vậy, việc xác định nhóm và việc dự đoán rating của NSD trên một item sẽ được dựa trên các ratings của những người thuộc về cùng nhóm Trong mô hình mạng Baysisan, mỗi item sẽ được biểu diễn thành một node trong mạng và mô hình thể hiện sự phụ thuộc, mối liên hệ giữa các node (items) [31] Đây là hình thức phân nhóm items thay vì phân nhóm những NSD
Trang 27Như vậy, thông qua việc xây dựng mô hình dự đoán offline, các thuật toán dựa trên mô hình thường đưa ra kết quả dự đoán rất nhanh tại thời điểm được yêu cầu, mặc
dù RS phải tốn chi phí cho quá trình huấn luyện để xây dựng mô hình dự đoán Do đó, các phương pháp dựa trên mô hình thường được lựa chọn trong trường hợp tốc độ tư vấn là một yếu tố quan trọng
Nói tóm lại, phương pháp CF được áp dụng rộng rãi trong phần lớn các RS vì phương pháp này không đòi hòi tri thức của lĩnh vực ứng dụng cũng như không cần phải phân tích nội dung items Hơn nữa, việc tạo danh sách tư vấn với phương pháp CF giúp NSD có khả năng khám phá các items thuộc lĩnh vực mới mà họ chưa từng biết đến [35] Tuy nhiên, một trong những hạn chế của phương pháp CF là chỉ đạt kết quả tốt hơn những cách tiếp cận khác khi hệ thống có đủ số lượng các ratings của NSD để thực hiện việc tư vấn Nói một cách cụ thể hơn, chất lượng của những RS dựa vào CF thường
bị giảm sút đáng kể nếu gặp phải vấn đề dữ liệu thưa, khi một NSD đánh giá quá ít items hay một item nhận được rất ít ratings từ những NSD Hiện tượng này làm cho hệ thống không có đủ số lượng các ratings để tính toán độ tương đồng giữa những NSD với nhau,
từ đó không thể gom nhóm và xây dựng cộng đồng theo tiêu chí ratings
2.1.3 Lai ghép các phương pháp
Cách tiếp cận lai ghép (Hybrid Approach) được xây dựng dựa trên việc kết hợp
hai hay nhiều kỹ thuật của RS để giải quyết các mặt hạn chế của một kỹ thuật đơn lẻ cũng như khai thác ưu điểm của từng cách tiếp cận [7], [10] Phương pháp cộng tác CF
sử dụng các đánh giá của những NSD trong cộng đồng để đưa ra các tư vấn Trong khi
đó, phương pháp dựa vào nội dung CbF sử dụng đánh giá của từng NSD kết hợp với mô
tả nội dung của items để đưa ra tư vấn Những phương pháp này có những điểm mạnh
và điểm yếu khác nhau Ví dụ, phương pháp CF gặp phải vấn đề về new items nên không
thể đưa ra dự đoán cho các items chưa được đánh giá Trong khi đó, điều này không phải là điểm hạn chế của cách tiếp cận CbF do việc dự đoán trên các items mới dựa vào các mô tả hay đặc trưng có sẵn của các items Sử dụng cách tiếp cận lai ghép ta có thể
tránh được những hạn chế và những vấn đề của RSs thuần túy như vấn đề cold-start
Trang 28[10] Việc kết hợp các cách tiếp cận có thể tiến hành theo những cách khác nhau [3] như
sau: thứ nhất, thực hiện riêng biệt từng thuật toán rồi tổng hợp kết quả với nhau Thứ hai, sử dụng một số quy tắc của cách tiếp cận CbF trong cách tiếp cận CF và ngược lại Cuối cùng, tạo ra RS hợp nhất của các cách tiếp cận Dựa trên ý tưởng của cách tiếp cận
lai ghép, luận văn đề xuất một cách tiếp cận lai ghép mới giữa CbF và CF để tạo danh sách các thông tin tư vấn bất ngờ (xem chương 4)
Robin Burke [7] giới thiệu một số phương pháp lai ghép có thể được áp dụng để tạo ra danh sách tư vấn như weighted, switching, mixed hybrid, …
• Weighted hybrid: mỗi phương pháp P j sẽ gán cho item i một giá trị dự đoán prediction j (i) Như vậy giá trị prediction(i) cuối cùng sẽ được tính bằng công thức sau:
𝑝𝑟𝑒𝑑𝑖𝑐𝑡𝑖𝑜𝑛(𝑖) = ∑ 𝑤𝑗 𝑝𝑟𝑒𝑑𝑖𝑐𝑡𝑖𝑜𝑛𝑗(𝑖)
𝑗
Cách lai ghép weighted cần phải xác định các trọng số 𝑤𝑗 của từng phương pháp
và ta có thể thấy giá trị dự đoán cuối cùng không phụ thuộc vào thứ tự thực hiện các phương pháp, và có khả năng hiệu chỉnh vai trò của các phương pháp thông qua việc điều chỉnh trọng số 𝑤𝑗 Khuyết điểm của cách lai ghép này là vai trò của các phương pháp đều được kết hợp với nhau thông qua giá trị trọng số đã định sẵn và khi thay đổi từng ngữ cảnh
• Switching hybrid: được xây dựng dựa trên các chiến lược lai ghép, hệ thống sử dụng
một số tiêu chí để chuyển đổi giữa các kỹ thuật tư vấn Đầu tiên, phương pháp CbF được thực hiện đầu tiên, nếu hệ thống dựa vào nội dung không thể tạo ra tư vấn đủ độ tin cậy
thì tư vấn CF được sử dụng để thay thế Việc lựa chọn áp dụng một phương pháp P j phụ
thuộc vào các quy luật đã được định trước Như vậy, giá trị prediction(i) cuối cùng được tính bởi phương pháp P j được chọn Đặc điểm của phương pháp này là cần phải xác định các luật hay các tiêu chí để lựa chọn các phương pháp và giá trị dự đoán cuối cùng không phụ thuộc vào thứ tự thực hiện các phương pháp Hạn chế của cách lai ghép này là độ phức tạp và chi phí để xác định các luật lựa chọn phương pháp cao [7]
Trang 29• Mixed hybrid: khai thác toàn bộ kết quả (gộp chung) của tất cả các phương pháp P j Kết quả cuối cùng có thể được trình bày chung cho tất cả các phương pháp, hoặc trình bày riêng kết quả của từng phương pháp Ưu điểm của phương pháp mixed là thỏa mãn những NSD có nhu cầu nhận được càng nhiều thông tin càng tốt và góp phần giải quyết được vấn đề khi có những items mới xuất hiện trong hệ thống thì những items này chưa được đánh giá bởi bất kỳ NSD nào và do đó hệ thống sẽ không biết tư vấn các items mới
này cho NSD nào Khuyết điểm của mixed hybrid là các kết quả từ các phương pháp có
thể mâu thuẫn với nhau [7]
Nhìn chung, đa số RSs áp dụng phương pháp CF thường chỉ dựa trên những ratings
có sẵn của một nhóm người trong cộng đồng để dự đoán mức độ ưa thích của NSD dành cho các items và cho rằng sự ưa thích là cố định, không thay đổi theo thời gian Trong thực tế, mặc dù sở thích của NSD có thể khá bền vững nhưng mức độ yêu thích của NSD dành cho một items có thể bị thay đổi rất lớn bởi nhiều yếu tố tác động như thời gian Trong khi đó, các cách tiếp cận CF truyền thống chỉ quan tâm đến việc đưa ra các
tư vấn chính xác mà chưa quan tâm đến sự hài lòng của NSD Do đó, hiện nay đã có rất nhiều nghiên cứu đề xuất để tích hợp yếu tố bất ngờ trong việc đánh giá các tư vấn (xem phần 2.2)
2.2 Các hệ thống tư vấn theo hướng bất ngờ
Các hệ thống tư vấn theo hướng bất ngờ có thể được phân loại phụ thuộc vào dữ liệu mà RSs sử dụng (CbF, CF, Hybrid) hay dựa vào kiến trúc của các thuật toán tư vấn
Ta có thể phân loại các cách tiếp cận theo hướng bất ngờ thành ba loại [20]:
• Reranking
Để cải thiện tính bất ngờ, thuật toán reranking tận dụng các ratings dự đoán của
cách tiếp cận theo hướng chính xác như truyền thống (xem phần 2.1) và sau đó xếp hạng lại kết quả của danh sách tư vấn Thuật toán theo hướng chính xác tìm những item có
liên quan đến NSD, trong khi đó thuật toán reranking gán điểm số xếp hạng thấp đối
với các tư vấn hiển nhiên (thiếu tính bất ngờ) [38]
Trang 30• Modification
Cách tiếp cận modification theo hướng hướng bất ngờ, thể hiện cách tinh chỉnh các
thuật toán theo hướng chính xác để cải thiện độ bất ngờ Sự khác nhau chính giữa
modification và reranking là thuật toán reranking có thể sử dụng với bất kỳ thuật toán
theo hướng chính xác nào, chỉ cần gán điểm số xếp hạng đối với những items, trong khi
đó, modification chỉ có thể áp dụng đối với một số thuật toán nhất định Ví dụ, cách tiếp cận k láng giềng xa nhất (k-furthest neighbor) là modification của thuật toán k láng giềng
gần nhất (kNN) Thay vì gợi ý những items được yêu thích bởi những NSD tương tự với NSD đang xét thì thuật toán k láng giềng xa nhất gợi ý những items không được yêu thích bởi những NSD trong cộng đồng [20]
• New
Thuật toán mới lạ (novelty) bao gồm các thuật toán tư vấn theo hướng bất ngờ
nhưng không dựa vào bất kỳ thuật toán theo hướng chính xác phổ biến nào Những cách tiếp cận từ thuật toán này rất đa dạng và sử dụng những kỹ thuật khác nhau Một trong những ví dụ điển hình là thuật toán TANGENT [20], dò tìm các nhóm NSD có cùng sở thích và đồng thời tư vấn những items được yêu thích bởi những NSD trong nhóm NSD đang xét và những nhóm khác Những items được tư vấn có liên quan đến các lựa chọn của NSD và có khả năng trở nên bất ngờ vì những items này được lựa chọn bởi những NSD từ những nhóm khác chứ không chỉ giới hạn trong những nhóm của NSD đang xét [39]
Nhìn chung, ta có thể cải tiến độ bất ngờ của tư vấn ở những giai đoạn khác nhau của quá trình tư vấn như: tiền xử lý dữ liệu đầu vào của thuật toán theo hướng chính xác
để cải thiện tính bất ngờ (pre-filtering), cải thiện độ bất ngờ trong giai đoạn tạo ra tư vấn (modeling) và cuối cùng là xếp hạng kết quả của các thuật toán theo hướng chính xác (post-filtering)
Trang 31Sự khác nhau giữa cách tiếp cận của hệ thống tư vấn thông thường so với hệ thống
tư vấn theo hướng bất ngờ được thể hiện như Hình 2.2 và Hình 2.3 [40] Chương 3 sẽ trình bày chi tiết hơn về vấn đề chất lượng của danh sách tư vấn
Hình 2.2 Cách tiếp cận của hệ thống tư vấn điển hình
Hình 2.3 Cách tiếp cận của hệ thống tư vấn bất ngờ
Trang 32Chương 3 CHẤT LƯỢNG CỦA THÔNG TIN TƯ VẤN
Chương 3 sẽ giới thiê ̣u một số yếu tố hay tiêu chí để đánh giá chất lượng của thông tin tư vấn và qua đó phân biệt tính bất ngờ với các khái niệm liên quan khác Đồng thời, chương này cũng trình bày một số công trình nghiên cứu theo hướng bất ngờ đã đề xuất trước đây
Khi nói đến việc đánh giá chất lượng của RSs, hầu hết các phương pháp đều tập trung vào độ chính xác Mặc dù, RSs với độ chính xác cao có thể thu được những kết quả đáng kể trong lĩnh vực IR [13], tuy nhiên, một hệ thống với độ chính xác cao như vậy thì có đủ để đánh giá chất lượng của thông tin tư vấn hay chưa? Để trả lời cho câu hỏi này, ta xét một ví dụ trong lĩnh vực tư vấn phim như sau: NSD rất thích phim hành động thì hệ thống lúc nào cũng tư vấn cho NSD các phim hành động có liên quan Khi
đó, độ chính xác của các tư vấn có thể rất cao nhưng nếu NSD tình cờ xem bộ phim hài
và cảm thấy rất hài lòng với các tư vấn như vậy thì khi đó có thể NSD sẽ đánh giá chất lượng của RS cao hơn Do đó, độ chính xác không phải lúc nào cũng được ưu tiên hàng đầu [16] và khó có thể đánh giá mức độ thành công của RSs trong việc làm hài lòng NSD nếu chỉ dựa vào độ chính xác
Hạn chế của việc quá tập trung vào độ chính xác là thiếu sự đa dạng của thông tin
tư vấn Đầu tiên, RSs với độ chính xác cao có thể làm hạn chế những sở thích của NSD, làm cho NSD không có nhiều cơ hội để khám phá những nhu cầu khác nhau của bản thân Hơn nữa, các hệ thống với độ chính xác cao có thể không làm hài lòng NSD vì họ thường mong muốn các thông tin tư vấn đa dạng hơn, mới mẻ hơn [13] Cuối cùng, NSD
sẽ cảm thấy nhàm chán với những items mà họ đã biết quá nhiều Từ các nhận định trên
ta nhận thấy xu hướng phát triển của các RSs bao gồm nhiều yếu tố hay tiêu chí khác nhau về mặt chất lượng ngoài tính chính xác Chính vì vậy, luận văn đã xem xét các tiêu
Trang 33chí khác nhau ngoài độ chính xác và tính bất ngờ là một trong những tiêu chí quan trọng
mà luận văn hướng tới để đánh giá chất lượng của thông tin tư vấn [20]
Nhìn chung, các yếu tố hay các tiêu chí được sử dụng để đánh giá chất lượng của
thông tin tư vấn bao gồm: độ chính xác (precision), độ đa dạng (diversity), độ mới mẻ (novelty), độ ngạc nhiên (unexpectedness) và độ bất ngờ (serendipity) [14] Độ chính
xác cung cấp những items có liên quan nhiều đến nhu cầu của NSD Độ đa dạng bao gồm tập hợp nhiều items khác nhau trong một danh sách tư vấn Độ mới mẻ đề cập tới
sự khác nhau của mỗi item so với profile của NSD Độ ngạc nhiên cho biết khả năng các hệ thống tư vấn những items vượt ngoài sự mong đợi ban đầu của NSD và cuối cùng, độ bất ngờ cung cấp những items thú vị mà NSD không thể tự khám phá [8] Trong phần này, luận văn sẽ giới thiệu một số tiêu chí để đánh giá chất lượng của các thông tin tư vấn và chủ yếu tập trung vào yếu tố bất ngờ
3.1 Độ chính xác (precision)
Độ chính xác là một trong những độ đo cơ bản để đánh giá chất lượng của các thông tin tư vấn Độ chính xác được sử dụng để đo mức độ sai lệch giữa ratings dự đoán của hệ thống và ratings thực sự của NSD [34] Hầu hết các hệ thống được thiết kế để cải thiện độ chính xác của thông tin tư vấn Do đó, độ chính xác được xem là một trong những tiêu chí quan trọng để đánh giá chất lượng của RS vì độ chính xác liên quan đến
sự tin tưởng của NSD dành cho hệ thống Một hệ thống với độ chính xác thấp (ratings
dự đoán khá xa so với ratings thực sự của NSD hay các items được tư vấn không được NSD yêu thích và lựa chọn) cho thấy rằng hệ thống khó có thể nắm bắt sở thích của NSD Khi đó, NSD có thể mất kiên nhẫn và mất niềm tin vào những hệ thống như vậy Ngược lại, NSD sẽ tin tưởng những hệ thống có độ chính xác cao vì những hệ thống này
có thể tìm ra được những items thỏa mãn nhu cầu tốt nhất cho NSD [2], [5]
Trong hầu hết các trường hợp, NSD chỉ đánh giá một phần nhỏ trên toàn bộ items được tư vấn và nhiệm vụ của RS là ước lượng các ratings của những items chưa được đánh giá để tạo thêm những danh sách tư vấn cho NSD Ví dụ, hệ thống cần dự đoán
Trang 34ratings của NSD dành cho một bộ phim bất kỳ trong tập dữ liệu MovieLens (từ 1 đến 5 điểm như trong Hình 3.1 [19])
Hình 3.1 Ví dụ về 5 điểm số ratings trong tư vấn phim
Sau khi hệ thống đã ước lượng ratings dự đoán của NSD dành cho những items
mà NSD chưa đánh giá, để đo độ chính xác của ratings đã dự đoán thì độ đo được sử dụng phổ biến nhất trong RSs là Root Mean Square Error (RMSE) [14] Hệ thống ước lượng ratings dự đoán 𝑟̂𝑢,𝑖 của NSD u dành cho các items i trong bộ dữ liệu kiểm thử T
so với rating thực sự 𝑟𝑢,𝑖 của NSD u dành cho item i đã biết Thông thường thì 𝑟𝑢,𝑖 được biết trước là do các ratings này đã bị ẩn đi trong quá trình thực nghiệm Công thức RMSE giữa rating dự đoán và rating thực sự được tính như công thức (3.1):
𝑀𝐴𝐸 =∑𝑟𝑢,𝑖 ∈𝑇|𝑟𝑢,𝑖− 𝑟̂𝑢,𝑖|
Trang 35Trong các công thức (3.1) và (3.2), T là tập hợp các items trong bộ dữ liệu kiểm
thử, 𝑟𝑢,𝑖 là rating thực sự của NSD u dành cho item i trong tập T và 𝑟̂𝑢,𝑖 là rating dự đoán
của NSD u dành cho item i
Các RSs có MAE hoặc RMSE thấp cho thấy RSs có khả năng dự đoán ratings tốt
và những items tư vấn sẽ có nhiều khả năng được NSD yêu thích
Bên cạnh đó, Normalized RMSE (NMRSE) và Nomalized MAE (NMAE) là các
phiên bản khác của RMSE và MAE đã được chuẩn hóa trong phạm vi của rating (ví dụ
r max - rmin) [33] Những độ đo này là các phiên bản cải tiến của RMSE và MAE, do đó kết quả của thuật toán cũng tương tự với các độ đo chưa chuẩn hóa
Trung bình RMSE và trung bình MAE giúp điều chỉnh sự mất cân đối của bộ dữ liệu kiểm thử T [33] Ví dụ, nếu tập T có phân phối của các items không cân bằng thì lỗi
RMSE hay MAE có thể bị ảnh hưởng nhiều trên các items xuất hiện thường xuyên Nếu
ta cần một độ đo để thể hiện lỗi dự đoán trên item bất kỳ thì khi đó việc tính MAE hay RMSE trên mỗi item có thể thích hợp hơn và sau đó lấy trung bình trên tất cả các items
Tương tự, ta có thể tính RMSE hay MAE trung bình của mỗi NSD nếu tập T có phân
phối của NSD không cân đối [13]
Đa số các RSs hiện nay được thiết kế để dự đoán những items tương tự (chính xác hay gần đúng) với danh sách items đang tồn tại [20] Chính vì vậy, có nhiều bất lợi đối với những RSs chỉ đơn thuần dựa vào độ chính xác vì RSs dựa vào độ chính xác không xem xét đến các yếu tố khác nhau đối với những sở thích đa dạng của NSD và ít quan tâm đến sự hài lòng của NSD Điều này dẫn đến những trải nghiệm của NSD dành cho
hệ thống bị ràng buộc và hạn chế Nhiều công trình nghiên cứu [2], [8], [9] đã chỉ ra rằng chỉ với độ chính xác thôi thì chưa đủ để đánh giá chất lượng của tư vấn
Trang 36vực tư vấn phim, hệ thống tư vấn cho NSD 3 bộ phim nằm trong top 3 của danh sách tư vấn Nếu cả 3 bộ phim đều thuộc cùng một thể loại là phim kinh dị và có các diễn viên tương tự nhau thì khi đó mức độ đa dạng của các tư vấn rất thấp vì nếu NSD không thích
bộ phim đầu tiên thì nhiều khả năng cũng sẽ không thích những bộ phim còn lại Việc gợi ý những thể loại phim khác nhau trong cùng một danh sách có thể làm cho NSD có nhiều cơ hội hơn để lựa chọn một trong những bộ phim được tư vấn [9], [36] Ngoài ra,
độ đa dạng cũng gần với độ mới lạ (xem phần 3.3) và độ bất ngờ (xem phần 3.5), cho nên việc đảm bảo độ đa dạng ở mức độ cao hơn có thể làm tăng độ mới lạ và độ bất ngờ của thông tin tư vấn
Có nhiều cách để đo mức độ đa dạng của một danh sách thông tin tư vấn như tính
độ tương đồng dựa vào nội dung giữa những cặp items được biểu diễn trong không gian
vectơ Ví dụ, nếu danh sách gồm k items được tư vấn cho NSD thì độ tương đồng của
từng cặp items trong danh sách tư vấn sẽ được tính và khi đó độ tương đồng trung bình giữa những cặp items có thể xem như là độ đa dạng của danh sách Giá trị trung bình của độ tương đồng thấp có thể dẫn đến độ đa dạng cao của các thông tin tư vấn [8] Ngoài ra, độ đa dạng có thể được xem như là đối lập với độ tương đồng Trong một vài trường hợp, việc tư vấn tập hợp những items tương đồng có thể không đem lại lợi ích cho NSD vì NSD có thể mất nhiều thời gian trong việc lựa chọn các items tương
tự nhau [18] Ví dụ, nếu hệ thống đưa ra danh sách tư vấn gồm 5 bộ phim thuộc cùng một thể loại, cùng đạo diễn, thậm chí cùng kịch bản và chỉ khác nhau ở diễn viên đóng phim thì sẽ không hữu ích bằng việc gợi ý 5 bộ phim khác nhau thuộc những thể loại khác nhau NSD có thể xem các bộ phim khác nhau và nếu yêu thích phim nào thì họ có thể tìm hiểu chi tiết hơn những bộ phim liên quan đến thể loại mà họ muốn xem
3.3 Độ mới lạ (novelty)
Tiêu chí tiếp theo để đánh giá chất lượng của thông tin tư vấn là độ mới lạ Các tư vấn mới lạ là các tư vấn gồm những items mới mà NSD chưa hề biết hay chưa đánh giá trước đó [2] Một item được xem là mới lạ đối với NSD thì đầu tiên item này có thể mới được thêm vào RSs gần đây mà NSD chưa đánh giá Ngoài ra, cũng có thể là item này
Trang 37có thể bị “lãng quên” do NSD đã đánh giá cách đây một thời gian rất lâu khi NSD chưa
“hiểu” item này trong suốt quá trình sử dụng RSs, và như vậy item này cũng có thể được xem là mới lạ đối với NSD, bất kể là NSD có quen thuộc với loại item này hay không [20]
Tính mới lạ có thể được xem như khả năng RS cung cấp các thông tin tư vấn mà NSD chưa từng biết trước đó Các thông tin tư vấn mà NSD chưa từng nghe qua trước đây có nhiều khả năng sẽ làm tăng cơ hội để khám phá những thông tin mà NSD thích
và không thích trước đó Điều này quan trọng hơn việc khám phá những items mà NSD
đã biết nhưng họ chưa đánh giá [8] Các RSs dựa vào CbF thường đưa ra những tư vấn hiển nhiên vì hệ thống có xu hướng cung cấp những items mà NSD thường mong đợi
Vì vậy, sự mới lạ có thể được xem như là sự khác biệt giữa những gì mà NSD đã biết trong quá khứ với hiện tại [9]
Trong các ứng dụng mà yêu cầu các tư vấn mới mẻ thì cách tiếp cận đơn giản nhất
là lọc ra những iems mà NSD đã từng đánh giá hay đã sử dụng trước đây Tuy nhiên, trong nhiều trường hợp thì NSD không muốn thể hiện cho hệ thống biết tất cả những items mà họ đã từng sử dụng trong quá khứ Chính vì vậy, ý tưởng chính của RSs theo hướng mới mẻ là cung cấp những items mà có nhiều khả năng sẽ được NSD lựa chọn trong tương lai hơn là ở thời điểm hiện tại [8] Đối với cách tiếp cận này, điều quan trọng là phải điều khiển được độ chính xác vì các tư vấn không liên quan có thể được xem là mới lạ đối với NSD nhưng cũng có thể không đem lại lợi ích đối với NSD Khi
đó, cách tiếp cận tốt nhất là chỉ xem xét độ mới mẻ trong số các items có liên quan
Ngoài ra, một phương pháp khác để đánh giá các tư vấn mới lạ là giả định rằng những items phổ biến là những items ít có khả năng mới mẻ [40] Độ mới lạ có thể được phân thành độ mới lạ dựa vào sự phổ biến và độ mới lạ dựa vào khoảng cách Cụ thể,
độ mới lạ dựa vào tính phổ biến liên quan đến các item phổ biến Giá trị độ mới lạ của các items càng cao tương ứng với việc càng có ít NSD tương tác với những items này, trong khi độ mới lạ dựa vào khoảng cách là hàm đo khoảng cách giữa item và những gì