Luận văn Ứng dụng các mô hình học sâu vào kĩ thuật lọc cộng tác dựa trên mô hình cho các hệ thống khuyến nghị thương mại

ĐẠI HỌC QUỐC GIA HÀ NỘI  
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ  
TRẦN ANH DŨNG  
Ứng dụng các mô hình học sâu vào kĩ  
thuật lọc cộng tác dựa trên mô hình cho  
các hệ thống khuyến nghị thương mại  
Ngành:  
Công nghệ thông tin  
Quản lý Hệ thống thông tin  
8480205.01  
Chuyên ngành:  
Mã số:  
LUẬN VĂN THẠC SĨ QUẢN LÝ HỆ THỐNG THÔNG TIN  
NGƯỜI HƯỚNG DẪN KHOA HỌC:  
TS. TRẦN TRỌNG HIẾU  
Hà Nội – 09/2020  
Mục lục  
i
ii  
LỜI CẢM ƠN  
Trước tiên tôi xin dành lời cảm ơn chân thành và sâu sắc đến thầy giáo TS. Trần  
Trọng Hiếu – người đã hướng dẫn, khuyến khích, chỉ bảo và tạo cho tôi những điều kiện  
tốt nhất từ khi bắt đầu cho tới khi hoàn thành công việc của mình.  
Tôi xin dành lời cảm ơn chân thành tới các thầy cô giáo khoa Công nghệ thông tin,  
trường Đại học Công nghệ, Đại học Quốc gia Hà Nội đã tận tình đào tạo, cung cấp cho tôi  
những kiến thức vô cùng quý giá, bổ ích và đã tạo những điều kiện tốt nhất cho tôi trong  
suốt quá trình học tập, nghiên cứu tại trường.  
Cuối cùng, tôi xin cảm ơn tất cả những người thân yêu trong gia đình cùng toàn thể  
bạn bè, đồng nghiệp những người đã luôn giúp đỡ, động viên tôi trong quá trình học tập và  
nghiên cứu chương trình sau đại học tại Đại học Công nghệ, ĐHQGHN.  
Luận văn này được tài trợ bởi đề tài cấp ĐHQGHN mã số QG-19.23.  
iii  
 
LỜI CAM ĐOAN  
Tôi xin cam đoan rằng luận văn thạc sĩ Quản lý hệ thống thông tin “Ứng dụng các  
mô hình học sâu vào kĩ thuật lọc cộng tác dựa trên mô hình cho các hệ thống khuyến nghị  
thương mại” là công trình nghiên cứu của riêng tôi, không sao chép lại của người khác.  
Trong toàn bộ nội dung của luận văn, những điều đã được trình bày hoặc là của chính cá  
nhân tôi hoặc là được tổng hợp từ nhiều nguồn tài liệu. Tất cả các nguồn tài liệu tham khảo  
đều có xuất xứ rõ ràng và hợp pháp.  
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho  
lời cam đoan này.  
Hà Nội, ngày … tháng … năm 2020  
Tác giả luận văn  
Trần Anh Dũng  
iv  
 
DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT  
Diễn giải Tiếng Việt  
Recommender  
STT  
Ký hiệu  
1
RS  
Hệ khuyến nghị  
System/RecSys  
2
3
4
5
6
7
U
I
User  
Người dùng  
Sản phẩm  
Item  
IF  
Information Filtering  
Lọc thông tin  
CBF  
CF  
R
Content-Based Filtering Lọc thông tin dựa trên nội dung  
Collaborative Filtering Lọc thông tin dựa trên cộng tác  
Interaction Matrix/Utility Ma trận ghi nhận đánh giá của người  
Matrix  
dùng đối với sản phẩm được tương tác  
8
r
Relevant  
Độ phù hợp  
9
Sparsity problem  
Cold-start problem  
Machine Learning  
Deep Learning  
Vấn đề dữ liệu thưa  
Vấn đề khởi động nguội  
Học máy  
10  
11  
12  
13  
ML  
DL  
Học sâu  
RMSE  
Root Mean Squared Hàm sai số trung bình bình phương  
Error  
14  
MF  
Matrix Factorization  
Phân tích thừa số ma trận  
v
 
DANH MỤC HÌNH VẼ  
vi  
 
Chương 1: Tổng quan về hệ thống khuyến nghị  
1. Giới thiệu  
Trong quá trình phát triển của ngành thương mại bán lẻ hàng hóa, dịch vụ, vấn đề  
nắm bắt thị hiếu, sở thích của người tiêu dùng là một vấn đề có tính nền tảng, sống còn của  
ngành mà bất kì người bán lẻ nào nếu muốn tồn tại trong thương trường đều cần phải giải  
quyết thật tốt. Trước khi máy tính ra đời, những người bán lẻ đã thực hiện nhiều biện pháp  
để ghi nhận thói quen của người tiêu dùng như sử dụng các hóa đơn bán hàng để xem xét  
các mặt hàng thường được mua sắm cùng nhau, phỏng vấn người mua về sở thích mua sắm  
của họ để từ đó đưa ra những biện pháp giúp tối đa hóa doanh thu, tối ưu hóa chi phí của  
doanh nghiệp. Ví dụ, khi đi vào một cửa hàng sách quen thuộc, chủ cửa hàng sẽ giới thiệu  
cho người khách một vài quyển sách hoặc tờ báo mà người khách đó có thể quan tâm dựa  
trên sở thích hoặc thói quen của khách.  
Hiện nay với sự phát triển bùng nổ của Internet đã làm xuất hiện các nhà cung cấp  
hàng hóa, dịch vụ hoạt động trực tuyến và mạng xã hội cung cấp vô số thông tin và sản  
phẩm, dịch vụ mới. Ví dụ, năm 2019 mỗi phút có khoảng 500 giờ phát video clip được tải  
lên Youtube [35] , danh mục sản phẩm của Amazon năm 2018 vào khoảng 12.000.000 sản  
phẩm [36], năm 2019 số lượng tweet xuất hiện mỗi ngày trên Twitter là 500 triệu dòng  
[37],... Với lượng thông tin đồ sộ như vậy, có thể nói Internet đã làm cho người dùng không  
còn có đủ thời gian để xem xét lựa chọn tất cả các thông tin, phim, tạp chí hay bài hát…  
Người dùng không biết mình nên xem phim gì, đọc cuốn sách nào phù hợp với sở thích,  
nhu cầu của bản thân. Hơn nữa, đối với các doanh nghiệp việc phục vụ hàng hóa, dịch vụ  
đúng sở thích, thị hiếu của khách hàng giúp tối đa hóa doanh thu, đồng thời giúp lập kế  
hoạch dự trữ hàng hóa thích hợp để tối ưu hóa chi phí vận hành, từ đó làm gia tăng lợi  
nhuận cho doanh nghiệp.  
Trong lĩnh vực xây dựng hệ tư vấn có 2 nhiệm vụ cơ bản cần được giải quyết là dự  
đoán xếp hạng cho từng mặt hàng và gợi ý danh sách mặt hàng [1]. Nhiệm vụ dự đoán xếp  
hạng (rate prediction) nhằm mục tiêu tối ưu hóa dự đoán mức độ ưa thích của người dùng  
đối với từng mặt hàng cụ thể, trong khi đó nhiệm vụ gợi ý danh sách mặt hàng (ranking)  
nhằm giải quyết vấn đề gợi ý cho người dùng danh sách mặt hàng mà họ nhiều khả năng  
1
   
có tương tác nhất. Trong hai nhiệm vụ nói trên, nhiệm vụ dự đoán xếp hạng của người dùng  
cho sản phẩm đóng vai trò quan trọng vì điểm xếp hạng của người dùng phản ánh mức độ  
hài lòng của người dùng đối với sản phẩm/dịch vụ. Trong luận văn sẽ tập trung giải quyết  
nhiệm vụ dự đoán xếp hạng của người dùng đối với sản phẩm.  
2. Một số khái niệm chung về hệ thống khuyến nghị  
Hệ thống khuyến nghị (Recommender System viết tắt là RS) là hệ thống sử dụng các  
kỹ thuật và công cụ phần mềm xử lý dữ liệu người dùng và dữ liệu về sản phẩm nhằm đáp  
ứng nhu cầu của người dùng về một sản phẩm hoặc dịch vụ nào đó. Trên cơ sở thông tin  
trong quá khứ về hành vi của người dùng, hệ thống thực hiện khai phá thông tin về sở thích,  
thị hiếu tiêu dùng từ đó đưa ra những gợi ý để hỗ trợ người dùng đưa ra quyết định lựa chọn  
sản phẩm, dịch vụ đáp ứng đúng sở thích của mình.  
Mặt hàng (Item) là thuật ngữ chung để chỉ những gì người dùng có tương tác trong  
hệ thống khuyến nghị. Item có thể là sách, phim, truyện, tin tức... Thông thường hệ thống  
khuyến nghị sẽ được xây dựng phù hợp với một loại hình sản phẩm nhất định để đảm bảo  
hiệu quả khuyến nghị cho Item đó.  
Trên thực tế để thu thập dữ liệu Hồ sơ người dùng (User profile), người ta thường  
sử dụng theo hai phương pháp chính là phương pháp phản hồi tường minh (explicit  
feedback) và phương pháp phản hồi ẩn (implicit feedback). Đối với phương pháp phản hồi  
tường minh, hệ thống yêu cầu người dùng thực hiện xếp hạng cụ thể cho từng Item để xây  
dựng hồ sơ người dùng. Phương pháp này cung cấp dữ liệu người dùng trực tiếp cho hệ  
thống khuyến nghị (không phải thực hiện các công đoạn biến đổi trung gian) và kết quả  
khuyến nghị được đánh giá là đáng tin cậy hơn cả [1]. Tuy được cho là đem lại kết quả  
khuyến nghị đáng tin cậy hơn nhưng phương pháp này yêu cầu người dùng phải thực hiện  
thêm một số thao tác với hệ thống, do đó trong một số trường hợp làm giảm trải nghiệm  
người dùng. Bên cạnh đó, tâm lý chung của người dùng không muốn chia sẻ quá nhiều  
thông tin mang tính chất riêng tư do đó làm cho phương thức thu thập phản hồi tường minh  
thường gặp khó khăn trong quá trình triển khai thực tế.  
Nhằm khắc phục mặt hạn chế của phương pháp thu thập phản hồi tường minh,  
phương pháp thu thập phản hồi ẩn ghi nhận những dấu vết mà người dùng để lại trên hệ  
2
 
thống như lịch sử mua hàng, lịch sử truy cập website, thời gian xem một trang web, số lần  
click chuột vào các siêu liên kết,… để suy luận thông tin về sở thích của người dùng.  
Phương pháp này giúp cải thiện trải nghiệm của người dùng đối với hệ thống tuy nhiên khả  
năng mô tả sở thích của người dùng được cho là không tốt bằng phương pháp phản hồi  
tường minh do hệ thống phải thực hiện các khâu biến đổi trung gian để trích xuất thông tin  
từ hành vi của người dùng [1].  
Ma trận tương tác Người dùng – Sản phẩm (Utility Matrix/User – Item matrix) là  
một cơ sở dữ liệu mô tả sở thích của mỗi User với từng Item trong hệ thống. Về mặt hình  
thức, cơ sở dữ liệu này có thể biểu diễn dưới dạng ma trận trong đó mỗi hàng tương ứng  
với một User, mỗi cột tương ứng với một Item, giá trị tại mỗi ô của ma trận chính là giá trị  
rating của User cho Item đó.  
Mặt hàng 1 Mặt hàng 2 Mặt hàng 3  
Mặt hàng n  
Người dùng 1  
Người dùng 2  
…
1
2
3
?
5
4
…
…
…
…
?
2
…
?
…
2
…
1
…
3
Người dùng m  
푹
Hình 1.1: Ma trận tương tác Người dùng – Sản phẩm  
Xuất phát từ nguyên nhân tâm lý, người dùng không phải khi nào cũng đánh giá tất  
cả các Item mà họ đã từng trải nghiệm, thông thường người dùng chỉ đánh giá Item trong  
trạng thái tích cực (rất thích) hoặc tiêu cực (rất ghét). Vì vậy trên thực tế ma trận tương tác  
Người dùng – Sản phẩm nói trên thường bị khuyết giá trị ở rất nhiều ô, vấn đề này được  
gọi là vấn đề dữ liệu thưa (data sparsity)[2]. Vấn đề dữ liệu thưa của ma trận tương tác dẫn  
đến hệ quả các thuật toán khuyến nghị dựa trên bộ nhớ (memory-based recommendation  
algorithms)[1] hoạt động không hiệu quả. Bên cạnh đó, trường hợp trong hệ thống xuất  
hiện người dùng hoặc item mới chưa có tương tác nào thì ma trận Người dùng – Sản phẩm  
sẽ xuất hiện các hàng/cột bị trống hoàn toàn. Vấn đề này được gọi là vấn đề khởi động  
nguội (cold-start problem)[2] xảy ra đối với các hệ khuyến nghị dựa trên cộng tác khi hệ  
thống gặp phải những item hoàn toàn không có tương tác nào, hệ khuyến nghị không thể  
3
 
khai thác được thông tin sở thích giống nhau giữa các nhóm người dùng/item để đưa ra  
khuyến nghị.  
3. Phương thức hoạt động của Hệ khuyến nghị  
Trong thực tế, khi người tiêu dùng thực hiện hành vi mua hàng, việc ra quyết định  
của họ thường được đưa ra theo hai cách tiếp cận chính: Một là xem xét những thông tin  
chi tiết về sản phẩm như tính năng, công dụng, thành phần,… tùy thuộc vào mức độ phù  
hợp với nhu cầu sử dụng để đưa ra quyết định. Hai là người dùng có thể tham khảo ý kiến  
của những người xung quanh về mức độ hài lòng đối với sản phẩm để đưa ra quyết định  
mua sắm của mình.  
Xuất phát từ quan sát nêu trên, hệ thống RS mô phỏng lại quá trình ra quyết định của  
người dùng theo hai cách tiếp cận chính là khuyến nghị dựa trên lọc theo nội dung và  
khuyến nghị dựa trên lọc theo cộng tác.  
Trong cách tiếp cận dựa trên lọc theo nội dung, hệ thống RS dựa trên lịch sử tương  
tác của người dùng với đối tượng và thông tin về thuộc tính của đối tượng (nội dung của  
đối tượng) để tìm ra các thuộc tính (đặc tính) có ảnh hưởng lớn đến đánh giá của người  
dùng đó. Đặc điểm sở thích của người dùng dựa trên đặc tính của sản phẩm được biểu diễn  
(
)
bởi vector 푃푟표푓푖푙푒(푈) = 푤1, 푤2, … , 푤푛 có các phần tử tương ứng với các yếu tố nội dung  
cấu tạo nên sản phẩm, giá trị trọng số 푤푖 mô tả tầm quan trọng của thành phần nội dung thứ  
푖 ảnh hưởng tới sở thích của người dùng. Tương tự với việc xây dựng User Profile, hệ thống  
RS sử dụng các kỹ thuật Truy hồi thông tin (Information Retrieval – IR) nhằm phân tích đối  
(
)
tượng I dưới dạng vector trọng số 퐶표푛푡푒푛푡(퐼) = 푤1, 푤2, … , 푤푛 của các thành phần nội  
dung. Ví dụ, thông thường thông tin mô tả về đối tượng thường được thể hiện dưới dạng  
văn bản như các đoạn văn, bài viết, mẩu tin ngắn,… hệ thống RS sẽ sử dụng các kỹ thuật  
IR trích xuất đặc tính như từ khóa, n-grams, thực thể,… để xây dựng mô hình đối tượng  
dưới dạng vector từ khóa [3]. Như vậy, theo cách tiếp cận lọc dựa trên nội dung, hệ thống  
RS đã thực hiện ánh xạ sở thích của người dùng và nội dung của đối tượng vào cùng một  
không gian vector (không gian thuộc tính của sản phẩm). Do đó để đánh giá độ phù hợp  
giữa sản phẩm I với người dùng U, hệ thống RS có thể sử dụng độ đo cosine để đo lường  
sự tương đồng giữa 2 vector:  
4
 
⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗ ⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗  
푟(푈, 퐼) = 푐표푠(푃푟표푓푖푙푒(푈), 퐶표푛푡푒푛푡(퐼))  
(1)  
Trong cách tiếp cận dựa trên lọc theo cộng tác, hệ thống RS khai phá những nhóm  
người dùng “tương tự” nhau dựa trên hành vi quá khứ của người dùng được ghi nhận trong  
ma trận tương tác Người dùng – Sản phẩm. Hệ thống RS sẽ dự đoán độ phù hợp 푟(푈, 퐼)  
giữa người dùng hiện tại 푈 với đối tượng 퐼 thông qua độ phù hợp 푟(푈 , 퐼) của những người  
푗
dùng 푈 khác có cùng sở thích với 푈.  
푗
3.1. Phát biểu bài toán khuyến nghị  
Inputs:  
-
Cho 푈 là tập hợp tất cả người dùng trong hệ thống; mỗi người dùng 푢푖 ∈ 푈 có  
các đặc điểm 푢푖 = {푢푖1, 푢푖2, … 푢푖푘}  
-
Cho 퐼 là tập tất cả các đối tượng (sách, bài hát, phim…); mỗi đối tượng 푣푗 ∈ 푉  
có các đặc điểm 푣푗 = {푣푗1, 푣푗2, … 푣푗푥}.  
-
Dữ liệu xếp hạng 푟 ∈ ℝ là giá trị xếp hạng của người dùng 푢푖 đối với sản  
푖푗  
phẩm 푣푗.  
Output:  
- Giá trị xếp hạng dự đoán 푟  
̂
của người dùng 푢푖 cho những đối tượng 푣푗 chưa có  
푖푗  
tương tác (xếp hạng).  
Để giải bài toán này cần xây dựng hàm 푟(푢푖, 푣푗) ước lượng giá trị xếp hạng của  
người dùng 푢푖 cho đối tượng 푣푗 sao cho sai số giữa giá trị dự đoán 푟 với các giá trị xếp  
̂
푖푗  
hạng 푟 đã biết trong ma trận tương tác là nhỏ nhất.  
푖푗  
3.2. Các phương pháp tiếp cận xây dựng hệ thống khuyến nghị.  
Sau đây chúng ta xem xét về tổng quan các phương pháp tiếp cận để xây dựng hệ  
thống khuyến nghị dựa theo [1].  
3.2.1. Lọc nội dung  
(
)
Hệ thống khuyến nghị ghi nhận user profile dưới dạng vector 푢⃗ = 푢1, 푢2, … , 푢푛 ,  
trong đó 푢푖 là trọng số thể hiện mức độ quan tâm của người dùng đối với từng thuộc tính  
(
)
của sản phẩm. Vector item profile 푣 = 푣1, 푣2, … , 푣푛 biểu diễn thông tin sản phẩm thông  
5
   
qua các thuộc tính 푣푖. Như vậy thông tin về sở thích của người dùng và thông tin của sản  
phẩm được ánh xạ vào cùng không gian vector các thuộc tính của sản phẩm, sự phù hợp  
giữa sở thích của người dùng và sản phẩm được đo bằng góc lệch giữa 2 vector profile như  
minh họa trong Hình 1.2.  
Hình 1.2: Cách thức hoạt động của lọc cộng tác  
Để đánh giá độ tương đồng giữa 2 vector 푢⃗ và 푣 để đưa ra khuyến nghị, hệ thống so  
sánh bằng cosine góc lệch giữa 2 vector:  
푛
∑
푢⃗ 푣  
‖ ‖ ‖ ‖  
푖=1 푢푖. 푣푖  
( )  
푠푖푚푖푙푎푟푖푡푦 = 푐표푠 휃 =  
=
(2)  
푢⃗ ⋅ 푣  
√∑푛푖=1 푢푖2 . √∑푛 푣푖2  
푖=1  
6
 
Đã thích  
Các bộ phim  
tương tự nhau  
Khuyến nghị  
Hình 1.3: Cơ chế hoạt động lọc theo nội dung  
Những ưu điểm của phương pháp khuyến nghị dựa trên nội dung:  
Một là, hệ thống không yêu cầu cần có quá nhiều dữ liệu từ những người dùng khác để đạt  
được độ chính xác khuyến nghị chấp nhận được. Đối với phương pháp lọc dựa trên cộng  
tác hệ thống RS cần phải phân tích toàn bộ dữ liệu tương tác để tìm ra các quy luật (là  
những sản phẩm được người dùng ưa thích) thì mới có thể đưa ra gợi ý, tuy nhiên với  
phương pháp lọc dựa trên nội dung thì hệ thống chỉ dựa trên thông tin nội dung sản phẩm  
và dữ liệu tương tác của từng người dùng cụ thể để đưa ra gợi ý.  
Hai là, có thể đưa ra khuyến nghị về các sản phẩm mới dựa trên thông tin mô tả có sẵn mà  
không cần phải có dữ liệu tương tác từ người dùng. Điều này xuất phát từ cơ chế hoạt động  
của lọc nội dung dựa trên phân tích về nội dung cấu tạo nên sản phẩm để đưa ra gợi ý, do  
đó khi một sản phẩm mới xuất hiện trong hệ thống thì chỉ cần nội dung của sản phẩm này  
“tương tự” với những sản phẩm trước đó đã được người dùng ưa thích sẽ được hệ thống  
khuyến nghị cho người dùng.  
Ba là, trong trường hợp người dùng có những sở thích đặc thù dựa trên nội dung của sản  
phẩm nhưng những sản phẩm này lại không phổ biến trong dữ liệu ma trận tương tác thì hệ  
thống vẫn có khả năng khám phá được nhờ thông tin nội dung.  
7
 
Bốn là, mô hình có khả năng giải thích tốt (self-explanable) về những nhân tố có ảnh hưởng  
đến sở thích của người dùng thông qua các giá trị trọng số của vector profile của người  
dùng. Giá trị trọng số càng lớn chứng tỏ mức độ quan tâm càng cao của người dùng đối với  
yếu tố nội dung của sản phẩm, nhờ vậy nhà kinh doanh có thể dựa vào thông tin này để  
tăng cường những đặc tính/nội dung phù hợp với người dùng.  
Bên cạnh những ưu điểm đã nêu, phương pháp khuyến nghị dựa trên nội dung gặp  
một số nhược điểm như sau:  
Hệ thống yêu cầu chất lượng thông tin nội dung của sản phẩm cao: Đối với các sản phẩm  
multimedia (phim ảnh, âm nhạc,…) hiện nay chưa có các phương pháp rút trích thông tin  
có hiệu quả với những loại dữ liệu này, do đó việc xây dựng vector thuộc tính cho những  
sản phẩm dạng này gặp rất nhiều khó khăn, chất lượng thông tin không tốt. Khi chất lượng  
thông tin mô tả đối tượng có chất lượng kém hoặc bị lỗi thì phương pháp khuyến nghị dựa  
trên nội dung hoạt động không hiệu quả.  
Kết quả khuyến nghị do hệ thống đưa ra gặp hiện tượng “cứng nhắc” (Overspecialization):  
Hệ thống chỉ gợi ý được các sản phẩm có các đặc tính đúng với profile của từng người dùng  
mà không tận dụng được thông tin từ những người dùng khác có sở thích tương tự.  
3.2.2. Lọc cộng tác  
3.2.2.1. Lọc cộng tác dựa trên bộ nhớ (Memory-based Collaborative Filtering)  
Dựa trên giá trị xếp hạng của người dùng trong ma trận Người dùng – Sản phẩm, hệ  
thống tính toán độ tương đồng giữa người dùng hiện tại với những người dùng tương tự  
theo thủ tục gồm 02 bước như sau:  
Bước 1: Hệ thống tính toán độ tương tự giữa những người dùng.  
훴푟푥,푖 ⋅ 푟푦푖  
푥 ⋅ 푦  
‖ ‖  
,
(
)
(
)
푠푖푚푖푙푎푟푖푡푦 푥, 푦 = 푐표푠 푥, 푦 =  
=
‖ ‖  
2 × 푦  
(3)  
푥
2
훴푟2 훴푟2  
√
√
푥,푖  
푦,푖  
Bước 2: Tính toán giá trị xếp hạng dự đoán theo công thức:  
8
푛
(
)
훴푖=1(푟푢,푖 − 푟̅푢)× 푠푖푚푖푙푎푟푖푡푦 푥, 푦  
(
)
(4)  
푟 푎, 푖 = 푟̅푎 +  
푛
(
)
훴푖=1 푠푖푚푖푙푎푟푖푡푦 푥, 푦  
Những ưu điểm của phương pháp lọc cộng tác dựa trên bộ nhớ:  
Một là, hệ thống RS không yêu cầu cần có tri thức chuyên biệt miền để xây dựng mô hình  
người dùng/sản phẩm. Bản chất của phương pháp lọc dựa trên cộng tác là khai thác thông  
tin về sở thích của nhóm người dùng có sở thích giống nhau về những sản phẩm nhất định,  
do đó khi phát hiện được những sản phẩm được ưa thích thì hệ thống RS hoàn toàn có thể  
đưa ra gợi ý trực tiếp đến sản phẩm đó mà không cần quan tâm đến bản chất (nội dung) của  
sản phẩm đó. Điều này giúp cho hệ thống có khả năng mở rộng khuyến nghị cho nhiều loại  
đối tượng có bản chất khác nhau.  
Hai là, có khả năng tận dụng thông tin của những người dùng tương tự để đưa ra khuyến  
nghị (khai thác xu hướng, sở thích của những nhóm người dùng giống nhau).  
Tuy nhiên phương pháp dựa trên bộ nhớ còn tồn tại tương đối nhiều điểm hạn chế  
như sau:  
Một là, hệ thống ít có khả năng đưa ra được các khuyến nghị đặc thù cho sở thích của từng  
người dùng, kết quả khuyến nghị đưa ra bởi hệ thống lọc cộng tác là những sản phẩm phổ  
biến đối với người dùng trong hệ thống.  
Hai là, chất lượng khuyến nghị dựa trên lọc cộng tác dựa trên bộ nhớ hoạt động kém hiệu  
quả khi dữ liệu tương tác quá thưa thớt (data sparsity). Trên thực tế tâm lý của người dùng  
thường chỉ đánh giá sản phẩm khi ở trong trạng thái tâm lý rất tích cực hoặc rất tiêu cực đối  
với sản phẩm, do đó dữ liệu ma trận tương tác Người dùng – Sản phẩm thường gặp hiện  
tượng khuyết giá trị ở rất nhiều vị trí do người dùng không thực hiện đánh giá đối với sản  
phẩm đó. Trong trường hợp này, việc xác định độ tương tự giữa những người dùng bằng  
độ đo cosine trở nên không hiệu quả.  
Ba là, phương pháp lọc cộng tác dựa trên bộ nhớ có thời gian tính toán lâu và yêu cầu bộ  
nhớ lớn: Phương pháp dựa trên bộ nhớ thuộc nhóm phương pháp instance-based nghĩa là  
với mỗi người dùng 푢 hệ thống phải thực hiện xây dựng một mô hình riêng dựa trên toàn  
9
bộ dữ liệu ma trận tương tác để tìm ra giá trị xếp hạng trung bình 푟̅ của tập người dùng có  
푎
cùng sở thích với 푢 trước khi dự đoán giá trị xếp hạng theo công thức (2).  
3.2.2.2. Lọc cộng tác dựa trên mô hình (Model-based Collaborative Filtering):  
Nhằm khắc phục nhược điểm về thời gian tính toán và yêu cầu dung lượng bộ nhớ  
lớn, người ta đã phân biệt rõ ràng hai tác vụ chính trong phương pháp lọc cộng tác: Một là  
tác vụ xây dựng mô hình từ dữ liệu huấn luyện; Hai là tác vụ tính toán kết quả khuyến nghị  
từ mô hình nhận được [4]. Cụ thể, hệ thống RS sử dụng các thuật toán học máy có giám sát  
hoặc không có giám sát để huấn luyện mô hình rút gọn mô phỏng sở thích của người dùng.  
Các thuật toán học máy có thể là cây quyết định, bộ phân loại Bayes, hồi quy, máy vector  
hỗ trợ (support vector machines), mạng noron…  
Sau khi nhận được mô hình từ bước huấn luyện, hệ thống RS sử dụng trực tiếp mô  
hình này để đưa ra kết quả khuyến nghị.  
Những ưu điểm của phương pháp dựa trên mô hình so với phương pháp dựa trên bộ  
nhớ là:  
Một là tiết kiệm bộ nhớ của máy tính: Thông thường sau quá trình huấn luyện mô hình từ  
dữ liệu tương tác, kích thước của mô hình thu được là rất nhỏ so với với kích thước của dữ  
liệu gốc. Trong khi đó phương pháp dựa trên bộ nhớ yêu cầu lưu trữ toàn bộ ma trận tương  
tác vào bộ nhớ máy tính để thực hiện tính toán lại kết quả khuyến nghị cho từng người  
dùng.  
Hai là tốc độ tính toán ra kết quả tính toán nhìn chung được rút ngắn hơn khá nhiều so với  
phương pháp dựa trên bộ nhớ. Nguyên nhân cũng xuất phát từ kích thước mô hình sau khi  
huấn luyện là tương đối nhỏ, do đó thời gian cần thiết để truy vấn mô hình cũng ít hơn  
nhiều so với việc truy vấn lại toàn bộ dữ liệu huấn luyện.  
3.2.3. Lọc kết hợp/lai ghép (Hybrid)  
Nhằm kết hợp ưu điểm của cả hai phương thức khuyến nghị dựa trên lọc cộng tác  
và khuyến nghị dựa trên lọc nội dung, người ta đã tìm cách kết hợp kết quả gợi ý từ cả hai  
phương pháp theo một cách nào đó. Cụ thể một số phương pháp lai ghép đã được nghiên  
cứu như sau:  
10  
Lai ghép theo trọng số (Weighted): Hệ thống RS sử dụng giá trị xếp hạng từ thuật  
toán lọc theo nội dung và giá trị xếp hạng từ thuật toán lọc cộng tác để kết hợp lại thành  
một giá trị xếp hạng duy nhất bằng cách tính tổng theo trọng số đối với từng phương pháp.  
Claypool và cộng sự trong [5] đã xây dựng hệ thống khuyến nghị tin tức P-tango bao gồm  
02 bộ phận khuyến nghị dựa trên nội dung và khuyến nghị dựa trên cộng tác. Ban đầu kết  
quả khuyến nghị đưa ra bởi từng bộ khuyến nghị được gán trọng số bằng nhau, tuy nhiên  
trọng số sẽ được điều chỉnh theo kết quả khuyến nghị của bộ phận nào đưa ra là chính xác  
hoặc không chính xác. Ưu điểm của phương pháp khuyến nghị lai ghép theo trọng số là  
tính tường minh của kết quả khuyến nghị.  
Lai ghép bằng cách chuyển đổi (Switching): Hệ thống RS tự động chuyển đổi qua  
lại giữa các phương pháp khuyến nghị tùy thuộc vào tình huống cụ thể. Một ví dụ là hệ  
thống DailyLearner [6] gợi ý tin tức cho người dùng chuyển đổi giữa hai mô hình Nearest-  
Neighbor (short-term model) và mô hình Naïve Bayesian Classifier (long-term model) để  
dự đoán sở thích về tin tức của người dùng trong ngắn hạn và dài hạn tùy thuộc vào mô  
hình nào đem lại kết quả dự đoán có độ tin cậy cao hơn.  
Lai ghép hỗn hợp (Mixed): Đối với bài toán gợi ý danh sách sản phẩm cho người  
dùng, hệ thống RS có thể tạo ra một danh sách khuyến nghị từ kết quả của nhiều thuật toán  
khác nhau.  
Lai ghép bằng cách kết hợp nhiều đặc tính (Feature combination): Các đặc tính trích  
xuất từ nhiều nguồn dữ liệu khác nhau được đưa vào một thuật toán khuyến nghị duy nhất  
đưa ra kết quả. Ví dụ hệ thống Pipper [7] sử dụng giá trị xếp hạng (ratings) như là một đặc  
tính đầu vào của thuật toán khuyến nghị dựa trên nội dung.  
Lai ghép bằng việc xếp tầng (Cascaded): Hệ thống RS sử dụng một thuật toán  
khuyến nghị để điều chỉnh kết quả tư vấn được sinh ra bởi một thuật toán khác. Nhờ nguyên  
lý sàng lọc kết quả này mà hệ thống RS lai xếp tầng có khả năng chống nhiễu (tolerant to  
noise) khá tốt. Ví dụ hệ thống khuyến nghị nhà hàng Entree Chicago [8] dựa trên hệ khuyến  
nghị tri thức (knowledge-based RS) FindMe để hiệu chỉnh kết quả đưa ra bởi thuật toán  
lọc cộng tác.  
11  
Tải về để xem bản đầy đủ
pdf 69 trang yennguyen 23220 Free
Bạn đang xem 20 trang mẫu của tài liệu "Luận văn Ứng dụng các mô hình học sâu vào kĩ thuật lọc cộng tác dựa trên mô hình cho các hệ thống khuyến nghị thương mại", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfluan_van_ung_dung_cac_mo_hinh_hoc_sau_vao_ki_thuat_loc_cong.pdf