1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Khoa học máy tính: Vấn đề Cold-start trong hệ thống gợi ý và ứng dụng

69 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 69
Dung lượng 30,91 MB

Nội dung

Van đề khó khăn chung của hau hết hệ thống gợi ý là khi người dùng mới chưa có bat kỳ đánh giá hay phản hồi nào trong hệ thống thì hau như hệ thống chưa đưa ragợi ý chính xác cho họ, tươ

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

PHẠM THỊ BÍCH HẠNH

VAN ĐÈ COLD-START TRONG HỆ THONG GOI Ý

VÀ ỨNG DỤNG

KHÓA LUẬN THẠC SĨNgành: Khoa học máy tính

Mã số: 68.48.01.01

TP HO CHÍ MINH - 2017

Trang 2

Tôi xin cam đoan tất cả các kết quả được trình bày trong khóa luận là của bản thân

tôi, được thực hiện dưới sự hướng dẫn của PGS.TS Đỗ Văn Nhơn Các sé liệu, những

kết luận đã tìm hiểu được trình bày trong khóa luận này là trung thực và chưa từng đượccông bố dưới bat cứ hình thức nào Tuy nhiên, dé tài cũng sử dụng một số nhận xét, đánhgiá cũng như số liệu của các tác giả, cơ quan tổ chức khác và cũng được thé hiện trong

phần tài liệu tham khảo.

Tôi xin chịu trách nhiệm về bài viết của mình.

Học viên

Phạm Thị Bích Hạnh

Trang 3

Tôi xin gửi lời cảm ơn sâu sắc nhất đến quý Thầy/Cô khoa Khoa học máy tính,

trường Đại học Công nghệ thông tin, đặc biệt là PGS TS Đỗ Văn Nhơn, người đã tận

tình hướng dẫn và giúp đỡ tôi hoàn thành khóa luận nay Được làm việc với Thay là cơhội lớn để tôi được học hỏi nhiều điều trong lĩnh vực nghiên cứu khoa học, xin cảm ơnThay đã luôn tận tình hướng dẫn tôi một cách hết sức nghiêm túc, và khoa học

Xin cảm ơn gia đình và những người thân, bạn bè đồng nghiệp đã luôn chia sẻ mọi khó khăn và là chỗ dựa vững chắc cho tôi trong suốt thời gian thực hiện và hoàn thành

khóa luận.

Tôi xin chân thành cảm ơn.

Tác giả

Phạm Thị Bích Hạnh

Trang 4

1.2.1 Tình hình nghiên cứu ngoài nước

1.2.2 Tình hình nghiên cứu trong nước

2.2 Bài toán gợi ý

2.3 Ý nghĩa của hệ thống gợi ý.

2.4 Những phương pháp tiếp cận hệ thống gợi ý

2.4.1 Tiếp cận dựa trên nội dung (Content-Based)

2.4.2 _ Tiếp cận lọc cộng tác (Collaborative Filtering - CF) .- :-c2 102.4.2.1 Phương pháp gợi ý sử dụng bộ nhớ:

2.4.2.2 Phương pháp gợi ý dựa trên mô hình: -¿-¿- - + +©5+c+cec+zxes+ 142.4.2.3 Vấn để tồn tại 22222 22 212222211222211122212112011111 0.111 xe 15

Trang 5

2.4.4 Tiếp cận dựa trên ngữ cảnh (Context-Aware) 55s cccccccererrrrer 17

2.5 Các kỹ thuật chính trong RS§ - - 6-56 kề té HH HH HH rớy 20

2.5.1 Ky thuật k láng giéng dựa trên người dùng/mục tin (User/Item kNNs) 21

2.7.2 Các tiêu chí đánh giá + kề rước 28 2.7.2.1 Đánh giá độ tin cậy của giải thuật - ¿5c 5c 28

3.4.2 Ap dụng việc bồ sung trọng sỐ ccc:+222++++++++++t222222222222222222221122xe 35

Trang 6

3.5.1 Mô tả kí hiệu chư ưưện 36

3.52 Lưuđồ ìccerrrrriieriirrrriirrrree 37

S2 (GIải|HUẬU, /./////22////000/20/0///0020/(/030024/0023///1141200/0040/0004/0/06/003/ 00003) 39

CHƯƠNG 4 THỰC NGHIỆM VÀ ĐÁNH GIÁ 22cccz222cvvcse+ 4I

AU, Dữ liệu (HC HGHIỆTH, 20222422(20210/4/4123/0243219012324020904/0/06/023319/930 4I

4.1.1 Bộ CSDL Movie L€ns: - 5c St tt S2 E2121111112111111121 11111 ke 41 4.1.2 Bộ CSDL Restaurant - St tt 2121221111121111212121111112 1111 cà 42 4.2 Cách thức kiêm tra của ứng dung ecceseseeseesesseesesseseeseesessesneseseeseeseaseases 44 4.3 Phương pháp đánh giá hiệu quả của ứng dụng - + sec 45

4.4, Tìm siêu tham số (hyper paraimat€r) -cccc:+2222+++c++++222222222222222211222211 xe 45

4.5 Cài đặt chương trình thực nghiệm ¿- - + +55 Sv*‡xexvErkrxerrkrxrrererver 47

4.6 Kết quả thực nghiệm -c:-222V2222+++222EEEE2222EE2E2211112121221211122 1221, e2 50

4.6.1 Giao diện chương trình -¿- + két H111 key 50

4.6.2 Sơ lược về nghiên cứu liên quan và kết quả dat được - : 51

Trang 7

Vi dụ bảng ma trận Người dùng x Sản phẩm entries found 10

(Cáo phương THUS lại LẠO s0 0 000/ 666.0006266 06620366 y0 30062 16 Bang mô ta User của CSDL Movie Lens -+- ¿©5255 5s+s++se>+ 4I

Bang mô tả Movie của CSDL Movie Lens . c +-5-5555+55+++ 42 Bang mô ta Rating của CSDL Movie Lens - + + s+ss<+5s2 42

Bang mô ta User của CSDL Restaurant 42 Bang mô ta Place cua CSDL Restaurant 43

Bang mô ta Rating của CSDL Restaurant

Kết quả tìm kiếm thô tham số k được thực hiện 3

Kết quả tìm mịn k với dé liệu ngau nhiên.

Trang 8

Hình 2.1 Các phương pháp xử lý ngữ cảnh - 65k ước 19 Hình 2.2 Giải thuật User-kNN sec cnrrrieerrrerrirrriiriirriirrrirrierree 2 Hình 2.3 Phân rã ma trận R thành hai ma trận P va (QT - <++++xexvxzxex 23 Hình 2.4 Giải thuật phân rã ma trận ¿+ tk ớy 26

Hình 3.1 Mô hình xử lý vấn đề Cold-start

Hình 3.2 Xác định factor tương đồng của người dùng mới dựa vào độ tương

thuộc tính giữa user mới và các user trong hệ thốn,

Hình 3.3 Lưu đồ giải thuật MF-KNN xử lý vấn đề Cold-start

Hình 3.4 Giải thuật MF-KNN giải quyết vấn đề Cold-start - 40 Hình 4.1 Giao diện và kết quả chương trình của đề tài -:::ccccc:cccz+zccez 51

Hình 4.2 Minh họa kết quả nghiên cứu [1] scccscccsssccssssssssssssssssssssssssssnnesssssseseeeseeeeeeee 52

Trang 9

CHUONG 1 TONG QUAN 1.1 Đặt vấn đề.

Ngày nay với sự phát triển gia tăng không ngừng của các hệ thống thương mạiđiện tử đã mang lại cho chúng ta rất nhiều lợi ích trong nhiều lĩnh vực khác nhau Vớiđặc thù của các hệ thống thương mại điện tử tốn ít chỉ phí và sản phẩm được quảng

bá nhanh chóng tới tay người tiêu dùng nên ngày càng được nhiều người lựa chọn

hình thức kinh doanh này Tuy nhiên với việc hàng ngày có hàng trăm website thương,

mại điện tử ra đời đã làm phát sinh ra một số thách thức, một trong những thách thức

đó là người dùng làm sao chọn lựa được sản phẩm mà họ cần trong vô vàn sản phẩmtrong thế giới ảo này? Điều đó làm cho người dùng cảm thấy choáng ngợp, rối rắmtrong việc lựa chọn những thông tin cần thiết đối với mình Mặc dù các bộ máy tìmkiếm không lồ như Google đã giúp rất nhiều trong việc tìm kiếm thông tin nhưng kếtquả trả về quá nhiều, người dùng khó có thé kiểm tra hết và thực tế nó vẫn chưa mang

lại hiệu quả trong việc chọn ra những thông tin phù hợp riêng cho người dùng.

Thông thường khi một khách hàng vào một website thương mại điện tử thì có

hai xu hướng: thứ nhất là họ đã định hướng được sản phẩm cụ thể muốn mua, thứ hai

là họ chỉ định hướng được thể loại sản phẩm cần mua Đối với trường hợp thứ nhất

thì đơn giản là họ đã định hướng được sẽ mua sản phẩm nào rồi, vấn đề chỉ là chọn

mua ở đâu mà thôi Đối với trường hợp thứ hai thì người dùng sẽ gặp khó khăn hơnnhiều, họ sẽ phải chọn sản phẩm phù hợp nhất với nhu cầu của họ Vấn đề đặt ra làlàm sao người dùng có thể làm được điều đó trong vô vàn sản phẩm cùng chủng loại

mà họ đang tìm.

Để giải quyết vấn đề này chúng ta cần có một hệ thống hiệu quả, tối ưu hơn cả

bộ máy tìm kiếm để có thể tự động trích lọc ra những thông tin phù hợp với nhu cầutừng người dùng khác nhau Hệ thống gợi ý ra đời đề giải quyết vấn đề này dựa vào

những sở thích hay sự lựa chọn, đánh giá của chính người dùng đó hoặc những người

dùng khác trong quá khứ, từ đó giúp người dùng dé dàng chọn được thông tin phùhợp nhu cầu của mình Hệ thống gợi ý (Recommender Systems - RS) là một dangcủa hệ thống lọc thông tin (information filtering), nó được sử dụng dé dự đoán sởthích (preference) hay xếp hạng (rating) mà người dùng (user) có thé dành cho mộtmục thông tin (item) nào đó ma họ chưa xem xét tới trong quá khứ (item có thé là bài

1

Trang 10

báo, bộ phim, đoạn video clip, sách ) [5] nhằm đưa ra những gợi ý về những mục

tin phù hợp cho người dùng.

Van đề khó khăn chung của hau hết hệ thống gợi ý là khi người dùng mới chưa

có bat kỳ đánh giá hay phản hồi nào trong hệ thống thì hau như hệ thống chưa đưa ragợi ý chính xác cho họ, tương tự đối với sản phẩm mới trong hệ thống, những sảnphẩm chưa từng được người dùng đánh giá cũng khó được lựa chọn dé gợi ý chongười dùng khác, đó chính là vấn đề khởi đầu lạnh hay còn gọi là vấn đề “Cold-start”trong hệ thống gợi ý

“Khởi đầu lạnh” (Cold-start) [4] là vấn đề xảy ra đối với user mới hoặc itemmới trong hệ thống gợi ý Khởi đầu lạnh đối với user mới là khi một user đó lần đầutiên tham gia vào hệ thống và chưa có bất kỳ đánh giá hay phản hồi nào lên các itemstrong hệ thống; Do đó có rat ít thông tin hoặc hầu như không có thông tin nào củauser giúp hệ thông đưa ra gợi ý phù hợp Vấn đề hoàn toàn tương tự đối với một itemmới trên hệ thống Item mới không có bat kỳ sự đánh giá nào của cộng đồng ngườidùng Trong cả hai trường hợp, items mới sẽ không được gợi ý cho đến khi có usersđánh giá và user mới cũng không có được gợi ý những sản phẩm họ yêu thích vì họchưa đánh giá hoặc mua sản phẩm nào trong quá khứ

1.2 Tình hình nghiên cứu

1.2.1 Tình hình nghiên cứu ngoài nước

Dé khắc phục những khó khăn trong van dé này, đã có nhiều nghiên cứu đưa ra

các giải pháp xử lý khác nhau:

Một trong những nghiên cứu giải quyết vấn đề Cold-start là kỹ thuật FMF(Function Matrix Factorization) [1] Nghiên cứu xây dựng một nền tang cho cây quyếtđịnh học đồng thời giữa các thông tin khảo sát ban đầu và các nhân tố tiềm ân chothông tin người dùng/mục tin Sử dụng mô hình cây quyết định, tại mỗi nút trong cây

sẽ đưa ra các truy van và người dùng sẽ chọn câu trả lời để đến các nút con tiếp theo,

từ đó hệ thống đưa ra gợi ý cho người dùng Mô hình FMF hiện nay dựa trên một

công thức ma trận phân rã cơ bản và không đưa vào các tính năng nội dung như thông

tin đặc trưng của người sử dụng.

Nghiên cứu của Zeno Gantner, et.al sử dụng “Bayesian Personalized Ranking”

[2] để huấn luyện mô hình dự đoán dựa vào ánh xạ từ các thuộc tính của các đối tượng

Trang 11

Một kỹ thuật khác cũng giải quyết khá tốt vấn đề cold-start là Context-aware

Semi-supervised Co-training algorithm (CSEL) [3], kỹ thuật này sử dụng mô hình

phân rã dé bắt lấy chỉ tiết các ngữ cảnh của người dùng - mục tin (user — item) Sau

đó, để xây dựng một mô hình có khả năng tăng hiệu suất gợi ý bằng cách tận dụngngữ cảnh, và đề xuất một giải thuật học bán giám sát Thuật toán xây dựng mô hình

dự đoán khác nhau sử dụng các ví dụ với những bối cảnh khác nhau và sau đó sửdụng các chiến lược hợp tác đào tạo đê cho phép mỗi mô hình dự đoán đề học hỏi từcác mô hình dự báo khác Phương pháp này có nhiều ưu điểm phân biệt hơn cácphương pháp gợi ý tiêu chuẩn khác trong việc giải quyết các vấn đề khởi đầu lạnh.Đầu tiên, nó định nghĩa một ngữ cảnh chi tiết nói chính xác hơn là đề mô hình hóacác sở thích của người dùng - mục tin Thứ hai, phương pháp tự nhiên có thé hỗ trợviệc học có giám sát và bán giám sát, cung cấp một cách linh hoạt đề kết hợp các dữ

liệu không có nhãn Kỹ thuật này xây dựng mô hình có khả năng tăng độ chính xác

của các dự đoán bằng cách kết hợp ngữ cảnh với kỹ thuật đồng huấn luyện có giám

sát và bán giám sát.

Nhìn chung có nhiều phương pháp giải quyết vấn đề cold-start, tuy nhiên cácphương pháp thường kết hợp với các mô hình xử lý khá phức tạp, điền hình là trongcác mô hình quyết định [1], hệ thống gợi ý phải tương tác với người dùng để đánhgiá các câu trả lời, hay trong nghiên cứu [3] sử dụng kỹ thuật đồng huấn luyện bán

giám sát và có giám sát cũng áp dụng mô hình dựa vào ngữ cảnh từ đó mới đưa ra

được dự đoán.

1.2.2 Tình hình nghiên cứu trong nước.

Ở nước ta, về mặt thực tiễn hiện nay đã có nhiều hệ thống (website) có chứcnăng gợi ý như hệ thống gợi ý sản phẩm, phim ảnh, bài hát, sách tuy nhiên đa phầncác hệ thống này chỉ gợi ý dựa trên những thông tin cơ bản như: gợi ý dựa trên nộidung giống như cùng loại sản phẩm, cùng nhà cung cấp, (www.vatgia.com,

3

Trang 12

www.enbac.com, www.lazada.com ) Thương mại điện tử ở Việt Nam đang bước đầuphát triển, do vậy hệ thống gợi ý sẽ mở ra nhiều tiềm năng trong tương lai, ké cả trong

nghiên cứu và ứng dụng.

Vé mặt nghiên cứu ta có nghiên cứu về hệ thống gợi ý sản phẩm trong bán hangtrực tuyến sử dụng kỹ thuật lọc cộng tác [25] của Nguyễn Hùng Dũng và NguyễnThái Nghe, bài viế giới thiệu kỹ thuật lọc cộng tác dựa trên mô hình láng giềng (môhình lân cận) để gợi ý sản phẩm trong hệ thống bán hàng trực tuyến Bài viết thực

hiện việc cài đặt kỹ thuật này và so sánh độ tin cậy của nó với các kỹ thuật cơ bản

khác, và xây dựng một hệ thống bán hàng trực tuyến có tích hợp kỹ thuật lọc cộngtác vào hệ thống đề nó có thể gợi ý sản phẩm phù hợp cho người dùng Tương tự ta

có các hệ thống gợi ý khác như gợi ý bài hát [26]

Nghiên cứu xây dựng hệ thống gợi ý phim [27] Triệu Vĩnh Viêm,Triệu Yến Yến

và Nguyễn Thai Nghe bài viết một tiếp cận tích hợp các ưu điểm của cả hai tiếp cận

mô hình nhân tố tim an và mô hình láng giềng dựa vào phương pháp đã được đề xuấtbởi Koren (2010) Ở đây, bên cạnh việc xây dưng một hệ thống trên nền web đề gợi

ý phim ảnh cho người dùng, bài viết cũng đã điều chỉnh mô hình đã có bằng cách đưavào các hệ số regularization trên từng tham số khác nhau của mô hình nhằm cải tiếnkết quả dự đoán

1.3 Mục tiêu đề tài

Van dé Cold-start là một rào cản lớn cho sự phát triển của hệ thống gợi ý Mụctiêu của đề tài là tập trung tìm hiểu các phương pháp giải quyết giải quyết Cold starttrong hệ thống gợi ý, vận dụng các phương pháp đã tìm hiểu dé ứng dụng vào việcgiải quyết vấn đề Cold-start trong hệ thống gợi ý phim dựa trên bộ dữ liệu chuẩn (cụ

thể Movilens) Bên cạnh việc vận dụng các phương pháp sẵn có đề tài cũng có bổ

sung việc đưa thêm trọng số cho từng thuộc tính của người dùng hoặc sản phẩm đểnâng cao độ chính xác cũng như mức độ hữu ích của hệ thống gợi ý đối với người sử

dụng.

1.4 Đối tượng và phạm vi nghiên cứu

Tập dữ liệu thực nghiệm chính được thu thập từ tập dữ liệu Movilens 100K của

nhóm nghiên cứu GroupLens Đây là dir liệu chuẩn dùng đề đánh giá giải thuật lọc

cộng tác, dữ liệu này được tập hợp từ các đánh giá của người dùng tại website

Trang 13

http://movielens.umn.edu) Dữ liệu này được trích ra từ hệ thống gợi ý phim chongười dùng Bên cạnh đó đề tài còn thực hiện nghiên cứu trên các bộ dữ liệu khác

như Movie Lens 1M, và Restaurant.

Các mô hình của phương pháp lọc cộng tác trong hệ thống gợi ý: mô hình nhân

tố tiềm ấn - xác định mối quan hệ tiềm ấn trên cả người dùng và mục thông tin; và

mô hình láng giéng - phân tích độ tương tự giữa các mục thông tin với nhau hay giữa

những người dùng với nhau, kỹ thuật phân rã ma trận.

Các phương pháp kiểm tra và các tiêu chí đánh giá hệ thông

Chương 2: Cơ sở lý thuyết hệ thống gợi ý

Chương này trình bày những khái niệm cơ bản và những phương pháp tiếp cận

hệ thống gợi ý, ứng dụng và hạn chế, các nghỉ thức kiểm tra đánh giá hệ thống

Chương 3: Vấn đề Cold-start trong hệ thống gợi ý phim

Trong chương này sẽ vận dụng các phương pháp đề xử lý vấn đề Cold-starttrong hệ thống gợi ý phim đối với users và items Bên cạnh việc vận dụng các phươngpháp dé tài cũng có bé sung việc đưa thêm trọng số cho từng thuộc tính của ngườidùng hoặc sản phẩm đề nâng cao độ chính xác cũng như mức độ hữu ích của hệ thốnggợi ý đối với người sử dụng

Chương 4: Thực nghiệm và đánh giá

Chương này sẽ trình bày việc thử nghiệm ứng dụng và các phương pháp đánh

giá thử nghiệm, từ đó so sánh kết quả thực nghiệm của đề tài với phương pháp dựđoán cơ sở (baseline) và nghiên cứu liên quan trong hệ thống gợi ý

Chương 5: Kết luận và hướng phát triển

Tổng kết các kết quả đạt được, các vấn đề còn tồn tại và định hướng phát triển

của đê tài.

Trang 14

CHUONG 2 CƠ SO LÝ THUYET HE THONG GỢI Ý

2.1 Khai niệm:

Hệ thống gợi ý (recommender systems — RS) thường được sử dụng dé dự đoán sở

thích của người dùng dựa vào những phản hồi (feedbacks) của họ nhằm gợi ý các sản phẩm (item) mà người dùng có thể thích RS hiện đang được ứng dụng ở rất nhiều lĩnh

vực khác nhau như: trong thương mại điện tử (bán hàng trực tuyến), trong giải trí (âmnhạc, phim ảnh, tin tức ), trong giáo dục dao tạo (gợi ý nguồn tài nguyên học tập như:

sách, báo, ).

Ví dụ, trong hệ thống bán hàng trực tuyến (chẳng hạn như Amazon), nhằm tối ưu

hóa khả năng mua sắm của khách hàng (user), người ta quan tâm đến việc những kháchhang nào đã “yêu thích" những sản phẩm (item) nào bằng cách dựa vào dữ liệu quá khứcủa họ (dữ liệu này có thể là xếp hạng mà người dùng đã bình chọn trên sản phẩm, thời

gian duyệt (browse) trên sản phâm, số lần click chuột trên sản phâm ) từ đó hệ thống

sẽ dự đoán được người dùng có thể thích sản phẩm nào và đưa ra những gợi phù hợp cho

họ.

2.2 Bài toán gợi ý

Trong hầu hết các trường hợp, bài toán gợi ý được coi là bài toán ước lượng trước

xếp hạng (rating) của các sản phẩm (phim, cd, nhà hàng ) chưa được người dùng xem

xét Việc ước lượng này thường dựa trên những đánh giá đã có của chính người dùng đó

hoặc những người dùng khác Những sản phẩm có xếp hạng cao nhất sẽ được dùng đề

gợi ý.

Theo Adomavicius và Tuzhilin [4] bài toán gợi ý được mô tả như sau:

Định nghĩa 1: Không gian người dùng

Không gian người dùng là tập tất cả những người dùng mà hệ thống quan sát được,

để thực hiện các phân tích, gợi ý Ký hiệu là: U,U = {u,;, x, , trạ}.

Định nghĩa 2: Không gian đối tượng gợi ý

Không gian đối tượng gợi ý là tập tat cả những đối tượng sẽ được gợi ý cho người

dùng Tùy vào ứng dụng cụ thể, các đối tượng gợi ý có thể là sách, báo, phim ảnh, địa

Trang 15

điểm, nhà hàng, khách san, con người, v.v Ký hiệu là: P,P = {P1) Por D3, - Pm}:

Dinh nghia 3: Ham hitu ich

Ham hữu ích f là ánh xạ ƒ:U x P > R, dùng để ước lượng mức độ hữu ích củap€P với € U Với R là tập có thứ tự các số nguyên hoặc thực trong một khoảng nhất

định.

Phát biểu bài toán khuyến nghị

Cho trước:

*®U = {uy, Uz, Ug, ,Un}: không gian người dùng.

*P = {P\,Pa,Ð3, Ð,„} : không gian đối tượng gợi ý

Mục đích của hệ gợi ý là đi tìm hàm hữu ích ƒ, ước lượng giá trị của ƒ(u,p) (với

p€P,uec U) Giá trị của ƒ(w,p) giúp tiên đoán u sẽ thích p nhiều hay ít, hay p hữu íchđối với như thé nào Đối với mỗi người dùng wu € U, hệ gợi ý cần chọn TopN đối tượngp€P hữu ích nhất đối với người dùng u dé gợi ý, Propy =< ĐuDĐ¿:DĐ3, -sPTopN >>(với TopN < m) Việc chon TopN bao nhiêu là tùy thuộc vào như cầu thông tin của

người dùng, cũng như mục đích cung cắp thông tin của hệ gợi ý.

Các đối tượng p € Propn được chọn thỏa mãn các điều kiện ràng buộc sau:

i) Vix © Prạpy, ff Pe) = ƒ(u,p¿¿ì), với 1 Sk < TopN — 1 Tức là tập các

đối tượng gợi ý Propy là tập có thứ tự Đối tượng đứng trước có giá trị của ham hữu ich

ƒ lớn hơn hoặc bằng đối tượng đứng sau, hay đối tượng đứng trước ưu tiên gợi ý cho uhơn đối tượng đứng sau

ii) ) Vpy © Prẹpg, VPi © P\Propn f (UP) >, fu pj) Tức giá trị hữu ich của

các đôi tượng được gợi ý, được xác định thông qua ham ƒ, phải lớn hơn hoặc bằng nhữngđối tượng không được gợi ý

Việc xây dựng hàm hữu ích f và ước lượng giá trị hữu ích của các đối tượng gợi

ý p€P với những người dùng w € U có thể thực hiện bằng nhiều phương pháp khác

nhau như: dựa vào kinh nghiệm (heuristics), máy học, lý thuyết xấp xi, v.v

2.3 Ý nghĩa của hệ thống gợi ý.

Hệ thống gợi ý đã chứng minh được ý nghĩa to lớn: giúp cho người sử dụng trực

7

Trang 16

tuyến đối phó với tình trạng quá tải thông tin và đã trở thành một trong những công cụ

mạnh mẽ và phổ biến trong thương mại điện tử.

Những ý nghĩa mà hệ thống gợi ý mang lại:

> Khả năng đưa ra các dịch vụ cá nhân hóa, hướng tới từng đối tượng kháchhàng cụ thể

> Tăng mức tín nhiệm và trung thành của khách hàng.

> Tăng doanh thu, tăng CTR (Click-through rate)

> Thêm hiểu biết về khách hàng

> Những giá tri cụ thé mà hệ thống gợi ý mang lại:

Vv Netflix: 2/3 trong số những bộ phim được xem là từ hệ thống gợi ý

> Google News: hệ thống gợi ý đem lại hơn 38% click-throughs

> Amazon: 35% doanh số bán hàng từ hệ thống gợi ý

> Choicestream: 28% người dùng mua sản phẩm âm nhạc khi ho tìm đượcsản phẩm yêu thích từ những gợi ý

2.4 Những phương pháp tiếp cận hệ thống gợi ý

Tùy thuộc vào phạm vi và vấn đề cụ thể mà ta có cách tiếp cận khác nhau Có rất nhiều phương pháp tiếp cận dé xây dựng hệ thống gợi ý, tuy nhiên có thé phân thành bốn

cách tiếp cận chính: tiếp cận dựa trên nội dung (Content-Based RecommendationSystem), tiếp cận dựa trên lọc cộng tác(Collaborative Filtering Recomnendation System),

tiếp cận kết hợp (Hybrid), tiếp cận theo ngữ cảnh (Context-aware Recomnendation System) Hiện nay cách tiếp cận tốt nhất của hệ thống gợi ý là phương pháp lọc cộng tác,

có thé kết hợp thêm những cách tiếp cận khác dé cải thiện kết quả.

2.4.1 Tiếp cận dựa trên nội dung (Content-Based)

Gợi ý dựa trên nội dung được dựa trên sự sẵn có của mô tả về đối tượng Phương

pháp gợi ý dựa trên nội dung, dựa trên độ phù hợp r(w,ø) của sản phẩm ? với người

dùng u được đánh giá dựa trên độ phù hợp r(u, p'), trong đó p’ € P và tương tự như 7Ø.

Vi dụ, đê gợi ý một bộ phim cho người dùng +, hệ thống tư vấn sẽ tìm các đặc điểm của

những bộ phim từng được 1 đánh giá cao trong quá khứ (như diễn viên, đạo diễn );

Trang 17

sau đó chỉ những bộ phim tương đồng với sở thích của mới được giới thiệu.

Hướng tiếp cận dựa trên nội dung bắt nguồn từ những nghiên cứu về thu thập thông

tin (IR-information retrieval) và lọc thông tin (IF - information filtering) Do đó, rấtnhiều hệ thống dựa trên nội dung hiện nay tập trung vào tư vấn các đối tượng chứa dữliệu text như văn bản, tin tức, website Những tiến bộ so với hướng tiếp cận cũ của IR

là do việc sử dụng hồ sơ về người dùng (chứa thông tin về sở thích, nhu cầu ) Hồ sơ này được xây dựng dựa trên những thông tin được người dùng cung cấp trực tiếp (khi

trả lời khảo sát) hoặc gián tiếp (do khai phá thông tin từ các giao dịch của người dùng)

Đề thực hiện việc ước lượng có hay không người dùng + sẽ thích đối tượng gợi ý

p, hoặc thích nhiều hay it Tức là, xây dựng một hàm hữu ích f (u, p) của các đối tượng

gợi ý p với người dùng u và ước lượng giá trị hữu ích này.

Hoạt động: Các phương pháp dựa trên tiếp cận nội dung thông thường sẽ thực hiện

các bước sau:

Bước I: Biêu diễn nội dung đối tượng gợi ý p € P, Content(p).

Bước 2: M6 hình hóa sở thích người dùng u € U, gọi tắt là hồ sơ người dùng

(User’s Profile), ký hiệu UserProfile(u).

Bước 3: Ước lượng giá tri hữu ich dựa trên độ tương tự nội dung của đối tượng gợi

ý p với hồ sơ người dùng u Hệ thống sẽ ưu tiên gợi ý những đối tượng p có nội dungtương tự cao so với hồ sơ người dùng 0

Phân loại: Hệ thống gợi ý dựa trên nội dung có thé chia thành hai nhóm chính:

> Một là các phương pháp dựa trên bộ nhớ, thực hiện tính toán độ tương tự giữa Content(p) va UserProfile(u) dùng các độ đo tương tự Cosine, Euclide.

> Hai là các phương pháp dựa trên mô hình, với mô hình được học từ dữ liệu

dùng các kỹ thuật học máy như mạng Bayes, phân cụm, cây quyết định, mạng nơron nhân tạo để tạo nên dự đoán, phân các đối tượng gợi ý thành những đối tượng người

dùng quan tâm (1) hay không quan tâm (0).

Ưu điểm: Gợi ý dựa trên nội dung có những ưu điểm:

> Đầu tiên, nó không yêu cau số lượng người sử dụng lớn dé đạt được độ chính

xác đề nghị hợp lý.

Trang 18

> Ngoài ra, các mặt hàng mới có thể được gợi ý ngay dựa trên thuộc tính có

a

san.

Han chế: Gợi ý dựa trên nội dung có những điểm hạn chế sau:

> Các khó khăn liên quan đến phân tích nội dung như: thông tin mô tả đốitượng có chất lượng kém và bị lỗi, những mô tả về nội dung rất khó dé so sánh và rút ragợi ý, chẳng hạn so sánh nội dung của các file video, audio

> Khong thể da dang trong gợi ý (các đối tượng gợi ý ngoài lĩnh vực quan sát).

> Người dùng mới (khởi đầu lạnh)

2.4.2 Tiếp cận lọc cộng tác (Collaborative Filtering - CF)

Tiếp cận CF được xem là tiếp cận thành công nhất đề xây dựng các hệ thống gợi ý

và ứng dụng rộng rãi trong lĩnh vực thương mại điện tử.

Ý tưởng chung của tiếp cận CF là khai thác thông tin, hành vi quá khứ của người

dùng dựa trên các đánh giá sẵn có dé tiên đoán, lượng hóa mức độ hữu ích của các đốitượng cần gợi ý mà người dùng chưa biết

Bài toán lọc cộng tác là: bài toán dựa trên hành vi quá khứ của người dùng (trong

việc đánh giá sản phâm) để đưa ra dự đoán.

Đầu vào của bài toán là: ma trận thể hiện những hành vi quá khứ, gọi là ma trận Ngườidùng- Sản phẩm (ma trận User x Item) Hàng là người dùng, cột là sản phẩm, giá trị mỗi

ô là đánh giá của người dùng lên sản phẩm đó

Tùy theo hệ thống mà đánh giá của người dùng được quy ước những giá trị nào.

Trong ví dụ này, các đánh giá có giá trị từ 1 — 5

Bảng 2.1 Ví dụ bảng ma trận Người dùng x Sản phẩm entries found

Sản phâm 1 Sản phâm 2 Sản phâm 3

Người dùng 1 1 0 5

Người dùng 2 4 2 2

Người dùng 3 0 0 0

O ma trận này, đánh giá của người dùng | đối sản phâm | là 1, sản phâm 3 là 5,

sản phẩm 2 chưa được đánh giá

Đầu ra của bài toán là: đánh giá của người dùng lên những sản phẩm mà họ chưa

Trang 19

đánh giá Hệ thống gợi ý dựa trên các đánh giá này mà xếp hạng các sản phẩm và gợi ý

cho người dùng.

Trong ví dụ này, hệ thống gợi ý phải đưa ra dự toán, người dùng 1 đánh giá sản

phẩm 2 là bao nhiêu Người dùng 3 đánh giá sản phẩm 1, 2, 3 là bao nhiêu

Phát biểu ở dạng tổng quát: Hệ thống gợi ý dựa trên lọc cộng tác dự đoán độ phùhợp r (u,i) của một sản phẩm i với người dùng dựa trên độ phù hợp r(0,í) giữangười dùng u’ và i, trong đó + là người có cùng sở thích với u Ví dụ, để gợi ý một bộphim cho người dùng wu, đầu tiên hệ thống cộng tác tìm những người dùng khác có cùng

sở thích phim ảnh với u Sau đó, những bộ phim được họ đánh giá cao sẽ được dùng dé

tư vấn cho Có nhiều hệ thống, cộng tác đã được phát triển như: Youtube (video),

Amazon.com (sách)

Các phương pháp CF nói chung được phân thành hai nhóm chính:

> — CF dựa trên bộ nhớ như các thuật toán tính toán tương tự, lân cận.

> CF dựa trên mô hình như các thuật toán gom cum, phân lớp giám sát, thừa

số hóa ma trận (Matrix Factorization).

2.4.2.1 Phương pháp gợi ý sử dụng bộ nhớ:

Phương pháp gợi ý hay còn gọi là phương pháp láng giềng gần based) dựa trên bộ nhớ dự đoán những chỉ số đánh giá dựa vào tập hợp tat cả những đối tượng đã được đánh giá bởi những người dùng trước đó Giá trị cần dự đoán r(u, i) của

(Neighborhood-người dùng u đối với đối tượng i thường được tính toán bằng một hàm tổng hợp

(aggregation) của những chi số đánh giá từ những người dùng khác đối với đối tượng i

(ở đây người ta xét đến những người dùng tương tự với người dùng u, có thé là tat cả

người dùng, hoặc chon ra tập hợp n người dùng tương tự nhất):

ríu,Ì) = aggTT'eu(U, ) (2.1)

Trong đó, U là tập hợp n người dùng tương tự với người dùng u (n có giá trị nhỏ

nhất là 1, lớn nhất là toàn bộ tập hợp những người dùng) và họ đã có đánh giá trên đối

tượng i Một vai ví dụ về công thức tính r(u, i) như sau:

ll

Trang 20

Tyegl sim aa r(u) là chỉ số đánh giá trung bình của người dùng u đôi với các đôi

tượng được định nghĩa bằng công thức r(u) = Sie sur(u, i) voi Su=

[sul

{ilr(u,i) # 0}, sim(u,w) là độ tương tự (similarity) giữa hai người dùng u và wu’.

Những người dùng có độ tương tự càng cao thì khả năng sở thích của họ giống nhaucàng tăng, mức độ ảnh hưởng của những chỉ số đánh giá r(0,) trong công thức càng

lớn Điều này giúp chỉ số dự đoán r(u, i) cho người dùng u có độ chính xác cao hơn.Có nhiều cách dé tính độ tương tự này, trong hầu hết các cách tính toán, người ta dựa vào

những chi số đánh giá trên những đối tượng mà cả người dùng cũng như +z đã từngđánh giá Có hai công thức được dùng phô biến đó là hệ số tương quan Pearson và hệ số

tương quan Cosine.

Hệ số tương quan Pearson:

Lsesry [rG.s) — r9] lrÚy,s) — r0)] 05)

sim(x,y) =

|5<sotrG,s) = 7G] 82-5 Ir0,s) =0) ]

Hệ số tương quan Cosine:

x.y Lsesxy 7 (%, Sry, 8) (2.6)

IIXII x IIylÍ/Ssesxyr?Œ,s) /Zsesxy 7? s)

Trang 21

hợp các đối tượng cùng được đánh giá bởi người dùng x và y, # ÿlà tích vô hướng của

nhánh nhỏ là phương pháp dựa trên người dùng (user-based) và phương pháp dựa trên

đối tượng (item-based) Cũng có những nghiên cứu cho rằng phương pháp dựa trên đốitượng trong một số trường hợp có thể cho hiệu năng cao hơn, chất lượng dự đoán cũng

cao hơn.

ï) Lọc cộng tác dựa trên người dùng (user-based)

Trong phương pháp này, việc dự đoán hạng của người dùng u cho mục ¡ bằng cáchtìm những người dùng tương tự nhất với và sử dụng kết hợp hạng của những ngườidùng cho mục i như đánh giá dự đoán của người dùng u cho mục i Bỏ qua nhiễu vàhiệu quả tính toán, bằng cách giới hạn số lượng người tương đồng bởi một con số cụ thé.Những người tương đồng nhất với người dùng œ được gọi là hàng xóm của u, ký hiệu là

N(u) Trong lọc cộng tác dựa trên người dùng, hạng của người dùng u cho mục i được tính bởi công thức:

Xưen(@ Sữn(u, 9) (%,

Deen) sim(u, v)

Tụ, = Tụ + 27

Trong đó số người dùng là hàng xóm của u là N(u) được xác định trước Vi dụ,

N(u) là top 10 người tương đồng nhất với u

ii) Lọc cộng tác dựa trên đối tượng (item-based)

Với phương pháp này, chúng ta tính toán đánh giá trung bình của mỗi người dùngkhác nhau và tìm những người dùng tương đồng nhất cho người mà chúng ta đang tìmkiếm các tư vấn Tuy nhiên, hầu hết các hệ thống trực tuyến, người dùng không có quá

nhiều đánh giá, vì vậy, giá trị trung bình và độ tương tự có thé không đáng tin cậy Điều này thường có kết quả khác nhau về độ tương đồng người dùng khi có đánh giá mới

được thêm vào hệ thống Nói cách khác, hệ thống thường có nhiều đánh giá và trung

13

Trang 22

bình các đánh giá và độ tương đồng giữa chúng có thể ồn định hơn Trong lọc cộng tác

dựa trên nội dung, chúng ta thực hiện lọc cộng tác bằng cách tìm các sản phẩm tương tự nhất Đánh giá của người dùng u cho mục i được tính bởi công thức:

nụ =T,+ Lew SIMEN Cus —T/) (2.8)

Trong đó, i và j tương ứng là giá trị trung bình đánh giá của mục i,j.

2.4.2.2 Phương pháp gợi ý dựa trên mô hình:

Việc thiết kế và mô phỏng các mô hình (máy học và các thuật toán khai phá dữ liệu)cho phép các hệ thống học và nhận ra các mô hình (pattern) phức tạp thông qua bướchuấn luyện dữ liệu, và sau đó có thể đưa ra những dự đoán thông minh trong hệ thốnggợi ý

Xây dựng mô hình huấn luyện dựa trên tập đánh giá người dùng — sản phẩm Môhình này sẽ được sử dụng đề đưa ra các quan điểm, đánh giá của người dùng về sản phẩm

họ chưa được đánh giá.

Các kỹ thuật thông dụng của tiếp cận lọc cộng tác dựa trên mô hình:

> M6 hình mang Bayes (Bayesian Belif Net): Mô hình mang Bayes biểu

diễn mỗi sản phẩm như một đỉnh của đồ thị, trang thái của đỉnh tương ứng với giá trịđánh giá của người dùng đối với sản phẩm đã được đánh giá Cấu trúc của mạng được

nhận biết từ tập dữ liệu huấn luyện Breese đề xuất phương pháp mạng Bayes đơn giản cho lọc cộng tác, Breese giả thiết các giá trị đánh giá được xem xét như những số nguyên

nằm giữa 0 và n Đánh giá chưa biết của người dùng + đối với sản phẩm p là Tup được

ước lượng thông qua những đánh giá trước đó của người dùng u Gọi P, = {p'€

P|r„„: # 9} Khi đó, đánh giá chưa biết của người dùng đối với sản phẩm p được

Trang 23

dữ liệu có các phan tử trong cụm giống nhau nhiều nhất, và khác nhau nhiều nhất đối

với các phần tử thuộc các cụm khác Các phương pháp phân cụm cho lọc cộng tác được

sử dụng để phân chia tập người dùng (hoặc tập sản phẩm) thành các cụm người dùng

(hoặc sản phẩm) có sở thích tương tự nhau Khi đó, người dùng (hoặc sản phẩm) thuộccụm nào sẽ được dự đoán và tư vấn các sản phẩm được đánh giá cao trong cụm đó

Độ đo dùng đề ước lượng mức độ giống nhau giữa các đối tượng dữ liệu thường

được sử dụng là khoảng cách Minkowski và độ tương quan Pearson.

Cho hai đối tượng dữ liệu X = (x„%z, ,Xm),Ý = uz, ,y„) Khi đó,

khoảng cách Minkowski được định nghĩa theo công thức:

d(X,Y) = (2.10)

Trong đó, n là sé chiều của X va Y; x;, y là giá tri thành phần thứ i của X và Y; q

là một số nguyên dương Nếu q = 1, thì đ(X,Y) là khoảng cách Minkowski Nếu q =

2, thì d(X,Y) là khoảng cach Euclid.

> Mô hình ngữ nghĩa tìm ẩn (Latent Semantic Model): Mô hình ngữ

nghĩa 4n cho lọc cộng tác dựa vào các kỹ thuật thống kê, trong đó các tham biến 4n đượcthiết lập trong một mô hình hỗn hợp dé khám phá ra cộng đồng người dùng phù hợp vớimẫu hồ sơ thích hợp Hofmann đề xuất mô hình định hướng (AM) cấp 3 bằng cách mở

rộng mô hình định hướng cấp 2 đã được áp dụng cho bài toán phân tích ngữ nghĩa văn

bản Sau đó sử dụng thuật toán EM (Expectation Maximization) để ước lượng ngữ nghĩacác tham biến

> Một số mô hình khác: Lọc cộng tác sử dụng các kỹ thuật rút gọn không

gian ma trận SVD (singular value decomposition), mô hình đồ thị (Graph-Based Model).

2.4.2.3 Vấn đề tồn tại

So với lọc theo nội dung, lọc cộng tác có ưu điểm là không đòi hỏi biểu diễn sản

phẩm dưới dạng các đặc trưng nội dung Ngoài ra, lọc công tác cho kết quả chính xáchơn trong một số ứng dụng Tuy nhiên, lọc cộng tác vẫn gặp phải những hạn chế cần

được tiếp tục nghiên cứu dưới đây:

15

Trang 24

> Vấn đề người dùng mới (New User Problem) Cũng giống như lọc theonội dung, để phân bổ chính xác các sản phẩm người dùng quan tâm, lọc cộng tác phải

ước lượng được sở thích của người dùng đối với các sản phẩm mới thông qua những

đánh giá của họ trong quá khứ Trong trường hợp một người dùng mới, số đánh giá của

người dùng cho các sản phẩm là Ø, khi đó phương pháp lọc cộng tác không thé đưa ra những tư vấn chính xác cho người dùng này.

> Vấn đề sản phẩm mới (New Item Problem) Trong lọc thông tin, các sản

phẩm thường xuyên được bồ sung, cập nhật vào hệ thống Khi xuất hiện một sản phẩmmới, tất cả đánh giá người dùng cho sản phẩm này đều là Ø Do đó, lọc cộng tác không

thể tư vấn sản phẩm cho bắt kỳ người dùng nào trong hệ thống.

> Vấn đề dữ liệu thưa (Sparsity Data Problem) Kết quả dự đoán của lọccộng tác phụ thuộc chủ yếu vào só các đánh giá có trước của người dùng đối với các sảnphẩm Tuy nhiên, đối với các hệ thống thực tế, số lượng người dùng và sản phẩm là rất

lớn (hàng triệu người dùng và sản phẩm), số những đánh giá biết trước thường rất nhỏ

so với số lượng các đánh giá cần được dự đoán.

2.4.3 Tiếp cận kết hợp (Hybrid)

Những phương pháp khác nhau đều có những điểm mạnh, cũng như điểm yếu của

nó Để tận dụng những điểm mạnh và hạn chế điểm yếu của những tiếp cận khác nhau,

nhiều nghiên cứu đã tập trung phát triển các hệ gợi ý dựa trên việc kết hợp các tiếp cận

khác nhau, được gọi là tiếp cận lai (Hybrid Approach) hay hệ gợi ý lai (Hybrid

Recommender System) Robin Burke đã khảo sát các phương pháp lai cho hệ gợi ý và

trình bay tóm tắt 7 nhóm phương pháp tiếp cận lai phô biến: Lai có trọng số (Weighted

Hybrid); Lai chuyển đổi (Switching Hybrid); Lai trộn (Mixed Hybrid); Lai kết hợp đặc

trưng (Feature Combination Hybrid); Lai theo đợt (Cascade Hybrid); Lai tăng cường đặc

trưng (Feature Augmentation Hybrid); Lai meta (Meta-Level Hybrid).

Bảng 2.2 Các phương thức lai tạo

Các phương thức lai tạo Mô tả

Weight Dau ra (scores hoặc votes) từ một sô kỹ thuật được

Trang 25

kết hợp với mức độ quan trọng khác nhau dé cung

cấp gợi ý cuối cùng

Switching Tùy thuộc vào tình hình, hệ thông sẽ thay đôi từ một

kỹ thuật này sang kỹ thuật khác Mixed Goi ý từ một sô kỹ thuật được trình bày tại cùng một

thời điêm

Feature Combination Những tính năng từ những nguồn hệ thông gợi ý

khác nhau được kết hợp như là đầu vào cho một kỹ

thuật.

Cascade Cac dau ra từ một kỹ thuật được sử dụng như là dau

vào của một kỹ thuật khác.

Feature Augmentation Các dau ra từ một kỹ thuật được sử dụng như là dau

vào các tính năng của kỹ thuật khác Meta-Level Mô hình học băng một hệ gợi ý được sử dụng như

là đầu vào cho hệ gợi ý khác

Những van đề còn ton tại:

> Thiếu sự kết hợp hiệu quả các đặc trưng nội dung vào lọc cộng tác Không

phải tất cả các đặc trưng nội dung của sản phẩm đều ảnh hưởng đến thói quen sử dụngsản phẩm của tất cả người dùng Việc tìm ra tập các đặc trưng nội dung có ảnh hưởng

quan trọng đến thói quen sử dụng sản phẩm của mỗi người dùng cụ thẻ, sẽ cải thiện đáng

kể kết quả dự đoán của các mô hình.

> Thiếu sự kết hợp hiệu quả các đặc tính của lọc cộng tác vào lọc nội dung.Các phương pháp lọc cộng tác thực hiện dự đoán dựa trên tập đánh giá người dùng đốivới sản phẩm Trái lại, các phương pháp lọc nội dung dựa trên biểu diễn nội dung sản

phẩm và hồ sơ người dùng sản phẩm Việc thực hiện tính toán mức độ tương tự theo nội dung trên cả nội dung sản phẩm và đánh giá người dùng chưa giải quyết triệt để mâu

thuẫn giữa các cách tiếp cận

2.4.4 Tiếp cận dựa trên ngữ cảnh (Context-Aware)

17

Trang 26

Hệ thống gợi ý đã đem lại những thay đổi lớn, chính vì vậy cải thiện hệ thống gợi

ý chưa bao giờ là một bài toán cũ Các hệ thống gợi ý càng ngày càng phải hướng người dùng nhiều hơn Chính vì thế yếu tố ngữ cảnh (context) là một trong những yếu tố mang

tình hướng người dùng cao, bởi vì với các ngữ cảnh khác nhau, rõ ràng con người có

những hành động khác nhau.

Ngữ cảnh dé cập đến bắt kì thông tin nào có thé mô tả được hoàn cảnh của một đối tượng: thời gian, nơi chốn, thời tiết, là vị trí hiện tại những yếu tố mà ảnh hưởng đến hành vi của đối tượng Ví dụ như, việc một người dùng quyết định có đến ăn ở một nhà

hàng hay không tùy thuộc vào khoảng cách từ vị trí hiện tại của cô ấy đến nhà hàng là

xa hay gần Hay còn tùy thuộc vào vị trí của nhà hàng như là nhà hàng đó có gần trạm

xe buýt không, có gần trạm ATM hay không

Các phương pháp tiếp cận:

Không giống như một số hệ thống gợi ý truyền thống (gợi ý hai chiều - 2D) chỉxét đến hai yếu tố người dùng đánh giá sản pham đó bao nhiêu Một cách tổng quát ta

có:

Người dùng x Sản Pham > Đánh giá

Hệ thống gợi ý dựa trên bối cảnh của người dùng phải xem xét các ngữ cảnh ảnhhưởng đến đánh giá của họ Ví dụ, cùng một món ăn, khi người dùng ăn với vào lúc trời

mưa thì họ đánh giá 2, lúc trời không mưa họ 5 Một cách tông quát, ta có:

Người dùng x Sản phâm x Ngữ cảnh > Đánh giá

Các phương pháp tiếp cận sẽ tập trung giải quyết bài toán, có thêm yếu tố ngữ

cảnh thì những dự toán về đánh giá của người dùng lên một sản phẩm sẽ được xử lý nhưthế nào Theo Hand Book [6] thì có 3 phương pháp như sau:

Trang 27

(a) Contextual Pre-Filtering (b) Contextual Post-Filtering (c) Contextual Modeling

Data Data Data

UxIxCxR UxIxCxR UxIxCxR

2D Recommender 2D Recommender MD Recommender

ra Uxi3R vn UxI2R $ UxIxC>R

> Xử lý ngữ cảnh đầu vào - Contextual Pre-Filtering: Trong mô hình này,

thông tin về bối cảnh được sử dụng dé lựa chọn hoặc xây dựng các thiết lập có liên quan của bản ghi dữ liệu (tức là xếp hạng) Sau đó, xếp hạng có thể được dự đoán sử dụng bất

kỳ hệ thống gợi ý 2D truyền thống trên các dữ liệu đã chọn

> Xứ lý ngữ cảnh đầu ra - Contextual Post-Fitering: Trong mô hình này,

ngữ cảnh thông tin ban đầu bị bỏ qua, và xếp hạng được dự đoán bằng cách sử dung bat

kỳ phương pháp gợi ý 2D truyền thống trên toàn bộ dữ liệu Sau đó, các gợi ý được điều

chỉnh (contextualized) cho mỗi người sử dụng bằng cách sử dụng các thông tin theo ngữcảnh Theo [handbook] phương pháp tiếp cận xử lý ngữ cảnh ở đầu ra được phân làmhai hướng tiếp cận:

° Tiếp cận Heuristic based: Tập trung vào tìm ra các thuộc tính của

một user cụ thể trong một ngữ cảnh cụ thể Sau đó dựa những thuộc tính để điều chỉnh

và tìm ra những gợi ý phù hợp Việc điều chỉnh gợi ý theo ngữ cảnh bao gồm hai bước:

Bước 1: Loc (Filtering): loại những gợi ý ít liên quan đến các

thuộc tính ở trên.

Bước 2: Xếp hạng (Ranking): xếp hạng giảm dần các gợi ý có

19

Trang 28

liên quan đến các thuộc tính ở trên.

Tiép cận Model based (hay còn được gọi là mô hình hóa): Phương

pháp này xây dựng một mô hình dự toán Mô hình này có thé đưa ra xác suất một ngườidùng cụ thé chọn một sản phẩm cụ thé trong một bối cảnh cụ thé là bao nhiêu Sau đó

xác suất này được dùng để điều chỉnh và tìm ra gợi ý phù hợp Việc điều chỉnh bao gồm

hai bước:

Bước 1: Loc (Filtering): loại những sản phẩm mà xác suất ngườidùng chọn sản phẩm đó trong bối cảnh cụ thể nhỏ hơn một ngưỡng định sẵn trước

Bước 2: Xếp hạng (Ranking): xếp hạng từ cao đến thấp cho các

sản phẩm có xác suất được chọn cao hơn ngưỡng.

Việc lựa chọn hướng, tiếp cận nào cần được dựa trên các tiêu chí mà ứng dụng (mà

sử dụng hệ thống gợi ý) hướng đến

> Mô hình hóa ngữ cảnh: Contextual Modeling: Cả hai cách tiếp cận ở

trên, thì ngữ cảnh được xem xét theo hướng đưa bài toán trở về mô hình truyền thống Người dùng x Sản phẩm (reduced- based) Trong cách tiếp cận này, thông tin theo ngữ cảnh được sử dụng trực tiếp trong kỹ thuật mô hình hóa như là một phần của dự toán

-đánh giá.

2.5 Cac kỹ thuật chính trong RS

Hiện tại, trong RS có rất nhiều giải thuật được đề xuất, tuy nhiên có thể gom chúng

vào trong các nhóm chính theo (Su et.al., 2009), (Ricci et.al., 2010), (Bobadilla et.al.,

2013)):

> Nhom giải thuật lọc cộng tác (Collaborative Filtering): trong nhóm này,

các giải thuật chủ yếu sử dụng:

e Phuong pháp láng giéng (Neighborhood-based, còn gọi là Memory

based), trong đó hoặc là dựa trên dữ liệu quá khứ của người dùng “tương tự - similarity” (user-based approach), hoặc là dựa trên dữ liệu quá khứ của những item “tương tự” (item-based approach)

e _ Dựa trên mô hình (Model-based): Nhóm này liên quan đến việc xây

dựng các mô hình dự đoán dựa trên dữ liệu thu thập được trong quá khứ Như mô hình

Trang 29

Bayesian, các mô hình nhân té tiềm ân (latent factor models): trong đó kỹ thuật phân rã

ma trận (matrix factorization) là một điển hình

> _ Nhóm giải thuật lọc trên nội dung (Content-based Filtering): Gợi ý

các item dựa vào hồ sơ (profiles) của người dùng hoặc dựa vào nội dung/thuộc tính

(attributes) của những item tương tự như item mà người dùng đã chọn trong quá khứ.

> Nhóm lai ghép: Kết hợp cả 2 cách trên.

Một trong những khuyết điểm của phương pháp lọc theo nội dung là khó khăntrong việc thu thập thông tin, trong khi phần lớn các mô hình dựa trên lọc cộng tác chỉcần 3 thông tin (user id, item id, feedback) là có thé hoạt động tốt Do vậy khuynh hướng

hiện nay đa phần các nhà nghiên cứu thiên về nhóm lọc cộng tác.

Sau đây là tóm tắt các kỹ thuật thông dụng và nổi trội (state-ofthe-art) trong hệ

được xác định trước khi thực hiện thuật toán.

2.5.1.1 Phương pháp thực hiện

Thông thường, có hai cách tiếp cận của lọc cộng tác theo mô hình K láng giềng: hệ

dựa trên người dùng (User_KNN) - tức dự đoán dựa trên sự tương tự giữa các người

dùng và hệ dựa trên sản phẩm (Item_KNN) — dự đoán dựa trên sự tương tự giữa các sảnphẩm Hệ dựa trên người dùng (User_KNN) xác định sự tương tự giữa hai người dùng

thông qua việc so sánh các đánh giá của họ trên cùng sản phẩm, sau đó dự đoán đánh giá

sản phẩm i bởi người dùng u, hay chính là đánh giá trung bình của những người dùng

tương tự với người dùng + Có nhiều phương pháp tính toán mức độ tương đồng của các cặp users/items Hai phương pháp phổ biến nhất là độ tương quan Pearson đã được đề

cập ở công thức (2.5) và độ tương quan Cosin (2.6).

21

Trang 30

Từ độ tương đồng của các user đã xác định trên ta tính giá trị dự đoán cho user uđối với item ¡ theo công thức:

ˆ Lweky sim(u,u') Tyr

Trong đó:

fụ¡: giá trị dự đoán của người dùng u đối với item I

yi: giá trị đánh giá của user (w' € K,,) trong tập K người dùng tương đồng

nhất với u.

sim(u, w’): độ tương đồng Của user 1 với tứ.

Ngoài ra có thể dựa vào độ tương tự của các item để đưa ra dự đoán đánh giá của

các user trong hệ thống đối với item theo công thức:

LF Lien, SMG 1) Tur (2.12)

“ Yivex; |simG@i)|

Trong đó:

Fy: giá trị dự đoán của người dùng u đối với item i.

Tụ: giá trị đánh giá của user u đối với item i’ (” € K,) trong tập K items tươngđồng nhất với i

sim(i, i’): độ tương đồng của item i với

2.5.1.2 Thuật toán

Phương pháp User kNN dé dự đoán đánh giá của người dùng + trên sản phẩm iđược biểu diễn bằng ngôn ngữ giả như sau [25]:

1: procedure USERKNN-CF (7, , r, Dtrein)

for u=1 to Ndo

Trang 31

Kỹ thuật phân rã ma trận là việc chia một ma trận lớn R thành hai ma trận có kích

thước nhỏ hơn P và Q, sao cho ta có thể xây dựng lại R từ hai ma trận nhỏ hơn này càngchính xác càng tốt, nghĩa là R ~ P.Q” [7], được minh họa như trong hình bên dưới:

mm items kfactors

1 3 AL m

—————

2 4 #a | fax Yar | Và | Vị | Váa | Yim

Š 1tiš * «| ® Tia |v [vẽ | vee | vam || F898

Hình 2.3 Phân rã ma tran R thành hai ma trận P va QT

Trong đó:

Ma trận R(mxn) hay còn gọi là Rating matrix là một ma trận mà ở đó mỗi dòng

là một user, mỗi cột là một item, mỗi ô là một giá trị đánh giá đại điện cho mức độ “thích”(preference) của user dành cho item tương ứng Các ô trống là người dùng chưa có đánh

giá trên item đó Thông thường đối với hệ thống lọc cộng tác số lượng user và item là rất lớn, tuy vậy mỗi user chỉ đưa ra một số rất ít các đánh giá của mình trong tập các item Điều nay làm cho ma trận đầu vào r,; có số các đánh giá r„¡ rất it, do vậy sẽ tạo

nên một ma trận cực thưa (sparse matrix) Chức năng của RS là dựa vào các giá trị đã có

23

Trang 32

trong ma trận đánh giá dé tìm được các giá trị của các 6 trống hay dự đoán được các giátrị rating của user cho từng item trong hệ thống.

Ma trận P(n x k) với P € RỈUlXX là một ma trận mà mỗi dòng là một vectorbao gồm K nhân té tiềm ẩn (latent factors) mô tả người dùng u

Ma trận Q(k xX m) với Q € RỈ!*F là một ma trận mà mỗi dòng là một vectorbao gồm K nhân té tiềm ẩn (latent factors) mô tả cho item i (thông thường K « |U| và

K |I|) Trong hình bên trên QT là ma trận chuyển vị (transpose) của ma trận Q

Gọi p„yuà q¡„ là các phan tử tương ứng của hai ma trận P và Q Khi đó xếp hạng

của người dùng u trên mục tin i được dự đoán theo công thức:

K

đụ = Pade = (P.O a 2.13)

k=1

2.5.2.1 Phương pháp thực hiện:

Van dé then chốt của kỹ thuật MF là làm sao dé tìm được giá trị của hai tham số P

va Hai tham số này có được bằng cách tối ưu hóa hàm mục tiêu Hàm mục tiêu thôngdụng nhất là Root Mean Squared Error (RMSE) được biểu diễn như sau:

2 K

OW 2.5 tn Tỳ = @$7 (+ _) Pats) (2.14)

kal

(ui) € Dan (u.i) € Drain

Trong đó: D!7#? là tập dữ liệu huấn luyện.

Một trong những kỹ thuật có thể dùng đề tối ưu hóa hàm mục tiêu là kỹ thuật stochastic gradient descent [Bottou, 2004; Bell & Koren, 2007] Đầu tiên ta khởi tạo 2

ma trận P và Q với các giá trị ngẫu nhiên, sau đó từng bước cập nhật các giá trị củachúng cho đến khi hàm mục tiêu hội tụ về giá trị nhỏ nhất (convergence) Đề làm đượcđiều đó ta phải biết nên tăng hay giảm giá trị của P và Q qua mỗi lần cập nhật Do vậy

phải tìm đạo hàm của chúng theo công thức:

Trang 33

LAI TÊN, _3

gag Om = ~~ ta) Pa (2.16) Sau khi tim đạo hàm, các phan tử của P va Q sẽ được cập nhật ngược hướng với

giá trị đạo hàm [Tackacs et al.,2009] qua công thức:

prew = paid _ a0" - = Pl + 28 - (rụ — Pui) Un (2.17)

Với hàm mục tiêu mới ta sẽ cập nhật lại giá tri py, và Giz bằng công thức:

Pu” = pc + 8 (2Œ — Ÿui)4ịy — A Pae (220)

qe” = phe" + 8 (2Œ — Fui)Pure — A a9") (2.21)

giá trị dự đoán cho u vai này, như ở các dòng 5-9 Sau đó cập nhật các giá trị của P và

25

Trang 34

Q tương ứng của u và i như ở đòng 11-14.

1: procedure Matrix_Factorization(D:zai, K, B, A, Iter)

// P[IU|I][K] và O[|ITI][K] là 2 ma trận nhân tố tiém ẩn cần tìm

2: P := N(0, Ø2) // Khởi tạo ngẫu nhiên theo phân phối chuẩn

3: O := N(0,02) ) // Khởi tạo ngẫu nhiên theo phân phối chuẩn

4: for (iter:=1; iter <= Iter * |DTMTM|; iter++)

5: Chon ngẫu nhiên một dòng (u, i, rei) từ D?rain

12: P[u][k] := P[u][k] + B * (eu * O[i][k] - A * Pfu] [k])

13: O[i][k] := O[i][k] + B * (eu * Plu] [k] - A * O[i][k]) 14: end for

15: Break nêu đã hội tụ

ẩn thì phương pháp phân rã ma trận hiện dang là một state-of-the-art trong hệ thông gợi

ý Hầu hết các tiếp cận chung nhất của CF là dựa trên mô hình láng giềng (Neighborhood Models), mô hình user-user (user-based CF) Bên cạnh đó, một tiếp cận trong dựa trên

độ tương tự giữa các phan tử (item-based CF) với quy mô tập dữ liệu rất lớn và đưa racác đề xuất chat lượng cao trong thời gian thực Mô hình nhân tố tiềm an có dạng tương

tự như phương pháp phân tích giá trị don (Singular Value Decomposition), chuyên đồi

Ngày đăng: 24/11/2024, 14:51

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w