3.1 Khai quat vé hé théng goi ¥ (Recommender Systems)
3.1.1 Khái niệm hệ thông gợi ý
Theo bài nghiên cứu của tác giả Nguyễn Thái Nghe về Hệ thống gợi ý Ky thuat va ing dung: “Hé thong goi y (Recommender Systems - RS) la mét dang cia hé thong loc théng tin (information filtering), né duoc sie dung dé du dodn so thich (preferences) hay xếp hạng (rating) mà người dùng có thể đành cho một mục thông tin (Iem) nào đó mà họ chưa xem xét tới trong quá khứ (item có thể là bài hát, bộ phim, đoạn video clip, sách, bài báo,..). ”
3.1.2 Một số phần mềm, ứng dụng sử dụng hệ thông gợi ý
Ngày nay, dưới sự bùng nô của công nghệ thông tin, hệ thống gợi ý được ứng dụng một cách rộng rãi. Đặc biệt, hệ thông gợi ý xuất hiện phố biến nhất là trên các ứng dụng thương mại điện tử như Shopee, Lazada, TikI, Facebook, Tiktok, Amazon,..hay trên nền tảng mạng xã hội Facebook.
Khi người sử dụng ứng dụng có tích hợp hệ thống gợi ý, hệ thống này sẽ lọc thông tin, lưu trữ dữ liệu và thông tin mà người sử dụng đã mua hoặc đã tìm kiếm để hiển thị các sản phẩm theo sở thích của người sử dụng ứng dụng.
Một ví dụ điển hình của nền thương mại điện tử là Amazon, nền tảng này
tích hợp một hệ thống gợi ý thông minh nhằm tôi ưu hóa trải nghiệm mua sắm
của người dùng. Ứng dụng này tập trung vào việc phân tích những sản phẩm mà khách hàng đã đánh dấu là "yêu thích", dựa trên dữ liệu lịch sử duyệt web của họ. Dữ liệu này có thê bao gồm các chỉ số như xếp hạng mà người dùng đã đưa ra cho sản phẩm, thời gian họ đã dành cho mỗi sản phẩm, hoặc số lần họ đã tương tác với sản phẩm bằng cách nhấp chuột. Dựa vào thông tin này, hệ thống gợi ý có thê phân tích và dự đoán những sản phâm mà khách hàng có khả năng
15
quan tâm, từ đó đưa ra các gợi ý phù hợp đê cải thiện trải nghiệm mua sắm của họ.
Ngoài các sàn thương mại điện tử, hệ thống gợi ý còn được tích hợp trong các ứng dụng giải trí như: nghe nhạc, xem phim,,...
Ứng dụng hệ thống gợi ý giúp cho khách hàng khi sử dụng các ứng dụng có trải nghiệm mua sắm tuyệt vời, họ có thé bat gặp những mặt hàng họ muốn mua mà không cân thông qua bước tìm kiếm, họ có thể tìm được các sản phâm tương tự có mẫu mã và giá thành phù hợp với họ,..từ đó làm kích thích khả năng mua hàng của khách hàng.
3.1.3 Cách thức hoạt động của hệ thống gợi ý
Hệ thống gợi ý dựa vào ba khái niệm cơ bản bao gồm: tập người dùng U (user), tap muc tin I (item — các gói cước vận tải, chăm sóc khách hàng, chính sách ưu đãi,...) và phản hồi r„ (đánh giá/ xếp hạng) của người dùng u trên mục
tin 1.
Items
1 2 1 m
I 13 4 |1
2 |1 45 3
Users... 3 |1 |? |5 |2
u 4
1 2
n 4 |5
Hình 3.1: Ma trận biểu diễn xếp hạng của người đùng trên mục tin (user-item- rating matrix)
Có 2 dạng bài toán chính trong Recommender systems: Dang mot la dy doan xép hang (rating prediction), dạng này sẽ dựa vào các giá trị xếp hạng trước đó (là những phản hồi của người dùng như xếp hạng từ l đến 5,...) để dự đoán các giá trị xếp hạng trong tương lai. Dang hai là gợi ý mục tin (tem
1ó
recommendation): dựa vào các phản hỗi tiềm ân từ người dùng (như số lần cliek chuột, tuyến đường hay tìm kiếm,... tức là những thông tin mà người dùng không trực tiếp xếp hạng/đánh giá).
- Đối với một bài toán dự đoán xếp hạng: thông tin thông thường sẽ được biêu diễn trong một ma trận như ở Hình 3.1. Trong đó: mỗi cột là một item, mỗi dòng là m6t user, va mỗi ô là một gia tri xép hang biéu dién phan hồi (như “mức độ đánh giá dịch vụ”) của user trên mỗi item tương ứng. Những ô chứa giá trị là những item mà các user đã đánh giá/xếp hạng trong quá khứ. Những ô còn trồng là những item chưa được user đánh giá (Đặc biệt cần phải lưu ý là mỗi user chỉ đánh giá cho một vài item trong quá khứ, do đó có rất nhiều ô trống trong ma trận — nên ma trận này còn được gọi là ma trận cực thưa — sparse matrix). Vi vậy, Recommender systems có nhiệm vụ chính là dựa vào các ô đã có giá trị trong ma trận (dữ liệu thu được từ quá khứ), từ đó dự đoán các ô còn trồng (của user hiện hành), rồi sắp xếp kết quả dự đoán (ví dụ: xếp từ cao xuống thấp), sau đó là chọn ra Top - N items theo thứ tự, rỗi căn cứ vào đó để gợi ý chúng cho người dùng.
- Đối với bài toán gợi ý mục tin: Recommender systems sẽ sử dụng phản hồi tiềm ân từ người dùng, chính vỉ vậy nó thường chỉ chứa đữ liệu quan sát/tương tác dương (positive observations) hay còn được gọi là sự phản hỗi duong/tich cực (positive feedback) S © U x I. Bên cạnh đó, những mục tin mà người dùng chưa tương tác/quan sát (none-observed) sẽ là sự trộn lẫn giữa những giá trị thiểu (missing values — người dùng có thể đánh giá cao mục này trong tương lai, vì hiện tại họ chưa thấy hay tương tác với chúng) và giá trị phản hồi âm (negative feedback — người dùng đánh giá thấp mục này) (Rendle và cộng sự, 2009) như biêu diễn bên tay trái trong Hình 3.2. Vì vậy, cách thông thường được sử dụng để tạo ra tập dữ liệu huấn luyện là với những cặp (u, ¡) €.
S thuộc lớp âm (negative class) duoc gan gia tri 0,phần còn lại là lớp dương
17
(positive class) sẽ được gán giá trị Í, như bên tay phải của Hinh 3.2 (Hu va cộng sự, 2008).
i, ip củ iy i i ủy lạ
uy | + 9 | 9 uy 1/1/0/0
uz | ? 2?) + | 1 | 0|1|0|11 |
U3 + |? ? ? |User —,,- ug 1 0 0 0 | User
Hạ ?|+|+l|+ uz | 0 | 1 |1 1
u; |? | ? ? u; | 9}| 9} 14{ 0
+— item ——_ằ — item ——_>ằ
Hình 3.2: Biểu diễn dữ liệu trong RŠ dưới dạng nhị phân Tuy nhiên, nhược điểm lớn của phương pháp này là trong suốt quá trình huấn luyện, các mô hỉnh sẽ không phân biệt được đâu là những giá trị thiểu (missing values) và đâu là giá trị phản hồi âm (negative feedbacks), do cả missing values và negative values đều được gán giá trị 0.
Trong hệ thống gợi ý phát triển ứng dụng báo giá tự động, nhóm nghiên cứu đồ án dự định sử dụng phương pháp đã được trình bày trong tài liệu (Rendle và cộng sự, 2009) - phương pháp so sánh từng đôi (patr-wIse ranking) thay vì chỉ đưa ra dự đoán xếp hạng cho từng mục tỉn hoặc chỉ thay thế những giá trị cần xếp hạng bằng một giá trị âm.
Cu thé, từ dữ liệu đã có S sẽ tiễn hành xây dựng lại tập dữ liệu huấn luyện D., dựa vào mỗi quan hệ “thích hơn — prefer” giữa các gói cước dịch vụ vận tải cho mỗi người dùng u. Giả sử: nếu một gói cước dịch vụ vận tải ¡ được lựa chọn bởi người dùng u ((u, ¡ € S) thì người dùng thích gói cước này hơn tất cả các gói cước chưa chọn khác. Ví dụ trong ¿nh 3.3 bên trải, biéu diễn quan hệ
“thích hơn” cho các gói cước dịch vụ vận tải của người dùng 1; như sau:
Ì >Uy ;Ì,> my; b> Wi si, > ty,
18
Với những gói cước mà người dùng đã chọn (như gói cước ỉ: và !; ứng với ngwoi ding 4 trong Hinh 3.3), hệ thống sẽ không sử dụng mối quan hệ “thích hơn — prefer” như mô tả ở trên do hệ thống đã ngầm hiểu là người dùng có cùng mức độ thích trên những gói cước này. Tương tự, với những gói cước mà người dùng chưa chọn (ví dụ, gói cước ỉ› và „ứng với người dùng 1+) hệ thống
A 66,
cũng không sử dụng quan hệ “thích hon — prefer”, bởi chưa có thông tin.
Bén phai trong Hinh 3.3 là cách biểu diễn các dữ liệu được dùng trong hệ thống. Trong đó, dâu + thê hiện người dùng thích gói cước ¡ hơn gói cước j (lưu ý: gọi ¡ và j để đễ theo dõi, nhưng về bản chất thì í, và j, là như nhau), dấu — thê hiện người dùng thích gói cước j hơn gới cước ¡ và dấu ? là những cặp gói cước cân được xếp hạng sau nảy.
Như vậy, hệ thông gợi ý phát triển ứng dụng báo giá tự động cần dự đoán cho các giá trị ? trong các ma trận bên phải của Hình 3.3. Từ đó, sắp xếp chúng từ cao xuống thấp và chợn ra N gói cước cần gợi ý.
tị: ẽ> 1y } h & lạ &
in -
tị tạ tạ tạ "
My
Mạ J
Hy Lsc —
Hạ |
ẹ
—_—— item ——>