ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Uông Huy Long
GIẢI PHÁP MỞ RỘNG THÔNG TIN NGỮ CẢNH
PHIÊN DUYỆT WEB NGƯỜI DÙNG NHẰM NÂNG
CAO CHẤT LƯỢNG TƯ VẤN TRONG HỆ THỐNG
TƯ VẤN TIN TỨC
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2010
Lời cảm ơn
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trước tiên, tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc nhất tới Phó Giáo sư Tiến sĩ
Uông Huy Long
Hà Quang Thụy và Thạc sĩ Trần Mai Vũ, người đã tận tình chỉ bảo và hướng dẫn tôi
trong suốt quá trình thực hiện khoá luận tốt nghiệp.
Tôi chân thành cảm ơn các thầy, cô đã tạo những điều kiện thuận lợi cho tôi học tập và
nghiên cứu tại trường Đại Học Công Nghệ.
GIẢI PHÁP MỞ RỘNG THÔNG TIN NGỮ CẢNH
Tôi PHIÊN
cũng xin gửiDUYỆT
lời cảm ơn WEB
tới các anh
chị và các DÙNG
bạn sinh viên
trong nhóm
“Khai phá
NGƯỜI
NHẰM
NÂNG
dữ liệu” đã giúp tôi rất nhiều trong việc hỗ trợ kiến thức chuyên môn để hoàn thành tốt
CAO CHẤT LƯỢNG TƯ VẤN TRONG HỆ THỐNG TƯ
khoá luận.
VẤN TIN TỨC
Cuối cùng, tôi muốn gửi lời cảm vô hạn tới gia đình và bạn bè, những người thân yêu
luôn bên cạnh và động viên tôi trong suốt quá trình thực hiện khóa luận tốt nghiệp.
Tôi xin chân thành cảm ơn!
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Sinh viên
Uông Huy Long
Cán bộ hướng dẫn: Th.S Trần Mai Vũ
HÀ NỘI - 2010
Lời cảm ơn
Trước tiên, tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc nhất tới Phó Giáo sư
Tiến sĩ Hà Quang Thụy và Thạc sĩ Trần Mai Vũ, người đã tận tình chỉ bảo và hướng
dẫn tôi trong suốt quá trình thực hiện khoá luận tốt nghiệp.
Tôi chân thành cảm ơn các thầy, cô đã tạo những điều kiện thuận lợi cho tôi học
tập và nghiên cứu tại trường Đại Học Công Nghệ.
Tôi cũng xin gửi lời cảm ơn tới các anh chị và các bạn sinh viên trong nhóm
“Khai phá dữ liệu” đã giúp tôi rất nhiều trong việc hỗ trợ kiến thức chuyên môn để
hoàn thành tốt khoá luận.
Cuối cùng, tôi muốn gửi lời cảm vô hạn tới gia đình và bạn bè, những người thân
yêu luôn bên cạnh và động viên tôi trong suốt quá trình thực hiện khóa luận tốt nghiệp.
Tôi xin chân thành cảm ơn!
Sinh viên
Uông Huy Long
i
Tóm tắt
Với sự phát triển của Internet, con người ngày nay không chỉ có nhiều hơn cơ hội
tiếp xúc với các nguồn cung cấp tin tức mà còn có thể có được nó đúng lúc hơn. Các tờ
báo điện tử ở Việt Nam cung cấp mỗi ngày hàng chục cho tới hàng trăm tin mới thuộc
nhiều lĩnh vực khác nhau sẵn sàng đáp ứng các yêu cầu mọi lúc, mọi nơi của người đọc.
Tuy nhiên, bên cạnh những tiện ích, tồn tại những vấn đề cần được giải quyết như sự gia
tăng về số lượng, tính đa dạng về nội dung của tin tức ở các nguồn khác nhau, sự phù hợp
cá nhân,...Trong bối cảnh đó, sự giúp đỡ của một hệ thống tư vấn tin tức là cần thiết, bằng
cách duyệt qua không gian các lựa chọn, nó dự đoán các tin tức hữu ích tiềm năng với
từng người dùng cá nhân.
Xây dựng hồ sơ sở thích người dùng là một trong các thành phần cơ bản nhất của hệ
thống tư vấn. Tuy nhiên, những mô hình (như trong khảo sát của Gauch và cộng sự [14] )
đang được sử dụng hiện nay vẫn tồn tại nhiều vấn đề chưa được giải quyết, ví dụ như: tính
nhập nhằng ngữ nghĩa trong các hồ sơ dựa trên từ khóa, hoặc đòi hòi thông tin suy diễn từ
WordNet để xác định ngữ nghĩa trong các hồ sơ dựa trên mạng ngữ nghĩa,...Thêm vào đó,
các giải pháp này còn thiếu khả năng tính hợp mềm dẻo các nhân tố ngữ cảnh.
Khóa luận này trình bày một mô hình hệ thống tư vấn tin tức sử dụng một mô hình
sở thích ngươi dùng mới. Dựa trên khai phá dữ liệu từ ngữ cảnh duyệt web của người
dùng, hệ thống coi sở thích của người sử dụng là một kết hợp của tập các chủ đề ẩn xuất
hiện phổ biến và tập các thực thể trong các tin tức người dùng từng quan tâm.
ii
Mục lục
Mở đầu .......................................................................................................................... 1
Chương 1. Khái quát về các hệ thống tư vấn .................................................................. 3
1.1.
Bài toán tư vấn ............................................................................................... 3
1.2.
Các kĩ thuật tư vấn .......................................................................................... 5
1.2.1.
Kĩ thuật tư vấn dựa trên nội dung ............................................................. 5
1.2.2.
Kĩ thuật tư vấn cộng tác ........................................................................... 8
1.2.3.
Kĩ thuật tư vấn lai................................................................................... 11
1.3.
Sơ lược về hệ thống tư vấn tin tức của khóa luận .......................................... 13
1.3.1.
Đặc trưng của tư vấn tin tức. .................................................................. 13
1.3.2.
Hướng tiếp cận của khóa luận ................................................................ 14
Chương 2. Mô hình hóa sở thích người dùng cho các hệ tư vấn dựa trên nội dung. ...... 16
2.1.
Tiến trình mô hình sở thích người dùng ........................................................ 16
2.2.
Thu thập thông tin về người dùng ................................................................. 17
2.2.1.
Phương pháp định danh người dùng ....................................................... 17
2.2.2.
Các phương pháp thu thập thông tin ....................................................... 18
2.3.
Xây dựng mô hình sở thích người dùng ........................................................ 21
2.3.1.
Phương pháp dựa trên từ khóa có trọng số.............................................. 21
2.3.2.
Phương pháp dựa trên mạng ngữ nghĩa .................................................. 22
2.3.3.
Phương pháp dựa trên cây phân cấp khái niệm ....................................... 23
Chương 3. Mô hình ...................................................................................................... 24
3.1.
Cơ sở lý thuyết ............................................................................................. 25
3.1.1.
Phân tích thông tin chủ đề dựa trên mô hình chủ đề LDA....................... 25
3.1.2.
Nhận dạng các thực thể trong tài liệu dựa trên từ điển ............................ 27
3.2.
Phân tích sở thích người dùng ....................................................................... 28
3.2.1.
Thông tin trong phiên duyệt web người dùng ......................................... 28
3.2.2.
Mô hình sở thích người dùng ................................................................. 29
3.3.
Áp dụng mô hình môi quan tâm người dùng vào tư vấn tin tức ..................... 30
3.3.1.
Pha phân tích dữ liệu tư vấn ................................................................... 30
3.3.2.
Pha tư vấn trực tuyến ............................................................................. 33
3.4.
Đánh giá kết quả tư vấn. ............................................................................... 36
Chương 4: Thực nghiệm và đánh giá ........................................................................... 37
iii
4.1.
Môi trường thực nghiệm ............................................................................... 37
4.2.
Dữ liệu và công cụ ........................................................................................ 37
4.2.1.
Dữ liệu ................................................................................................... 37
4.2.2.
Công cụ.................................................................................................. 38
4.3.
Thực nghiệm ................................................................................................ 39
4.3.1.
Ví dụ về phân tích tin tức ....................................................................... 39
4.3.2.
Ví dụ phân tích sở thích người dùng....................................................... 40
4.3.3.
Tư vấn tin tức......................................................................................... 42
4.4.
Kết quả thực nghiệm và đánh giá .................................................................. 43
Kết luận ....................................................................................................................... 46
Tài liệu tham khảo ....................................................................................................... 48
iv
Danh sách hình
Hình 1. Các thành phần chính của hệ thống tư vấn. ........................................................ 4
Hình 2. Tiến trình mô hình hóa sở thích người dùng. ................................................... 16
Hình 3. Các hệ thống tư vấn dựa trên thông tin phản hồi hiện. ..................................... 19
Hình 4. Mô hình mối quan tâm người dùng dựa trên từ khóa. ...................................... 22
Hình 5. Mô hình mối quan tâm người dùng dựa trên mạng ngữ nghĩa .......................... 22
Hình 6. Mô hình mối quan tâm người dùng dựa trên mạng khái niệm .......................... 23
Hình 7. Tài liệu với K chủ đề ẩn. ................................................................................. 25
Hình 8. Biểu diễn đồ họa LDA..................................................................................... 26
Hình 9. Ước lượng tham số tập dữ liệu văn bản. .......................................................... 26
Hình 10. Suy diễn chủ đề sử dụng tập dữ liệu VnExpress ............................................ 27
Hình 11. Mô hình sở thích người dùng dựa trên chủ đề ẩn và thực thể. ........................ 29
Hình 12. Mô hình pha phân tích dữ liệu tư vấn ............................................................ 31
Hình 13. Mô hình pha tư vấn trực tuyến. ...................................................................... 33
Hình 14. Biểu diễn tin tức theo chủ đề và thực thể. ...................................................... 39
Hình 15. Kết quả phân tích cho thấy các thông tin liên quan đến chủ đề 19.................. 42
v
Danh sách các bảng
Bảng 1. Đánh giá theo thang điểm về một số bộ phim đã xem. ...................................... 5
Bảng 2. Các kĩ thuật thu thập thông tin ẩn. ................................................................... 20
Bảng 3. Ví dụ về một hồ sơ sở thích người dùng. ......................................................... 24
Bảng 4. Thông tin trong phiên duyệt web..................................................................... 28
Bảng 5. Môi trường thực nghiệm. ................................................................................ 37
Bảng 6. Công cụ. ......................................................................................................... 38
Bảng 7. Một số chủ đề ẩn ............................................................................................. 39
Bảng 8. Ví dụ về phân tích sở thích người dùng. .......................................................... 40
Bảng 9. Đánh giá mô hình phân tích sở thích. .............................................................. 44
Bảng 10. Độ chính xác của mô hình dựa vào đánh giá của người sử dụng.................... 44
vi
Mở đầu
Từ khi những bài báo đầu tiên về lọc công tác được công bố từ những năm 90 của
thế kỉ trước, hệ tư vấn đã chứng tỏ được vai trò quan trọng của mình trong cả hai khía
cạnh nghiên cứu và ứng dụng. Chúng ta có thể dễ dàng tiếp cận với các bài báo khoa học
liên quan đến từ khóa “Recommender System” trong hơn 8600 kết quả trả về từ máy tìm
kiếm GoogleScholar 1 với hơn 1100 kết quả cho riêng năm 2009 hoặc sử dụng các ứng
dụng tư vấn nổi tiếng như sách trên Amazon2, phim trên NetFlix3.
Các hệ tư vấn hoạt động như một bộ lọc thông tin [8], nhằm cố gắng đưa ra các
thông tin về nội dung hoặc thông tin về sản phẩm (như phim, sách, website, tin tức,…) có
nhiều khả năng thuộc được người dùng quan tâm. Thông thường, một hệ tư vấn so sánh
mối quan tâm của người dùng (trong khóa luận, hai khái niệm mối quan tâm người dùng
hay sở thích người dùng có thể được sử dụng thay thế cho nhau) với một vài đặc trưng
tham chiếu để đưa ra các ước lượng đánh giá cho các sản phẩm. Các đặc trưng này có thể
đến từ các thông tin của sản phẩm (hướng tiếp cận lọc dựa trên nội dung) hoặc từ môi
trường xã hội người dùng (hướng tiếp cận lọc cộng tác).
Mặc dù các hệ thống tư vấn đã được nghiên cứu từ khá lâu, và đã có nhiều ứng
dụng chứng minh được tính hiệu quả của các hệ thống tư vấn trên thế giới, các nghiên cứu
về lĩnh vực này ở Việt Nam còn hạn chế. Mong muốn phát triển một hệ thống tư vấn,
khóa luận tập trung vào xây dựng một hệ thống tư vấn các tin tức tiếng Việt.
Ngày nay, khái niệm “báo điện tử” cũng như việc đọc tin tức điện tử đã không còn
xa lạ với đa số người dân Việt Nam. Những thống kê trong gần đây trên BaoMoi4 về số
lượt người sử dụng internet để xem các tin tức điện tử hiện nay đang cho thấy nhu cầu
ngày một tăng của xã hội trong lĩnh vực truyền thông này. Tuy nhiên, một vấn đề còn tồn
tại hiện nay đó là trong khi có quá nhiều tin tức mỗi ngày được cập nhật, người dùng
giường như bị chìm ngập trong biển thông tin mà vẫn không tìm ra được các thông tin
phù hợp, đó chính là môi trường cho các lĩnh vực liên quan đến tư vấn tin tức phát triển.
Nắm bắt được nhu cầu này, khóa luận đề xuất một giải pháp tư vấn các nội dung thông tin
liên quan đến ngữ cảnh tiếp nhận thông tin hiện tại của người sử dụng, qua đó mong
1 http://www.scholar.google.com
2 http://www.amazon.com
3 http://www.netflix.com
4 http://www.baomoi.com/Statistics/Report.aspx
1
muốn cung cấp được những chỉ dẫn đúng, nhanh chóng, và không có các phiền toái từ
việc phải đăng kí hay cung cấp các thông tin cá nhân.
Nội dung chính của khóa luận được chia làm 4 phần:
Chương 1. Các hệ thống tư vấn: Trình bày các khái niệm, các thuật ngữ, các kĩ
thuật liên quan đến hệ thống tư vấn. Các ưu và nhược điểm của các kĩ thuật này
cũng được trình bày chi tiết hơn trong các mục 1.2 và 1.3.
Chương 2. Mô hình hóa sở thích người dùng cho các hệ tư vấn dựa trên nội
dung: Giới thiệu về bài toán xây dựng sở thích người dùng, các thông tin được
sử dụng để phân tích và một số kĩ thuật mô hình sở thích người dùng.
Chương 3. Mô hình: Trình bày đề xuất xây dựng sở thích người dùng dựa trên
phân tích chủ đề ẩn phổ biến và các thực thể, và áp dụng của mô hình này vào hệ
thống tư vấn tin tức.
Chương 4. Thực nghiệm và đánh giá: Trình bày một số kết quả đánh giá ban
đầu.
2
Chương 1. Khái quát về các hệ thống tư vấn
Trong cuộc sống hàng ngày, khi đứng trước quá nhiều lựa chọn, người ta thường
dựa trên những ý kiến hay lời khuyên của mọi người xung quanh. Nhưng trong kỉ nguyên
thông tin, hàng triệu thông tin được đưa lên internet mỗi ngày, điều này dẫn tới yêu cầu
phải có các phương pháp tự động thu thập thông tin và đưa ra lời khuyên để hỗ trợ cho các
phương pháp truyền thống trên . Hệ tư vấn (recommender system) là một giải pháp như
vậy. Hệ thống này đưa ra gợi ý dựa trên những gì người dùng đã làm trong quá khứ,
hoặc dựa trên tổng hợp ý kiến của những người dùng khác. Hệ tư vấn đã trở thành một
ứng dụng quan trọng và thu hút được sự quan tâm lớn của các nhà nghiên cứu cũng như
các doanh nghiệp.
Một số hệ tư vấn nổi tiếng hiện nay như [26] :
Phim / TV/ âm nhạc: MovieLens, EachMovie, Morse, Firefly, Flycasting
Tin tức / báo chí: Tapestry, GroupLens, Lotus Notes, Anatagonomy…
Sách / Tài liệu: Amazon.com, Foxtrot, InfoFinder…
Web: Phoaks, Gab, Fab, IfWeb, Let's Browse …
Nhà hàng: Adaptive Place Advisor, Polylens, Pocket restaurent finder…
Du lịch: Dietorecs, LifestyleFinder …
1.1.
Bài toán tư vấn
Một cách hình thức, bài toán tư vấn được các tác giả Adomavicius và Tuzhilin [2]
mô tả như sau:
Gọi U = (u ,u , u , … , u ) là tập hợp tất cả người dùng trong hệ thống tư vấn,
= (i , i , i , … , i ) là tập tất cả các sản phẩm có thể tư vấn.
Một hàm g = × → , trong đó R là một tập hợp có thứ tự, được dùng để đo sự
phù hợp của sản phẩm in với người dùng um.
Như vậy, với mỗi người dùng um thuộc vào U, hệ tư vấn cần chọn ra các sản phẩm
i
,
∈ , chưa biết với người dùng um sao cho hàm g đạt giá trị lớn nhất.
∀u ∈ ,
i
,
= arg max g(u , i )
3
Trong các hệ thống tư vấn, mức độ phù hợp của sản phẩm thường được biểu diễn
theo đánh giá thang điểm (rating), phụ thuộc vào từng ứng dụng, các đánh giá này có thể
được thực hiện trực tiếp bởi người dùng hoặc được tính toán bởi hệ thống.
Mỗi người dùng thuộc không gian ngươi dùng U được xác định bởi một hồ sơ (user
profile), những thông tin lưu trong hồ sơ này có thể bao gồm các thông tin như giới tính,
tuổi, quốc gia, tính trạng hôn nhân, … hay cũng có thể bao gồm các thông tin về sở thích,
mối quan tâm của họ. Tương tự như vậy, mỗi sản phẩm cũng được mô tả bởi tập hợp các
đặc trưng của chúng. Ví dụ, trong hệ thống tư vấn phim, các đặc trưng của một bộ phim
có thể là tên phim, thể loại, đạo diễn, diễn viên chính,…
Một cách khát quát tiến trình tư vấn có thể được mô tả như sau:
Hình 1. Các thành phần chính của hệ thống tư vấn.
Đầu tiên, bộ phận học hồ sơ người dùng phân tích các sở thích ngươi dùng. Một khi
hệ thống hiểu được người dùng quan tâm đến điều gì, nó thực thi một thuật toán tư vấn,
so sánh, tổ hợp giữa các hồ sơ người dùng hoặc giữa hồ sơ người dùng với các đặc trưng
sản phẩm, sau đó chọn ra tập hợp những sản phẩm người dùng có thể ưa thích.
Vấn đề chính của hệ tư vấn là hàm g không được xác định trên toàn không gian
× mà chỉ trên một miền nhỏ của không gian đó. Điều này dẫn tới việc hàm g phải
được ngoại suy trong không gian này. Thông thường, độ phù hợp được thể hiện bằng
điểm và chỉ xác định trên tập các sản phẩm đã từng được người dùng đánh giá từ trước
4
(thường khá ít). Ví dụ, bảng 2 là đánh giá của một số người dùng với các phim mà họ đã
xem (thang điểm từ 0-10, kí hiệu ∅ nghĩa là bộ phim chưa được người dùng cho điểm).
Từ những thông tin đó, hệ thống tư vấn phải dự đoán (ngoại suy) điểm cho các bộ phim
chưa được người dùng đánh giá, từ đó đưa ra những gợi ý phù hợp nhất.
Bảng 1. Đánh giá theo thang điểm về một số bộ phim đã xem.
Spartacus
Back to the
Future 3
HarryPotter 6
Up
A
2
∅
8
9
B
8
7
∅
∅
C
∅
∅
6
5
D
∅
4
∅
7
1.2.
Các kĩ thuật tư vấn
Có rất nhiều cách để dự đoán, ước lượng hạng/điểm cho các sản phẩm như sử dụng
học máy, lí thuyết xấp sỉ, các thuật toán dựa trên kinh nghiệm… Các hệ thống tư vấn
thường được phân thành ba loại dựa trên cách nó dùng để ước lượng các đánh giá về sản
phẩm:
Dựa trên nội dung (content-based): người dùng được gợi ý những sản phẩm
tương tự như các sản phẩm từng được họ đánh giá cao.
Cộng tác (collaborative): người dùng được gợi ý những sản phẩm mà những
người cùng sở thích với họ đánh giá cao.
Lai ghép (hybrid): kết hợp cả hai phương pháp trên.
1.2.1. Kĩ thuật tư vấn dựa trên nội dung
Hệ tư vấn dựa trên nội dung đưa ra các tư vấn dựa trên phỏng đoán rằng một người
có thể thích các sản phẩm có nhiều đặc trưng tương tự với các sản phẩm mà họ đã từng ưa
thích. Theo đó, độ phù hợp g(u,i) của sản phẩm i với người dùng u được đánh giá dựa
5
trên độ phù hợp g(u, ij), trong đó ij ∈ và tương tự về nội dung i. Ví dụ, để gợi ý một bộ
phim cho người dùng u, hệ thống tư vấn sẽ nhận ra sở thích của u qua các đặc điểm của
những bộ phim từng được u đánh giá cao (như thể loại, tên đạo diễn…); sau đó chỉ những
bộ phim tương đồng với sở thích của u 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ất
nhiề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).
Để cụ thể hơn, đặt Content(i) là tập thông tin (hay tập các đặc trưng) về sản
phẩm i. Do hệ thống dựa trên nội dung được thiết kế chủ yếu để dành cho các sản phẩm
dạng văn bản hoặc có các mô tả nội dung (metadata) dạng văn bản nên phương pháp biểu
diễn thường được lựa chọn là mô hình không gian vector (Vector Space Model ). Theo
đó, nội dung sản phẩm được biểu diễn bởi các từ khóa: Content(i) = (wi1,wi2,…,wik), với
wi1,..wik là trọng số của các từ khóa (như TF-IDF) từ 1 tới k trong không gian từ khóa
được xây dựng từ trước. Ví dụ điển hình cho hệ thống dạng này là các hệ tư vấn trang web
như Fab[5], biểu diễn nội dung các trang web bằng 100 từ quan trọng nhất hay Syskill &
Webert [23] sử dụng 128 từ có trọng số cao nhất.
Đặt Profile(u) là hồ sơ về người dùng u, bao gồm các thông tin về sở thích của u.
Những thông tin này có được bằng cách phân tích nội dung của các sản phẩm từng được u
đánh giá (cho điểm) trước đó. Phương pháp được sử dụng thường là các kĩ thuật phân
tích từ khóa của IR, do đó, Profile(u) cũng có thể được định nghĩa như một vector trọng
số: Profile(u) = (wu1, …,wuk) với xuj biểu thị độ quan trọng của từ khóa j với người dùng
u.
Trong hệ thống tư vấn dựa trên nội dung, độ phù hợp g(u,i) được xác định bởi công
thức:
g(u,i) = Score(Profile(u), Content(i))
Cả Profile(u), Content(i) đều được biểu diễn bằng vector trọng số từ TF-IDF (tương
ứng là các vector ⃗ , ⃗ ) nên ta có thể sử dụng một công thức tính độ tương tự như độ đo
cosin:
6
g( , ) = cos( ⃗ , ⃗ )= ‖
⃗ . ⃗
⃗ ‖×‖ ⃗ ‖
Bên cạnh các phương pháp IR, hệ tư vấn dựa trên nội dung còn sử dụng nhiều
phương pháp học máy khác như: phân lớp Bayes, cây quyết định, mạng nơron nhân
tạo… Các phương pháp này khác với các phương pháp của IR ở chỗ nó dựa trên các mô
hình học được từ dữ liệu nền. Ví dụ, dựa trên tập các trang web đã được người dùng
đánh giá là “thích” hay “không thích” có thể sử dụng phân lớp Bayes để phân lớp các
trang web chưa được đánh giá.
Một số hạn chế của hệ thống tư vấn dựa trên nội dung:
Theo công trình khảo sát các hệ tư vấn của Adomavicius và Tuzhulin[2], các hệ
thống tư vấn dựa trên nội dung có một vài hạn chế sau đây:
Sự phân tích nội dung bị hạn chế (Restricted content analysis): Tính hiệu quả của
hệ tư vấn này phụ thuộc vào việc mô tả một cách đầy đủ các đặc trưng nội dung
của sản phẩm. Vì vậy, nội dung sản phẩm phải hoặc có thể được trích xuất tự
động bởi máy tính hoặc dễ dàng được trích xuất bằng tay. Có nhiều trường hợp,
yêu cầu này rất khó thực hiện, ví dụ trong miền ứng dụng tư vấn dữ liệu đa
phương tiện như ảnh đồ họa, phim, âm thanh,… Trích xuất tự động đặc trưng nội
dung của các đối tượng dữ liệu này là một bài toán khó, và việc trích xuất bằng
tay là không khả thi do chi phí lớn.
Sự lạm dụng nội dung chuyên môn (Content over-specialisation): Sự tư vấn chỉ
được tạo ra từ phân tích nội dung các sản phẩm đã từng được người dùng ưa
thích, trong khi các những đánh giá của người dùng khác có thể được sử dụng để
tư vấn những sản phẩm mới (thậm chí khác loại), những tư vấn dựa trên nội
dung chỉ có thể đưa ra những sản phẩm tương tự với những gì họ đã từng đánh
giá cao trước đây. Trong nhiều trường hợp, những sản phẩm không nên được tư
vấn nếu nó quá giống với các sản phẩm đã được đánh giá từ trước. Một ví dụ
điển hình là trong các hệ thống tư vấn tin tức, những tin tức tư vấn được đánh giá
cao hơn nếu nó không phải là một bản trích dẫn hoặc có nội dung thông tin trùng
lặp.
7
Vấn đề người dùng mới (new user problem): Người dùng cần đánh giá một
lượng sản phẩm đủ lớn trước khi hệ thống tư vấn có thể thực sự hiểu sở thích của
họ, và đưa ra những tư vấn đáng tin cậy.
1.2.2. Kĩ thuật tư vấn cộng tác
Theo Adomavicius và cộng sự [2], không giống như phương pháp tư vấn dựa trên
nội dung, hệ thống cộng tác dự đoán độ phù hợp g(u,i) của một sản phẩm i với người
dùng u dựa trên độ phù hợp g(uj, i) giữa người dùng uj và i, trong đó uj 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 u, đầ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 với u, ví dụ cùng thích các bộ phim hành
động. Sau đó, những bộ phim được họ đánh giá cao sẽ được dùng để tư vấn cho u.
Có rất nhiều hệ thống cộng tác đã được phát triển như: Grundy, GroupLens (tin
tức), Ringo (âm nhạc), Amazon.com (sách), Phoaks (web)… Các hệ thống này có thể chia
thành hai loại: dựa trên kinh nghiệm (heuristic-based hay memory-based) và dựa trên mô
hình (model-based).
Hệ thống cộng tác dựa trên kinh nghiệm
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 đó. Nghĩa là, độ phù hợp của sản phẩm in với
người dùng um, g(um, in) được tổng hợp từ đánh giá của những người dùng khác về in
(thường là N người có sở thích tương đồng nhất với um).
Theo đó, hướng tiếp cận lọc cộng tác này tổ hợp các đánh giá người dùng cùng sở
thích này:
Trong đó,
m
là tập các người dùng cùng sở thích với um.
Một số ví dụ về hàm tổ hợp [2]:
8
Trong đó, d là hệ số chuẩn hóa
Giá trị trung bình các đánh giá của người dùng uj
Có nhiều cách để tính độ tương đồng (về sở thích) giữa hai người dùng, nhưng trong
hầu hết các phương pháp, độ tương đồng chỉ được tính dựa trên các sản phẩm được cả hai
người cùng đánh giá. Hai phương pháp phổ biến nhất là dựa trên độ tương quan
(correlation-based) và dựa trên cosin (cosine-based).
Biểu diễn những đánh giá quá khứ của hai người dùng u m và u j tương ứng như sau:
Độ tương đồng dựa trên cosin:
9
Độ tương quan:
Hệ thống cộng tác dựa trên mô hình
Khác với phương pháp dựa trên kinh nghiệm, 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ự đoán hạng
của các sản phẩm chưa được đánh giá.
Breese [10] đề xuất hướng tiếp cận xác suất cho lọc cộng tác (collaborative
filtering), trong đó công thức sau ước lượng đánh giá của người dùng u về sản phẩm i
(thang điểm đánh giá từ 0 đến n):
ru,i =
,
=∑
× Pr
,
=
,́
, ́ ∈
Billsus và Pazzani [9] đề xuất phương pháp lọc cộng tác trên nền học máy, trong đó
rất nhiều các kĩ thuật học máy (như mạng nơron nhân tạo) và các kĩ thuật trích chọn đặc
trưng (như SVD – một kĩ thuật đại số nhằm làm giảm số chiều của ma trận) có thể được
sử dụng.
Ngoài ra còn nhiều hướng tiếp cận khác như mô hình thống kê, mô hình bayes, mô
hình hồi quy tuyến tính, mô hình entropy cực đại…
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ột loại sản
phẩm, kể cả những sản phẩm mới, khác hoàn toàn so với những gì người dùng từng xem.
Một số hạn chế của hệ thống tư vấn lọc cộng tác
Một số hạn chế của các hệ tư vấn lọc cộng tác có thể được liệt kê như sau:
Vấn đề của sự đánh giá thưa thớt: vấn đề số lượng các đánh giá từ người dùng
quá ít để tạo ra các dự đoán đủ tin cậy. Mức độ thành công của các hệ thống tư
10
vấn phụ thuộc nhiều vào những đánh giá nhận được từ khách hàng, và sự tư vấn
cộng tác được thực hiện dựa trên sự chồng lấn của những đánh giá này. Vì vậy,
rất khó để có thể đưa ra những tư vấn chính xác khi không gian đánh giá là thưa
thớt. Ví dụ như một vài sản phẩm chỉ được nhận được ít đánh giá từ người dùng,
chúng có thể rất ít có cơ hội được tư vấn, thậm chí cả khi được đánh giá cao.
Vấn đề người dùng mới: Chiến lược cộng tác học sở thích người dùng từ chính
những đánh giá trong quá khứ của họ. Đối với những người dùng mới chưa thực
hiện đánh giá nào, không có một sự tư vấn nào có thể được tạo ra.
Vấn đề sản phẩm mới: tương tự như vấn đề người dùng mới, đối với những sản
phẩm mới, chưa nhận được đánh giá nào từ phía người dùng, không thể có sự tư
vấn nào về chúng.
Vấn đề chú cừu xám: Đối với người dùng có sở thích khác biệt với số đông, sự
tư vấn đôi khi không mang lại kết quả.
Vấn đề thiếu tính đa dạng: Vì tri thức của hệ thống về nội dung chỉ dựa trên các
lựa chọn từ phía người dùng, nên sự tư vấn thường có xu hướng lệch về những
sản phẩm đã được chọn trong quá khứ, kết quả là trong khi phải xử lý lượng lớn
dữ liệu, phần lớn những tư vấn được tạo ra lại chỉ tập trung vào những sản phẩm
phổ biến nhất. Ví dụ điển hình cho những cản trở của vấn đề này là ở các hệ
thống tư vấn tin tức, trong khi những tin tức mới hơn có thể mang nhiều giá trị
hơn, những tin tức được nhiều người đọc trước đây lại thường xuyên được tư
vấn.
1.2.3. Kĩ thuật tư vấn lai
Một vài hệ tư vấn kết hợp cả phương pháp cộng tác và dựa trên nội dung nhằm
tránh những hạn chế của cả hai. Có thể phân thành bốn cách kết hợp như sau:
Cài đặt hai phương pháp riêng rẽ rồi kết hợp dự đoán của chúng.
Tích hợp các đặc trưng của phương pháp dựa trên nội dung vào hệ thống cộng
tác.
Tích hợp các đặc trưng của phương pháp cộng tác vào hệ thống dựa trên đặc
trưng.
Xây dựng mô hình hợp nhất, bao gồm các đặc trưng của cả hai phương pháp.
11
Kết hợp hai phương pháp riêng rẽ
Có hai kịch bản cho trường hợp này:
Cách 1: Kết hợp kết quả của cả hai phương pháp thành một kết quả chung duy
nhất, sử dụng cách kết hợp tuyến tính (linear combination) hoặc voting scheme.
Cách 2: Tại mỗi thời điểm, chỉ chọn phương pháp cho kết quả tốt hơn (dựa trên
một số độ đo chất lượng tư vấn nào đó).
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
Một số hệ thống lai (như Fab[5]) dựa chủ yếu trên các kĩ thuật cộng tác nhưng vẫn
duy trì hồ sơ về người dùng (theo dạng của mô hình dựa trên nội dung). Hồ sơ này được
dùng để tính độ tương đồng giữa hai người dùng, nhờ đó giải quyết được trường hợp có
quá ít sản phẩm chung được đánh giá bởi cả hai người. Một lợi ích khác là các gợi ý sẽ
không chỉ giới hạn trong các sản phẩm được đánh giá cao bởi những người cùng sở
thích (gián tiếp), mà còn cả với những sản phẩm có độ tương đồng cao với sở thích của
chính người dùng đó (trực tiếp).
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
Hướng tiếp cận phổ biến nhất là dùng các kĩ thuật giảm số chiều trên tập hồ sơ của
phương pháp dựa trên nội dung. Ví dụ, Soboroff và Nicholas [29] sử dụng phân tích
ngữ nghĩa ẩn (latent semantic analysis) để tạo ra cách nhìn cộng tác (collaborative
view) với tập hồ sơ người dùng (mỗi hồ sơ được biểu diễn bởi một vector từ khóa).
Mô hình hợp nhất hai phương pháp
Trong những năm gần đây đã có khá nhiều nghiên cứu về mô hình hợp nhất. Basu
và cộng sự [5] đề xuất kết hợp đặc trưng của cả hai phương pháp vào một bộ phân
lớp dựa trên luật (rule-based classifier). Popescul và cộng sự [25] đưa ra phương pháp
xác suất hợp nhất dựa trên phân tích xác suất ngữ nghĩa ẩn (probabilistic latent
semantic analysis). Ansari và cộng sự [4] giới thiệu mô hình hồi quy Bayes sử dụng
dây Markov Monte Carlo để ước lượng tham số.
12
- Xem thêm -