Tải bản đầy đủ (.pdf) (50 trang)

Giải quyết vấn đề phân phối trong hệ thống khuyến nghị dựa trên đặc trưng nội dung của đối tượng

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 (1.83 MB, 50 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN VĂN ĐẠT

GIẢI QUYẾT VẤN ĐỀ PHÂN PHỐI TRONG HỆ
THỐNG KHUYẾN NGHỊ DỰA TRÊN ĐẶC
TRƯNG NỘI DUNG CỦA ĐỐI TƯỢNG

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

HÀ NỘI - 2021


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN VĂN ĐẠT

GIẢI QUYẾT VẤN ĐỀ PHÂN PHỐI TRONG HỆ
THỐNG KHUYẾN NGHỊ DỰA TRÊN ĐẶC
TRƯNG NỘI DUNG CỦA ĐỐI TƯỢNG
Ngành: Công nghệ thơng tin
Chun ngành: Khoa học máy tính
Mã số: 8480101.01

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS. TS. Lê Thanh Hà
TS. Ngô Thị Duyên


HÀ NỘI - 2021


i

MỤC LỤC
MỤC LỤC ........................................................................................................ i
LỜI CẢM ƠN................................................................................................. iii
LỜI CAM ĐOAN ........................................................................................... iv
TĨM TẮT........................................................................................................ v
DANH MỤC HÌNH VẼ ................................................................................. vi
DANH MỤC BẢNG BIỂU ........................................................................... vii
DANH MỤC VIẾT TẮT .............................................................................. viii
Chương 1. Giới thiệu.................................................................................... 1
1.1. Đặt vấn đề .......................................................................................... 1
1.2. Bài toán .............................................................................................. 4
1.3. Đóng góp của luận văn ...................................................................... 5
1.4. Cấu trúc luận văn.............................................................................. 6
Chương 2. Kiến thức liên quan .................................................................... 7
2.1. Hệ thống khuyến nghị ....................................................................... 7
2.2. Thuật toán khuyến nghị CFRS ......................................................... 8
2.3. Thành phần thuật toán khuyến nghị CB ......................................... 9
2.3.1 Thuật toán so sánh độ tương đồng ............................................... 9
2.3.2
2.3.3

Gaussian Mixture Model (GMM) .............................................. 10
Word Embeddings (WE) ........................................................... 12

2.4. Thuật toán gợi ý dựa trên nội dung ............................................... 15

2.5. Kết chương ...................................................................................... 18
Chương 3. Đề xuất thuật toán khuyến nghị phân phối CB ....................... 19
3.1. Dữ liệu ............................................................................................. 19
3.1.1 Giới thiệu chung........................................................................ 19
3.1.2
3.1.3

Đặc tính..................................................................................... 19
Nhiễu ........................................................................................ 21


ii

3.2. Thuật toán khuyến nghị CB được đề xuất ..................................... 22
3.2.1 Tiền xử lý dữ liệu ...................................................................... 23
3.2.2 Phân cụm .................................................................................. 24
3.2.3

Thuật toán sắp xếp .................................................................... 25

3.2.4

Giả mã ...................................................................................... 27

3.3. Khả năng ứng dụng trong thực tế .................................................. 28
3.4. Kết chương ...................................................................................... 28
Chương 4. Thực nghiệm ............................................................................ 29
4.1. Môi trường thực nghiệm ................................................................. 29
4.2. Phương pháp đánh giá .................................................................... 29
4.3. Kịch bản thực nghiệm ..................................................................... 30

4.3.1 BOW + GFF.............................................................................. 30
4.3.2 GMM + ED ............................................................................... 30
4.3.3 W2V + GFF .............................................................................. 31
4.3.4

GMM + GFF ............................................................................. 32

4.4. Kết quả thực nghiệm ....................................................................... 32
4.5. Kết chương ...................................................................................... 36
KẾT LUẬN ................................................................................................... 37
TÀI LIỆU THAM KHẢO ............................................................................. 38


iii

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, PGS.
TS. Lê Thanh Hà và cô giáo, TS. Ngô Thị Duyên – 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 hồ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ệ, ĐHQGHN đã tận tình đào tạo, cung cấp cho tơi những
kiến thức vô cùng quý giá và đã tạo điều kiện tốt nhất cho tơi trong suốt q trình
học tập, nghiên cứu tại trường.
Đồng thời tôi xin cảm ơn tất cả những người thân u trong gia đình tơi cùng
tồn thể bạn bè, những người đã luôn giúp đỡ, động viên tơi những khi vấp phải
những khó khăn, bế tắc.
Cuối cùng, tôi xin chân thành cảm ơn các bạn học cùng khóa đã giúp đỡ, động
viên tơi trong học tập và nghiên cứu chương trình thạc sĩ tại Đại học Cơng nghệ,
ĐHQGHN.



iv

LỜI CAM ĐOAN
Tôi xin cam đoan rằng luận văn thạc sĩ công nghệ thông tin “Giải quyết vấn đề
phân phối trong hệ thống khuyến nghị dựa trên đặc trưng nội dung của đối tượng”
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 tồ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 hồn tồ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 18 tháng 9 năm 2021.

…..


v

TĨM TẮT
Ngày nay, các hệ thống khuyến nghị được tích hợp vào hầu hết các trang thương
mại điện tử giúp tăng cường hiệu suất bán hàng cho các doanh nghiệp bằng cách hỗ
trợ người tiêu dùng tìm được những sản phẩm phù hợp, chất lượng nhất. Hiện nay,
có khá nhiều thuật toán khuyến nghị tốt và hiệu quả, tuy nhiên, thuật toán khuyến
nghị dựa trên nội dung (Content-based - CB) vẫn là một thuật toán quan trọng, phổ
biến nhất được sử dụng trong giai đoạn đầu của các dự án. Tuy nhiên, trong một số
trường hợp, tính chất thuộc tính khác nhau, kết quả gợi ý từ thuật toán CB vẫn chưa
đáp ứng được độ chính xác cao khi bài toán liên quan đến độ tương tự về phân phối
giữa các thành phần thuộc tính của đối tượng. Thêm nữa, các phương pháp để đo

mức độ tương đồng giữa các sản phẩm cũng là một vấn đề quan trọng ảnh hưởng đến
độ chính xác của các thuật tốn CB trong các bài toán về độ tương đồng giữa các
phân phối. Để giải quyết hai vấn đề này, luận văn đề xuất một thuật tốn CB mới dựa
trên mơ hình hỗn hợp Gaussian (Gaussian Mixture Model - GMM) giúp tăng độ chính
xác cho kết quả đầu ra. Mơ hình đề xuất được thực nghiệm trên một bộ dữ liệu về
rượu bao gồm 6 chỉ số về mùi vị, dữ liệu tag mô tả về vị của rượu và một số trường
thông tin khác. So sánh kết quả mơ hình đề xuất với 3 thuật toán phổ biến khác trên
cùng bộ dữ liệu trên, kết quả thực nghiệm thu được không chỉ đạt được độ chính xác
tốt hơn, mà thời gian xử lý của thuật toán cũng đáp ứng được điều kiện trong việc áp
dụng vào các ứng dụng thực tế. Cho đến thời điểm hiện tại, thuật toán đề xuất trong
luận văn đã được trình bày trong 2 cơng bố quốc tế (1 tại tạp chí uy tín Applied
Intelligence (Q1, IF:5.22) và 1 bài báo tại hội nghị ICCCI (C, IF:1.8) – oral paper)
sau những cải tiến.

Từ khóa: Hệ thống khuyến nghị, hệ thống khuyến nghị dựa trên nội dung, mô hình
hỗn hợp Gaussian, hệ thống khuyến nghị phân phối, hàm trọng số Gaussian Filter.


vi

DANH MỤC HÌNH VẼ
Hình 1.1 Kiến trúc chung hệ thống khuyến nghị dựa trên thuật tốn contentbased ...................................................................................................................... 1
Hình 1.2 Ví dụ kết quả gợi ý sử dụng cơng thức khoảng cách và phân phối cho
hệ thống khuyến nghị dựa trên phân phối thuộc tính............................................... 3
Hình 2.1 Minh hoạ hệ thống khuyến nghị ......................................................... 8
Hình 2.2 Mơ hình hỗn hợp Gaussian .............................................................. 12
Hình 2.3 Minh hoạ phương pháp one-hot vector ............................................ 12
Hình 2.4 Minh hoạ phương pháp Count-based ............................................... 13
Hình 2.5 Mơ phỏng ngữ cảnh của từ khố và cửa sổ L-sized .......................... 14
Hình 2.6 Mơ phỏng mơ hình hoạt động của W2V ........................................... 14

Hình 2.7 Mơ hình hoạt động của thuật tốn gợi ý Phim ................................. 17
Hình 3.1 Ví dụ về sản phẩm rượu Sake........................................................... 20
Hình 3.2 Trực quan hố 6 chỉ số mùi vị.......................................................... 20
Hình 3.3 Ví dụ về sản phẩm rượu Sake có thuộc tính mang giá trị rỗng ......... 21
Hình 3.4 Mơ hình hoạt động thuật tốn .......................................................... 22
Hình 3.5 Trực quan hố GMM ....................................................................... 25
Hình 4.1 MSE áp dụng BOW+GFF, W2V+GFF ............................................ 32
Hình 4.2 MSE áp dụng GMM+GFF và GMM+ED ........................................ 33
Hình 4.3 Biểu đồ thống kê mức độ tương đồng kết quả với sakenowa............. 33
Hình 4.4 MSE ảnh hưởng bởi số cụm ............................................................. 34
Hình 4.5 MSE ảnh hưởng bởi số phần tử xung quanh .................................... 35


vii

DANH MỤC BẢNG BIỂU
Bảng 3.1 Bảng thống kê tỉ lệ rỗng với một số thuộc tính ................................. 21
Bảng 4.1 Thời gian xử lý trên mỗi truy vấn .................................................... 35


viii

DANH MỤC VIẾT TẮT
Từ khoá

STT

Từ viết tắt

1


Content-Based

CB

2

Content-Based Recommendation System

CBRS

3

Collaborative Filtering

CF

4

Collaborative Filtering Recommendation

CFRS

System
5

Gaussian Mixture Model

GMM


6

Gaussian Filter Function

GFF

7

Word2Vec

W2V

8

Bag-of-Word

BOW

9

Euclidean Distance

ED

10

Levenshtein Distance

LD


11

K-nearest neighbors

KNN

12

Recommendation System

RS

13

Knowledge-Based

KB

14

Item-Based Collaborative Filtering

IBCF

15

Mel-frequency Cepstral Coefficient

MFCC


16

Term Frequency – Inverse Document

TF-IDF

Frequency
17

Word Embedding

WE

18

Knowledge-Based Recommendation System

KBRS


1

Chương 1. Giới thiệu
1.1. Đặt vấn đề
Với sự phổ biến của mạng Internet trong những năm gần đây, công nghệ đã mang
lại cơ hội rất lớn trong việc phục vụ tự động hoá đến cuộc sống của con người. Mặt
khác, sự đa dạng và dư thừa thông tin, nội dung trên các website, thư viện số là yếu
tố dẫn đến sự ngày càng khó khăn trong việc tìm kiếm thơng tin thực sự cần thiết cho
mỗi nhu cầu cá nhân [7, 29]. Hệ thống khuyến nghị (Recommendation Systems - RS)
là một giải pháp hiệu quả để giải quyết vấn đề này mà không cần người dùng cung

cấp các yêu cầu cụ thể [8]. Thay vào đó, các hệ thống khuyến nghị có thể tự động
phân tích nội dung các thuộc tính của các sản phẩm, đối tượng để có thể tự động gợi
ý ra những thơng tin làm hài lịng những nhu cầu và sở thích của người dùng. Cho
đến nay, các thuật toán áp dụng cho hệ thống khuyến nghị khá đa dạng, chúng có thể
được nhóm thành 3 cách tiếp cận chính [22] như sau: CB [32], Collaborative
Filtering (CF) [35] và Knowledge-Based (KB) [27]. Kiến trúc khuyến nghị chung
cho các thuật tốn CB được hiển thị trong hình 1.1. Ngày nay, làm thế nào để xây
dựng và thiết kế một thuật toán khuyến nghị đã trở thành các chủ đề tập trung cần
được nghiên cứu.

Hình 1.1 Kiến trúc chung hệ thống khuyến nghị dựa trên thuật toán content-based


2

Hình 1.1 đưa ra các thành phần chính của một thuật tốn khuyến nghị bao gồm:
Nguồn thơng tin, Bộ biểu diễn sản phẩm, Bộ lọc sản phẩm, Người dùng và Bộ lọc hồ
sơ người dùng. Mỗi thành phần đóng một vai trò quan trọng và cố định trong các hệ
thống khuyến nghị CB. Trong đó, đối với Tập hồ sơ người dùng và Bộ lọc hồ sơ
người dùng, 2 thành phần này có thể tồn tại hoặc khơng tồn tại trong các hệ thống,
thuật toán khuyến nghị CB tuỳ thuộc vào nguồn dữ liệu được thu thập, trong khi các
thành phần cịn lại là bắt buộc. Do đó các hệ thống khuyến nghị CB sẽ được chia
thành 2 cách thức hoạt động chính:
 Trường hợp khơng có hồ sơ người dùng trong bộ dữ liệu (TH1): Nguồn thông
tin (bộ dữ liệu) sẽ được đưa qua một thuật tốn phân tích nội dung để hình
thành một Bộ biểu diễn cho các sản phẩm, từ đó khi có một sản phẩm được
truy vấn để trả về các sản phẩm tương tự với nó, Bộ lọc sản phẩm sẽ phân
tích các điểm tương đồng của các sản phẩm khác trong Bộ biểu diễn sản phẩm
để từ đó trả về một số sản phẩm có nét tương đồng nhất so với sản phẩm đang
được xem.

 Trường hợp có hồ sơ người dùng trong bộ dữ liệu (TH2): Tương tự với 2
bước đầu của TH1 để thu được Bộ biểu diễn sản phẩm, tuy nhiên hệ thống sẽ
không trả về các sản phẩm tương đồng của sản phẩm truy vấn ln, mà thay
vào đó, nó sẽ cần quan tâm đến kết quả phân tích từ Bộ lọc hồ sơ người dùng
đã được huấn luyện trước đó. Bộ hồ sơ người dùng sẽ sử dụng thơng tin đánh
giá từ Người dùng trên các sản phẩm mà họ quan tâm để hình thành lên khả
năng dự đốn sở thích cho mỗi người dùng. Từ đó, từ biểu diễn của sản phẩm
truy vấn, hệ thống sẽ kết hợp kết quả phân tích từ Bộ biểu diễn sản phẩm và
Bộ lọc hồ sơ người dùng để cho ra các kết quả cuối cùng.
Thuật toán CB trong hệ thống khuyến nghị được sử dụng rộng rãi bởi tính đơn
giản và hiệu quả của nó trong thời kỳ đầu của bất kì dự án nào. Theo Pasquale Lops
và cộng sự [1] đã nhấn mạnh rằng: có rất nhiều lợi ích thu được từ các thuật toán CB
so với các thuật toán cùng loại CF như là: tính độc lập giữa người dùng, minh bạch
hay vấn đề cold-start [37] khi thêm một sản phẩm mới. Bên cạnh đó, thuật tốn này
vẫn cịn tồn tại những mặt hạn chế như: giới hạn về mặt nội dung cho việc phân tích,
tính chun mơn hố, thiếu dữ liệu đánh giá từ người dùng, hay thiếu độ chính xác
cần thiết cho một vài bài tốn đặc biệt.
Phân tích một vài thuật tốn đã cơng bố, Hangyu và cộng sự [3] đã sử dụng GMM
[9] cho thuật toán khuyến nghị CF để giải quyết vấn đề thưa thớt dữ liệu đánh giá từ
phía người dùng. Chen và cộng sự [4] đã đề xuất một mơ hình lai kết hợp giữa GMM


3

với thuật toán khuyến nghị IBCF để dự đoán ra dữ liệu đánh giá của người dùng cho
các sản phẩm giúp làm tăng độ chính xác trên các hệ thống khuyến nghị. Rui Chen
và cộng sự [5] tận dụng GMM với ma trận tăng cường factorization [39] giúp làm
giảm đi tác động tiêu cực của dữ liệu rời rạc nhiều chiều. Trong bối cảnh của các bài
toán gợi ý bài hát, Yoshii và cộng sự [6] đã đề xuất một hệ thống khuyến nghị lai,
bằng việc kết hợp CF sử dụng dữ liệu người dùng đánh giá và các giá trị thuộc tính

CB được mơ hình hố bằng GMM dựa trên MFCC [40] qua việc tận dụng một mạng
Bayesian. Tuy nhiên, có một điểm cần lưu ý đó là các hệ thống lai hoặc hệ thống CF
yêu cầu lịch sử hành vi của người dùng để thiết kế và hoạt động hiệu quả, điều mà
các hệ thống CB có thể giải quyết mà không cần đến các loại dữ liệu dạng này. Đặc
biệt, các thuật toán CB dựa trên phân phối các thuộc tính của sản phẩm cho đến nay
vẫn chưa thực sự được giải quyết. Một ví dụ điển hình của việc sử dụng CB giúp tự
động tìm kiếm ra các sản phẩm tương đồng dựa trên phân phối và khoảng cách được
biểu diễn ở hình 1.2.

Hình 1.2 Ví dụ kết quả gợi ý sử dụng công thức khoảng cách và phân phối cho hệ thống
khuyến nghị dựa trên phân phối thuộc tính

Đây là hai biểu đồ cột biểu thị sự sai khác giữa 6 thuộc tính, gọi là {f1, f2, f3, f4,
f5, f6} trong bộ dữ liệu thực nghiệm được sử dụng trong luận văn (được trình bày cụ
thể ở các chương 3), thuộc về 2 loại mặt hàng khác nhau (mặt hàng truy vấn: màu
xanh: sản phẩm 1), mặt hàng gợi ý (màu cam: sản phẩm 2) được gợi ý bằng việc sử
dụng các công thức so sánh độ tương đồng, khoảng cách (đồ thị trên) và phân phối


4

(đồ thị dưới), trục dọc trong đồ thị là giá trị của các chỉ số từ {f1…f6} tương ứng của
các mặt hàng. Từ đó, giả thuyết ta có các bài toán khuyến nghị dựa trên xác suất phân
phối của các thuộc tính khơng thể được giải quyết bằng những phương pháp thơng
thường.
Ngồi ra, trong một số trường hợp, các thơng tin mô tả sản phẩm, mặt hàng là
chưa đáng tin cậy, chưa chính xác được tạo ra từ nhiều nguồn, hoặc sai sót trong q
trình nhập liệu. Nếu sử dụng các trường thông tin này làm đặc trưng trong thuật tốn
khuyến nghị CB có thể gây ra ảnh hưởng xấu tới độ chính xác của tập kết quả trả về
[7]. Một vấn đề nan giải khác là hiệu năng xử lý của thuật toán khuyến nghị hay tốc

độ xử lý vẫn chưa đáp ứng được với các bài toán/hệ thống thực trong điều kiện thực
tế.
Do đó, dựa trên những vấn đề còn tồn tại đã được nêu trên, luận văn tập trung
phân tích nhược điểm của các thuật tốn CB phổ biến hiện tại đối với dạng bài toán
gợi ý sử dụng đặc trưng phân phối, đồng thời tìm ra cơng thức phù hợp để xây dựng
một thuật tốn mới giúp giải quyết các vấn đề chưa được công bố trước đây.
1.2. Bài toán
Luận văn hướng đến việc xây dựng một thuật toán khuyến nghị dựa trên nội dung
mới nhằm khắc phục những nhược điểm của các thuật toán CB đã cơng bố trước đó
đối với dạng đặc trưng phân phối. Nhận đầu vào là bộ sản phẩm có đặc trưng chính
là các phân phối thuộc tính, thuật tốn cần phát triển một Bộ biểu diễn đặc trưng
thích hợp có khả năng chọn ra các đặc trưng tốt nhất làm tiền đề được sử dụng trong
các thuật toán cốt lõi trong Bộ lọc sản phẩm. Các thuật toán này cần tận dụng và phát
huy tối đa được các đặc điểm đặc biệt, quan trọng của đặc trưng phân phối so với các
loại đặc trưng khác như văn bản, số nguyên, dữ liệu rời rạc, …
Thuật toán CB mới sẽ được xây dựng để hướng đến các mục tiêu sau.

i. Xây dựng thuật toán khuyến nghị CB dựa trên phân phối thuộc tính của sản phẩm
Thuật tốn khuyến nghị CB thơng thường được phát triển dựa trên các thuật toán
so khớp thuộc tính của sản phẩm; hoặc được điều phối bởi một thuật toán dự đoán
giá trị đánh giá sản phẩm tính tốn dựa trên các giá trị người dùng đánh giá trên một
vài sản phẩm khác trước đó. Nhìn chung, các thuật tốn CB có tính chất độc lập gợi
ý người dùng chưa đạt được yêu cầu về chất lượng gợi ý trên các sản phẩm được dựa
chính trên phân phối các thuộc tính, và hiện nay cũng chưa có nghiên cứu nào quan
tâm đến vấn đề này. Do đó, việc đề xuất nghiên cứu thuật toán cho các hệ thống


5

khuyến nghị có khả năng tận dụng được các mơ hình phân phối hiện tại để giải quyết

loại dữ liệu này là rất cần thiết trong bối cảnh cảnh nhu cầu lớn và phát triển của các
trang thương mại điện tử hiện nay.

ii. Hiệu suất tốt trong hệ thống khuyến nghị CB cả về độ chính xác và thời gian xử
lý cho các ứng dụng thực tế
Khả năng xử lý thời gian thực (real-time response) đóng một vai trị vơ cùng
quan trọng đối với các hệ thống khuyến nghị. Điều đó được phản ánh thơng qua việc
ngay sau khi người dùng tương tác với hệ thống, kết quả gợi ý được yêu cầu hiển thị
trong khoảng thời gian ngắn, điều này giúp cải thiện trải nghiệm người dùng cũng
như năng suất bán hàng.
Việc phân tích ưu và nhược điểm của các thuật toán CB hiện tại, cùng các thuật
toán chung (các thuật toán học máy, các thuật toán xác xuất hoặc học sâu (Deep
Learning), …) đối với dạng đặc trưng phân phối trên các khía cạnh như độ chính xác,
hiệu năng, sẽ giúp có cái nhìn tồn cảnh về bài toán cần giải quyết.

iii. Hiệu quả của thuật toán so với các thuật tốn CB đã cơng bố
Một trong những việc làm cần thiết để chứng minh tính hiệu quả của thuật tốn
đề xuất là so sánh nó với các thuật toán phổ biến, hiệu quả, đã được sử dụng rộng rãi
trước đó. Trên cùng bộ một dữ liệu chuẩn, sử dụng một phương pháp đánh giá chuẩn,
luận văn sẽ thực nghiệm và so sánh thuật toán đề xuất cùng với 3 thuật toán CB và
kết quả khuyến nghị từ một hệ thống lớn, uy tín khác (được nêu rõ ở Chương 4 –
phần thực nghiệm) để chứng minh tính hiệu quả, đúng đắn của thuật toán được đề
xuất trong luận văn.
1.3. Đóng góp của luận văn
Luận văn đã xây dựng được một thuật tốn khuyến nghị CB mới có khả năng tận
dụng được đặc trưng phân phối dữ liệu, đánh dấu bước đi đầu tiên trong việc giải
quyết các bài toán phân phối trong các hệ thống khuyến nghị CB hiện nay. Phân tích
cẩn thận, chuẩn xác các kết quả thực nghiệm đối với các thuật toán CB phổ biến đã
cơng bố, thuật tốn đề xuất đã đạt được các kết quả:
 Độ chính xác cao với kết quả gợi ý đầu ra, khoảng thời gian để huấn luyện

mô hình nhỏ, và tốc độ xử lý nhanh. Thêm nữa, thuật tốn cịn có khả năng


6

ứng dụng cao đối với các bộ dữ liệu khác có cùng đặc trưng thuộc tính đối
với bộ dữ liệu thực nghiệm.
 Thuật toán đề xuất trong luận văn hiện đã được trình bày trong 2 cơng bố
khoa học quốc tế:
o 1 bài báo tại ICCCI – 2020 (h-index: 20, C, IF: 1.8) được công nhận
là Oral paper. Tên bài báo: “Robust Content-based Recommendation
Distribution System with Gaussian Mixture Model”, các tác giả: Đạt
Nguyễn Văn, Văn Toàn Phạm, Tạ Minh Thanh, xuất bản tại: ICCCI
2020 - Advances In Computational Collective Intelligence - Springer.
Đường
dẫn
của
bài
báo
đã
cơng
bố:
/>o 1 bài báo tại tạp chí Applied Intelligence – 2021 (h-index: 66, Q1,
IF: 5.22). Tên bài báo: “Solving Distribution Problems in Contentbased Recommendation System Wtih Gaussian Mixture Model”, các
tác giả: Đạt Nguyễn Văn, Văn Toàn Phạm, Tạ Minh Thanh, xuất bản
tại: Applied Intelligence 2021 - Springer. Đường dẫn của bài báo đã
công
bố:
/>1.4. Cấu trúc luận văn
Luận văn được cấu trúc như sau:

- Trong Chương 2, các kiến thức liên quan sẽ được giới thiệu bao gồm các thành
phần thuật tốn chung trong các thuật tốn CB. Ngồi ra, luận văn sẽ trình bày, phân
tích ưu và nhược điểm của các thuật tốn CB phổ biến đã được cơng bố trước đó đối
với bài tốn gợi ý dựa trên phân phối thuộc tính.
- Trong Chương 3, để giúp người đọc hiểu hơn về thuật toán đề xuất, luận văn
cung cấp chi tiết các thông tin đặc trưng của bộ dữ liệu thực nghiệm, và trình bày chi
tiết các bước thuật tốn trên bộ dữ liệu này từ mơ hình hoạt động tổng quát cho đến
từng thành phần thuật toán trong đó.
- Thực nghiệm và đánh giá được trình bày ở Chương 4, trong đó các phần mở
đầu Chương sẽ bao gồm môi trường thực nghiệm, phương pháp đánh giá được sử
dụng. Kịch bản thực nghiệm và các kết quả phân tích, so sánh giữa các thuật tốn CB
sẽ được trình bày ở các phần tiếp theo.
- Cuối cùng, kết luận và các hướng nghiên cứu tiếp theo được tổng kết ở Chương
5.


7

Chương 2. Kiến thức liên quan
Trong chương 2, luận văn sẽ trình bày một số kỹ thuật liên quan cần được sử
dụng để thực hiện thuật toán đề xuất cũng như các kiến thức chung được sử dụng
trong các hệ thống khuyến nghị. Ngồi ra, một số cơng bố cho các thuật toán CB
cũng sẽ được giới thiệu và phân tích. Cấu trúc Chương 2 gồm có: Giới thiệu chung
về hệ thống khuyến nghị được trình bày ở mục 2.1, 2.2 luận văn mô tả về hệ thống
khuyến nghị CFRS và ở 2.3 là các kiến thức về CBRS, các kỹ thuật được sử dụng
trong CBRS, đồng thời phân tích một số công bố CBRS.
2.1. Hệ thống khuyến nghị
Hệ thống khuyến nghị (Recommendation System – RS) được nhắc đến như một
trợ thủ đắc lực cho cả doanh nghiệp và người dùng trong thời đại của công nghệ và
Internet lên ngôi. Với việc dễ dàng online ở bất cứ đâu chỉ với một thiết bị thơng

minh có khả năng kết nối Internet, người dùng có thể dễ dàng tiếp cận với bất kỳ nội
dung nào họ muốn, được tăng cường các thông tin liên quan với sự trợ giúp của các
hệ thống gợi ý. Hệ thống khuyến nghị giúp tự động gợi ý, đưa ra các nội dung liên
quan cho người dùng dựa trên thông tin mà họ đã hoặc đang xem mà không cần họ
phải cung cấp thêm bất kỳ một dữ liệu nào khác. Điển hình, chúng ta có thể thấy gợi
ý các video trên Youtube, bạn chung trên Facebook, hoặc các mặt hàng liên quan khi
mua sắm online trên Tiki, Lazada, Amazon…
RS có khả năng dựa trên hành vi của người dùng, hoặc dựa theo nội dung của
sản phẩm mà người dùng đang xem, hoặc kết hợp cả hành vi người dùng và nội dung
của sản phẩm để đưa ra những gợi ý về các sản phẩm mà người dùng muốn hoặc có
thể mua [8]. Qua đó giúp giải quyết bài tốn tìm kiếm thơng tin của khách hàng và
tăng năng suất bán hàng cho doanh nghiệp. RS được minh hoạ ở hình 2.1.
Trong Khoa học máy tính (hay Computer Science), RS là một nhánh con của
Khai phá dữ liệu (hay Data mining) và thuộc lĩnh vực lớn là Trí tuệ nhân tạo
(Artificial Intelligence), mặc dù khá đa dạng về thuật toán nhưng chúng thường được
chia thành ba nhóm thuật tốn chính [2]:
-

Hệ thống khuyến nghị dựa trên nội dung (Content-based Recommendation
System - CBRS)

-

Hệ thống khuyến nghị dựa trên lịch sử hành vi người dùng – hay hệ thống
khuyến nghị lọc cộng tác (Collaborative Filtering Recommendation System CFRS)


8

-


Hệ thống khuyến nghị Knowledge-Based Recommendation System - KBRS.

Hình 2.1 Minh hoạ hệ thống khuyến nghị

So với CFRS và HRS, CBRS tại thời điểm hiện tại được đánh giá là có độ chính
xác chưa tốt bằng và cũng chưa nhận được nhiều sự quan tâm từ các nhà nghiên cứu.
Tuy nhiên, CBRS lại đóng một vai trị cực kì quan trọng trong giai đoạn đầu của các
hệ thống gợi ý khi mà hệ thống chưa có bất kỳ một lượng thông tin nào từ hành vi
của người dùng, loại dữ liệu mà CFRS và HRS cần để xây dựng và phát triển. Để xây
dựng các hệ thống khuyến nghị, các nhà nghiên cứu/phát triển ngoài quan tâm đến
các yếu tố như nội dung thuật toán được sử dụng, các ý nghĩa của dữ liệu thơng qua
thống kê, mà cịn khả năng tương thích của thuật tốn đối với từng hệ thống cũng
như khả năng mở rộng trong tương lai…
2.2. Thuật tốn khuyến nghị CFRS
CFRS ln là một thuật tốn khuyến nghị vô cùng mạnh mẽ và nhận được nhiều
sự quan tâm từ các nhà nghiên cứu cũng như doanh nghiệp. Tư tưởng chính của các
thuật tốn CFRS là chúng quan tâm hơn đến tính cá nhân hố – hay cụ thể hơn là
chúng có khả năng phân biệt sở thích của từng cá nhân để từ đó đưa ra gợi ý sản
phẩm phù hợp cho từng khách hàng, hay thậm chí chúng cịn có khả năng đánh giá
một nhóm các người dùng có hành vi giống nhau để từ đó suy luận ra sở thích của
người này thơng qua hành vi của người khác.
Các thuật tốn CFRS khơng quan tâm đến các thuộc tính nội dung của sản phẩm,
do đó nó giải quyết được các hạn chế liên quan đến các thuật tốn Xử lý ngơn ngữ tự


9

nhiên (NLP) trong CBRS khi liên quan đến các kỹ thuật như xử lý từ đồng nghĩa, từ
gần nghĩa, viết tắt, sai chính tả, hoặc được viết đan xen giữa các ngơn ngữ khác nhau.

Hiện nay có một số thuật toán CFRS như Neighborhood-based Collaborative
Filtering (NBCF) hay Matrix Factorization Collaborative Filtering (MFCF), khi chỉ
nói CFRS ta ngầm hiểu rằng phương pháp được sử dụng là NBCF. Ý tưởng cơ bản
của NBCF là xác định mức độ quan tâm của một người dùng tới một sản phẩm dựa
trên một nhóm các người dùng khác gần giống với người dùng này. Việc gần giống
nhau giữa các người dùng có thể được xác định thông qua mức độ quan tâm của các
người dùng này tới các sản phẩm khác mà hệ thống đã biết. Ví dụ: A, B đều thích
phim điện ảnh Marvel, tức đều đánh giá bộ phim này 5 sao. Ta đã biết A thích bộ
phim Hồi Kết (End Game), vậy nhiều khả năng B cũng thích bộ phim này.
2.3. Thành phần thuật tốn khuyến nghị CB
Các kỹ thuật chính được sử dụng trong thuật toán khuyến nghị đề xuất gồm có:
thuật tốn so sánh độ tương đồng, Gaussian Mixture Model (GMM), Word
Embedding (WE).
2.3.1 Thuật toán so sánh độ tương đồng
Trong thuật tốn CB, cơng thức tính tốn mức độ tương đồng giữa các đối tượng
có ảnh hưởng trực tiếp đến độ chính xác của kết quả đầu ra. Một số công thức phổ
biến được liệt kê dưới đây:

i, Euclidean Distance (ED)
Đây là một trong những công thức phổ biến nhất dùng để đo độ tương đồng giữa
2 vectors bằng việc tính tốn căn bậc hai tổng bình phương khoảng cách của từng
phần tử tương ứng trong vector [11]:
𝑑(𝑝, 𝑞) =

2)(𝑝1

− 𝑞1)2 + (𝑝2 − 𝑞2)2 + ⋯ + (𝑝𝑛 − 𝑞𝑛)2
2

(2.1)


𝑛

= -.(𝑝$ − 𝑞$ )2
$

Trong đó p, q là 2 vectors tương ứng biểu diễn các thuộc tính của 2 sản phẩm
dưới dạng số.


10

ii, Cosine
Công thức đo độ tương đồng giữa hai vectors bằng việc tính tốn cosine góc giữa
2 vectors này [33].
𝑐𝑜𝑠𝑖𝑛𝑒(𝚤⃗ , 𝑗⃗ ) =

𝚤⃗ . 𝑗⃗

(2.2)

|𝚤⃗ |. |𝑗⃗ |
Giá trị của thước đo này được trả về trong khoảng [-1, 1], trong đó 𝚤⃗ , 𝑗⃗ là 2 vectors
tương ứng biểu diễn 2 sản phẩm khác nhau.

iii, Pearson
Hệ số tương quan pearson phản ánh mức độ tương quan tuyến tính giữa 2 vectors
[36].

iv, Jaccard

Độ tương đồng Jaccard thường được sử dụng để đo độ tương đồng và khác nhau
giữa 2 tập mẫu hữu hạn [31], được định nghĩa như sau:
|𝐴∩𝐵|
(2.3)
𝐽(𝐴, 𝐵) =
|𝐴| + |𝐵| − |𝐴 ∩ 𝐵|
Trong đó, A và B là 2 tập mẫu khác nhau.
2.3.2 Gaussian Mixture Model (GMM)
GMM là một hàm số được tổng hợp từ nhiều bộ Gaussians, được sử dụng để giải
quyết các bài toán liên quan đến dữ liệu ở cùng một tập chứa các phân phối khác
nhau [14]. Mỗi phân phối được định nghĩa bởi k ∊ {1...K}, trong đó K là số cụm của
bộ dữ liệu. Mỗi Gaussian k trong hỗn hợp này được tổng hợp từ các tham số sau:
(i) Giá trị trung bình μ định nghĩa trung tâm của cụm.
(ii) Hiệp phương sai Σ định nghĩa biên của cụm.
(iii) Giá trị xác suất 𝘢 định nghĩa mức độ lớn hay nhỏ của hàm Gaussian.
GMM được định nghĩa như sau:
𝑘

𝑝(𝑥) = . 𝘢$. 𝑁(𝑥|µ$, Σ$)
$&1

(2.4)


11

trong đó, 𝑁(𝑥|𝜇$, 𝛴$) là thành phần thứ i của mơ hình lai này, là hàm mật độ xác
suất của vector x có n chiều tuân theo phân phối Gaussian và có thể được định nghĩa
như sau:
𝑁(𝑥) =


1

(2.5)

𝑘

(2.6)

1
' (𝑥'𝜇)𝑇 ∑#$(𝑥 ' 𝜇)
𝑛
𝑛𝜀 2
(2𝜋)2 |Σ$|2


. 𝛼$ = 1
$&1

Giả sử rằng một tập mẫu D = {x1, x2, x3, ..., xm} tuân theo phân phối hỗn hợp
Gaussian, ta có thể sử dụng một biến ngẫu nhiên zj ∊ {1, 2, ..., k} để biểu diễn thành
phần hỗn hợp của mẫu xj, ở đó các giá trị của nó là khơng xác định. Ngồi ra, có thể
nhận ra rằng xác suất trước P(zj=i) của zj tương ứng với 𝛼i (i= 1,2,3, ..., k). Theo lý
thuyết Bayes [12], ta có thể thu được xác suất sau của zj được định nghĩa như sau:
𝑝K𝑧 − 𝑖M𝑥 N = 𝑃K𝑧j = 𝑖N. 𝑝K𝑥j M𝑧j = 𝑖N
j
j
𝑝K𝑥j N
=


(2.7)

𝛼$ . 𝑁(𝑥j |𝜇$ , 𝛴$ )
𝑁(𝑥j|𝜇𝑙, 𝛴𝑙)

∑𝑘𝑙&1 𝛼𝑙.

Trong công thức trên, p(zj = i|xj) biểu diễn xác suất sau của mẫu xj được sinh ra
từ thành phần hỗn hợp Gaussian thứ i. Giả sử 𝛾ij = {1,2,3,...,k} biểu diễn p(zj = i|xj).
Khi tham số mơ hình {(𝛼i, μi, Σi)|1 ≤ i ≤ k} trong cơng thức trên được tìm ra, các cụm
của mơ hình hỗn hợp Gaussian chia mẫu D thành k cụm C = {C1, C2, ..., Ck} [14], và
nhãn cụm 𝜆j của mỗi mẫu xj có thể được định nghĩa theo công thức sau:
𝝀j = 𝑎𝑟𝑔𝑚𝑎𝑥$∈1,2,2,…,𝑘𝛾j$

(2.8)

Dựa vào cơng thức, ta có thể đưa xj vào cụm C𝛌j. Tham số mơ hình này {(𝛼i, μi,
Σi)|1 ≤ i ≤ k} được giải quyết bởi thuật toán EM [13]. Một ví dụ về mơ hình hỗn hợp
Gaussian được hiển thị ở hình 2.2.


12

Hình 2.2 Mơ hình hỗn hợp Gaussian

2.3.3 Word Embeddings (WE)
Cách các mơ hình học máy quan sát và đánh giá dữ liệu không giống như cách
con người vẫn thường thực hiện. Chúng ta (con người) có cảm xúc và được học cách
sử dụng ngơn ngữ, do đó có thể cảm nhận được sắc thái từ và ngữ nghĩa của các câu,
đoạn văn trong các ngữ cảnh khác nhau. Tuy nhiên, các mơ hình học máy thì khơng

có khả năng đó, chúng cần các vector đặc trưng biểu diễn các từ khoá dưới dạng số
(số thực, số nguyên,…) để thực hiện các thuật tốn phân tích. Hiện nay có một số
phương pháp để từ dữ liệu văn bản, ta có thể biến đổi chúng thành các vector đặc
trưng cho từng từ khố, ví dụ như: One-hot vectors, phương pháp Count-based,
Word2Vec,…
2.3.3.1. One-hot vectors

Hình 2.3 Minh hoạ phương pháp one-hot vector
(Hình ảnh được tham khảo từ NLP-Course Lena-voita)


13

Đây là phương pháp đơn giản nhất trong các phương pháp được sử dụng để biểu
diễn các từ dưới dạng các vectors đặc trưng. Đối với phương pháp này, số chiều của
vector sẽ bằng với độ dài của số lượng từ khố, các giá trị trong mỗi vector sẽ có giá
trị là 0 hoặc 1, giá trị 1 tương ứng với từ khoá thứ i xuất hiện trong bộ từ khố và
ngược lại các vị trí khác sẽ có giá trị là 0. Hình 2.3 minh hoạ phương pháp one-hot
vector trên 3 từ khoá “Dog, Cat và Table”
Phương pháp này rất đơn giản, tuy nhiên nó lại có khá nhiều nhược điểm khi nó
chỉ quan tâm đến vị trí thay vì ngữ nghĩa của các từ khố và bối cảnh xung quanh nó.
Trong trường hợp bộ từ khố có số lượng lớn sẽ dẫn đến số chiều của vector là rất
lớn, do đó gây lên sự khơng hiệu quả trong q trình tính tốn.
2.3.3.2. Phương pháp Count-based

Hình 2.4 Minh hoạ phương pháp Count-based
(Hình ảnh được tham khảo từ NLP-Course Lena-voita)

Đây là một trong các phương pháp dựa trên ý tưởng biểu diễn đặc trưng từ khố
thơng qua các từ xung quanh nó trong các bối cảnh khác nhau. Nhiệm vụ của phương

pháp là cần xác định các bối cảnh ngữ nghĩa khác nhau để từ đó xây dựng lên ma
trận ngữ cảnh hay còn gọi là word-context matrix. Để xác định các bối cảnh này,
phương pháp cửa sổ L-sized (L-sized window) (Hình 2.5) thường được sử dụng,
chúng được định nghĩa là số lượng từ khoá xung quanh từ khoá trung tâm. Đối với
các phần tử trong ma trận ngữ cảnh, để tính tốn giá trị các phần tử này, có thể sử
dụng phương pháp đếm số lần xuất hiện từ khố đó trong mỗi ngữ cảnh. Hình 2.4
minh hoạ tổng quan phương pháp Count-based.
Phương pháp này tỏ ra hiệu quả hơn so với phương pháp One-hot vectors vì
chúng đã quan tâm đến ngữ nghĩa của từ khố. Tuy nhiên, vì số lượng ngữ cảnh cho


14

tồn bộ từ khố là rất lớn do đó ma trận ngữ cảnh sau khi được tính tốn sẽ có số
chiều cũng sẽ rất lớn. Để sử dụng được phương pháp này, ma trận biểu diễn ngữ cảnh
cần được đưa qua một số thuật tốn giảm chiều.

Hình 2.5 Mơ phỏng ngữ cảnh của từ khố và cửa sổ L-sized
(Hình ảnh được tham khảo từ NLP-Course Lena-voita)

2.3.3.3. Word2Vec (W2V)

Hình 2.6 Mơ phỏng mơ hình hoạt động của W2V
(Hình ảnh được tham khảo từ NLP-Course Lena-voita)

Bên cạnh phương pháp Count-based, W2V cũng là một trong những phương pháp
tính tốn vector đặc trưng của từ dựa trên bối cảnh của các từ khoá xung quanh nó.
Trong khi ý tưởng của phương pháp Count-based khá thuần t thì W2V tiếp cận
theo hướng hồn tồn khác.
W2V là một mơ hình học máy với các tham số mơ hình của nó là các vectors đặc

trưng của từ. Các tham số này sẽ được tối ưu qua các vòng lặp bởi một hàm mục tiêu
cho đến khi hàm này thoả mãn điều kiện huấn luyện. Mục đích của hàm mục tiêu là


15

giúp các vector đặc trưng có khả năng nhận ra các ngữ cảnh của một từ mà nó có thể
xuất hiện.
W2V là một phương thức lặp đi lặp lại, mỗi bước lặp là một quá trình tối ưu các
vector đặc trưng. Ý tưởng chính của nó là:
 Sử dụng một kho văn bản có lượng từ vựng lớn.
 Đi lần lượt qua từng từ khoá sử dụng một cửa sổ trượt (Hình 2.6), một lượt
một từ khố. Tại mỗi lượt, W2V sẽ quan tâm đến một từ khoá trung tâm
(central word) và các từ khoá ngữ cảnh (context words – các từ khoá khác
xuất hiện trong cửa sổ trượt).
 Với mỗi từ khố trung tâm, tính xác suất của các từ khoá ngữ cảnh
 Điều chỉnh giá trị vectors đặc trưng để tăng giá trị các xác suất này
Hiện nay W2V đã và đang được sử dụng rất rộng rãi bởi độ chính xác mà nó đem
lại trong các bài tốn xử lý ngơn ngữ tự nhiên, hệ thống khuyến nghị CB, …
2.4. Thuật toán gợi ý dựa trên nội dung
Đây là một trong những thuật toán khuyến nghị phổ biến và thơng dụng nhất.
Thuật tốn dựa trên ý tưởng bằng việc sử dụng các mô tả đặc trưng các thuộc tính
của các sản phẩm cho mục đích khuyến nghị. Ngày nay, các thuật toán xoay quanh
CBRS chưa thực sự đa dạng, chủ yếu dựa trên nội dung của sản phẩm hoặc hồ sơ của
người dùng để đưa ra các gợi ý. Ý tưởng chính là biến đổi các thơng tin nội dung này
thành dạng vector đặc trưng rồi dùng một công thức đo độ tương đồng giữa các vector
để trả về kết quả. Các vector biểu diễn có khoảng cách gần với nhau nhất sẽ biểu diễn
các sản phẩm tương tự nhau. Bài tốn khuyến nghị này có thể được chia ra làm 2
nhánh chính: Chỉ phân tích các thuộc tính của sản phẩm, hoặc xây dựng các bộ hồ sơ
người dùng cho từng cá nhân dựa trên các đặc tính và dữ liệu đánh giá của sản phẩm

[1]. Tiếp theo, luận văn cùng đi qua một lượt nội dung của 2 thuật toán CB này và
đánh giá một số các hệ thống CB liên quan khác.

i, Dựa trên phân tích nội dung đặc trưng của đối tượng
Với trường hợp dữ liệu là dữ liệu thô, thuần khiết về các thuộc tính sản phẩm, và
khơng có tính cá nhân hố, ta có thể xây dựng một hệ thống khuyến nghị dựa trên sự
tương đồng giữa các thuộc tính này. Ví dụ, ta có N bản ghi Xn = {x1, x2,..., xn} với xi
có h thuộc tính xi = {p1, p2, ..., ph}; trong đó pi có thể phản ánh bất kỳ một giá trị nào
đó đó ngồi đời thực, chẳng hạn như: giá cả, thẻ tags, nội dung miêu tả, nhãn hiệu...


×