Tải bản đầy đủ (.doc) (24 trang)

Tài liệu CF doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (522.23 KB, 24 trang )

CF
Là một trong những phương pháp xây dựng hệ thống tư vấn thành công nhất, CF thông qua các thị
hiếu đã được biết đến của một nhóm người dùng để đưa các tư vấn hoặc dự đoán về thị hiếu chưa biết
cho một số người dùng khác.
1.Giới thiệu
Trong cuộc sống hàng ngày, mọi người thường tin vào những lời giới thiệu từ những người khác
nhau thông qua lời nói, thư từ văn bản, các bản ghi mới có được ở các phương tiện thông tin đại chúng,
ở các cuộc điều tra nói chung, các hướng dẫn và v.v Đó là lý do tại sao các hệ tư vấn ra đời, với mục
đích hỗ trợ và làm tăng thêm tiến trình xã hội tự nhiên này, hệ tư vấn giúp mỗi người có thể chọn lọc
một cách kỹ lưỡng thông qua những quyển sách, bài báo, trang web, phim, nhà hàng, truyện cười, các
sản phẩm…để tìm ra thông tin hữu ích và đáng chú ý nhất cho họ. Nhà phát triển của một trong số
những hệ tư vấn đầu tiên là Trapestry [1]( [1]D.Goldberg,D.Nichols,B.M.Oki,andD.Terry,“Using
collaborative filtering to weave an information tapestry,”CommunicationsofACM,vol.35,no.12,pp.61–
70,1992.) (các hệ tư vấn khác gồm tư vấn dựa trên luật,, và tùy biến theo khách hàng) đưa ra thuật ngữ
“Collaborative Filtering (CF_ Lọc cộng tác)”. Giả thuyết cơ bản của CF là nếu có X và Y người dùng
đánh giá cho n item tương tự nhau, hoặc có hành vi tương tự nhau (ví dụ, mua, xem, nghe,…) thì họ sẽ
có đánh giá hoặc hành động trong các item khác cũng tương tự nhau [3_
[3]K.Goldberg,T.Roeder,D.Gupta,andC.Perkins,“Eigentaste: a constant time collaborative filtering
algorithm”, InformationRetrieval,vol.4,no.2,pp.133–151,2001.]
Kỹ thuật CF sử dụng cơ sở dữ liệu về sở thích của người dùng đối với các item để dự đoán các chủ
để hoặc sản phẩm thêm vào cho một người dùng mới có cùng sở thích. Trong ngữ cảnh cụ thể của CF,
có một danh sách của m người dùng {u
1
, u
2
, …,u
m
} và một danh sách của n item {i
1
, i
2


,…,i
n
}, và mỗi
người dùng u
i
có một danh sách item Iu
i
đã được đánh giá hoặc suy luận được thông qua các hành vi
của họ. Các đánh giá này có thể là các thể hiện tường minh ví dụ nằm trong khoảng 1 – 5 (ghét – rất
thích), hoặc không tường minh, như việc mua bán hoặc click – through ( kích hoạt vào một trang web
nào đó - thể hiện của một vài người click trong những bản quảng cáo trên internet). Cho ví dụ, chúng ta
có thể chuyển đổi danh sách người dùng và các bộ phim họ thích hoặc không thích (Bảng 1(a)) với ma
trận trọng số user – item (Bảng 1 (b)), trong đó Tony là một người dùng chính mà chúng ta muốn tư
vấn. Ở đây một vài giá trị trong ma trận bị thiếu do những người dùng này không đưa ra đánh giá của
mình cho những item đó.
Có rất nhiều thách thức đối với các nhiệm vụ của công lọc cộng tác (Phần 2). Bởi vì thuật toán CF
yêu cầu phải có khả năng giải quyết vấn đề thưa thớt dữ liệu cao, tỷ lệ với số người dùng và item tăng
lên, đưa ra những tư vấn thích hợp trong thời gian ngắn, và giải quyết được các vấn đề khác như tính
đồng nghĩa (xu hướng giống nhau hoặc item tương tự nhua nhưng khác nhau về tên), các tấn công
khác, dữ liệu bị nhiễu và các vấn đề về bảo mật.
Các hệ lọc cộng tác ra đời sớm như GroupLens [5] P.Resnick, N.Iacovou, M.Suchak, .Bergstrom,
and J.Riedl, “Grouplens: an open architecture for collaborative filtering of netnews,” in Proceedings of
the ACM Conferenceon Computer Supported Cooperative Work, pp. 175–186, New York, NY,
USA,1994.], sử dụng dữ liệu đánh giá của người dùng để tính toán độ tương tự hoặc trọng số giữa các
người dùng hoặc item và đưa ra dự đoán, tư vấn theo những giá trị tương tự đó. Ở đó sử dụng phương
thức CF dựa trên bộ nhớ (Phần 3) và sau này được triển khai thành các hệ thống thương mại đánh chú ý
như (như hình 1) và Barnes và Noble vì chúng dễ cài đặt và đưa ra hiệu quả
cao. Tính suy biến (Customization) trong hệ CF cho mỗi người dùng giảm dần theo những nỗ lực tìm
kiếm của người dùng. Nó cũng đảm bảo được số lượng khách hàng trung thành tăng lên, tỷ lệ cao hơn,
tổng thu nhập quảng cao nhiều hơn và nhiều hứa hẹn ở phía trước đang mở ra.

Tuy nhiên có một vài giới hạn trong kỹ thuật CF dựa trên bộ nhớ, như trên thực tế giá trị tương tự
dựa trên các item nói chung vì vậy khi dữ liệu ít thì nó không còn đáng tin cậy nữa.
Để đạt được hiệu suất dự đoán tốt hơn và khắc phục những thiếu sót của các thuật toán CF dựa
trên bộ nhớ, phương pháp CF dựa trên mô hình ra đời. Kỹ thuật này (Phần 4) sử dụng dữ liệu đánh giá
thuần túy để ước lượng hoặc học mô hình nhằm đưa ra dự đoán [[9] J. Breese, D. Heckerman, and C.
Kadie, “Empirical analysis of predictive algorithms for collaborative filtering,” in Proceedings of the
14th Conference on Uncertainty in Artificial Intelligence(UAI’98),1998.]). Mô hình có thể được xem là
data mining hoặc thuật toán học máy và kỹ thuật được biết đến nhiều nhất gồm có mô hình mạng
Bayes, mô hình Clustering và mô hình Latent semantic [7 _ [7] T. Hofmann, “Latent semantic models
for collaborative filtering,” ACM Transactions on Information Systems, vol. 22, no.1,pp.89–115,2004.)
Bên cạnh lọc cộng tác, lọc dựa trên nội dung cũng là một mảng quan trọng khác của hệ tư vấn. Hệ
tư vấn dựa trên nội dung đưa ra các tự vấn thông qua việc phân tích ngữ nghĩa của thông tin và tìm ra
quy luật trong nội dung đó. Điểm khác nhau cơ bản giữa CF và các hệ tư vấn dựa trên nội dung là CF
chỉ sử dụng dữ liệu đánh giá giữa user – item để đưa ra dự đoán, trong khi hệ tư vấn dựa trên nội dung
lại dựa trên các đặc trưng của người dùng và item để dự đoán [15_ L. Si and R. Jin, “Flexible mixture
model for collaborative filtering,” in Proceedings of the 20th International Conferenceon Machine
Learning (ICML ’03), vol. 2, pp. 704–711, Washington,DC,USA,August2003.]. Tất nhiên, cả CF và hệ
tư vấn dựa trên nội dung đều có giới hạn. Trong khi các hệ CF không kết hợp chặt chẽ các thông tin
đặc trưng một cách tường minh thì hệ tư vấn dựa trên nội dung lại không kết hợp các thông tin cần thiết
về sở thích tương tự nhau giữa mỗi các nhân [8_ L. Si and R. Jin, “Flexible mixture model for
collaborative filtering,” in Proceedings of the 20th International Conference on Machine Learning
(ICML ’03), vol. 2, pp. 704–711, Washington,DC,USA,August2003.].
Kỹ thuật Hybrid CF kết hợp giữa kỹ thuật CF và kỹ thuật dựa trên nội dung hy vọng tránh được
những hạn chế của cả hai phương pháp trên vì vậy sẽ cải thiện được hiệu suất của vấn đề tư vấn (Phần
5)
Bảng tóm tắt của kỹ thuật CF được mô tả khá chi tiết trong bảng 2:
Để đánh giá thuật toán CF (Phần 6), chúng ta cần dử dụng độ đó theo kiểu ứng dụng của CF. Thay
vì Classification Error lỗi phân loại, ngày nay để đánh giá hiệu suất dự đoán của CF thường sử dụng
Mean Absolute Error MAE và dữ liệu để làm thí nghiệm thường dùng là cơ sở dữ liệu của MovieLens
[18], Jester [19] và Netflix prize [20]. Trong phần 7 chúng tôi sẽ đưa ra tóm tắt và những mô tả trong

công việc này.
2. Các đặc trưng và thách thức của lọc cộng tác:
Các thuật toán tư vấn trong thương mại điện tử thường hoạt động trong một môi trường mang
tính thách thức, đặc biệt là trong các công ty mua sắm trực tuyến lớn như eBay và Amazon. Thường thì
một hệ thống tư vấn với các giải pháp nhanh chóng và chính xác sẽ thu hút sự thích thú của khách hàng
và mang lại lợi nhuận cho các công ty. Đối với các hệ thống CF, việc đưa ra những sự dự báo hay các
gợi ý chất lượng cao phụ thuộc vào khả năng xác định xác định tối đa các thách thức của chúng, đây
cũng chính là các đặc trưng của các nhiệm cụ của CF.
2.1. Thưa thớt dữ liệu:
Trong thực tế, rất nhiều hệ thống tư vấn thương mại được sử dụng để đánh giá hàng loạt các sản
phẩm rất lớn. Vì vậy, ma trận user – item được sử dụng trong lọc cộng tác sẽ cực kỳ thưa thớt và hiệu
suất thành công cho các dự đoán hay gợi ý của các hệ thống CF đưa ra trở thành một thách thức lớn.
Các thách thức về thưa thớt dữ liệu thường xuất hiện trong nhiều tình huống, đặc biệt vấn đề
khởi động lạnh “cold start” diễn ra khi một người dùng mới hay item mới vừa mới được thêm vào hệ
thống và việc tìm những sự tương đồng thật khó khăn vì không đủ thông tin (trong vài trường hợp, vấn
đề cold star còn được gọi là vấn đề người dùng mới và vấn đề item mới). Các item mới không thể được
đưa vào hệ thống nếu không có người dùng nào đánh giá chúng, và người dùng mới không thể có một
sự gợi ý tốt nếu thiếu trọng số hoặc bản liệt kê về những đánh giá hay mua sắm trước đây của họ.
Coverage (Độ bao phủ) được định nghĩa như là phần trăm của các item thuật toán cung cấp để đưa ra tư
vấn. Vấn đề giảm độ bao phủ (Reduced coverage) xảy ra khi số lượng các đánh giá của người dùng có
hteer nhỏ hơn so với số lượng lớn các item trong hệ thống và hệ tư vấn không có khả năng sinh ra tư
vấn cho họ. Neighbor transitivity (Tính tịnh tiến hàng xóm) đề cập tớ vấn đề về cơ sở dữ liệu thưa thớt,
ở đó những người dùng với thị hiếu tương tự nhau không được xác định nếu họ không cùng đánh giá về
các item giống nhau. Vấn đề này đã làm giảm hiệu năng của hệ tư vấn dựa vào sự so sánh từng cặp
giữa các người dùng từ đó sinh ra các dự đoán.
Để giảm bớt vấn đề thưa thớt dữ liệu có rất nhiều phương pháp được đưa ra. Kỹ thuật giảm
chiều SVD (Singular Value Decomposition) là một trong số đó[23 _ D. Billsus and M. Pazzani,
“Learning collaborative information filters,” in Proceedings of the 15th International Conference on
Machine Learning(ICML’98),1998.]. Nhiệm vụ chính của kỹ thuật này là giảm những người dùng hoặc
item không tiêu biểu và không quan trọng để giảm chiều của ma trận user – item một cách trực tiếp.

LSI (Latent Semantic Indexing) được sử dụng trong vấn đề truy vấn thông tin đã rất thành công khi
tính toán dựa trên SVD để tìm ra độ tương tự giữa các người dùng thông qua việc biểu diễn họ trong
không gian đã giảm chiều. Bên cạnh đó, Goldberg et al. [3] đã phát triển eigentaste áp dụng Principle
Component Analysis (PCA), một kỹ thuật phân tích hệ số có liên hệ gần gũi nhau được mô tả đầu tiên
bởi Pearson vào năm 1901 [26] nhằm làm giảm số chiều không gian. Tuy nhiên, một khi người dùng
hoặc item nào đó bị loại bỏ, thì những thông tin hữu ích cho việc tư vấn liên quan đến họ cũng có thể bị
mất và chất lượng tư vấn có thể bị giảm xuống [6, 27].
Thuật toán CF lai hay còn gọi là thuật toán content – boosted CF rất hữu ích trong việc giải
quyết vấn đề thưa thớt bởi ở đó thông tin nội dung mở rộng được dùng để tìm ra những dự đoán cho
người dùng hoặc item mới. Trong Ziegler et al [28], một phương pháp lọc cộng tác lai đã được đưa ra
nhằm khai thác thông tin phân loại chính cho các sản phẩm cần phân loại chính xác và nó thường được
dùng trong các vấn đề thưa thớt dữ liệu của các hệ tư vấn CF, dựa trên các hồ sơ cá nhân được tạo ra
nhờ sự suy luận của điểm được ghi trong các chủ đề con và trong sự đa dạng của các chủ đề [28].
Schein et al. cũng đã đưa ra phương thức biến tiềm ẩn của mô hình khía cạnh (aspect model latent
variable) cho tư vấn khởi động lạnh (cold start), đây chính là sự kết hợp giữa thông tin cộng tác và nội
dung trong mô hình lọc. Kim và Li đưa ra mô hình xác suất để giải quyết vấn đề khởi động lạnh, các
items được sắp xếp thành các nhóm và những dữ đoán người dùng tạo ra được xem là sự phân loại
Gaussian với trọng số đánh giá tương ứng [30]
Thuật toán CF dựa trên mô hình như TAN – ELR (tree augment naïve Bayes được tối ưu hóa
thông qua sự hồi quy logic mở rộng), tập trung vào vấn đề thưa thớt thông qua việc cung cấp nhiều hơn
những dự đoán chính xác cho dữ liệu thưa thớt. Một vài kỹ thuật CF dựa trên mô hình mới được đưa ra
bao gồm kỹ thuật truy vấn liên kết (association retrieval technique), áp dụng với thuật toán hoạt hóa mở
rộng nhằm khai thác sự liên kết bổ sung giữa những người dùng nhờ trọng số đánh giá và các bản tiểu
sử của họ [32]; MMMF (Maximum margin matrix factorizations_ các thừa số ma trận dư cực đại) hay
còn gọi là ma trận lồi [33, 34]; multiple imputation – based CF approaches [36]; và thuật toán
imputation – boosted CF [37].
2.2. Scalability (khả năng mở rộng)
Khi số lượng người dùng và items ngày càng tăng, thuật toán CF truyền thống sẽ gặp phải vấn
đề nghiêm trọng về khả năng mở rộng, với một lượng tính toán vượt quá mức thực hành và cho phép.
Chẳng hạn, với 10 triệu khách hàng (M) và hàng triệu item khác nhau (N), thuật toán CF với độ phức

tạp tính toán là O (n) sẽ là quá lớn. Tương tự như vậy, với nheiefu hệ thống yêu cầu ngay lập tức đưa ra
kết quả (ví dỵ yêu cầu trực tuyến) và tư vấn cho tất cả khách hàng mà không hề quan tâm để việc trao
đổi cũng như trọng số đánh giá trước đây của họ, điều đó đòi hỏi khả năng mở rộng lớn của một hệ
thống CF [6].
Kỹ thuật giảm chiều như SV có thể giải quyết vấn đề này và cung cấp những tư vấn có chất
lượng tốt, nhưng chúng phải trải qua những bước tính toán thừa số ma trận rất phức tạp. Một thuật toán
CF cải tiến SVD [38] tính toán lại chiều SVD sử dụng những người dùng đã có sẵn. Khi có một tập
trọng số đánh giá mới được thêm vào cơ sở dữ liệu, thuật toán sử dụng kỹ thuật lấp đầy (folding - in)
[25, 39] để xây dựng hệ thống cải tiến mà không cần tính toán lại mô hình có chiều thấp hơn từ vạch
xuất phát. Vì vậy, nó tạo ra hệ thống tư vấn cớ khả năng mở rộng cao.
Thuật toán CF dựa trên mô hình, như thuật toán độ tương quan Pearson dựa trên item có thể đạt
được khả năng mở rộng thích hợp. Thay vì việc tính toán độ tương tự giữa tất cả các cặp items, CF
Pearson dựa trên item tính toán độ tương tự chỉ giữa nhưng cặp item có liên quan đến nhau của cùng
một người dùng [6,40]. Một thuật toán CF Bayesian đơn giản cũng giải quyết vấn đề mở rộng thông
qua việc đưa ra nhưng dự đoán dựa trên trọng số có sẵn [41]. Thuật toán CF dựa trên mô hình ví dụ
như clustering CF, tập trung vào vấn đề mở rộng tại vị trị mà các cụm có độ tương tự cao và có ít tư
vấn cho người dùng hơn thay vì trên toàn bộ cơ sở dữ liệu [13, 42 – 44], nhưng cũng cần phải cân bằng
giữa hiệu suất mở rộng và dự đoán.
2.3. Synonymy (Tính đồng nghĩa)
Tính đồng nghĩa đề cập đến số những item giống hoặc rất tương tự nhau chỉ khác nhau về tên
hoặc mục từ. Hầu hết các hệ thống tư vấn không có khả năng khám phá ra mối liên quan về mặt ngữ
nghĩa này vì vậy việc nghiên cứu về những sản phẩm này là rất khác nhau. Chẳng hạn, nếu nhìn vào hai
item này “children movie” và “children film” thực tế đây là hai item giống nhau, nhưng các hệ thống
CF dựa trên bộ nhớ lại đưa kết quả không khớp giữa chúng khi tính toán độ tương tự. Thật ra, độ biến
thiên trong cách dùng các thuật ngữ mô tả nói chung là rất lớn. Vì vậy, tính phổ biến của từ đồng nghĩa
làm giảm hiệu suất của các hệ tư vấn CF.
Các cố gắng trước đây nhằm giải quyết vấn đề về tính đồng nghĩa phụ thuộc nhiều vào sự triển
khai thuật ngữ một cách tự động hoặc có tri thức hoặc thông qua việc xây dựng từ điển liệt kê các từ
đồng nghĩa với nhau. Trở ngại cho các phương thức tự động chính là một số item được bổ sung có thể
có ý nghĩa khác với dự định, dẫn đến giảm sút nhanh chóng hiệu suất tư vấn [45].

Kỹ thuật SVD, cụ thể là phương thức Latent Semantic Indexing (LSI), có khả năng giải quyết
vấn đề từ đồng nghĩa. SVD đưa ra một ma trân lớn các tài liệu thuật ngữ liên quan đến dữ liệu và xây
dựng một không gian ngữ nghĩa mà ở đó các thuật ngữ và tài liệu liên quan mật thiết với nhau. SVD
cho phép sắp xếp không gian nhằm mang lại những mẫu liên kết chính trong dữ liệu, và bỏ qua những
mẫu nhỏ hơn và ít quan trọng hơn. Hiệu suất của LSI trong việc giải quyết vấn đề tính đồng nghĩa là
tạo ra mức độ recall (gọi lại) cao hơn tại những nơi mà mức độ chính xác ban đầu khá thấp, làm cho
những cải thiện tương ứng lớn. Tuy nhiên, hiệu suất của phương thức LSI tại mức thấp nhất của recall
khá là ít [25].
Phương thức LSI chỉ giải quyết được một phần vấn đề đa nghĩa mà trong thực tế hầu hết các từ
đều nhiều hơn một nghĩa [25].
2.4. Gray Sheep (Tính mập mờ)
Vấn đề này đề cập đến những người dùng có ý kiến không kiên định đồng ý hoặc không đồng ý
vói một nhóm người và vì vậy không có lợi cho hệ lọc cộng tác [46]. Black sheep là nhóm ngược nhau,
đây là nhóm mà thị hiếu đặc trưng của họ đưa ra những tư vấn gần như là không có khả năng xảy ra.
Mặc dù đây là lỗi của hệ thống tư vấn, nhưng những hệ tư vấn không điện tử cũng gặp những vấn đề
lớn này, vì vậy black sheep là lỗi không thể chấp nhận được [47].
Claypool et al. đã đưa ra phương pháp lai kết hợp giữa hệ tư vấn CF và hệ tư vấn dựa trên nội
dung như là cơ sở dự đoán trọng số đánh giá trung bình của dự đoán dựa trên nội dung và CF. Với
phương pháp này, trọng số đánh giá được xác dịnh dựa trên việc nghiên cứu kỹ lương, cho phép hệ
thống xác định sự tối ưu hóa khi trộn lẫn tư vấn dựa trên nội dung và CF cho mỗi người dùng, giúp giải
quyết vấn dề gray sheep [46].
2.5. Shilling Attacks (Sự tấn công)
Trong trường hợp này những người đưa ra lời đánh giá thì đưa ra nhiều những đánh giá tốt cho
sản phẩm của họ và xấu cho những sản phẩm cạnh tranh với họ. Và các hệ thống CF không thể phòng
ngừa những hiện tượng này [2].
Hiên nay, các mô hình shilling attacks cho hệ lọc cộng tác được xác định và hiệu quả của nó vẫn
là một vấn đề cần nghiên cứu. Lam và Riedl đã thấy rằng thuật toán CF dựa trên item chịu tác động của
những sự tấn công này ít hơn so với thuật toán dựa trên người dùng, và họ đã đưa ra một phương pháp
mới được dùng để đánh giá và loại bỏ kiểu tấn công này trong các hệ tư vấn [48]. Mô hình tấn công của
shilling cho các hệ CF dựa trên item đã được nghiên cứu bởi Mobasher et al. và các hệ CF khác như hệ

CF lai và hệ CF dựa trên mô hình cũng được tin tưởng rằng có khả năng giải quyết một phần lỗi này
[49]. O’Mahony et al. đã góp phần vào việc giải quyết vấn đề shilling attacks bằng việc phân tích thế
mạnh, khả năng phục hồi hệ tư vấn từ những tình trạng chông phá có ác ý trong ma trận trọng số khách
hàng/ sản phẩm [50].
Bell và Koren [51] sử dụng phương pháp lĩnh hôi để giải quyết vấn đề shilling attacks bằng việc
gỡ bỏ các ảnh hưởng toàn cục trong trạng thái dữ liệu đã bị bình thường hóa của CF dựa trên hàng
xóm, và làm việc với những ảnh hưởng toàn cục còn lại để lựa chọn ra các hàng xóm. Và họ đã cải
thiện được hiệu suất của CF trong dữ liệu Netflix [20].
2.6. Các thách thức khác.
Nhiều người không muốn những thói quen và cách nhìn của mình được biết đến rộng rãi, trong
khi các hệ tư vấn CF cũng cần tập trung vào những thông tin riêng tư của mỗi người. Miller et al. [4] và
Canny [52] đã tìm ra các phương thức để bảo vệ thông tin cá nhân của người dùng trong các công việc
về tư vấn cho CF.
Sự gia tăng của nhiễu ( Sự phá hoại _ sabotage) cũng là một thách thức khác, như người dùng
cũng có nhiều thể loại khác nhau. Kỹ thuật lựa chọn thể hiện và tính thừa số mà trận dư cực đại được
xem nhưng là phương pháp hữu ích để giải quyết vấn đề này cho CF. Thuyết Dempster – Shafer (DS)
và kỹ thuật gán là một thành công trong việc cung cấp dữ liệu không hoàn chỉnh và pha trộn cho các
công việc phân loại và biểu diễn tri thức, chúng cũng có sức mạnh lớn trong việc giải quyết vấn đề pha
trộn của CF.
Khả năng suy luận cũng là một khía cạnh quan trọng trong các hệ tư vấn. Lý do ban đầu như
“ban sẽ thích quyển sách này vì bạn đã thích những quyển sách kia” sẽ được xuất hiện và có ích cho
người đọc, thay vì sự đánh giá chính xác của những lời giảng giải [57].
2.7. Thách thức Netflix Prize (Đòn bẩy)
Được giới thiệu vào tháng 10 năm 2006, thách thức đòn bẩy Netflix [20] đã thu hút hàng nghìn
nghiên cứu đang cạnh tranh với hàng triệu đô la nhằm cải thiện tốt nhất hiệu suất tư vấn về phim.
Thách thức này đặc trưng với tập dữ liệu công nghiệp với số lượng lớn (480,000 người dùng và 17,770
bộ phim) và độ đo hiệu suất suất không mềm dẻo của RMSE (xem chi tiết phần 6).
Cho đến tháng 7, năm 2009. Leaderboard trong cuộc tranh đua về Netflix Prize đã đưa ra kết quả
như bảng 3 (RSME đã cải thiện được 10.5% trên các hệ thống tư vấn phim Netflix: Cinematch) thông
qua các yếu tố ngữ nghĩa và mô hình hàng xóm [58]. Một vài trang nghiên cứu đáng chú ý về thách

thức này có thể được tìm thấy trong 2008 KDD Netflix Workshop(o. )
3. Lọc dựa trên bộ nhớ
Thuật toán CF dựa trên bộ nhớ sử dụng toàn bộ hoặc một mẫu dữ liệu user – item để sinh ra dự
đoán. Mỗi người dùng là một phần của nhóm những người có sở thích giống nhau. Bằng việc xác định
những hàng xóm cho người dùng mới (hoặc người dùng chính), một dự đoán về sở thích với các item
mới được tạo ra.
Thuật toán CF dựa trên hàng xóm là thuật toán CF dựa trên bộ nhớ được sử dụng rộng rãi thường
tiến hàng theo các bước sau: tính toán độ tương tự hoặc trọng số w
i, j
nhằm đưa lại khoảng cách, độ
tương quan, hoặc trọng số đánh giá giữa hai người dùng hoặc hai item, i và j; từ đó sinh ra những dự
đoán cho người dùng chính bằng việc lấy trọng số trung bình của tất cả các đánh giá của người dùng
hoặc item của một item hoặc người dùng nào đó, hoặc đơn giản là lấy trung bình các trọng số đánh giá
[40]. Khi công việc sinh ra một tư vấn top – N, chúng ta cần tìm k người dùng hoặc item giống nhau
nhất ( các hàng gần nhất) sau đó tính toán độ trương tự và cuối cùng là tập hợp các hàng xóm lấy các
item thường xảy ra nhất trong top – N đem tư vấn.
3.1 Tính toán độ tương tự
Tính toán độ tương tự giữa người dùng hoặc item là một bước cơ bản trong thuật toán lọc cộng
tác dựa trên bộ nhớ. Với các thuật toán CF dựa trên item, ý tưởng cơ bản của việc tính toán độ tương tự
giữa item i và item j bước đầu tiên là làm việc với những người dùng có cùng đánh giá về các item này
và sau đó áp dụng việc tính toán đẻ xác định độ tương tự w
i, j
giữa hai item cùng trọng số đánh giá của
những người dùng này [40]. Đối với thuật toán CF dựa trên người dùng, bước đầu tiên chúng ta phải
tính toán độ tương tự w
u, v
giữa hai người dùng u và v, những người mà cùng đánh giá về các item
giống nhau.
Có rất nhiều phương pháp khác nhau để tính toán độ tương tự hoặc trọng số giữa những người
dùng hoặc item.

3.1.1. Độ tương tự dựa trên sự tương quan
Trong trường hợp này, độ tương tự w
u, v
giữa hai người dùng u và y, hoặc w
i, j
giữa hai item I và u
được đánh giá bằng việc tính toán độ tương quan Pearson hoặc các độ tương tự dựa trên độ tương quan
khác.
Độ tương quan Pearson đo phạm vi giữa hai biến tuyến tính có quan hệ với nhau [5]. Chẳng hạn
đối với thuật toán dựa trên người dùng, độ tương quan Pearson giữa người dùng u và v là:
Trong đó là xét trên toàn bộ các item của cả người dùng u và v đã đánh giá và là đánh
giá trung bình của items được đánh giá bởi người dùng thứ u. Chẳng hạn trong bảng 4, chúng ta có w
1, 5
= 0.756
Đối với thuât toán dựa trên item, cho tập người dùng u thuộc U là những người cùng đánh giá về
hai item i và j, ta có độ tương quan Pearson được tính toán như sau:
Trong đó r
u, I
là đánh giá của người dùng u cho item i, là đánh giá trung bình của item thứ I
bởi những người dùng khác, được biểu diễn như hình 2 [40]
Một vài biến đổi trong độ tương quan Pearson dựa trên người dùng và item có thể được tìm thấy
trong [59]. Thuật toán CF dựa trên độ tương quan Pearson là một thuật toán CF điển hình và thường
được việc nghiên cứu CF.
Độ tương tự dựa trên tính tương quan khác bao gồm: độ tương quan Pearson ràng buộc, và một
sự đa dạng của độ tương quan Pearson sử dụng điểm trung tâm thay vì trọng số đánh giá trung bình; độ
tươn quan hạng Spearman, giống như độ tương quan Pearson, nó mong đợi các đánh giá giống như là
các thứ hạng; và độ tương quan Kendall’s, giống như độ tương quan hạng Superman, nhưng thay vì sử
dụng các thứ hạng cảu chúng, ở đây chỉ những thứ hạng có liên quan mới được dùng để tính toán độ
tương quan [3, 60].
Thông thường số những người dùng trong việc tính toán dộ tương tự là rất đáng quan tâm so với

kích thước những hàng xóm của người dùng chính, và CF dựa trên độ tương tự được xem như là CF
dựa trên hàng xóm.
3.1.2 Độ tương tự dựa trên vector cosine
Độ tương tự giữa hai tài liệu có để được đo thông qua việc xem xét mỗi tài liệu như một vector
về tần suất xuất hiện từ và tính toán cosine về góc giữa các vector tần suất đó [61]. Dạng thức này có
thể được chấp nhận trong lọc cộng tác, người dùng và item thay cho các tài liệu và các trọng số đánh
giá thay cho tần suất xuất hiện từ.
Cụ thể, nếu R là ma trận user – item m x n, độ tương tự giữa hai item, i và j được xác định là
cosine của các vector n chiều tương ứng với cột thứ i và j trong ma trận R
Độ tương tự vector giữa item i và j được tính như sau:
Trong đó . biểu thị tích giữa hai vector. Từ đó đưa ra tính toán độ tương tự cho n item, và ma
trận độ tương tự n x n được thực hiện [27]. Chẳng hạn, nếu cho vector và vector
, ta có độ tương tự cosine vector giữa và là
Trong trường hợp cụ thể, những người dùng khác nhau có thể đưa ra những khoảng đánh giá
khác nhau, vì vậy độ tương tự cosine vector không thể tính đến. Để giải quyết mặt hạn chế này, độ
tương tự cosine điều chỉnh đã đưa ra thông qua việc trừ đi mức trung bình của người dùng tương ứng từ
mỗi cặp có cùng đánh giá. Độ tương tự cosine điều chỉnh có thể xem như là độ tương quan Pearson.
Trên thực tế, độ tương quan Pearson thực hiện độ tương tự cosine nhờ sự sắp xếp các đánh giá của
những người dùng theo đánh giá của chính họ. Vì vậy, chúng ta phải đưa ra những giá trị không tích
cực với độ tương quan Pearson nhưng lại tích cực với độ tương tự cosine, với giả thuyết rằng chúng ta
khoảng đánh giá là n điểm.
3.1.3 Độ tương tự khác:
Có nhiều phép đo độ tương tự khác như độ tương tự dựa trên xác suất có điều kiện [62, 63].
Nhưng nó không được sử dung rộng rãi và phổ biến vì vậy tôi không mô tả chi tiết ở đây.
3.2. Tính toán dự đoán và tư vấn
Để thu được những dự đoán hoặc lời gợi ý là một bước quan trọng trong hệ tư vấn lọc cộng tác.
Trong thuật toán CF dựa trên hàng xóm, tập con những hàng xóm gần nhất của người dùng thực sự
được lựa chọn dựa trên độ tương tự chủa chúng với anh hoặc chị ta, và tập hợp trọng số của những
đánh giá đó được dùng để sinh ra dự đoán cho người dùng chính [64].
3.2.1. Tổng trọng số của những đánh giá khác nhau:

Để đưa ra được một dự đoán cho người dùng chính a đối với một item i nào đó, ta có thể lấy một
trọng số trung bình của tất cả các đánh giá trên item theo công thức sau: [5]
Trong đó: và là những đánh giá trung bình của người dùng a và người dùng u trên tất cả
các item đã được đánh giá, và w
a, u
là trọng số giữa người dùng a và u. Tổng là tất cả các người dùng
đã đánh giá cho item i. Cho một ví dụ đơn giản ở bảng 4, sử dung thuật toán CF dựa trên
người dùng , để dự đoán đánh giá cho U
1
về I
2
, ta có:
Chú ý dự đoán trên dựa trên hàng xóm của người dùng thực sự.
3.2.2. Trung bình trọng số đơn giản
Đối với dự đoán dựa trên item, chúng ta có thể sử dụng trung bình trọng số đơn giản để dự đoán
đánh giá P
u, i
cho người dùng u và item i [40]
Trong đó phép tổnglà trên tất cả các item đã được đánh giá cho người dùng u, w
i, n

trọng số giữa item i và n, r
u, n
là đánh giá của người dùng u cho item n.
3.3. Tư vấn Top –N
Tư vấn Top – N dùng một tập N các item có thứ hạng cao nhất thể hiện mối quan tâm của một
người dùng nào đó. Chẳng hạn, nếu bạn là một khách hàng cũ, khi bạn muốn đăng nhập vào tài khoản
của mình vào trang , bạn sẽ được tư vấn một danh sách các sách (hoặc sản phẩm
khác) mà có thể bạn sẽ quan tâm (như hình 1). Kỹ thuật tư vấn Top – N phân tích mà trận user – item
để khám phá ra các mối liên hệ giữa những người dùng hoặc item khác nhau và dùng chung để tính

toán ra các gợi ý. Một vài mô hình như các mô hình dựa trên ngữ nghĩa luật liên kết, có thể được sử
dụng để tạo ra các tư vấn Top – N, mà tôi sẽ giới thiệu ở phần 4.
3.3.3 Các thuật toán tư vấn Top – N dựa trên người dùng
Các thuật toán tư vấn Top – N dựa trên người dùng đầu tiên phải xác định được k người dùng
tương tự nhau nhất (hàng xóm gần nhất) đối với người dùng chính nhờ sử dụng độ tương quan Pearson
hoặc mô hình không gian vector [9, 27], trong đó mỗi người dùng được xem như một vector tromg
không gian item m chiều và độ tương tự giữa người dùng thực sự và những người dùng khác được tính
toán giữa các vector. Sau khi có được k người dùng tương tự nhau, các cột tương ứng trong ma trận
user – item được tập hợp lại thàm một nhóm item C. Với tập C này, kỹ thuật CF dựa trên người dùng
sau đó có thể gợi ý những item top – N có tần số xuất hiện lớn nhất trong C mà người dùng thực sự
chưa được biết đến. Thuật toán tư vấn Top – N dựa trên người dùng bị giới hạn bởi mối quan hệ với
hiệu suất về khả năng mở rộng và thời gian thực [62].
3.3.2. Thuật toán tư vấn Top – N dựa trên item
Thuật toán tư vấn Top – N dựa trên item được phát triển nhằm giải quyết vấn đề về khả năng mở
rộng của thuật toán top – N dựa trên người dùng. Đầu tiên thuật toán tính toán k item gần nhau nhất
cho mỗi item theo độ tương tự; sau đó định nghĩa ra tập C như là một ứng cử của việc tư vấn thông
qua việc lấy phàn k item gần nhất và loại bỏ những item trong tập U mà người dùng đánh giá rồi; sau
đó tính toán độ tương tự giữa item trong tập C và tập U. Kết quả tập item trong C sẽ được đưa ra làm
gợi ý thông qua danh sách Top – N dựa trên item đã được sắp xếp theo thứ tự giảm dần về độ tương tự
[62]. Tuy nhiên có một vấn đề trong phương thức này đó là ki sự phân bố của tập các item khác với sự
phân bố của item các cụ thể trong tập, thì lược đồ ở trên có thể sinh ra những tư vấn dưới mức tối ưu.
Để giải quyết vấn đề này, Deshpanda và Karypis [63] đã phát triển một thuật toán tư vấn top – N dựa
trên item có thứ tự ở mức cao hơn nhờ vào việc sử dụng kết hợp tất cả các item theo một kích thước cụ
thể khi xác định tập item đem tư vấn cho người dùng.
3.4 Mở rộng thuật toán dựa trên bộ nhớ
3.4.1. Mặc định lựa chọn
Trong nhiều hệ lọc cộng tác, độ tương tự giữa một cặp người dùng chỉ được tính toán từ tập
những item giao nhau thông qua việc cùng được cả hai người dùng đó đánh giá[5, 27]. Tuy nhiên, nó
sẽ không còn đáng tin cậy nữa khi có quá ít đánh giá để sinh ra các giá trị tương tự. Đồng thời, việc chỉ
tập trung vào tập item giao nhau sẽ làm chúng ta không thể chú ý tới những hành vi có đánh giá chung

mà đã được phản ánh thông qua toàn bộ những thông tin trước đây của người dùng.
Dựa vào kinh nghiệm, giả thuyết rằng một vài giá trị lựa chọn đã được mặt định cho những đánh
giá còn thiếu có thể cải thiện hiệu suất dự đoán của CF, Herlocker et al. [64] chỉ xem xét các tập item
giao nhau có kích thước nhỏ bằng cách giảm trọng số của những người dùng có ít hơn 50 item để chia
sẻ. Chee et al. [13] sử dụng mức trung bình của một nhóm (hoặc nhóm nhỏ) như là một lựa chọn mặc
định để mở rộng thông tin đánh giá trước đây của mỗi người dùng. Breese et al. [9] thì gán giá trị trung
lập hoặc một vài thi hiếu mang tính tiêu cực khi không có đánh giá và sau đó tính toán độ tương tự giữa
những người dùng trên tập dữ liệu kết quả đánh giá.
3.4.2. Tần suất người dùng nghịch đảo
Ý tưởng của tần suất người dùng nghịch đảo [61] được áp dụng trong lọc cộng tác, ở đó những
item tương đối phổ biến được xem là không hữu ích bằng các item ít được biết đến trong vấn đề nắm
bắt độ tương tự. Tần suất nghịch đảo có thể được xác định là trong đó n
j
là số
người dùng đã đánh giá cho item j và n là tổng số người dùng. Nếu mọi người đều đánh giá item j thì fj

là 0. Để áp dụng tần suất người dùng nghịch đảo trong đó sử dụng thuật toán CF dựa trên độ tương tự
vector, chúng ta cần sử dụng một đánh giá biến đổi, đơn giản là đánh giá khởi tạo được sinh ra nhờ hệ
số f
j
[9].
3.4.3. Sự khuyêch đại trường hợp
Sự khuyếch đại trường hợp đề cập đến một biến đổi được áp dụng cho những trọng số dùng
trong dự đoán lọc cộng tác cơ bản. Sự biến đổi này nhấn mạnh đến những trọng số cao và hạ thấp
những trọng số thấp [9]:
Trong đó là lũy thừa sự khuyếch đại trường hợp, và lựa chọn tiêu biểu của là 2.5
[65]. Sự khuyếch đại trường hợp giảm độ pha trộn trong dữ liệu. Nó có khuynh hướng giúp những
trọng số cao cũng như những giá trị thấp từ lớn trở thành không đáng kể. Chẳng hạn nếu trọng số cao,
w
i.j

= 0.9 thì nó chỉ còn ; nếu nó thấp w
i, j
= 0.1, thì chúng trở thành không đáng kể
.
3.4.4. Thuật toán CF Imputation – Boost
Khi dữ liệu đánh giá cho các nhiệm vụ CF cực kỳ là thưa thớt, nó sẽ tạo ra một vấn đề khó giải
quyết khi đưa ra những dự đoán chính xác thông qua việc sử dụng CF dựa trên độ tương quan Pearson.
Su et al [37, 66] đã đề xuất ra một khung làm việc imputation – boosted collaborative filtering (IBCF);
đầu tiên sử dụng một kỹ thuật imputation để lấp đầy những dữ liệu còn thiếu trước khi sử dụng thuật
toán CF truyền thống dựa trên độ tương quan Pearson từ đó đưa ra dự đoán cụ thể cho người dùng về
một item đã được chỉ định. Sau khi triển khai hoàn toàn kỹ thuật imputation chuẩn (bao gồm mean
imputation, linear regression imputation và predictive mean matching imputation, và Bayesian multiple
imputation ) và sự phân loại máy học [67] (bao gồm naïve Bayes, SVM, mạng nhân tạo, câu quyết
định, luật Baysian lazy) giống với IBCF, nói chung chúng thực hiện rất hiệu quả và đem lại hiệu suất
cao.
4.Kỹ thuạt lọc cộng tác dựa trên mô hình
Việc thiết ké và phát triển theo mô hình (như các thuật toán máy học, ngữ nghĩa) có thể cho phép
hệ thống học những mẫy phức tạp dựa trên dữ liệu đào tạo, và sau đó đưa ra những dự đoán thông mình
trong các nhiệm vụ của lọc cộng tác đổi với dữ liệu test hoặc thế giới thực sự trên mô hình đã được
học. Các thuật toán CF dựa trên mô hình như mô hình Bayes, mô hình clustering, và các mạng phụ
thuộc phải được xem xét để giải quyết những hạn chế trong các thuật toán CF dựa trên bộ nhớ [9,71].
Thông thường thuật toán phân loại được dùng như là các mô hình CF nếu các đánh giá của người dùng
là rõ ràng và các mô hình hồi quy và phương thức SVD dùng cho các đánh giá dưới dạng số học.
4.1. Các thuật toán CF Bayesian belief net (BN) _ mạng bayes tin cậy
BN là một đồ thị có hướng không tạo thành chu trình (DAG) với bộ ba , trong đó mỗi
node biểu diễn các biến ngẫu nhiên, mỗi hướng giữa các node là một liên kết
xác suất giữa các biến, và là một bảng xác suất có điều kiện có thể xác định được có bao nhiêu node
phụ thuộc vào cha của nó [72]. BN thường được dùng cho những nhiệm vụ liên quan đến việc phân
loại.
4.1.1. Thuật toán CF Bayes đơn giản

Thuật toán CF Bayes đơn giản thường sử dụng là Naïve Bayes (NB) để đưa ra các dự đoán cho
nhiệm vụ CF. Giả thuyết rằng các đặc tính là độc lập với lớp được đưa ra, xác suất của một lớp nào đó
được đưa ra cho tất cả các đặc tính có thể tính toán được, và sau đó lớp có xác suất cao nhất sẽ được
sắp xếp thành lớp được dự đoán [41]. Đối với dữ liệu chưa hoàn chỉnh, việc tính toán các xác suất và
việc tạo ra các phân loại được tính toán dựa trên những dữ liệu có thể nhìn thấy được (giả sử trong biểu
thức dưới đây o biểu thị những giá trị có thể nhìn thấy được):
Đánh giá Laplace thường được dùng để giải quyết việc tính toán xác suất và tranh xác suất có
điều kiện bằng 0:
Trong đó là kích thước của tâp class {X
i
}. Chẳng hạn có lớp nhị phân
sẽ thành (0+1)/(2+2) = ¼, sẽ thành
khi sử dụng độ đánh giá Laplace.
Việc sử dụng ví dụ tương tự như trong bảng 4, tập class {1, 2, 3, 4, 5} được dùng để tạo ra đánh
giá cho U
1
trong I
2
khi sử dụng thuật toán CF Bayes đơn giản và độ đánh giá Laplace, chúng ta có:
Trong đó
Miyahara và Pazzani, dữ liệu đa class đầu tien được chuyển đổi thành dữ liệu class nhị phân, và
sau đó chuyền thành ma trận đánh giá Boolean feature vector. Sự chuyển đổi này làm cho việc sử dụng
thuật toán NB cho mục đinh CF dễ dàng hơn, nhưng nó lại đem đén những vấn đề liên quan đến khả
năng mở rộng và mất thông tin multiclass cho dữ liệu multiclass. Trong Miyahara và Pazzani [41],
chúng ta chỉ có thể áp dung mô hình CF Bayes đơn giản trong dữ liệu nhị phân
Vì dữ liệu CF trong thế giới thực hầu hết là multiclass, nên Su và Khoshgoftaar [41] áp dụng
thuật toán Bayes CF với dữ liệu multiclass cho các nhiệm vụ của CF, tuy nhiên độ chính xác dự đoán
của chúng lại rất tồi, mặc dù nó xử lý khả năng mở rộng tốt hơn so với CF dựa trên độ tương quan
Pearson vì nó tạo ra những dự đoán dựa trên các đánh giá có sẵn và tiến trình dự đoán đánh giá tiết
kiệm được thời gian.

Thuật toán CF Bayes đơn giản đáng được xem như kỹ thuật CF dựa trên mô hình vì nó tính toán
dựa trên bộ nhớ để đưa ra dự đoán CF. Chúng ta đặt nó tỏng phần này vì hầy hết các thuật toán CF
Bayes khác là CF dựa trên mô hình.
4.1.2. Các thuật toán CF Bayes khác. BN với cây quyết định tại mỗi node.
Mô hình này đươc xem là cây quyết định tại mỗi node của BN, trong đó mỗi node tương ứng với
một item trong miền xác định và trạng thái của mỗi node tương ứng với khả năng được đánh giá của
mỗi item[9]. Kết quả này đã thể hiện rằng mô hình này tương tự như hiệu suất dự đoán độ tương tự của
các phương thức CF dựa trên độ tương quan Pearson và có hiệu suất Bayes – clustering và các thuật
toán CF dựa trên bộ nhớ vector cosine.
Baseline Bayesian model sử dụn BN không có cung trong lọc cộng tác (baseline model) và tư
vấn các item trên tất cả item [75]. Tuy nhiên, hiệu suất lại trở thành một hạn chế.
4.2. Clustering CF Algorithms.
Một cluster là một tập dữ liệu các đối tượng tương tự nhau trong cùng một cụm và không phân
biệt với các đối tượng trong các cụm khác. Phép đo độ tương tự giữa các đối tượng được xác định
thông qua việc sử dụng khoảng cách Minkowsski và độ tương quan Pearson.
Cho hai đối tượng dữ liệu, và Y = , khoảng
cahcs Minkowsk được tính như sau:
Trong đó, n là số chiều của đối tượng và x
i
, y
i
là giá trị của chiều thứ i của đối tượng X và Y, q
là một số nguyên dương. Khi q = 1, d là khoảng cách Mahanttan; khi q = 2, d là khoảng cách Euclidian
[76].
Các phương thức Clustering có thể được phân loại thành 3 loại: phương thức phân chia, phương
thức dựa trên mối tương quan và phương thức phân cấp [76, 77]. Phương thức phân chia thường được
sử dụng là k – means, được đưa ra bở Mc Queen [78] với hai lợi ích chính: hiệu quả về mối quan hệ và
thực thi dễ dàng. Phương thức cụm dựa trên mối tương quan, đây là một kiểu tìm kiếm điển hình các
cụm đối tượng được phân tách bởi các miền thưa thớt có sự biểu diễn pha trộn. DBSCAN [79] và
OPTIC được biết đến như là những phương thức cụm dựa trên tương quan nổi tiếng. Các phương thức

phân tầng như BIRICH [81] tạo ra một sự phân tích tập đối tượng dữ liệu phân cấp thông qua một vài
chuẩn.
Trong hầy hết các trường hợp, cụm được xem là một bước trung gian và các kết quả cụm được
dùng cho việc phân tích và xây dựng quá trình phân loại hoặc cho các nhiệm vụ khác. Các mô hình CF
cụm có thể được áp dụng theo nhiều cách thức khác nhau. Sarwar et al. [43] và O’Connor và Herlocker
[42] sử dụng kỹ thuật phân cụm để chia dữ liệu thành những cụm và sử dụng thuật toán CF dựa trên bộ
nhớ như thuật toán độ tương quan Pearson để đưa ra các dự đoán cho các nhiệm vụ CF trong mỗi cụm
đó.
Việc sử dụng phương thức k – means với k = 2, phương thức RecTree, được đưa ra bởi Chee et
al [13ư đã chia đệ quy dữ liệu đánh giá rất lớn ban đầu ra thành hai cụm con, nó xây dựng RecTree từ
gốc tới lá của nó. Kết quả RecTree được xem như là một cây nhị phân không đối xứng, trong đó các
node lá là ma trận tương tự nhau và các node bên trong giữ tâm đánh giá cảu các cây bên trong của
chúng. Dự đoán của người dùng thực sự được tạo ra ngay trong các node lá. RecTree có độ phức tạp
cho các tư vấn không trực tuyến và cho các tư vấn trực tuyến. trong đó n là
kích thước tập dữ liệu và b là kích thước của sự phân chia và b là một hằng số, nó có thể cải thiện được
tính chính xác dựa vào độ tương quan Pearson khi lựa chọn tương ứng với kích thước của những lời cố
vấn (cụm người dùng).
Mô hình hỗn hợp linh hoạt (FMM) mở rộng thuật toán phân cụm trước đây của CF thông qua
việc phân cụm cả người dùng và item tại cùng một thời điểm, theo đó mỗi người dùng và item được
xem là cụm đa cấp và là các cụm người dùng hoặc item được mô hình hóa. Kết quả của thực nghiệm
này dã chứng minh rằng thuật toán FMM đem lại mức độ chính xác cao hơn thuật toán CF dựa trên độ
tương quan Pearson và mô hình khía cạnh [83].
Các mô hình phân cụm có khả năng mở rộng hơn các phương pháp lọc cộng tác trước đây vì
chúng đưa ra các dự đoán trong các cụm nhỏ hơn rất nhiều sơ với toàn bộ tập người dùng [13, 27, 44,
84]. Độ phức tạp tính toán xảy ra khi thuật toán này chạy trong môi trường trực tuyến. Tuy nhiên, chất
lượng tư vấn nói chung là thấp. Tuy nhiên chất lượng đó có thể được cải thiện nhờ việc sử dụng những
cụm có chất lượng tốt nhưng nói chung hầu hết sự phân loại các cụm người dùng trở lên khó khăn
trong việc tìm kiếm các người dùng tương tự nhau khi sử dụng lọc cộng tác dựa trên bộ nhớ [6]. Việc
có được các cụm tối ưu trên tập dữ liệu lớn trên thực tế là không có, hầu hết các ứng dung sử dụng rất
nhiều kỹ thuật sinh ra phân cụm. Đối với cá tập dữ liệu lớn, đặc biệt là có số chiều cao việc giảm chiều

hoặc giảm mẫu là một điều cần thiết.
4.3. Các kỹ thuật CF dựa trên mô hình khác
Các thuật toán CF dựa trên luật liên kết thường sử dụng nhiệm vụ tư vấn top – N để dự đoán.
Sarwar et al [27] mô tả phương thức của họ nhờ việc sử dụng thuật toán ngữ nghĩa dựa vào luật liên kết
truyền thống để tìm ra các quy tắc phát triển top – N, nhờ đó học có thể tìm ra các item có độ tin cậy và
trọng số đánh cao theo thứ tự từ trên xuống, và tất nhiên chúng sẽ được đem ra tư vấn [27]. Leng et al
đã đưa ra một khung làm việc mới cho lọc cộng tác nhờ sử dụng các luật liên kết mờ và độ tương tự đa
cấp [102].
Một kỹ thuật CF dựa trên mô hình khác đó là phương pháp entropy cực đài, ở đó trước tiên dữ
liệu được phân cụm và sau đó trong các cụm được đưa ra họ sử dụng các entropy cực đại như một hàm
đối tượng để tạo ra mô hình entropy cực đại có điều kiện nhằm sinh ra các dự đoán. Mạng phụ thuộc là
một mô hình đồ thị liên quan đến xác suất, đồ thị ở đây là một quy trình. Các thành phần xác suất cảu
mạng phụ thuộc là tập phân bố có điều kiện có node con và node cha. Mặc dù độ chính xác so với
mạng Bayes là nhỏ hơn nhưng mạng phụ thuộc lại sinh ra các dự đoán nhanh hơn và yêu cầu ít thời
gian cũng như bộ nhớ dể học. Mô hình CF cây quyết định đề cập đến lọc cộng tác như là một quá trình
phân loại và cây quyết định biểu diễn sự phân loại đó. Horting là một kỹ thuật dựa trên đồ thị trogn đó
mỗi node tương ứng là các người dùng và các cạnh giữa các node là mức độ tương tự giữa những
người dùng đó [104].
5. Kỹ thuật lọc cộng tác lai
Các hệ thống CF lai là sự kết hợp CF với các kỹ thuật tư vấn khác nhau (mà điển hình là hệ
thống dựa trên nội dung) để sinh ra các dự đoán.
Các hệ tư vấn dựa trên nội dung đưa ra các dự đoán thông qua việc phân tích nội dung ngữ nghĩa
của thông tin như tài liệu, URLs, thông tin mới, web logs, mô tả về item, các thông tin cá nhân về thị
hiếu của người dùng, sở thích, nhu cầu hoặc tìm ra được các quy luật trong nội dung [101]. Nhiều
thành phần góp phần tạo ra tầm quan trọng về mặt nội dung ngữ nghĩa ví dụ như đặc tính dễ nhận biết
của các từ hoặc trang được trình duyệt ( tính lặp đi lặp lại nhiều lần của từ hoặc thuật ngữ), và độ tương
tự giữa các item thể hiện sự yêu thích của người dùng trong quá khứ [111]. Tư vấn dựa trên nội dung
thường sử dụng phương thức heuristic hoặc thuật toán phân lọa để đưa ra dự đoán. Kỹ thuật dựa trên
nội dung là một vấn đề start – up, trong đó chúng ra pahri có đủ thông tin mới có khả năng xây dựng
được một sự phân loại đáng tin cậy. Đây chính là một giới hạn về mặt dữ liệu cần tư vấn có đặc tính

không tường mình (một vài đặc tính khó có thể phân tách chính xác), trong khi lọc cộng tác lại sinh ra
các tư ván mà không cần quan tâm đến dữ liệu mô tả.
Các hệ tư vấn khác bao gồm hệ tư vấn dựa trên demographic (mối liên quan giữa các người
dùng); hệ thống này sử dụng các thông tin cá nhân của người dùng như giới tính, mã thư tín, nghề
nghiệp, [114]; hệ tư vấn dựa trên hàm tiện ích, và các hệ tư vấn dựa trê tri thức, cả hai hệ tư vấn này
đều yêu cầu tri thức về đối tượng cụ thể nào đó mà người dùng quan tâm.
Với hi vọng tránh được những mặt hạn chế và cải thiện một cách đáng kể hiệu suất tư vấn, hệ tư
vấn CF lai ra đời là sự kết hợp giữa các đặc tính của các mô hình dựa trên nội dung và dựa trên CF.
5.1 Hệ thống lai kết hợp chặt chẽ CF và các đặc tính dựa trên nội dung
Thuật toán CF content – boosted sử dụng naïve Bayes như là bảng phân loại nội dung, sau khi
lấp đầy các giá trị còn thiếu trong ma trận đánh giá bằng các dự đoán dưới sự gợi ý về mặt nội dung để
tạo thành ma trận đánh giá giả, trong đố các đánh giá đã tồn tại giữ nguyên vẹn và những đánh giá bị
thiếu thì được thay thế bằng những gợi ý về mặt nội dung. Việc đánh giá dựa trên kết quả của ma trận
đánh giá giả sử dụng thuật toán CF dựa trên độ tương quan trọng số Pearson đưa ra trọng sso đánh giá
cho item cao hơn so với đánh giá cho người dùng cũng như người dùng thực sự (xem kết quả ở bảng
5). Tư vấn CF content – boosted đã cải tiến được hiệu suất dự đoán trên một vào hệ tư vấn dựa trên nội
dung và CF cũ. Nó cũng giải quyết được vấn đề khởi động lạnh và thưa thớt dữ liệu trong nhiệm vụ
của CF.
Ngoài ra còn phải kể đến hệ tư vấn FAb, được đề xuất bởi balabanovic và Shoham [117] lưu trữ
các thông tin cá nhân của người dùng trên trang web sử dụng kỹ thuật dựa trên nội dung và dựa trên CF
nhằm xác định những thông tin có thị hiếu tương tự nhau của các người dùng. Sau đó có thể đưa ra tư
vấn các tài liệu thông qua thông tin cá nhân đó.
5.2 Hệ tư vấn lai kết hợp CF và các hệ tư vấn khác
Hệ tư vấn lai trọng số kết hợp các kỹ thuật tư vấn khác nhau thông qua trọng số đánh giá của
chúng, được tính từ tất cả các kỹ thuật tư vấn có sẵn được trình bày trong hệ thống [115]. Sự kết hợp
này là một phép tuyến tính, các trọng số đánh giá có thể được điều chỉnh và lựa chọn trọng số chính
hoặc lựa chọn trọng số trung bình có thể được áp dụng. Chẳng hạn, hệ PTango ban đầu đưa ra giá trị
trọng số tư vấn CF và dựa trên nội dung là bằng nahu, nhưng sau quá trình điều chỉnh các trọng số cũng
như dự đoán đánh giá của người dùng được xác nhận hoặc không xác nhận. Chiến lược ủa hệ P –
Tango là làm cho độ tương tư tăng lên [123].

Còn rất nhiều hệ tư vấn lai khác như hệ tư vấn lai hỗn hợp [124], hệ tư vấn lai cascade (tầng)
[115], hệ tư vấn mức siêu [110, 115, 117, 125],…
Thực tế đã có rất nhiều bài báo đưa ra sự so sánh về hiệu suất của các hệ tư vấn lai với các
phương thức dựa trên nội dung và dựa trên CF; kết quả cho thấy rằng các hệ thống lai có thể đưa ra tư
vấn chính xác hơn, đặc biệt là đối với những người dùng và item mới. Tuy nhiên, hệ tư vấn lai lại phụ
thuộc và thông tin mở rộng vì chúng thường không có sắn, vì vậy độ phức tạp tính toán cũng như thực
thi rất cao [110, 115, 126].
5.3. Các hệ tư vấn lai kết hợp với các thuật toán CF
Có hai loại tiếp cận CF chính đó là tiếp cận CF dựa trên mô hình và dựa trên bộ nhớ có khả năng
kết hợp tạo thành cách tiếp cận CF lai. Hiệu suất tư vấn của những thuật toán này thường tốt hơn so với
những thuật toán CF dựa trên mô hình và bộ nhớ đơn thuần [22, 86].
Lọc cộng tác dựa trên bộ nhớ xác suất (PMCF) kết hộ kỹ thuật dựa trên mô hình và bộ nhớ.
Chúng sử dụng mô hình hỗn hợp để xây dựng tập lưu trữ cơ bản thông tin cá nhân của người dùng và
sau đó phân bố lại các đánh giá của người dùng để sinh ra các dự đoán. Để giải quyết vấn đề người
dùng mới, phải học sự mở rông của hệ thống PMCF thông qua các câu truy vấn của người dùng khi có
thông tin mới thêm vào. Và để giảm thời gian tính toán, PMCF áp dụng việc lựa chọn các tập con được
gọi là không gian cá nhân trên toàn bộ cơ sở dữ liệu đánh giá của người dùng; sau đó đưa ra các dự
đoán từ không gian đó. PMCF tạo ra mức độ chính xác cao hơn so với CF dựa trên độ tương quan cũng
như CF dựa trên mô hình sử dụng naïve Bayes.
6. Độ đánh giá
Chất lượng của một hệ tư vấn được quyết định dựa vào kết quả đánh giá. Có nhiều độ đó khác
nhau sử dụng trong các ứng dụng của CF. Theo Herlocker et al [60] độ đo cho các hệ tư vấn có thể
được phân loại theo các kiểu sau: độ đo mức độ chính xác dự đoán như MAE (Mean Absolute Error)
và các biến thể của nó; độ đo mức độ chính xác phân loại như precision, recall, F1 – measure, và ROC
sensitivity; độ đo mức độ chính xác thứ hạng như Pearson’s product-moment correlation, Kendall’s
Tau, Mean Average Precision (MAP), half-life utility [9], và normalized distance-based performance
metric (NDPM)[128].
Nhưng ở đây tôi chỉ sử dụng độ đô CF phổ biến nhất đó là MAE…
Những hệ thống khác nhau có thể sử dụng khoảng tỷ lệ đánh giá khác nhau. NMAE là một chuẩn
của MAE biểu diễn các lỗi dưới dạng phần trăm trên tất cả khoảng đánh giá đó [3]:

Trong đó và là đường bao đánh giá mức cao và mức thấp.
7. gds

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×