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

Xây dựng hệ tư vấn dựa và phương pháp lai (tóm tắt luận văn (tóm tắt luận văn ngành khoa học máy tính)

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 (2.11 MB, 26 trang )

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
---------------------------------------

Lê Thành Đạo

XÂY DỰNG HỆ TƯ VẤN DỰA VÀO PHƯƠNG PHÁP LAI

Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01

TĨM TẮT LUẬN VĂN THẠC SĨ

HÀ NỘI - 2013


Luận văn được hồn thành tại:
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG

Người hướng dẫn khoa học: Tiến sỹ Nguyễn Duy Phương

Phản biện 1…………………………………………………………..

Phản biện 2: …………………………………………………………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại
Học viện Cơng nghệ Bưu chính Viễn thơng
Vào lúc: ....... giờ ....... ngày ....... tháng ....... .. năm ...............

Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Cơng nghệ Bưu chính Viễn thơng



1

I. MỞ ĐẦU
1. Lý do chọn đề tài
Hệ tư vấn (Recommender System) là hệ thống có khả năng tự động phân
tích, phân loại, lựa chọn và cung cấp cho người dùng những thơng tin, hàng hóa
hay dịch vụ mà họ quan tâm. Hệ tư vấn được xây dựng dựa trên hai kỹ thuật lọc
thơng tin chính: Hệ tư vấn dựa vào phương pháp lọc theo nội dung (ContentBased Filtering Recommendation) và hệ tư vấn dựa vào phương pháp lọc cộng
tác (Collaborative Filtering Recommendation).
Phương pháp tư vấn theo nội dung khai thác những khía cạnh liên quan
đến nội dung thơng tin sản phẩm mà người dùng đã từng sử dụng hay truy nhập
trong quá khứ để tạo nên tư vấn. Phương pháp này thực hiện tốt trên các dạng
thông tin được biểu diễn thông qua các đặc trưng nội dung nhưng gặp nhiều khó
khăn trên các dạng thơng tin đa phương tiện (hình ảnh, âm thanh,...).
Phương pháp tư vấn cộng tác khai thác những khía cạnh liên quan đến thói
quen sử dụng sản phẩm của cộng đồng người dùng có cùng sở thích để tạo nên tư
vấn. Phương pháp tư vấn cộng tác thực hiện tốt trên tất cả các dạng thông tin
nhưng gặp phải vấn đề người dùng mới, sản phẩm mới và dữ liệu thưa thớt.
Chính vì vậy, vấn đề kết hợp giữa phương pháp tư vấn theo nội dung và tư vấn
cộng tác nhằm tận dụng lợi thế mỗi phương pháp được quan tâm nghiên cứu.
Đề tài “Xây dựng hệ tư vấn dựa vào phương pháp lai” được thực hiện
trong khuôn khổ luận văn thạc sĩ chuyên ngành Khoa học máy tính với mục
tiêu, đối tượng và phương pháp nghiên cứu cụ thể như sau:

2. Mục đích nghiên cứu
Mục đích của luận văn là nghiên cứu phương pháp tư vấn kết hợp giữa lọc
cộng tác và lọc nội dung. Để thực hiện được mục tiêu này, luận văn cần nghiên
cứu cụ thể phương pháp tư vấn theo nội dung, phương pháp tư vấn cộng tác và
phương pháp kết hợp giữa hai phương pháp này.



2

3. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu là phương pháp tư vấn theo nội dung, người sử
dụng cùng với thói quen, hành vi sử dụng sản phẩm của họ.
Phạm vi của đề tài này tập trung nghiên cứu vào: phương pháp lọc thông
tin dựa vào nội dung, phương pháp phân loại dựa vào đánh giá người dùng và
kết hợp hai phương pháp này.

4. Phương pháp nghiên cứu
Dựa trên việc thu thập, nghiên cứu và tìm hiểu những kết quả nghiên cứu về
học máy đã được công bố trên các tạp chí trong và ngồi nước, đặc biệt chú
trọng đến những nghiên cứu về học chuyển giao cho lọc cộng tác. Tham dự các
Seminar về lĩnh vực liên quan. Trao đổi, chía sẻ, thảo luận với giáo viên hướng
dẫn và các đồng nghiệp về các kết quả nghiên cứu.

5. Bố cục của luận văn
Nội dung luận văn được xây dựng thành 4 chương, trong đó:
Chương 1: Nội dung chương này trình bày về những kết quả nghiên cứu
về phương pháp tư vấn theo nội dung: phát biểu bài toán tư vấn theo nội dung,
phương pháp biểu diễn các đặc trưng nội dung, phương pháp xây dựng hồ sơ
người dùng, phương pháp dự đoán.
Chương 2: Nội dung chương này trình bày về kết quả nghiên cứu về
phương pháp tư vấn cộng tác, bao gồm: phát biểu bài toán tư vấn cộng tác,
phương pháp tư vấn dựa vào bộ nhớ, phương pháp tư vấn dựa vào mơ hình,
phương pháp dự đốn.
Chương 3: Nội dung chương này trình bày về kết quả nghiên cứu về
phương pháp kết hợp giữa các kiểu tư vấn, bao gồm: phát biểu bài toán tư vấn

kết hợp, phương pháp kết hợp giữa lọc nội dung và lọc cộng tác
Chương 4:Nội dung chính của chương tập trung vào xây dựng ứng dụng
của phương pháp học chuyển giao.


3

CHƯƠNG I: PHƯƠNG PHÁP TƯ VẤN THEO NỘI DUNG
Phương pháp tư vấn theo nội dung khai thác những khía cạnh liên quan đến
nội dung thông tin sản phẩm người dùng đã từng sử dụng hay truy nhập trong
quá khứ để tạo nên tư vấn. Các phương pháp tiếp cận cho lọc theo nội dung có
nguồn gốc từ lĩnh vực truy vấn thơng tin, trong đó mỗi sản phẩm được biểu diễn
bằng một hồ sơ sản phẩm, mỗi người dùng được biểu diễn bằng một hồ sơ người
dùng.
Về mặt tổng quát thì trong các hệ thống lọc dựa trên nội dung khác nhau có
thể khác nhau về chi tiết nhưng nhìn chung thì các hệ thống này đều phải tạo một
hồ sơ về người dùng và thực hiện so sánh các sản phẩm với hồ sơ của người
dùng để thực hiện tư vấn.

Hình 1.1: Mơ hình tổng qt hệ thống lọc theo nội dung


4

1.1. Phát biểu bài toán tư vấn theo nội dung
Bài toán lọc theo nội dung được phát biểu như sau:
Cho P= {p1, p2,.., pn} là tập gồm N sản phẩm. Nội dung sản phẩm p∈P
được ký hiệu là Content(p) được biểu diễn thông qua tập K đặc trưng nội dung
của P. Tập các đặc trưng sản phẩm P được xây dựng bằng các kỹ thuật truy vấn
thông tin để thực hiện mục đích dự đốn những sản phẩm khác tương tự với p.

Cho U = {u1, u2,..,um} là tập gồm M người dùng. Với mỗi người dùng
u∈U, gọi ContentBasedProfỉle(u) là hồ sơ người dùng u. Hồ sơ của người dùng
u thực chất là lịch sử truy cập hoặc đánh giá của người đó đối với các sản phẩm.
ContentBasedProflle(u) được xây dựng bằng cách phân tích nội dung các sản
phẩm mà người dùng u đã từng truy nhập hoặc đánh giá dựa trên các kỹ thuật
truy vấn thơng tin.
Bài tốn lọc theo nội dung khi đó là dự đốn những sản phẩm mới có nội
dung thích hợp với người dùng dựa trên tập hồ sơ sản phẩm Content(p) và hồ sơ
người dùng ContendBasedProflle(u).

1.2. Phương pháp trích chọn đặc trưng(Limited content analysis):
Phương pháp trích chọn đặc trưng hay cịn gọi là biểu diễn hồ sơ sản
phẩm.Để có một tập các đặc trưng đầy đủ, nội dung tài liệu phải được biểu diễn
dưới dạng phù hợp để máy tính có thể tự động phân tích, tính tốn trọng số các
đặc trưng nội dung hoặc phải được thực hiện bán tự động.
Phương pháp ước lượng trọng số các đặc trưng thông dụng nhất thường
được sử dụng là phép đo tần suất kết hợp với tần suất xuất hiện ngược TF-IDF
(Term Frequency / Inverse Document Frequency).

1.3. Phương pháp biểu diễn hồ sơ người dùng
Mỗi hồ sơ người dùng ContentBasedProfile(u) cũng được biểu diễn bằng
một véc tơ trọng số các đặc trưng nội dung (w1,u, w2,u,..,wK,u), trong đó mỗi wk,u


5

biểu thị mức độ quan trọng của đặc trưng nội dung k đối với người dùng u. Véc
tơ trọng số (w1,u, w2,u,..,wK,u) được tính tốn bằng các kỹ thuật khác nhau từ véc
tơ hồ sơ sản phẩm đã được người dùng thường xun truy cập hoặc đánh giá.
Balabanovic


tính

tốn

véctơ

trọng

số

mỗi

hồ



người

dùng

ContentBasedProflle(u) bằng cách lấy trung bình cộng véc tơ trọng số
Content(pj) trên các tài liệu pj∈P mà người dùng đã từng truy cập hoặc đánh
giá.

1.4. Phương pháp dự đoán
Với cách biểu như trên, véctơ trọng số các đặc trưng nội dung sản phẩm
ContentBasedProfile(u) và Content(p) có cùng số chiều và ước lượng theo cùng
một phương pháp (trong trường hợp này là TF-IDF). Việc xác định mức độ thích
hợp của mỗi sản phẩm p  P cho người dùng u được xem xét theo mức độ giống

nhau giữa véc tơ hồ sơ người dùng u U và véctơ hồ sơ sản phẩm p P.

1.5. Ví dụ minh họa
1.6. Kết luận chương
Phương pháp lọc theo nội dung làm việc khá hiệu quả với các tài liệu văn
bản và đã có nhiều ứng dụng trên thực tế như hệ thống lọc email, thư rác…
phương pháp này vẫn được khá nhiều hệ thống tư vấn sử dụng do tính dễ cài
đặt, và hiệu quả trong xử lý dữ liệu là văn bản.
T vậy phương pháp vẫn tồn tại một số vấn đề:
- Vấn đề trích chọn đặc trưng (Limited content analysis)
- Vấn đề người dùng mới (new user propblem)
- Vấn đề đánh giá, phản hồi của người dùng


6

CHƯƠNG II:PHƯƠNG PHÁP TƯ VẤN CỘNG TÁC
Không giống nhưphương pháp lọc theo nội dung, phương pháp lọc cộng
tác khai thác những khía cạnh liên quan đến thói quen sở thích của người sử
dụng sản phẩm để đưa ra dự đoán các sản phẩm mới cho người dùng này. Chính
vì vậy, lọc cộng tác có thể lọc hiệu quả trên nhiều dạng sản phẩm khác nhau
như hàng hóa, phim, ảnh, tài liệu,... Cùng trên một hệ tư vấn, người dùng sẽ
được tư vấn nhiều loại mặt hàng khác nhau cho dù các mặt hàng này có thể biểu
diễn trên khơng gian các đặc trưng nội dung khác nhau.

Hình 2.1: Mơ hình kiến trúc của hệ tư vấn dựa trên cộng tác

2.1. Phát biểu bài toán tư vấn cộng tác
Bài toán lọc cộng tác được phát biểu như sau:
Ký hiệu u = {u1, u2,…, uN} là tập gồm N người dùng, P = {p1, p2,.., pM} là

tập gồm M sản phẩm mà người dùng có thể lựa chọn. Mỗi sản phẩm pj∈P có
thể là hàng hóa, phim, ảnh, tạp chí, tài liệu, sách, báo, dịch vụ hoặc bất kỳ dạng
thông tin nào mà người dùng cần đến.
Tiếp theo, ký hiệu R={ rij }, i = 1..N, j = 1..M là ma trận đánh giá, trong
đó mỗi người dùng ui U đưa ra đánh giá của mình cho một số sản phẩm pj  P
bằng một số rij. Giá trị rij phản ánh mức độ ưa thích của người dùng ui đối với
sản phẩm pj. Giá trị rij có thể được thu thập trực tiếp bằng cách hỏi ý kiến người


7

dùng hoặc thu thập gián tiếp thông qua cơ chế phản hồi của người dùng. Giá trị
rij =



trong trường hợp người dùng ui chưa đánh giá hoặc chưa bao giờ biết

đến sản phẩm pj.
Với một người dùng cần được tư vấn ua (được gọi là người dùng hiện
thời, người dùng cần được tư vấn, hay người dùng tích cực), bài toán lọc cộng
tác là bài toán dự đoán đánh giá của ua đối với những mặt hàng mà ua chưa đánh
giá (raj =

 ),

trên cơ sở đó tư vấn cho ua những sản phẩm được đánh giá cao.

2.2. Phương pháp tư vấn dựa trên bộ nhớ
Các thuật toán dựa trên kinh nghiệm dự đoán hạng của một sản phẩm dựa

trên toàn bộ các sản phẩm đã được đánh giá trước đó bởi người dùng.Nghĩa là,
hạng của sản phẩm p với người dùng u (ru,p) được tổng hợp từ đánh giá của
những người dùng khác về p (thường là N người có sở thích tương đồng nhất
với u).
Phương pháp được thực hiện theo hai bước: Tính tốn mức độ tương tự
và bước tạo nên dự đốn:
+ Tính tốn mức độ tương tựsim(x, ỵ): Mô tả khoảng cách, sự liên quan,
hay trọng số giữa hai người dùng x vày (hoặc giữa hai sản phẩm X vày).
+ Dự đoán: Đưa ra dự đoán cho người dùng cần được tư vấn bằng cách
xác định tập láng giềng của người dùng này. Tập láng giềng của người dùng
cần tư vấn được xác định dựa trên mức độ tương tự giữa các cặp người dùng
hoặc sản phẩm.

2.3. Phương pháp tư vấn dựa trên mơ hình
Khác với phương pháp dựa trên bộ nhớ, phương pháp dựa trên mơ hình
(model-based) sử dụng kĩ thuật thống kê và học máy trên dữ liệu nền (các đánh
giá đã biết) để xây dựng nên các mơ hình. Mơ hình này sau đó sẽ được dùng để
dự đốn hạng của các sản phẩm chưa được đánh giá.


8

Mơ hình đầu tiên được đề xuất bao gồm việc phân nhóm người dùng sử
dụng kỹ thuật phân cụm (clustering) và sau đó việc dự đốn đánh giá một người
dùng trên một tài nguyên chỉ sử dụng các đánh giá của những người dùng thuộc
về cùng nhóm.

2.4. Ví dụ minh họa
2.5. Kết luận
Hệ thống tư vấn cộng tác khắc phục được nhiều nhược điểm của hệ thống

dựa trên nội dung. Một điểm quan trọng là nó có thể xử lý mọi loại dữ liệu và
gợi ý mọi loại sản phẩm, kể cả những sản phẩm mới, nhờ vào tham khảo được ý
kiến của người dùng đối với các sản phẩm, do đó có thể hiệu quả hơn đối với
những sản phẩm khơng có những mơ tả rõ rằng về đặc trưng nôi dung.
Tuy đã khắc phục được nhiều nhược điểm của hệ thống lọc dựa trên nội
dung nhưng hệ thống tư vấn cộng tác vẫn gặp một số vấn đề:
Vẩn đề người dùng mới (New User Problem)
Vẩn đề sản phẩm mới (New Item Problem)
Vẩn đề dữ liệu thưa (Sparsity Data Problem)
Do cả hai phương pháp lọc dựa vào nội dung và lọc cộng tác đều gặp phải
khác nhiều nhược điểm, nhưng có một số phần có thể bù trừ cho nhau tạo ra sự
chính xác cho việc lọc thơng tin hơn nên chương tiếp theo chúng ta sẽ tìm hiểu
phương pháp lai.


9

CHƯƠNG III: PHƯƠNG PHÁP KẾT HỢP GIỮA TƯ VẤN
THEO NỘI DUNG VÀ TƯ VẤN CỘNG TÁC
Để khắc phục những hạn chế của hệ thống tư vấn dựa trên nội dung và
cộng tác, luân văn quyết định đi theo một cách tiếp cận lai kết hợp cả hai
phương pháp với mục tiêu này, luận văn tìm hiểu một mơ hình thống nhất kết
hợp đánh giá của người dùng từ các tập dữ liệu MovieLens cũng như các tính
năng phim từ IMDB. Có thể phân thành bốn cách kết hợp như sau:
- Kết hợp tuyến tính (Kết hợp hai phương pháp riêng rẽ)
- Kết hợp đặc tính của lọc cộng tác vào lọc nội dung (Thêm đặc trưng của
mơ hình dựa trên nội dung vào mơ hình cộng tác)
- Kết hợp đặc tính của lọc nội dung vào lọc cộng tác (Thêm đặc trưng của
mơ hình cộng tác vào mơ hình dựa trên nội dung)
- Mơ hình hợp nhất (Mơ hình hợp nhất hai phương pháp)


3.1. Phát biểu bài toán
Bài toán lọc kết hợp được phát biểu như sau:
Cho tập người dùng U, tập sản phẩm P và ma trận lọc cộng tác R như đã
được trình bày ở trên, ký hiệu C = {c1, c2,.., cK} là tập K đặc trưng biểu diễn nội
dung thông tin các sản phẩm p  P hoặc người dùng u U. Ví dụ nếu p P là một
bộ phim, khi đó ta có thể biểu diễn nội dung của phim thông qua các đặc trưng
ci : “thể loại”, “đạo diễn”, “diễn viên”, “hãng sản xuất” và các đặc trưng nội
dung khác của phim; nếu u  U là một người dùng thì ta có thể xem xét đặc
trưng ci : “tuổi”, “giới tính”, “nghề nghiệp” và các đặc trưng nội dung khác
phản ánh thông tin cá nhân người dùng.
Bài toán của lọc kết hợp là dự đoán cho người dùng hiện thời ua những
sản phẩm pk∈P chưa được ua đánh giá dựa trên ma trận đánh giá rjj và các đặc
trưng nội dung C = {c1, c2,.., cK}.


10

3.2. Kết hợp các đặc trưng nội dung với đánh giá người dùng
Phương pháp này xem xét các đánh giá người dùng của lọc cộng tác như
một thành phần trong mỗi hồ sơ người dùng. Phương pháp dự đoán thực hiện
theo lọc nội dung thuần túy và so sánh với kết quả dựa trên biểu diễn hồ sơ
người dùng mở rộng. Phương pháp phổ biến nhất thực hiện theo mô hình này là
sử dụng các kỹ thuật giảm số chiều cho hồ sơ người dùng trước khi kết hợp với
đánh giá người dùng.

3.3. Kết hợp đánh giá người dùng với các đặc trưng nội dung
Phương pháp này dựa trên các kỹ thuật lọc cộng tác thuần túy nhưng vẫn
duy trì hồ sơ người dùng ContentBasedProfile(u) như một tham biến tham khảo
khi tính tốn sự tương tự giữa các cặp người dùng. Phương pháp có thể phát

hiện những sản phẩm tương tự với hồ sơ người dùng hoặc không tương tự với
hồ sơ người dùng. Trong trường hợp dữ liệu thưa hoặc người dùng mới, mức độ
tương tự giữa hồ sơ người dùng và sản phẩm được đến tạo nên dự đốn.

3.4. Mơ hình hợp nhất giữa đánh giá người dùng và các đặc
trưng nội dung
Trong phần này, luận văn tìm hiểu một phương pháp xây dựng liên kết
người dùng với nội dung sản phẩm trên cơ sở cá nhân hóa các liên kết này gọi
là “Unifying Models”. Unifying Models là phương pháp biểu diễn đặc trưng nội
dung và đánh giá người dùng trên cùng mơ hình
Tiến hành chuyển đổi thành ma trận toán học, ta sẽ thu được một ma trận
mở rộng chứa tất cả các mối quan hệ giữa người dùng, sản phẩm, các đặc trưng
của người dùng và các đặc trưng của sản phẩm như bảng 3.4:
Bảng 3.5: Ma trận kết hợp người dùng - sản phẩm với các đặc trưng
Sản phẩm

Người

u1

Nghề nghiệp

ĐT người dùng XY

p1

p2




pn

o1

o2



oy

UF1

UF2



UFz

r11

r12



r1n

0

0




1

0

1



1


11
dùng

Thể
loại

ĐT
sản
phẩm
XY

u2

r21

?




r2n

1

1



0

1

1



0




























um

rm1

rm2



rmn

1

0




1

1

0



0

t1

0

1



1

t2

1

1




0











tk

1

1



0

IF1

0

0




0

IF2

1

1



0











IFq

1

1




0

Sau khi chuyển đổi dữ liệu thành dạng ma trận ở bảng 3.4, chúng ta sử
dụng các kỹ thuật của lọc cộng tác để tiến hành dự đoán giá trị cho những sản
phẩm chưa được đánh giá. Dựa vào ma trận gốc cùng với các đặc trưng nội
dung luận văn kỳ vọng kỹ thuật này cho dự đánh giá chính xác nhất. Luận văn
tính tốn ma trận dựa vào phương pháp phân rã giá trị riêng (Singular Value
Decomposition - SVD).

3.4.1. Vấn đề thưa thớt dữ liệu
Đã có rất nhiều cố gắng giải quyết vấn đề thưa thớt dữ liệu. Một phương
pháp được đưa ra với một số thành cơng đó là phương pháp nhằm làm giảm
chiều ma trận số người dùng – sản phẩm.

3.4.2. Phương pháp phân rã giá trị riêng(SVD)
Bài toán phân rã giá trị riêng được phát biểu như sau:
Với bất kỳ ma trận A kích thước M × Nnào có số M ≥ N, có thể được viết
dưới dạng tích của một ma trận U trực giao theo cột có kích thước M × N, một
ma trận chéo W có kích thước N× Nvới các số trên đường chéo là không âm, và
ma trận chuyển vị của một ma trận trực giao Vcó kích thước N× N:


12

[ ]=[ ]×[ ]× [

]=[ ]×




× [

]

(3.3)

Đường chéo khởi tạo r của S(s1,s2,..,sr) có các đặc trưng si>0 và s1≥s2≥ …≥
sr.Trong đó, r cột đầu tiên của U là vector riêng của AAT và đại diện cho các
vector riêng trái của A trong không gian mở rộng cột.r cột đầu tiên của V là
vector riêng của ATA và đại diện cho cácvector riêng phải của A trong không
gian mở rộng hàng. Nếu chúng ta chỉ tập trung vào các r giá trị riêng khác
khơng, kích thước hiệu quả SVD của ma trận U, S và V sẽ trở thành M × r, r ×
r vàr × N tương ứng.
Một thuộc tính quan trọng của SVD, đặc biệt hữu ích trong các hệ tư vấn
là nó có thể cung cấp giá trị xấp xỉ thấp nhất. Bằng cách giữ lại k << r giá trị
riêng của S và loại bỏ các phần còn lại (tức là giữ k giá trị riênglớn nhất), dựa
trênthực tế là các mục trong S đều được sắp xếp, chúng ta sẽ giảm số chiều của
dữ liệu và hy vọng sẽ nắm bắt được mối quan hệ "tiềm ẩn" quan trọng nhưng
hiện tại không rõ ràng trong các đại diện ban đầu của ma trận A. Kết quả đường
chéo ma trận được gọi là Sk . Ma trận U và V cũng nên được giảm cho phù hợp.
Ukđược tạo ra bằng cách loại bỏ r-kcột từ ma trận U.Vk được tạo ra bằng cách
loại bỏ r - k hàng từ ma trận V. Ma trận Ak được định nghĩa là:
=

×

×

(3.4)


3.4.3. Cách thực hiện phương pháp SVD
Các bước mà thuật toán SVD sẽ tiến hành như sau:
Bước 1: Xác định các ma trận đánh giá R ban đầu, có kích thước M × N,
trong đó bao gồm các xếp hạng của M người dùng trên N sản phẩm trong đó rij
là đánh giá của người dùng ui trên sản phẩm pj.
Bước 2: Xử lý ma trận đánh giá R để loại bỏ tất cả các giá trị dữ liệu chưa
đánh giá. Cách xử lý như sau:


13

+ Từ ma trận đánh giá R ta tính tính giá trị trung bình của tất cả các
hàng ri, trong đó i = 1, 2, ..., M; và tính giá trị trung bình của tất cả các cột
rj , trong đó j = 1, 2, ..., N.
+ Thay thế tất cả các mục ma trận khơng có giá trị, biểu hiện bằng
⊥, với cột trung bình tương ứng rj ta thu được ma trận mới R’
+ Trừ các giá trị trung bình hàng tương ứng ri cảu tất cả các giá trị
trong ma trận vừa thu được R’, ta thu được ma trận chuẩn hóa R”.
Bước 3:Tính tốn SVD của R” và có được ma trận U, S và V, có kích
thước M × M, M × N, và N × N tương ứng. Mối quan hệ được thể hiện bởi:
[ "] = [ ] × [ ] × [

]

(3.7)

Bước 4:Thực hiện các bước giảm chiều bằng cách giữ chỉ kđường chéo từ
ma trận Sđể có được một ma trậnk × k ký hiệu Sk . Tương tự như vậy ta có ma
trận Uk và Vkvới kích thước M × k và k × Nđược tạo ra. Ta thu được ma trận
Rgiảm dựa trên cơng thức:

=



×

×

(3.8)

Trong đórij biểu thị sự đánh giá của người sử dụng ui trên sản phẩmpj như
trong ma trận Rgiảmnày.
Bước 5:Tính

và sau đó tính tốn hai ma trận sản phẩm:

đại

đại diện cho Nsản phẩm trong k chiều

diện choM người sử dụng và
không gian đặc trưng.

Bước 6: Tiến hành cùng hình thành vùng lân cận - Neighborhood
Formation bước này được chia thành 2 q trình phần:
- Tính toán độ tương đồng giữa các sản phẩmpj và pf bằng cách tính tốn
dựa vào cơng thức:
=





.


(3.9)


14

Trong đó k là số người dùng được lựa chọn khi thực hiện bước giảm
chiều.
- Dựa trên kết quả từ những tính tốn trênta tính tốn cho cặp các sản
phẩm bao gồm các sản phẩmhiện thời và một sản phẩm ngẫu nhiên.
Bước 7: Kết luận cùng kết quả dự đốn

=

∗(



+

)

(3.10)




Tính tốn dự đốn cho người dùngua một sản phẩmpj. Nó tương tự như các
phương trình sử dụng lọc sản phẩm cơ bản ở chỗ nó căn cứ dự đốn của nó về việc
đánh giáđược đưa ra bởi người dùng hiện thời ua tới lsản phẩm được chọn tương
tự nhất nhưsản phẩm hiện tại pj. Tuy nhiên, nó khác ở chỗ đánh giá người dùng
được thực hiện làm giảm chiều của ma trận đánh giá Rgiảm. Ngoài ra, chúng ta phải
bổ sung vào ma trận gốc giá trị trung bình

.

3.5. Thử nghiệm và đánh giá
Để thực hiện thử nghiệm, luận văn sử dụng các dữ liệu có sẵn từ hệ tư
vấn phim GroupLens. Bộ dữ liệu MovieLens 100K bao gồm 100.000 xếp hạng
được của 943 người dùng trên 1682 bộ phim. Mỗi đánh giá theo các giá trị từ
0(xấu)tới 5 (xuất sắc). Dữ liệu được chia thành 5 phần, trong mỗi phần bao gồm
2 tập dữ liệu là “huấn luyện”(training data) và “kiểm tra” (test data).

3.5.1. Sai số dự đoán MAE
Sai số dự đoán MAEu cho mỗi người dùng u thuộc tập dữ liệu kiểm tra
được tính bằng trung bình giá trị tuyệt đối giữa hiệu số giá trị dự đoán và giá trị
thực đối với tất cả sản phẩm thuộc tập Pu.
MAE u 

1
Pu

 rˆ

y

yPu


u

 ry

u

(3.5)


15

Sai số dự đốn trên tồn tập dữ liệu kiểm tra được tính bằng trung bình
cộng sai số dự đốn cho mỗi khách hàng thuộc Ute được tính tốn theo công
thức (3.6). Giá trị MAE càng nhỏ, phương pháp dự đốn càng chính xác.

 MAE

MAE 

u

uU te

U te

(3.6)

3.5.2. Mơ tả thử nghiệm
Mục đích của thử nghiệm này sẽ được tiến hành nhằm:

- Xác định giá trị tối ưu k cho để giảm kích thước cho ma trận
- Xác định giá trị tối ưu cho kích thước vùng lân cận
Sau khi chúng ta tìm được 2 giá trị nêu trên, thử nghiệm sẽ tiến hành đánh
giá hệ tư vấn dựa trên phương pháp SVD trên sản phẩm tương đồng.

3.5.3. Kết quả của thử nghiệm
Xác định giá trị tối ưu k để giảm kích thước cho ma trận:

Hình 3.5: Xác định giá trị tối ưu nhất cho k


16

Nhìn vào đồ thị thì rõ ràng chúng ta thấy giá trị trung bình MAE của 5 tập
dữ liệu mà chúng ta xem xét nhỏ nhất khi k=6 với MAE ≅ 0.796.

Xác định giá trị tối ưu cho kích thước vùng lân cận
Trong thử nghiệm này của chúng ta, với giá trị tối ưu k= 6 là cố định và
thay đổi kích thước của lân cận sản phẩm hiện tạivới các kích thước =
{10,20,..,140}.
Rõ ràng MAE ≅ 0.792 là nhỏ nhất ứng với khu lân cận có 10 sản phẩm.

Hình 3.6: Xác định giá trị tối ưu nhất cho kích thước vùng lân cận

Đánh giá hệ tư vấn dựa trên phương pháp SVD trên sản phẩm
tương đồng
Thiết lập tính tốn tối ưu cho các thuật toán chúng ta tiến hành với thử
nghiệm cuối cùng này với mục đích để đánh giá độ chính xác của hệ tư vấn dựa
trên phương pháp SVD trênsản phẩm tương đồng. Hình 3.7 phía dưới đây cho
chúng ta thấy 2 giá trị MAE của không gian lân cận cao (high-dimensions) và

MAE của không gian lân cận thấp (low-dimensions) với 5 tập dữ liệu mà ta xét.
Từ 5 giá trị tương ứng cho 2 tập giá trị của MAE này ta dễ dàng tính được giá
trị trung bình của chúng và kết quả thu được như bảng 3.6 sau đây:


17
Bảng 3.6: Trung bình MAE của khơng gian lân cận

MAE

Khơng gian cao

Khơng gian thấp

0.83987391

0.79658809

Hình 3.7: So sánh SVD và lọc cộng tác với đô đo tương tự sản phẩm

3.6. Kết luận
Một số nghiên cứu trước đây đã tìm hiểu phương pháp lọc kết hợp dựa
trên mơ hình hợp nhất giữa đánh giá người dùng và các đặc trưng nội dung
bằng phương pháp phân rã giá trị riêng SVD kết hợp lọc dựa trên người dùng,
chứng tỏ đây là một giải pháp hiệu quả cho các vấn đề hệ tư vấn trong khả năng
mở rộng cũng như giải quyết vấn đề thưa thớt dữ liệu. Việc luận văn tiếp cận
cũng theo phương pháp này nhưng kết hợp với lọc dựa trên sản phẩm là một
hướng đi mới. Tuy nhiên, những kết quả thực nghiệm cho thấy đây là một
hướng đi đúng đắn và tôi sẽ tiếp tục nghiên cứu thêm.



18

CHƯƠNG IV. XÂY DỰNG HỆ TƯ VẤN DỊCH VỤ
BẰNG PHƯƠNG PHÁP LAI
4.1. Giới thiệu chung
“Hệ tư vấn Film dựa vào phương pháp lai” (Film Recommendation
System) được xây dựng dựa trên “Mơ hình hợp nhất giữa đánh giá người dùng
và các đặc trưng nội dung.
Trong việc xây dựng hệ tư vẫn film này đã sử dụng bộ dữ liệu 100K tức
là thông tin của 943 người dùng, thông tin của 1682 bộ film, và 100.000 đánh
giá của những người dùng đối với những bộ film để chuyển đổi thành dữ liệu
dùng cho hệ thống.

4.2. Mơ hình dữ liệu hệ thống
Chương trình này hồn tồn phục vụ cho mục đích nghiên cứu hệ tư vấn
dịch vụ bằng phương nên đã không tập trung vào việc tối ưu cơ sở dữ liệu, thay
vào đó việc thiết kế để thuận tiện nhất cho việc import dữ liệu từ bộ dữ liệu
MovieLens 100K.

Hình 4.1: Mơ hình cơ sở dữ liệu hệ tư vấn Film


19

4.3. Mơ hình chức năng hệ thống
“Hệ tư vấn Film dựa vào phương pháp lai” được xây dựng trên công nghệ
PHP kết hợp với mơ hình lập trình web chuẩn MVC gồm 3 tầng chính:

4.3.2. Tầng giao diện (presentation)

4.3.3. Tầng điều khiển - Controller
4.3.4. Tầng dữ liệu - Model
4.4. Một số chức năng chính của hệ thống
- Chức năng đăng nhập/đăng ký người dùng
Chức năng tìm kiếm
- Chức năng hiển thị những phim được đánh giá cao nhất
- Chức năng hiển thị danh sách các phim mới nhất
- Chức năng hiển thị danh sách phim được nhiều người quan tâm
đánh giá nhất
- Chức năng hiển thị danh sách phim nổi bật
- Chức năng hiển thị danh sách phim đề cử:
- Chức năng hiển thị danh sách phim top bình chọn
- Chức năng hiển thị danh sách phim
- Chức năng xem chi tiết phim
- Chức năng xem phim trực tuyến
- Chức năng thể hiện tóm tắt nội dung phim
- Chức năng bình chọn của người dùng


20
4.5. Một số màn hình của hệ thống

Hình 4.4: Trang chủ của website


21

Hình 4.9: Trang xem thơng tin chi tiết phim



22

Hình 4.10: Kết quả tư vấn cho mơi người dùng sau khi đăng nhập


23

4.6. Kết luận
“Hệ tư vấn Film dựa vào phương pháp lai”được xây dựng dựa vào “mơ
hình hợp nhất giữa đánh giá người dùng và các đặc trưng nội dung” đề xuất đã
mơ tả đầy đủ các chức năng chính của một hệ thống lọc thông tin, bao gồm:
chức năng học, chức năng lọc, chức năng phân tích dữ liệu, chức năng người
dùng, úng dụng cho lại kết quả tư vấn tốt ngay cả trong trường hợp dữ liệu đánh
giá người dùng thưa thớt.
Do thời gian làm luận văn không nhiều nên tơi chỉ tập chung vào những
chức năng chính phục vụ cho hệ tư vấn chứ không chú trọng và những kỹ thuật
lập trình hay phân tích thiết kế hệ thống, chính vì vậy “Hệ tư vấn Film dựa vào
phương pháp lai” chỉ mang tính chất nghiên cứu.


×