H tưăvấn recommender system là một h thống có ch cănĕngătưăvấn giúp ngư i dùng user tìm kiếm các mục, mặt hàng item liênăquanăđến s thích, nhu cầu thông qua các giao d ch,ă tươngă tácă t
Trang 1B GIÁO D CăVÀăĐÀOăT O
TR NGăĐ I H CăS ăPH M HÀ N I
WEB H C TOÁN ONLINE
HÀ N I,ăNĔMă2014
Trang 2B GIÁO D CăVÀăĐÀOăT O
TR NGăĐ I H CăS ăPH M HÀ N I
WEB H C TOÁN ONLINE
Chuyên ngành: KHOA H C MÁY TÍNH
Ngư iăhướng d n khoa h c: PGS.TS PH M TH HOÀN
HÀ N I,ăNĔMă2014
Trang 3M c l c
N i dung Trang
M đầu 1
Chươngă1:ăTổng quan h tưăvấn (Recommender System) 3
1.1 Giới thi u h tưăvấn 3
1.1.1 H tưăvấn là gì? 3
1.1.2 Nhi m vụ c a h tưăvấn 5
1.1.3 Vai trò c a h tưăvấn 7
1.1.4 ng dụng h tưăvấn 8
1.2 Cácăphươngăphápătiếp c n h tưăvấn 9
1.2.1 Phươngăphápăl c cộng tác (Collaborative Filtering) 10
1.2.2 Phươngăphápătưăvấn dựa trên nội dung (Content-based) 27
1.2.3 Phươngăphápălaiă(Hybrid) 34
Chươngă2:ăXâyădựng h tưăvấn h c toán online 37
2.1 Giới thi u h thống 37
2.2 Mục tiêu 38
2.3 Mô tả bài toán 38
2.4 Phươngăphápăgiải quyết bài toán 38
Chươngă3:ăCàiăđặt và triển khai 51
3.1 Phân tích h thống 51
3.2 Thiết kế dữ li u 52
3.3 Thiết kế ch cănĕng 54
3.3.1 Lấy thông tin thực hành 54
3.3.2 Lấy thông tin yêu thích 56
3.3.3 Đề xuất kỹ nĕngăc aănhómăngư iădùngătươngăđồng 59
3.3.4 Đề xuất kỹ nĕngăphổ biến 59
Trang 43.4 Kết quả thực nghi m 60
Kết lu n 63 Tài li u tham khảo 64
Trang 5Danh m ục hình
Hình 1.1 Xếp h ng c aăngư i dùng với các bộ phim 6
Hình 1.2 Ví dụ l c cộngătácăngư i dùng 11
Hình 1.3 Ma tr n xếp h ng 13
Hình 1.4 Ma tr n trong l c cộngătácăngư i dùng 14
Hìnhă1.5ăCácăbước thực hi n l c cộng tác ngư i dùng 15
Hìnhă1.6ăTínhăđộ tươngăđồng giữaăhaiăngư i sử dụng 19
Hình 1.7 Ví dụ l c cộng tác mục 21
Hình 1.8 Ma tr n trong l c cộng tác mục 22
Hìnhă1.9ăCácăbước thực hi n l c cộng tác mục 23
Hìnhă1.10ăTínhăđộ tươngăđồng giữa hai mục 25
Hình 1.11 Ví dụ phươngăphápătưăvấn dựa trên nội dung 28
Hìnhă1.12ăCácăbước thực hi nătưăvấn dựa trên nội dung 29
Hình 1.13 Danh sách phim và thể lo i 31
Hình 1.14 M căđộ yêu thích c aăngư i dùng với từng thể lo i 31
Hình 1.15 M căđộ yêu thích c aăngư i dùng với từng phim 32
Hình 1.16 Phân lo iăphươngăphápălai 34
Hìnhă1.17ăPhươngăphápălaiătr ng số 35
Hìnhă1.18ăPhươngăphápălaiăhỗn hợp 36
Hình 2.1 Quy trình thực hi nătưăvấn 40
Hìnhă2.2.ăTưăvấn dựa trên ch đề quan tâm 42
Hìnhă2.3ăTưăvấn dựa trên d ng toán quan tâm 44
Hìnhă2.4ăTưăvấn dựa trên l c cộngătácăngư i dùng 45
Hìnhă2.5ăTưăvấn dựa trên l c cộng tác mục 47
Hình 2.6 Nhóm kỹ nĕngădựa trên nội dung 48
Hìnhă2.7ăTưăvấn dựa trên nội dung 49
Hình 3.1 Mô hình phân cấp ch cănĕng 51
Hình 3.2 Bảngă“Math_score” 52
Hình 3.3 Bảngă“Math_skill” 53
Hình 3.4 Bảngă“Math_chude” 53
Hình 3.5 Bảngă“Math_subcate” 53
Hình 3.6 Quan h giữa các bảng 54
Hình 3.7 Giao di năngư i dùng truy c p vào h thống 55
Hình 3.8 Giao di năngư i dùng thực hành kỹ nĕng 55
Trang 6Hình 3.9 Giao di n ngư i dùng truy c p vào lớp h c 57
Hình 3.10 Giao di n c p nh t thông tin yêu thích 58
Hình 3.11 Giao di nătưăvấn kỹ nĕngăphổ biến 59
Hình 3.12 Giao di nătưăvấn kỹ nĕngăyêuăthích 60
Hình 3.13ăDanhăsáchăngư i dùng ng u nhiên 60
Hìnhă3.14ăĐánhăgiáăhi u quả h tưăvấn 62
Trang 7M ở đ u
1 Lý do ch năđ tài
Kể từ lầnăđầu tiên xuất hi n bài báo l c cộng tác từ nĕmă1990,ăh tưă
vấn tr thànhălƿnhăvực nghiên c u quan tr ng Hi n nay, h tưăvấn nh năđược
sự quan tâm rất lớn vì tác dụng không nhỏ c a nó với nhiềuălƿnhăvực khác nhau trong cuộc sốngă nhưă kinhă doanh,ă giải trí và giáo dục.ă Đặc bi t trong
nhữngănĕmăgầnăđây,ăcôngăcuộc xây dựngăvàăđổi mới giáo dụcăđangăđược rất nhiềuăngư i quan tâm Ngoài cách h c truyền thống là thầy và trò có sự tươngătác trực tiếp trên lớp h c, giáo dục hi n nay còn m rộng cách th c d y và
h c trực tuyến mang l i hi u quả caoăhơnăsoăvới cách h c truyền thống Nh
có h tưăvấn, vi c h c trực tuyến có hi u quả hơnărất nhiều
Một trang web h c toán trực tuyến dành cho h c sinh tiểu h c, trang web cung cấp các kỹ nĕngăchoăh c sinh thực hànhăđể nắm rõ và thực hành thành th o các kiến th c trên lớpăcũngănhưănângăcao.ăCóăhàngănghìnăh c sinh truy c pătrangăwebăđể h c và thực hành, mỗi h c sinh l i có những s thích
thực hành khác nhau H tưăvấn có thể hỗ trợ cho toàn bộ h c sinh tham gia trong h thốngă vàă đưaă raă những l i khuyên phù hợp cho từngă ngư i h c
Những l i khuyên này rấtăđángătinăc y vì nó dựa trên l ch sử thực hành kỹ nĕngăc aăchínhăngư i dùng trong h thốngăvàăđề xuất những kỹ nĕngăphùăhợp
vớiănĕngălực c a từng h căsinh.ăTaăđặt một câu hỏi nêu không có h tưăvấn và
số lượng kỹ nĕngăthực hành sẽ càng nhiều, h c sinh tiểu h c khi tham gia h c
trực tuyến sẽ lựa ch n kỹ nĕngăthực hành phù hợp vớiănĕngălực c aămìnhănhưă
thế nào? Th t là khó khi lựa ch n kỹ nĕngăyêuăthíchătrongăsố rất nhiều kỹ nĕngăc a h thống và l a tuổi c a các em, rấtăkhóăđể tìm kiếm kỹ nĕngăphùă
hợp vớiănĕngălực c a mình
Vì lí do trên, tôi lựa ch năđề tàiă“Tìmăhiểu h tưăvấn và xây dựng h tưă
vấn cho trang web h cătoánăonline”
Trang 82 M căđíchănghiênăc u
- Tìm hiểu h tưăvấn vàăcácăphươngăphápătiếp c n h tưăvấn
- Tìm hiểu h thống thực hành kỹ nĕngătrênătrangăwebăh c toán online
- Nghiên c uăcácăphươngăphápătiếp c n có thể hỗ trợ xây dựng h tưăvấn trên trang web h c toán online
- Lựa ch năphươngăphápătiếp c n và ng dụng xây dựng h tưăvấn kỹ nĕngăhỗ trợ h c sinh thực hành trên trang web h c toán online
3 Đốiăt ng nghiên c u
- Để tìm hiểu nội dung h tưăvấn, tôi đãătìmăkiếmăvàăđ c hiểu các bài báo trongăvàăngoàiănước, các di năđànătraoăđổi kiến th c h tưăvấn và các tài li u nghiên c uăđược chia sẻ trên m ng Internet
- Nghiên c u ngôn ngữ l p trình php và viếtăchươngătrìnhăch cănĕngătưă
vấn kỹ nĕngăchoăngư i dùng thực hành trên trang web h c toán online
4 Tóm t ắt luậnăvĕn
Lu năvĕn trình bày tổng quan h tưăvấn, bao gồm khái ni m h tưăvấn, nhi m vụ phổ biến c a h tưăvấn, vai trò c a h tưăvấnăđối với nhà cung cấp vàăngư i dùng, một số ng dụng c a h tưăvấn trong thực tế vàăcácăphươngăpháp tiếp c n h tưăvấn
Để xây dựng h tưăvấn cho trang web h c toán online, lu năvĕnăđãăgiới thi u trang web h c toán online và trình bày mục tiêu, mô tả vàăphươngăphápă
giải quyết bài toán xây dựng h tưăvấn cho trang web h c toán online
Lu năvĕnătrìnhăbàyăcácăbướcăcàiăđặt h tưăvấn và giới thi u một số giao
di n chính c a ch cănĕngătưăvấn Đánhăgiáăhi u quả c a h tưăvấn dựa ngư i dùng trên h thống
Trang 9Ch ngă1: Tổng quan h t ăv n (Recommender System) 1.1 Gi i thi u h t ăv n
1.1.1 H t ăv n là gì?
H tưăvấn (recommender system) là một h thống có ch cănĕngătưăvấn giúp ngư i dùng (user) tìm kiếm các mục, mặt hàng (item) liênăquanăđến s thích, nhu cầu thông qua các giao d ch,ă tươngă tácă (transaction)ă c aă ngư i dùng với các mục, mặtăhàngăđó
H tưăvấn có thể ho tăđộngăđộc l p hoặc đóngăvaiătròănhưămột ch c nĕngătrongămột trang web hay một h thống khác
User làăngư i dùng truy c p vào h thống [5] (thành viên đĕngăký hoặc khách vãng lai).ăUserălàăđốiătượngăđược tưăvấn
Item là các mặt hàng, sản phẩm, mục [5] Itemălàăđốiătượngătưăvấn Ví
dụ: item có thể là các bộ phim mà một trang web xem phim muốnătưăvấn cho ngư i dùng, trong bán hàng trực tuyến item có thể là các mặt hàng, sản phẩm màăngư i cung cấp muốnătưăvấn
Transaction là tươngătácăgiữa user với item [5] Transaction có thể là
l ch sử tìm kiếm, l ch sử mua hàng, l ch sử xem mặt hàng hay xếp h ng,ăđánhăgiá c a ngư i dùng với một mục
H thốngătưăvấnăthư ngăchiaănhómăngư i dùng thành hai lo i:ăngư i dùngăchưaăcóăl ch sử tươngătácăvới h thốngă(nhómă1)ăvàăngư iădùngăđãăcóă
l ch sử tươngătácăvới h thốngă(nhómă2).ăNgư i dùng thuộc nhóm 1 có thể là khách vãng lai hoặcăthànhăviênăđĕngăkýămới, h chưaăcóăl ch sử tươngătácăvới
h thống hoặcăchưaăc p nh tăđ thông tin để h tưăvấnăcóăcơăs đưaăraătưăvấn Nhóm th 2 là nhữngăngư i dùng có đ thông tin và l ch sử tươngătácăvới h
thống để h tưăvấnăđề xuất những mục có thể sẽ đượcăngư i dùng thích, quan tâm
Trang 10H tưăvấn có nhiềuăưuăđiểm, mang l i lợi ích cho cả ngư i tiêu dùng
l n nhà cung cấp Chính vì thế h tưăvấnăcàngăngàyăcàngăđượcăquanătâm,ăđiển hìnhănhưămột số sự ki n [5] sauăđây:
- Cácă trangă webă đượcă đánhă giáă caoă nhưă Amazon.com, Youtube.com, Netflix.com, có một h thốngă tưă vấnă tươngă đối hi u quả Hơnănữa, bây gi nhiều công ty truyềnăthôngăđangătriển khai và phát triển h
thốngătưăvấnănhưămột phần d ch vụ quan tr ng mà h cần phải cung cấp Ví
dụ nhưătrang Netflix.com là một trang web xem phim trực tuyến nổi tiếngăđãăcung cấp giải thư ng 1 tri uăđôălaăchoănhững ngư iăđưaăra thu tătoánăđầu tiên đánhăb iăđược 10% thu tătoánătưăvấn c a h Và giảiăthư ngăđóăđãăđược một nhóm nghiên c uă cóă tênă làă “Bellkor’să Pragmatică Chaos”ă giành đượcă nĕmă
2009
- Có nhiều hội ngh và hội thảo dành riêngăchoălƿnhăvực này Hội ngh đặc bi tă được nhiềuă ngư i quan tâm là ACM Recommender Systems (viết tắtălàăRecSys)ăđược thành l pănĕmă2007ălàăsự ki n uy tín tổ ch c hàng nĕmăđể nghiên c u về công ngh tưăvấn và ng dụng Ngoài ra, h thốngătưă
vấn cònăđược thảo lu n trong các hội ngh truyền thống về lƿnhăvựcăcơăs dữ
li u, h thống thông tin và h thống thích nghi Trong số những hội ngh đó,ă
cần nhắcăđến một số hội ngh lớnănhư:ăACMăSIGIRăSpecialăInterestăGroupăonăInformation Retrieval (SIGIR), User Modeling, Adaptation and Personalizationă(UMAP),ăandăACM’săSpecialăInterestăGroupăonăManagementă
Of Data (SIGMOD)
- T iăcácătrư ngăđ i h căvàăsauăđ i h c trên thế giớiăđãăcóănhững khóa h c dành riêng cho vi c nghiên c u h tưăvấn,ăhướng d n h tưăvấn cũngăđược phổ biến trong các hội ngh khoa h c máy tính
Trang 11- Trong các t p chí khoa h căđãăcóămột số vấnăđề đặc bi tăđược đưaăraăbaoăgồm vi c nghiên c u và phát triểnălƿnhăvực h tưăvấn Một số t p chíădànhăriêngăđể viết về h tưăvấn nhưălà AI Communications (2008); IEEE Intelligent Systems (2007); International Journal of Electronic Commerce (2006); International Journal of Computer Science and Applications (2006); ACM Transactions on Computer-Human Interaction (2005); and ACM Transactions on Information Systems (2004)
Nhưăv y ch ng tỏ rằng,ălƿnhăvực nghiên c u h tưăvấn rấtăđược nhiều ngư i quan tâm và khẳngăđ nh giá tr c a nó trong thực tế.ăTrongătươngălai,ălƿnhăvực này sẽ cònăđược quan tâm nhiềuăhơn
1.1.2 Nhi m v c a h t ăv n
Để hiểuărõăhơnăcôngăvi c c a h tưăvấn ta sẽ xem một số nhi m
vụ phổ biến sau:
- Lấy ý kiến cá nhân H tưăvấn t oăđiều ki năchoăngư iădùngăđóngă
gópăđánhăgiáăvàăbàyătỏ ý kiến với các mục.ăNgư i dùng có thể bình lu n hoặc
xếp h ng sản phẩm tùy theo từng h thống tưăvấn
- Tìm ki ếm t vấn tin cậy: Có một số ngư i sử dụng không tin c y
h thốngătưăvấn, vì v yăđể đưaăraătưăvấn tốt nhất cho h cần kiểm tra hành vi tìm kiếm c a h th tăđầyăđ , chính xác và dựa trên những thông tin th t sự có ích cho vi căđưaăraătưăvấn
- T vấn một danh sách các mục tốt nhất H tưăvấn có thể đề xuất
một danh sách một số mục tốt nhấtăchoăngư i dùng Mục tốt nhất dựa trên đánhăgiáăc aăngư i dùng, có thể là những mụcăđược nhiềuăngư i dùng yêu thích nhất
Trang 12- T vấn tất cả các mục tốt Thay vì h tưăvấnăđề xuất một danh
sách các mục tốt nhất thì nó sẽ cung cấpăchoăngư i dùng một danh sách tất cả các mục tốtăđể ngư i dùng lựa ch n
Để hiểuărõăhơnănhi m vụ c a h tưăvấn ta có thể xem ví dụ minh h a sauăđây.ăSauăkhiăh thống lấy ý kiến cá nhân c aăngư i dùng cho các mục ta
có bảng xếp h ng sau:
Batman Begins
Alice in Wonderland
Dumb and Dumber
Hình 1.1 Xếp h ng c aăngư i dùng với các bộ phim
Ví dụ hình 1.1 biểu di n ma tr n xếp h ng c aăngư i dùng với các bộ phim.ăTrongăhìnhătrên,ăcóă5ăngư i sử dụng là A, B, C, D, E có xếp h ng cho các bộ phim Batman Begins, Alice in Wonderland, Dumb and Dumber và Equilibrium Các giá tr trong ma tr n là xếp h ng c aă ngư i dùng với bộ phim Các giá tr nàyăđượcăđánhăgiáătheoăthangăđiểm từ 1ăđến 5 Giá tr rỗng
thể hi năngư i dùng không có xếp h ng cho bộ phimăđó.ă
Nhi m vụ c a h tưăvấn là tìm kiếm nhữngăngư iădùngăchưaăcóăđánhăgiá cho một bộ phimănàoăđóăvàădự đoánăxemăh đánhăgiáăchoăbộ phimăđóălàăbaoănhiêu.ăĐối với những mục có dự đoánăđiểm số cao sẽ được h thống lựa
ch năđể đưaăraătưăvấn
Trang 131.1.3 Vai trò c a h t ăv n
H tưăvấn có vai trò quan tr ng trong nhiềuălƿnhăvực.ăTaăxétăđến lợi ích
mà nó mang l iăđối vớiăhaiăđốiătượng là nhà cung cấpăvàăngư i sử dụng h
thống
Đối với nhà cung cấp:
- H ỗ trợ nghiên c u thị tr ờng giúp định h ớng phát triển c a doanh nghi ệp trong t ơng lai Doanh nghi p nắm bắt, c p nh t nhanh nhất th
hiếu c aăngư i dùngăđể từ đóălựa ch n t p trung đầuătưăvàăphátătriển m nh hơn những mặt hàng được nhiềuăngư i quan tâm
- Nâng cao chất l ợng hệ thống Xây dựng h thống có nhiều ch c
nĕngăhữuăíchăchoăngư i dùng là mong muốn c a nhiều nhà cung cấp Chất lượng c a h thống thể hi n sự phát triển c a doanh nghi p
- Gi ới thiệu đ ợc nhiều mặt hàng, sản phẩm đến với ng ời dùng
Các nhà cung cấp bao gi cũngămuốn phát triển quy mô h thống vì thế một
h tưăvấn có thể giới thi u tớiăngư i dùng nhiều mặt hàng, sản phẩm khác nhau trong h thốngălàăđiều mà nhà cung cung cấp mong muốn
- Tăng số l ợng mặt hàng, sản phẩm cần tiêu thụ Để có doanh
thu cao phải t pătrungăđẩy m nh tiêu thụ các mặt hàng, sản phẩm trong h
thống H tưăvấn có thể làmăđượcăđiềuăđó
Đối vớiăngư i dùng:
- Cung c ấp đúng các mặt hàng mà ng ời dùng quan tâm Với một
h tưăvấn hi u quả, các h thống lớnănhưăyoutube.com,ăamazon.comăcho thấy ngư i dùng th t sự quanătâmăđến nhữngăđề xuất c a h thống
- Tăng sự hài lòng c a ng ời dùng Cung cấpăđúngăcácămặt hàng
ngư i dùng quan tâm làm tĕngăsự hàiălòngăvàăđộ tin c y c aăngư i dùng với
h thống từ đóăh thống nh năđược sự tươngătácătíchăcực từ ngư i dùng
Trang 141.1.4 ng d ng h t ăv n
H tưăvấnăđược ng dụng trong nhiềuălƿnhăvực khác nhau đặc bi t là trongălƿnhăvực kinh doanh, giải trí và giáo dục
- Trong lĩnh vực kinh doanh H tưăvấnăđược sử dụng rộng rãi trên
các trang web bán hàng trực tuyếnănhưăamazon.comălàătrangăbánăsách,ăđƿaăCDăonline nổi tiếng thế giới có h tưăvấn giúp mang l i hi u quả cho h thống
Vi t Nam có trang vatgia.com là trang web cung cấp nhiều mặt hàng khác nhau choă ngư i dùng, trong h thốngă đề xuất một số mục mặtă hàngă được nhiềuăngư i tìm kiếm hoặc những mụcăđược yêu thích nhất hoặc những mục hot nhất hi n nay
- Trong lĩnh vực giải trí H tưă vấnă cũngă được ng dụng nhiều
trongălƿnhăvực giải trí trên các trang xem phim trực tuyến netflix.com, xem video youtube.com, kho game và ng dụng nổi tiếng c a google là play.google.com Ví dụ h tưă vấnă trênătrangă youtube.com,ăngư i dùng truy
c p vào gmailăsauăđóătìmăkiếm các video, h thống sẽ lưuăl ch sử tìm kiếm và xem video c aăngư iădùngăđể đề xuất những video gần với nộiădungăngư i dùng đãătìm kiếm
- Trong lĩnh vực giáo dục Các trang web h c trực tuyến hay các
trang cung cấp tài li uănhưăslideshare.net, tailieu.vn cũngăđưaăh tưăvấn vào
h thống hỗ trợ ngư i dùng tìm kiếm tài li u, bài h c liên quan Ví dụ với trang tailieu.vn là trang tìm kiếm tài li u, sách, bài báo, lu năvĕn, khi ngư i dùng tìm kiếm một tài li u bất kì, h thống sẽ cung cấp một danh sách những tài li u có nội dung gần với nộiădungăngư i dùng tìm kiếmăđể h có thể tham
khảo thêm
Trang 151.2 Cácăph ngăphápătiếp cận h t ăv n
H tưăvấnăcóăbaăphươngăphápătiếp c n ch yếuălàăphươngăphápăl c cộng tác,ăphươngăphápătưăvấn dựa trên nội dung và phươngăphápălai
- Dựaă trênă ýă tư ng quảng cáo truyền mi ng, h tưă vấnă đưaă raăphươngăphápătiếp c n l c cộng tác, những mụcătưăvấnăchoăngư i dùng sẽ dựa trên những mục mà nhữngăngư iădùngăđiătrước yêu thích Chính vì thế h tưă
vấn sử dụng phươngăphápănày mang tính chất tưăvấn những mục, mặt hàng theo xuăhướng,ătràoălưu ngư i dùng
- Vớiăphươngăphápătưăvấn dựa trên nội dung, h tưăvấn dựa trên tính chất, nội dung những mụcămàăngư iădùngăyêuăthíchăđể tìm ra các mục có tính chất, nộiădungătươngătự để tưăvấn
- Phươngăphápăl c cộngătácăvàăphươngăphápătưăvấn dựa trên nội dungăđều có nhữngăưuănhượcăđiểm c a nó Vì v yăphươngăphápălaiăraăđ iăđể
h n chế nhượcăđiểm và phát triểnăưuăđiểm c aăhaiăphươngăphápătrên
Khi xây dựng h tưăvấn có thể sử dụng mộtăphươngăphápăhoặc kết hợp nhiềuăphươngăphápănàyăvới nhau
Theoăcácăphươngăphápătiếp c n trên, mỗiănhómăngư i dùng có nhiều cáchăkhácănhauăđể tìm kiếm mục có thể ngư i dùng quan tâm
- Ngư i dùng nhóm 1 (chưaăcóătiểu sử tươngătácăvới các mục trên
h thống) có thể xây dựng h tưăvấn theo những cách sau:
+ăTưăvấn những mục phổ biến nhất hoặcăđược yêu thích nhất
+ Sử dụngăphươngăphápătưăvấn dựa trên nội dung
- Ngư i dùng nhóm 2 (cóăđ thôngătinătươngătácăvới các mục trên
h thống) có những cách sau để xây dựng h tưăvấn:
+ Sử dụng phươngăphápăl c cộng tác
+ Sử dụngăphươngăphápătưăvấn dựa trên nội dung
+ Sử dụng phươngăphápălai
Trang 16Ngoàiă baă phươngă phápă tiếp c n phổ biến trên còn có nhiềuă phươngăpháp tiếp c n khácănhauăđể xây dựng h tưăvấn cho mỗiănhómăngư i dùng Ví
dụ phươngăphápătiếp c n dựa trên tri th c (Knowledge-based),ăphươngăphápă
tiếp c n Demographicăhayăphươngăphápătưăvấn dựa trên kết nối based)
(Community-1.2.1 Ph ngăphápăl c c ng tác (Collaborative Filtering)
Phươngăphápăl c cộng tác làăphươngăpháp dựa trên cộngăđồngăngư i dùng, dự đoánă đánhă giáă c a mộtă ngư i dùng dựaă trênă đánhă giáă c a những ngư i dùng khác [7] Nếuă ngư iă dùngă cóă cùngă quană điểm với một nhóm ngư i dùng về một số sản phẩm thì có thể cũngăđồngăquanăđiểm với nhóm ngư iădùngăđóăvề một mặt hàng, mụcăchưaăbiết Phươngăphápăl c cộng tác
giới thi u những mục có số đôngă ngư iă thích,ă nóă mangă tínhă tràoă lưu,ă xuăhướng theo ngư i dùng
Phươngăphápănàyăkhôngăđiăsâuăvào phân tích tính chất, nội dung các
mụcăđãăyêuăthích để giới thi u các mục gần giống với mụcămàăngư i dùng quan tâm
Kết quả dự đoánălàăcácămục ng u nhiên thuộc nhiều ch đề, thể lo i khác nhau Phươngăphápăl c cộng tác dựaătrênănhómăngư iădùngătươngăđồng màănhómăngư iădùngăđóăcóăthể thích nhiều thể lo i, ch đề khác nhau nên các
mụcătưăvấn dựa trên s thích c a h cũngăsẽ thuộc nhiều ch đề, thể lo i khác nhau Điềuănàyă làă điều mà các nhà cung cấp mong muốn, giới thi u nhiều
mụcăkhácănhauăđến vớiăngư i sử dụng
Phươngă phápă l c cộngă tácă được chia thành hai lo i là l c cộng tác ngư i dùng (UserậUser Collaborative Filtering) và l c cộng tác mục (ItemậItem Collaborative Filtering)
Trang 171.2.1.1 L c c ngătácăng i dùng (User–User Collaborative Filtering)
Ý t ởng
Ýătư ng c aăphươngăphápăl c cộngătácăngư i dùng là quảng cáo truyền
mi ng, t c là ý kiến c aăcácăthànhăviênătrongăgiaăđình,ăb năbèăđóngăvaiătròăquan tr ng trong vi căđưaăraăquyếtăđ nh cá nhân Nó sử dụng những ý kiến
c aăngư iădùngătươngătự để dự đoánăđánhăgiáăc a mộtăngư i dùng cho một
mục
Ngư i dùng tươngătự là những ngư i dùng có cùng s thích về nhiều
mục vớiă ngư iă dùngă đangăxét Để tránhătrư ng hợp dự đoánăxếp h ng c a ngư i dùng dựa trên quá nhiềuăngư iădùngătươngătự, h tưăvấn lựa ch n k ngư i hàng xóm gần nhất trong số ngư iădùngătươngătự trênăđể lấy ý kiến c a
h cho dự đoánămục c aăngư iădùngăđangăxét
Hình 1.2 Ví dụ l c cộngătácăngư i dùng
Trang 18Trong hình vẽ 1.2 trên,ăcóăbaăngư i sử dụng là {ngư i dùng 1, ngư i dùng 2, ngư i dùng 3} và bốn mục là bốn lo i trái cây {quả nho, quả dâu, quả dưaăhấu, quả cam}
Cácămũiătênăliền từ ngư iădùngăđến các mục thể hi năngư iădùngăđóăthích mụcăđó.ăVíădụ ng ời dùng 1 có bốnămũiătênăliềnăđến bốn lo i trái cây có nghƿaălàăng ời dùng 1 thích cả bốn lo i trái cây {quả nho, quả dâu, quả dưaă
hấu, quả cam}, tươngă tự ng ời dùng 2 chỉ thích {quả dâu}, ng ời dùng 3
thích {quả dâu, quả dưaăhấu}
Mũiătênăcongănốiăhaiăngư i dùng thể hi n rằng giữaăhaiăngư iădùngăđóăcóăđiểm yêu thích giống nhau hay giữa hai ngư iădùngăđóăcóăsự tươngăđồng
với nhau Ng ời dùng 1 và ng ời dùng 3 tươngăđồng vớiănhauăvìăhaiăngư i
dùng cùng thích chung hai lo i {quả dâu, quả dưaăhấu} Ng ời dùng 2 cũngă
có chung s thích với ng ời dùng 1 là {quả dâu},ătuyănhiênăđiểm chung này chưaăđ cơăs để dự đoánăng ời dùng 2 cũngăthíchănhững lo i quả mà ng ời dùng 1 thích Vì thế khôngăcóăđư ng nốiătươngăđồng giữa ng ời dùng 1 và
ng ời dùng 2 hay ng ời dùng 2 và ng ời dùng 3
Mũiătênănétăđ t từ mụcăđếnăngư i dùng thể hi n dự đoánăc a h thống
về mục mà có thể ngư i dùng sẽ thích hình vẽ 1.2 này, ta thấy cóăhaiămũiă
tênănétăđ t tr từ {quả nho, quả cam} đến ng ời dùng 3 cóănghƿaălà hai lo i
quả {quả nho, quả cam} sẽ là mụcăđượcătưăvấn cho ng ời dùng 3 Vì ng ời dùng 1 và ng ời dùng 3 có sự tươngăđồng với nhau nên những mục ng ời dùng 1 thích mà ng ời dùng 3 chưaă thíchă được dự đoánă làă mục mà ng ời dùng 3 có thể sẽ thích
Trang 19 Quy trình thực hiện
Hình 1.3 Ma tr n xếp h ng
Hình 1.3 là ma tr n xếp h ng c aăngư i dùng Ta có thể hình dung bảng
xếp h ng c aăngư i dùng là một ma tr n hai chiều, các cộtăđ i di n cho các
mục,ăcácăhàngăđ i di năchoăngư i sử dụng, giá tr c a ma tr n là xếp h ng c a ngư i dùng với mụcătươngă ng Giá tr này là các số tự nhiên thể hi n m căđộ quan tâm c aăngư i dùng với từng mục Mỗi h thống khác nhau có thang điểm xếp h ng khác nhau Giá tr này có thể bằng rỗngă trongă trư ng hợp ngư iădùngăkhôngăcóăđánhăgiá gì cho mụcăđó
Nhi m vụ c a h tưăvấn làăxácăđ nh giá tr � , theoăphươngăphápăl c
cộngătácăngư i dùng
Trang 20Hình 1.4 Ma tr n trong l c cộngătácăngư i dùng
Vớiăphươngăphápăl c cộngătácăngư i dùng ta thực hi n tính toán trên các cột c a ma tr nănhưăhìnhăvẽ 1.4 trên
SUR thể hi năngư i dùng có xếp h ng cho mục
Unknown Rating thể hi năngư i dùng không có xếp h ng cho mục
Thực hi n dự đoánă xếp h ng c aă ngư i dùng với mục theo phươngăphápăl c cộngă tácăngư i dùng là dự đoánăxếp h ng � , bằng bao nhiêu dựa trên nhữngăngư iădùngăđãăcóăđánhăgiáăchoămục
Trang 21Cácăb c th c hi n
Hình 1.5 Cácăbước thực hi n l c cộngătácăngư i dùng
Quyăướcăngư iădùngăuălàăngư iădùngăđangăxét
B ớc 1: Tìm kiếm mục ng ời dùng u đã có đánh giá
B ớc 2: Tìm những ng ời dùng có đánh giá cho các mục mà ng ời dùng u đánh giá Sau khi tìm kiếmăđược các mụcămàăngư iădùngăuăđãă
đánhăgiá,ătaătìmăkiếm nhữngăngư iădùngăcóăđánhăgiáăchoăcácămục tìm
được bước 2
Tìm kiếm mụcăngư i dùng u
đã cóăđánhăgiá
Tìm nhữngăngư i dùng có đánhăgiáăchoămục trên
Trang 22 B ớc 3: Tính t ơng đồng giữa ng ời dùng u với những ng ời dùng tìm
ki ếm ở b ớc 2
Có 4 công th căđượcădùngăđể tính toán sự tươngăđồng giữaăhaiăngư i
sử dụng [7] Giá tr này càng cao thể hi năhaiăngư i dùng càng có chung sự tươngăđồng
- Tươngăquanăngư i dùng (Pearson correlation)
Công th c tươngăquanăngư i dùng tính toán sự tươngătự giữaăhaiăngư i dùng dựa trên xếp h ng những mục mà cả haiăngư iăđềuăđánhăgiá
- Ràng buộc tươngă quan ngư i dùng (Constrained Pearson correlation)
Trong công th c này ta cần mộtăđiểm tiêu chuẩnăzălàăđánhăgiáătrungătính Ví dụ vớiăthangăđiểm 1-5ătrongăđóăđánhăgiáă1-2ălàăkhôngăthích,ăđánhăgiáă
, là xếp h ngămàăngư i dùng đãăđánhăgiáămục
Trang 23� làăđiểm tiêu chuẩn
- Th h ngătươngăquan ngư i dùng (Spearman rank correlation) Đối vớiăphươngăphápănày,ăcácămụcăđượcăngư iădùngăđánhăgiáăsẽ được
sắp xếp theo cấp b c Với nhữngăđánhăgiáătốt nhất sẽ b c 1, còn nhữngăđánhăgiá thấpăhơnăsẽ các b căcaoăhơn.ăSauăđóăthực hi nătínhătoánănhưăphươngăphápăPearsonăcorrelation,ăcácăđánhăgiáătrong công th c (1.1) sẽ được thay thế
- Độ tươngăđồng cosine (Cosine similarity)
Đâyălàăphươngăphápăvectoăkhôngăgianădựaătrênăđ i số tuyến tính không
phảiălàăcácăphươngăphápăthốngăkêănhưă trên Mỗiăngư iădùngăđược biểu di n
bằng 1 vecto và sự tươngă đồng giữaă haiă ngư iă dùngă được tính toán bằng khoảng cách cosine giữaăhaiăvectoăđánhăgiá
, = || ||.
2|| ||2 =
√∑ , 2√∑ , 2 Trongăđó,ă , làăđánhăgiáăc aăngư i dùng với mục
B ớc 4: Lựa chọn k ng ời dùng là hàng xóm
Trong một số h thống,ăăngư i ta lựa ch n hàng xóm là tất cả ngư i dùngăkhácăngư iădùngăđang.ăCònătrongămột số h thống khác, k hàng xóm được lựa ch n tùy thuộc vào vi c xét duy t từng mục, với mỗi mục khác nhau
sẽ lựa ch n một số lượng k hàng xóm khác nhau
Trang 24Vi c h n chế số lượngăngư iădùngătươngătự mangăđến những dự đoánăchínhăxácăhơnăvìăthế khi thực hi n nhiều thí nghi m trong nhiềuălƿnhăvực khác nhau,ăngư i ta nh n thấy với ∈ [ , ] là con số hợp lý
B ớc 5: Tìm kiếm những mục k ng ời dùng đã xếp hạng mà ng ời dùng u ch a xếp hạng
B ớc 6: Dự đoán đánh giá c a ng ời dùng u với mục ch a xếp hạng
Dựaătrênăngư i dùng hàng xóm ta có công th c dự đoánăđánhăgiáăc a ngư iădùngăđóăvới một mục [7] nhưăsau:
, = + ∑ ′∈ ∑ , |′ , ′,′ −| ′
Trongăđó,ăk là t păngư i hàng xóm c aăngư i dùng u
, ′ là sự tươngăđồng giữaăngư i dùng đangăxétău và ngư i dùng hàng xóm ′
′, là xếp h ng c aăngư i dùng ′với mục i
′ là xếp h ng trung bình c aăngư i dùng ′
Ví dụ minh họa
Lấy ví dụ bảngăđánhăgiáăxếp h ng 5 sao c a 5ăngư i sử dụng A, B, C,
D, E cho 4 bộ phim Batman Begins, Alice in Wonderland, Dumb and Dumber
và Equilibrium (theo bảng 1.1) Xếp h ngănàyăđượcăđánhătheoăthangăđiểm 1 ậ 5ătrongăđóă5ălàăxếp h ng cao nhất c aăngư i dùng thể hi năngư i dùng rất thích, rấtăquanătâmăđến bộ phimăđó
Trong ví dụ này, ta sẽ tìm kiếm dự đoánăc aăngư i sử dụng C cho bộ phim Equilibrium vớiăcácăđiều ki n là thực hi n tính toán sự tươngăđồng giữa haiăngư i sử dụng dựa trên công th c Pearson correlation
Để giải quyếtăbàiătoánănàyătrước hết ta cầnăxácăđ nh hàng xóm gần nhất
c aăngư i sử dụngăCălàăai?ăNhưătaăthấy,ăcóăhaiăngư i sử dụngăcóăđánhăgiáăchoă
bộ phim Equilibrium và chỉ cóăhaiăngư i này là ng cử viên cho danh sách hàng xóm gần nhất vớiăngư iădùngăCăđóălàăngư i dùng A và D
Trang 25Sauăđóăthực hi n tính sự tươngăđồng giữaăngư i dùng C với lầnălượt ngư i dùng A và ngư i dùng D theo công th c Pearson correlation
Trongăhìnhă1.1ătaăquyăướcăA,ăB,ăC,ăD,ăEătươngă ng là user A, user B, user C, user D, user E Các bộ phim Batman Begins, Alice in Wonderland, DumbăandăDumberăvàăEquilibriumăđược kí hi uătươngă ng là b, a, d, e
Dumb And Dumber
c a nhữngăngư i hàng xóm cho bộ phim Equilibrium theo công th c dự đoán taăđược:
, � = + , ( �, − �) + , ( , − )
Trang 261.2.1.2 L c c ng tác m c (Item–Item Collaborative Filtering)
Số lượng các mụcăcũngătĕngătheoăth i gian và quy mô m rộng c a nhà cung cấpănhưngăsoăvớiăngư i sử dụng thì số lượng này có thể ítăhơnăth m chí ítăhơnămộtăcáchăđángăkể.ăĐể khắc phục sự ph c t p khi số lượngăngư i dùng tĕngătrongăphươngăphápăl c cộngătácăngư i dùng, các nhà nghiên c u đã tìm
hiểu và đưaăthêmămộtăphươngăphápălàăl c cộng tác dựa trên mục
Trang 27 Ý t ởng
Phươngăphápăl c cộng tác mục dựaătrênăýătư ngăngư i dùng sẽ có cùng quan tâm với những mụcătươngătự [3], h tưăvấn tìm kiếm những mụcătươngă
tự với mụcămàăngư iădùngăđãăđánhăgiáăđể đưaăraătư vấn
Sự giống nhau giữa các mục được dựa trên xếp h ng c a nhữngăngư i dùng khác với chúng
Hình 1.7 Ví dụ l c cộng tác mục
Trong hình 1.7 ng ời dùng 1 thích {quả nho, quả dưaăhấu, quả cam},
ng ời dùng 2 thích {quả nho, quả dưaă hấu}, ng ời dùng 3 thích {quả dưaă
hấu} Ta thấy ng ời dùng 1 và ng ời dùng 2 thích cả hai quả là {quả nho, quả
dưaăhấu}.ăNhưăv y, ta có thể nói rằng quả dưaăhấu và quả nho có sự tươngăđồng với nhau.ăNgư i dùng thích quả nhoă thư ng sẽ thích quả dưaăhấu và ngược l i
Trang 28Khiăđóăng ời dùng 3 đãăthíchăquả dưaăhấu nên có thể ng ời dùng 3 cũngăsẽ thích quả nho H tưăvấn sẽ đề xuất quả nho cho ng ời dùng 3
Để dự đoánăxếp h ng c aăngư i dùng th k với mục m ta cần dựa trên
sự tươngăđồng giữa mục m với những mụcămàăngư i dùng th kăđãăđánhăgiá.ă
Để xem sự tươngăđồng giữa hai mục cần dựa trên xếp h ng c a nhữngăngư i dùngăđãăđánhăgiáăchoăcả hai mụcăđó
Vớiăphương pháp l c cộng tác mục ta thực hi n tính toán theo hàng c a
ma tr n xếp h ng
Trang 29Các b ớc thực hiện
Hình 1.9 Cácăbước thực hi n l c cộng tác mục
B ớc 1: Tìm kiếm mục ng ời dùng đã có đánh giá và ch a có đánh giá
Trongăbước này thực hi n 2 công vi c là tìm t p những mụcămàăngư i
dùngăchưaăđánhăgiáăvàătìmăt p những mụcămàăngư iădùngăđãăđánhăgiá
B ớc 2: Xét mỗi mục i đã đánh giá với lần l ợt các mục j ch a có đánh giá Sauăđó tính sự t ơng đồng giữa hai mục i và j
Sự tươngăđồng giữa hai mục i và j dựaătrênăđánhăgiáăc a những ngư iădùngăđãăxếp h ng cho cả hai mục
Có ba công th căđể tính toán sự tươngăđồng giữa hai mục [7]
- Độ tươngăđồng Cosine (Cosine similarity)
Độ tươngă đồng cosine giữa các vecto xếp h ng mục là số đoă tươngăđồng phổ biến nhấtăvìănóăđơnăgiản, nhanh và cung cấp các dự đoánă cóă độ chínhăxácătươngăđối tốt
Tính s ự tươngăđồng giữa hai mục i vầ j
D ự đoánăđánhăgiáăc aăngư i dùng u với
m ụcăchưaăđánhăgiá Bước 3
Bước 2
Bước 1
Tìm ki ếm mụcăngư i dùng
uăđãăđánhăgiá Tìm kiếm mụcăngư i dùng uăchưaăđánhăgiá
Trang 30Trongăđó,ă , là xếp h ng c aăngư i dùng v với mục i
V là t păngư iădùngăcóăcùngăđánhăgiáăchoăcả hai mục i và j
- Tươngăquanăngư i dùng (Pearson correlation)
Công th c Pearson correlation này với công th c Pearson correlation
l c cộngătácăngư i dùng chỉ khác rằng danh sách những mụcămàăhaiăngư i sử
dụngăcóăđồngăđánhăgiáăđược thay thế thànhădanhăsáchăngư i sử dụng cùng đánhăgiáăchoăhaiămục i và j Công th căPearsonăcorrelationăchoăphươngăphápă
với mỗi cặpăđồngăđánhăgiá
√∑ (∈ , − )2√∑ ∈ ( , − )2
Trongăđó,ă , là xếp h ng c aăngư i dùng u với mục i
là xếp h ng trung bình c aăngư i dùng u
Trang 31 B ớc 4: Dự đoán đánh giá c a ng ời dùng u với mục j
Cácătưăvấnăđược t o ra từ vi c ch n ra các mục ng cử viên là những
mục có dự đoánăcaoănhất Sau khi thu th p một bộ S các mụcătươngătự với
mục i, công th c dự đoánăđánhăgiáăc a ngư i dùng u với mục i [7] nhưăsau:
, =∑∑ | , |∈�∈� , , 1.9
Trongăđó,ăS là t p các mụcătươngăđồng với i
, là giá tr tươngăđồng giữa hai mục i và j
, là xếp h ng c aăngư i dùng u với mục j
Ví dụ minh họa
Ta thực hi n dự đoánă đánhă giáă c aă ngư i dùng C với bộ phim Equilibriumă theoă phươngă phápă l c cộng tác dựa trên mục với công th c Cosine similarity
||�||�||��||�
Alice in Wonderland (a) 8.544 12 0.241
Equilibrium (e) 5.831
Hình 1.10 Tínhăđộ tươngăđồng giữa hai mục
Ngư iădùngăCăcóăđánhăgiáăchoăcả ba bộ phim Batman Begins, Alice in WonderlandăvàăDumbăandăDumberănhưngăta chỉ cần lựa ch n 2 bộ phim gần
nhấtălàăBatmanăBeginsăvàăDumbăandăDumberă(độ tươngăđồng giữa chúng với
bộ phim Equilibrium là lớn nhất).ăVàăkhiăđóătaădự đoánăđánhăgiáăc aăngư i dùng C với bộ phimăEquilibriumănhưăsau:
, = |, , | + |,�+ , , | ,
Trang 32- Quy mô đ ợc mở rộng theo thời gian Số lượngăngư i sử dụng,
số lượng mục và số lượng xếp h ngăcũngătĕngătheoăth i gian và quy mô muốn
m rộng c a nhà cung cấp
- Không t vấn cho ng ời dùng mới và mục mới Nhữngă ngư i
dùng mới và mục mới không có l ch sử thực hành không thể sử dụngăphươngă
phápănàyăđể tìm kiếm các mụcătưăvấn
- Thiên v ị các mục phổ biến Một mục phổ biến có thể đượcăđưaă
vào danh sáchătưăvấn cho nhiều ngư i
- D ữ liệu th a thớt Mộtăngư i dùng có thể chỉ đánhăgiáămột hoặc
một vài mục trong số rất nhiều mục h quan tâm
Trang 331.2.2 Ph ngăphápăt ăv n d a trên n i dung (Content-based)
Ý t ởng
Ýătư ng c aăphươngăphápătưăvấn dựa trên nộiădungălàătưăvấn một mục cho mộtăngư i sử dụng dựa trên những mụcămàăngư iădùngăđóăđãăthíchătrước đóăhoặc dựa trên hồ sơăc aăngư i dùng
Phươngăphápănàyăkhôngădựa trên xếp h ng c aăngư i dùng khác với
mục cầnătưăvấn mà dựa hoàn toàn vào nội dung mụcămàăngư iădùngăđãăthíchătrướcăđó,ătừ đóătìmăkiếm những mục có nộiădungătươngătự để đưaăraătưăvấn
Phươngăphápănàyăáp dụng cho cả đốiătượng có tiểu sử l năchưaăcóătiểu
sử
- Đối vớiăngư i dùng mới, h thống sẽ yêu cầuăngư i dùng bổ sung các
mục yêu thích từ đóălàmăcơăs tưăvấn
- Đối vớiăngư iădùngăđãăcóătiểu sử, h thống sẽ kiểm tra từng mụcăngư i dùngăđóăquanătâm sauăđó tìm kiếm các mục giống với mụcăđóăvàălựa ch nătưă
vấn
Những mục khác nhau có những cách phân lo i khác nhau Ta có thể phân lo i mục theo d ng sau:
- M ục có cấu trúc Ví dụ nhưăphim,ănh c, video những mụcănàyăthư ng
gắnăcácăthôngătinănhưătiêuăđề, thể lo i, ch đề, tác giả, di n viên, ca sỹ, nh c
sỹ,ănĕmăsản xuất Sự tươngăđồng về nội dung giữa những mục này dựa trên
sự giống nhau c aătiêuăđề, thể lo i, tác giả, di n viên
- M ục không có cấu trúc Ví dụ nhưăcácăbàiăvĕn,ăbàiăbáo, trang web
cũngăđược gắn vớiăcácăthôngătinănhưătiêuăđề, mô tả, tác giả, ch đề nhưngăđể
kiểm tra sự tươngăđồng giữa chúng dựa trên các thôngătinătrênălàăchưaăđ nên
cần xem xét chi tiếtăvĕnăbản, so sánh cụ thể để nắm rõ nội dung c aăvĕnăbản đóălàăgìăvàăcóăgần với nộiădungăngư i dùng quan tâm hay không?
Trang 34Hình 1.11 Ví dụ phươngăphápătưăvấn dựa trên nội dung
Trong hình 1.11, nguồn dữ li u có rất nhiều th nhưă sách,ă đƿaă CD,ăbáo, Câu hỏiăđặt ra là làm thế nào lựa ch n một số mục trong nguồn dữ li u
lớnănhưăthế để tưăvấnăchoăngư iădùng.ăPhươngăphápătưăvấn dựa trên nội dung
sẽ làmă đượcă điềuăđó.ăNóă dựa trên nội dung những mụcă màă ngư iă dùngă đãăquanătâmătrướcăđóăđể tìm ra ch đề, thể lo iămàăngư i dùng yêu thích Từ đóă
giới thi u tớiăngư i dùng những mục có cùng nội dung với những mục mà ngư iădùngăđóăthích.ă
Thông qua hồ sơăngư i dùng, h thống biếtăđượcăngư i dùng thư ng có
s thíchăđ c sách báo vì v y sẽ giới thi uăchoăngư i dùng những cuốn sách và bài báo có nội dung mà h có thể quan tâm
Trang 35 Quy trình thực hiện
Hình 1.12 Cácăbước thực hi nătưăvấn dựa trên nội dung
B ớc 1: Kiểm tra ng ời dùng mới? Phươngăphápăápădụng cho cả hai
nhómăngư i dùng có tiểu sử và không có tiểu sử Nếuăngư iădùngăchưaă
đ thông tin về mục yêu thích thì h thống sẽ yêu cầuăngư i dùng bổ
sung thêm thông tin
B ớc 2: Cập nhật thông tin H thống yêu cầuăngư i dùng mới khai
báo một số thông tin về s thíchăđể cóăcơăs cho vi c tìm kiếmătưăvấn Thông tin có thể là ch đề b n yêu thích, mục mà b n quan tâm trong
ch đề đó
B ớc 3: Tìm kiếm mục yêu thích
B ớc 4: Tìm kiếm mục t ơng đồng với mục yêu thích H thống tìm
kiếm sự giống nhau giữa những mụcăchưaăbiết với những mụcăđãăquan tâmăđể lựa ch nătưăvấn mục nào có khả nĕngăngư i dùng có thể quan
C p nh t thông tin
Tìm ki ếm mục yêu thích
Tìm kiếm mụcătươngăđồng với mục yêu thích