..
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢƠNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
---------------------------------------
NGUYỄN VĂN THỊNH
Hệ gợi ý
Chuyên ngành : Công nghệ thơng tin
LUẬN VĂN THẠC SĨ KĨ THUẬT
CƠNG NGHỆ THƠNG TIN
NGƢỜI HƢỚNG DẪN KHOA HỌC :
PGS-TS Lê Thanh Hƣơng
HÀ NỘI 09-2015
0
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
LỜI CÁM ƠN
Trƣớc tiên em xin gửi lời cảm ơn chân thành đến các thầy cô trong viện Công nghệ
thông tin và truyền thông, bộ môn Hệ thống thông tin, cũng nhƣ tồn thể các thầy
cơ trong trƣờng Đại học Bách Khoa Hà Nội đã truyền đạt cho em rất nhiều kiến
thức quý báu trong suốt thời gian theo học chƣơng trình sau đại học vừa qua. Đó là
những kiến thức vô cùng quan trọng giúp em ngày càng trƣởng thành và vững vàng
hơn trong chun mơn của mình.
Đặc biệt, em xin chân thành cảm ơn PGS.TS Lê Thanh Hƣơng – ngƣời đã tận tình
giúp đỡ, chỉ bảo em trong suốt thời gian thực hiện luận văn, giảng viên trực tiếp
hƣớng dẫn em làm đề tài tốt nghiệp này.
Cuối cùng em xin cảm ơn toàn bộ mọi ngƣời trong gia đình cũng nhƣ bạn bè ln
quan tâm động viên em trong suốt quá trình thực hiện luận văn. Những tình cảm đó
sẽ là nguồn động viên vơ cùng lớn lao để em có thể tiếp tục đối đầu với những khó
khăn trong cuộc sống và cơng việc sau này.
Hà Nội, ngày 03 tháng 09 năm 2015
Tác giả
Nguyễn Văn Thịnh
1
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
MỤC LỤC
LỜI CÁM ƠN .............................................................................................................1
MỤC LỤC ...................................................................................................................2
DANH SÁCH HÌNH...................................................................................................5
CHƢƠNG 1: MỞ ĐẦU ..............................................................................................6
CHƢƠNG 2: CÁC KIẾN THỨC NỀN TẢNG ..........................................................9
2.1. Các phƣơng pháp gợi ý ..................................................................................9
2.2. Mơ hình hố các hệ thống gợi ý ..................................................................14
2.2.1. Phƣơng pháp gợi ý dựa theo nội dung ..................................................14
2.2.2. Phƣơng pháp gợi ý theo lọc cộng tác ....................................................30
2.2.3. So sánh các phƣơng pháp gợi ý. ...........................................................34
2.2.4. Các hệ thống gợi ý lai. ..........................................................................36
2.3. Một số hệ thống gợi ý điển hình ..................................................................40
CHƢƠNG 3: CÁC PHƢƠNG PHÁP GỢI Ý ĐƢỢC CÀI ĐẶT TRONG HỆ
THỐNG .....................................................................................................................44
3.1. Đặc trƣng của hệ thống gợi ý tin tức. ..........................................................44
3.2. Phƣơng pháp gợi ý dựa theo nội dung. ........................................................45
3.2.1. Biểu diễn nội dung bài báo ...................................................................45
3.2.2. Biểu diễn hồ sơ ngƣời dùng. .................................................................49
3.3. Phƣơng pháp gợi ý dựa trên lọc cộng tác. ...................................................51
3.4. Phƣơng pháp gợi ý lai ..................................................................................53
CHƢƠNG 4: THỰC THI HỆ THỐNG GỢI Ý TIN TỨC CHO ĐIỆN THOẠI DI
ĐỘNG .......................................................................................................................54
4.1. Phân tích và thiết kế hệ thống ......................................................................54
4.1.1. Biểu đồ ca sử dụng (Use case) ..............................................................54
4.1.2. Biểu đồ trình tự (Sequence diagram) ....................................................63
4.2. Xây dựng tập dữ liệu ...................................................................................66
4.2.1. Thu thập dữ liệu bài báo .......................................................................66
2
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
4.2.2. Thu thập thông tin của ngƣời dùng .......................................................69
4.2.3. Thu thập đánh giá của ngƣời dùng .......................................................70
4.2.4. Tiền xử lý dữ liệu ..................................................................................71
4.2.5. Dữ liệu sử dụng phƣơng pháp tính trọng số tf-idf tăng cƣờng. ............71
4.2.6. Dữ liệu sử dụng phƣơng pháp gợi ý theo nội dung dựa trên mô hình
chủ đề ẩn LDA. ..................................................................................................71
4.2.7. Dữ liệu sử dụng trong phƣơng pháp lọc cộng tác. ................................72
4.3. Môi trƣờng và các cơng cụ sử dụng ............................................................72
4.3.1. Cấu hình phần cứng. .............................................................................72
4.3.2. Các phần mềm sử dụng. ........................................................................73
4.4. Thiết kế thử nghiệm .....................................................................................73
4.4.1. Bài toán gợi ý bài báo đƣợc cài đặt phƣơng pháp lọc nội dung sử dụng
trọng số tf-idf tăng cƣờng. .....................................................................................73
4.4.2. Bài toán gợi ý bài báo đƣợc cài đặt phƣơng pháp lọc nội dung dựa trên
mơ hình chủ đề ẩn LDA.....................................................................................76
4.4.3. Cài đặt phƣơng pháp lọc cộng tác.........................................................78
4.4.4. Cài đặt phƣơng pháp lai ........................................................................79
4.5. Phƣơng pháp đánh giá .................................................................................80
4.5.1. Các chỉ số sử dụng đánh giá .................................................................80
4.5.2. Phƣơng pháp đánh giá ..........................................................................81
CHƢƠNG 5: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ..........................................88
5.1. Các kết quả đạt đƣợc ...................................................................................88
5.2. Hƣớng phát triển ..........................................................................................89
3
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
DANH SÁCH BẢNG
Bảng 2.1: Phân loại các hệ thống gợi ý .....................................................................10
Bảng 2.2: So sánh các phƣơng pháp gợi ý ................................................................14
Bảng 3.1: Danh sách đƣờng dẫn file RSS của các chuyên mục ...............................68
4
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
DANH SÁCH HÌNH
Hình 2. 1: Minh hoạ hệ thống gợi ý lọc cộng tác ......................................................11
Hình 2. 2: Minh hoạ hệ thống gợi ý dựa theo nội dung ............................................12
Hình 2. 3: Minh hoạ hệ thống gợi ý dựa trên cơ sở tri thức......................................13
Hình 2. 4: Sơ đồ kiến trúc ở mức cao của hệ thống gợi ý dựa theo nội dung ...........15
Hình 2. 5: Tài liệu với K chủ đề ẩn ...........................................................................22
Hình 2. 6: Biểu diễn đồ họa LDA .............................................................................22
Hình 2. 7: Ƣớc lƣợng tham số tập dữ liệu văn bản. ..................................................24
Hình 2. 8: Minh hoạ hệ thống gợi ý lai .....................................................................36
Hình 2. 9: Kết quả gợi ý theo lọc cộng tác của Amazon ..........................................41
Hình 2. 10: Kết quả gợi ý dựa theo nội dung của Amazon .......................................41
Hình 2. 11: Giao diện thu thập đánh giá cho mỗi cuốn sách của Amazon ...............42
Hình 2. 12: Chức năng Feedback Profile của trang eBay .........................................43
Hình 4. 1: Biểu đồ ca sử dụng của hệ thống………………………………… …….54
Hình 4. 2: Biểu đồ trình tự chức năng gợi ý theo nội dung ......................................64
Hình 4. 3: Biểu đồ trình tự chức năng gợi ý theo lọc cộng tác .................................65
Hình 4. 4: Biểu đồ trình tự chức năng gợi ý lai ........................................................66
5
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
CHƢƠNG 1: MỞ ĐẦU
1.1 Bài toán gợi ý tin tức trên điện thoại di động
Lƣợng độc giả sử dụng internet để đọc báo và tin tức đang ngày một gia tăng
với tốc độ lớn. Lấy ví dụ với Báo VnExpress, lƣợng truy cập đang liên tục tăng và
trang Google Analytics thống kê VnExpress hiện có 42 triệu lƣợt xem (pageviews)
trung bình mỗi ngày và 24 triệu độc giả thƣờng xuyên (unique visitor), trong đó
16% từ nƣớc ngồi.
Thói quen của ngƣời đọc cũng đang có những thay đ i cơ bản với xu hƣớng
sử dụng các thiết bị di động. Sau nhiều năm đƣợc dự báo, cuối cùng việc đọc tin tức
qua điện thoại di động khơng cịn là “tƣơng lai”, mà đã là “hiện tại”. Lƣu lƣợng truy
cập VnExpress qua mobile đã tăng gấp đơi trong vịng một năm qua và đang chiếm
gần 25% t ng lƣợt xem. Tỷ lệ này dự tính sẽ tiếp tục tăng mạnh trong năm nay. Vì
vậy mà chúng ta cần phải đáp ứng tiện ích tối đa cho ngƣời đọc. (Nguồn: trang
VnExpress)
Trong những năm gần đây, hệ thống gợi ý (recommender system) đƣợc biết
đến nhƣ là một sự phát triển quan trọng trong việc giúp ngƣời dùng đối mặt với sự
bùng n thông tin. Hệ thống này đƣợc ứng dụng trong nhiều lĩnh vực nhƣ thƣơng
mại điện tử với Amazon, Netflix, Ebay ; trong lĩnh vực giải trí với MovieLens,
Last.fm, Film-Conseil ; trong lĩnh vực khác nhƣ tin tức trực tuyến netnews,…
Kể từ năm 2007, đã có hội nghị chuyên về hệ gợi ý (ACM) là diễn đàn quốc tế hàng
đầu cho việc trình bày kết quả nghiên cứu mới, trong lĩnh vực rộng lớn của hệ gợi ý.
Tuy nhiên, các hệ thống gợi ý hiện tại vẫn địi hỏi phải có nhiều cải tiến hơn
nữa để làm cho phƣơng pháp gợi ý hiệu quả hơn phù hợp với từng lĩnh vực (loại dữ
liệu) áp dụng để có thể cung cấp gợi ý phù hợp với từng cá nhân riêng biệt.
Trong khuôn kh nghiên cứu này, chúng tôi muốn hƣớng tới hệ thống gợi ý
áp dụng cho các trang báo mạng. Với trang tin tức, ngƣời đọc sẽ gặp một số trở ngại
trong việc tìm đọc những thơng tin theo ý thích vì sự gia tăng về số lƣợng cũng nhƣ
đa dạng về nội dung của tin tức. Vì vậy ứng dụng này ra đời nhằm mục đích tránh
bất tiện cho ngƣời dùng điện thoại di động trong việc phải mở nhiều trang tin tức
6
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
khác nhau, tiết kiệm thời gian, công sức và chi phí cho khách hàng, giúp họ tìm ra
bài báo một cách nhanh chóng và chính xác.
1.2 Mục tiêu của đề tài
Đề tài đồ án tốt nghiệp của tơi nhằm tìm hiểu về bài toán gợi ý tin tức cho
thiết bị di động, các phƣơng pháp gợi ý truyền thống, và áp dụng các phƣơng pháp
gợi ý này để cài đặt một hệ thống gợi ý đọc báo phù hợp với sở thích cá nhân của
độc giả sử dụng điện thoại di động.
Các phƣơng pháp gợi ý truyền thống đƣợc cài đặt bao gồm lọc cộng tác
(collaborative filtering based recommendation), lọc dựa trên nội dung (content
based recommendation) và gợi ý lai ghép (hybrid).
1.3 Tính ứng dụng
Đề tài có thể áp dụng cho trang báo nhƣ VnExpress, Dân trí, Zing.vn… để
gợi ý cho độc giả bài báo mà họ có thể thích. Từ đó giảm thời gian phải đọc quá
nhiều bài báo cho độc giả, thu hút thêm độc giả mới, giữ đƣợc những độc giả một
cách lâu dài.
Để thu lợi nhuận từ ứng dụng thì chúng ta có thể đặt quảng cáo trong ứng
dụng cho các bên thứ ba nhƣ Google Inc, Apple Inc…
Ứng dụng hồn tồn có thể triển khai trên AppStore, cho phép ngƣời dùng iPhone
tải miễn phí.
1.4 Cấu trúc luận văn
Cấu trúc của luận văn gồm 5 phần:
Chƣơng 1: Giới thiệu đề tài gồm giới thiệu bài toán gợi ý, mục tiêu của đề tài và
tính ứng dụng của đề tài.
Chƣơng 2: Trình bày các kiến thức nền tảng trong lĩnh vực gợi ý bao gồm định
nghĩa các hệ thống gợi ý, giới thiệu một số phƣơng pháp gợi ý, mơ hình hố các hệ
7
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
thống gợi ý, một số hệ thống gợi ý điển hình. Trong phần mơ hình hố các hệ thống
gợi ý: trình bày phƣơng pháp gợi ý theo lọc cộng tác và gợi ý dựa theo nội dung, so
sánh hai phƣơng này và hệ thống gợi ý lai ghép. Trong phần một số gợi ý điển hình:
trình bày một số hệ thống gợi ý đƣợc sử dụng trong lĩnh vực thƣơng mại điện tử.
Chƣơng 3: Trình bày chi tiết thực thi các phƣơng pháp gợi ý đƣợc cài đặt trong hệ
thống gợi ý tin tức. Các phƣơng pháp này bao gồm lọc cộng tác, lọc dựa theo nội
dung và gợi ý lai ghép.
Chƣơng 4: Trình bày phân tích và thiết kế hệ thống, cấu trúc tập dữ liệu đƣợc sử
dụng hệ thống và kết quả đánh giá hệ thống.
Chƣơng 5: Trình bày kết quả đạt đƣợc và hƣớng mở rộng.
Phần cuối cùng trình bày các tài liệu tham khảo và tham chiếu đƣợc sử dụng khi
viết đồ án này.
Tóm tắt chƣơng 1
Trong chƣơng này thì chúng tơi chủ yếu trình bày về bài toán cần giải quyết, mục
tiêu của đồ án, tính ứng dụng của đề tài và cấu trúc đồ án. Chƣơng tiếp theo của đồ
án sẽ trình bày về lý thuyết t ng quan của hệ thống gợi ý, các phƣơng pháp gợi ý,
một số hệ thống gợi ý điển hình đang đƣợc áp dụng trong thực tế.
8
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
CHƢƠNG 2: CÁC KIẾN THỨC NỀN TẢNG
Hệ thống gợi ý (Recommender systems hoặc Recommendation systems) là
một dạng của hệ hỗ trợ ra quyết định, cung cấp giải pháp mang tính cá nhân hóa mà
khơng phải trải qua q trình tìm kiếm phức tạp. Hệ gợi ý học từ ngƣời dùng và gợi
ý các sản phẩm tốt nhất trong số các sản phẩm phù hợp.
Hệ thống gợi ý sử dụng các tri thức về sản phẩm, các tri thức của chuyên gia hay
tri thức khai phá học đƣợc từ hành vi của ngƣời dùng để đƣa ra các gợi ý về sản
phẩm mà họ thích trong hàng ngàn hàng vạn sản phẩm có trong hệ thống. Các
website thƣơng mại điện tử, ví dụ nhƣ sách, phim, nhạc, báo…sử dụng hệ thống gợi
ý để cung cấp các thông tin giúp cho ngƣời sử dụng quyết định sẽ lựa chọn sản
phẩm nào. Các sản phẩm đƣợc gợi ý dựa trên số lƣợng sản phẩm đó đã đƣợc bán,
dựa trên các thơng tin cá nhân của ngƣời sử dụng, dựa trên sự phân tích hành vi
mua hàng trƣớc đó của ngƣời sử dụng để đƣa ra các dự đoán về hành vi mua hàng
trong tƣơng lai của chính khách hàng đó. Các dạng gợi ý bao gồm: gợi ý các sản
phẩm tới ngƣời tiêu dùng, các thơng tin sản phẩm mang tính cá nhân hóa, t ng kết
các ý kiến cộng đồng, và cung cấp các chia sẻ, các phê bình, đánh giá mang tính
cộng đồng liên quan tới yêu cầu, mục đích của ngƣời sử dụng đó. Các phần dƣới
đây sẽ trình bày chi tiết các phƣơng pháp gợi ý
2.1. Các phƣơng pháp gợi ý
Giả sử rằng I là tập các đối tƣợng (Item) có thể đƣợc gợi ý, U là tập ngƣời dùng,
u là một ngƣời dùng cụ thể trong tập U và i là một đối tƣợng cụ thể trong I mà
chúng ta muốn dự đoán cho u (dựa vào sở thích của u).
Phƣơng pháp gợi
Dữ liệu cơ sở
Dữ liệu đầu ra
Tiến trình xử lý
Dựa theo lọc cộng
Các điểm số đánh
Các điểm số đánh
Nhận ra ngƣời sử
tác
giá của những
giá của u cho các
dụng trong U
ngƣời sử dụng
đối tƣợng trong I.
tƣợng tự với u ( về
ý
9
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
trong U đối với
sở thích) và sau đó
các đối tƣợng
ngoại suy điểm số
trong I.
đánh giá của u cho
i.
Dựa theo nội dung Các đặc điểm của
Các điểm số đánh
Tạo ra một mơ
các đối tƣợng
giá của u cho các
hình mơ tả sở
trong I.
đối tƣợng trong I.
thích của ngƣời sử
dụng u, sau đó sử
dụng để đánh giá
mức độ ƣa thích
của u với i.
Dựa trên cơ sở tri
Các đặc điểm của
Một sự mô tả nhu
Suy luận sự phù
thức
các đối tƣợng
cầu và sở thích
hợp giữa I và nhu
trong I. Các tri
của ngƣời sử dụng
cầu của u.
thức (hiểu biết) về
u.
sự phù hợp giữa
các đối tƣợng với
nhu cầu của ngƣời
sử dụng.
Bảng 2.1: Phân loại các hệ thống gợi ý
Hệ thống gợi ý dựa theo lọc cộng tác (Collaborative recommendation systems):
Là phƣơng pháp gợi ý đƣợc triển khai rộng rãi nhất và thành công nhất trong thực
tế. Hệ thống theo lọc cơng tác phân tích và t ng hợp các điểm số đánh giá của các
đối tƣợng, nhận ra sự tƣơng đồng giữa những ngƣời sử dụng trên cơ sở các điểm số
đánh giá của họ và tạo ra các gợi ý dựa trên sự so sánh này. Hồ sơ (profile) của
ngƣời sử dụng điển hình trong hệ thống lọc cộng tác bao gồm một vector các đối
tƣợng (item) và các điểm số đánh giá của chúng, với số chiều tăng lên liên tục khi
ngƣời sử dụng tƣơng tác với hệ thống theo thời gian. Một số hệ thống sử dụng
phƣơng pháp chiết khấu dựa trên thời gian (time-based discounting) để tính tốn
10
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
cho yếu tố “trƣợt” đối với sự quan tâm của ngƣời sử dụng . Trong một số trƣờng
hợp điểm số đánh giá (rating) có thể là nhị phân (thích/khơng thích) hoặc các giá trị
số thực cho thấy mức độ ƣu tiên. Thế mạnh lớn nhất của kỹ thuật gợi ý theo lọc
cộng tác là chúng hoàn toàn độc lập với sự biểu diễn của các đối tƣợng đang đƣợc
gợi ý, và do đó có thể làm việc tốt với các đối tƣợng phức tạp nhƣ âm thanh và
phim. Schafer, Konstan & Riedl (1999) gọi lọc cộng tác là “tƣơng quan giữa ngƣời
– với – ngƣời” (people-to-people correlation).
Hình 2. 1: Minh hoạ hệ thống gợi ý lọc cộng tác
Hệ thống gợi ý dựa theo nội dung (Content-based recommendation systems): Là
sự kế thừa và mở rộng của lĩnh vực nghiên cứu lọc thơng tin . Trong hệ thống thì
các đối tƣợng đƣợc biểu diễn bởi các đặc điểm liên quan tới chúng. Ví dụ, hệ thống
gợi ý văn bản nhƣ hệ thống lọc tin NewsWeeder sử dụng những từ của các văn bản
nhƣ các đặc điểm. Một số hệ thống gợi ý dựa trên nội dung học một hồ sơ cá nhân
về sở thích của ngƣời sử dụng dựa trên các đặc điểm xuất hiện trong chính các đối
tƣợng ngƣời sử dụng đã đánh giá (rated). Schafer, Konstan & Riedl gọi gợi ý theo
nội dung là “tƣơng quan đối tƣợng với đối tƣợng” (item-to-item correlation). Hồ sơ
ngƣời sử dụng của một hệ thống gợi ý theo nội dung phụ thuộc vào phƣơng pháp
học máy đƣợc dùng. Cây quyết định (Decision trees), mạng noron (neural nets) và
biểu diễn dựa theo vector (vector-based representations) đều có thể đƣợc sử dụng để
học hồ sơ ngƣời dùng. Cũng giống nhƣ trong lọc cộng tác, hồ sơ ngƣời dùng trong
gợi ý dựa theo nội dung là những dữ liệu lâu dài và đƣợc cập nhật theo thời gian.
11
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
Hình 2. 2: Minh hoạ hệ thống gợi ý dựa theo nội dung
Hệ thống gợi ý dựa trên cơ sở tri thức (Knowledge-based recommenders
systems): Hệ thống này cố gắng gợi ý các đối tƣợng dựa trên các suy luận về nhu
cầu và sở thích của ngƣời dùng. Theo một nghĩa nào đó, tất cả các kỹ thuật gợi ý có
thể mô tả nhƣ là làm một số suy luận. Phƣơng pháp tiếp cận dựa trên cơ sở tri thức
đƣợc phân biệt ở chỗ: chúng có kiến thức làm thế nào một đối tƣợng cụ thể đáp ứng
nhu cầu một ngƣời dùng cụ thể, và do đó có thể lập luận về mối quan hệ giữa nhu
cầu và các gợi ý cụ thể.
Sử dụng miền tri thức rõ ràng, có liên quan tới mối quan hệ giữa yêu cầu của ngƣời
dùng và sản phẩm cụ thể. Ban đầu ngƣời ta đƣa ra 3 dạng tri thức: tri thức về danh
mục (tri thức về sản phẩm đƣợc gợi ý), tri thức ngƣời sử dụng (tri thức về các yêu
cầu của ngƣời sử dụng), tri thức về các chức năng (tri thức để ánh xạ các yêu cầu
của ngƣời sử dụng tới các sản phẩm thoả mãn các yêu cầu đó).
Phƣơng pháp này không dựa trên tiểu sử ngƣời sử dụng nên không gặp phải khó
khăn về sản phẩm mới và ngƣời dùng mới. Gợi ý trên cơ sở tri thức có khả năng suy
diễn, khả năng suy diễn phụ thuộc vào độ phù hợp của yêu cầu ngƣời sử dụng với
các thuộc tính của sản phẩm.
12
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
Mọi hệ thống dựa trên cơ sở tri thức đều là mối quan hệ thu nhận tri thức. Thực tế,
chất lƣợng của các phƣơng án gợi ý tùy thuộc vào độ chính xác của cơ sở tri thức.
Đây cũng là hạn chế lớn nhất của phƣơng pháp này.
Hình 2. 3: Minh hoạ hệ thống gợi ý dựa trên cơ sở tri thức
So sánh các phƣơng pháp gợi ý:
Phƣơng pháp
Dựa theo lọc cộng tác
Ƣu điểm
Nhƣợc điểm
A. Khả năng đa hạng
I. Vấn đề ngƣời dùng mới
J. Vấn đề sản phẩm/đối
mục
B. Không cần tri thức tƣợng mới
K. Vấn đề “Gray sheep”
miền
C. Chất lƣợng tăng
theo thời gian
D. Đủ thông tin phản
L.Chất lƣợng phụ thuộc
vào độ lớn dữ liệu lịch sử
thao tác của ngƣời sử
hồi khơng tƣờng
dụng
minh
M. Vần đề về tính bền
vững và mềm dẻo
Dựa theo nội dung
B, C, D
I, L, M
Dựa trên cơ sở tri thức
E, F, G
P
E. Có thể ánh xạ giữa Q. Cần phải thu thập tri
nhu cầu ngƣời
thức.
dùng và sản
13
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
phẩm/đối tƣợng
Bảng 2.2: So sánh các phƣơng pháp gợi ý
2.2. Mơ hình hố các hệ thống gợi ý
2.2.1. Phƣơng pháp gợi ý dựa theo nội dung
Với phƣơng pháp gợi ý dựa trên nội dung, độ phù hợp u(ua, s) của sản phẩm
s với ngƣời dùng ua đƣợc đánh giá dựa trên độ phù hợp u(ua, s𝑖), trong đó si ϵ S:
tập các sản phẩm và “tƣơng tự” nhƣ s. Ví dụ, để gợi ý một bộ phim cho ngƣời
dùng ua, hệ thống tƣ vấn sẽ tìm các đặc điểm của những bộ phim từng đƣợc ua đánh
giá cao (nhƣ diễn viên, đạo diễn…); sau đó chỉ những bộ phim tƣơng đồng với sở
thích của ua 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).
2.2.1.1.
Kiến trúc của các hệ thống gợi ý dựa theo nội dung
Theo [10], Các hệ thống lọc thông tin dựa trên nội dung cần các kỹ thuật thích hợp
để biểu diễn các đối tƣợng và hồ sơ ngƣời dùng và phƣơng pháp để so sánh hồ sơ
ngƣời dùng với biểu diễn của đối tƣợng. Kiến trúc ở mức cao của hệ thống gợi ý
dựa trên theo nội dung đƣợc mơ tả trong hình 2.1. Quá trình gợi ý đƣợc thực hiện
trong ba bƣớc, mỗi bƣớc đƣợc xử lý bởi một thành phần riêng biệt của hệ thống :
14
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
Hình 2. 4: Sơ đồ kiến trúc ở mức cao của hệ thống gợi ý dựa theo nội dung
Thành phần phân tích đặc điểm của đối tƣợng (CONTENT ANALYZER): Khi
thơng tin khơng có cấu trúc (ví dụ nhƣ văn bản), một số bƣớc tiền xử lý là cần thiết
để trích xuất ra các thơng tin liên quan có cấu trúc. Nhiệm vụ chính của thành phần
này là tạo biểu diễn hình thức thích hợp (có cấu trúc) cho đối tƣợng (ví dụ nhƣ các
tài liệu, trang web, tin tức, giới thiệu sản phẩm,…) từ các nguồn thông tin ban đầu
cho bƣớc xử lý tiếp theo. Thông tin ban đầu của đối tƣợng đƣợc phân tích bằng các
kỹ thuật trích xuất đặc điểm để chuyển đ i sự biểu diễn từ các thơng tin khơng có
cấu trúc tới các thơng tin có cấu trúc. Sự biểu diễn này là dữ liệu đầu vào cho thành
phần học hồ sơ ngƣời sử dụng và thành phần lọc.
Ví dụ từ một bài báo ban đầu, chúng ta sẽ phải bóc tách lấy dữ liệu, sau đó
tiến hành tiền xử lý dữ liệu (tách từ, loại bỏ từ dừng, đƣa chữ hoa về chữ thƣờng,
loại bỏ kí tự đặc biệt…)…Nhƣ vậy chúng ta đã thu đƣợc một tập các từ khố liên
quan bài báo, có thể biểu diễn bài báo dƣới dạng vector từ khoá.
15
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
Thành phần học hồ sơ ngƣời sử dụng (PROFILE LEARNER): Thành phần này
thu nhập dữ liệu mơ tả sở thích ngƣời dùng và cố gắng khái quát hoá dữ liệu này, để
xây dựng hồ sơ cá nhân ngƣời dùng. Thông thƣờng, các kỹ thuật học máy đƣợc sử
dụng để tạo ra hồ sơ ngƣời dùng . Các kỹ thuật này có thể học một mơ hình sở thích
ngƣời sử dụng từ các đối tƣợng đã đƣợc đánh giá bởi ngƣời sử dụng trong quá khứ.
Ví dụ, thành phần học hồ sơ ngƣời sử dụng của một hệ thống gợi ý các trang web có
thể hiện phƣơng pháp phản hồi thơng tin liên quan (relevance feedback) cho phép
ngƣời sử dụng đƣa ra các đánh giá trên các đối tƣợng đang quan sát, sau đó các kỹ
thuật học máy kết hợp với vector chứa đựng thông tin đánh giá vào một vector
chung đại diện cho hồ sơ ngƣời dùng. Dữ liệu huấn luyện là các trang web, trên đó
các phản hồi đã đƣợc cung cấp bởi ngƣời sử dụng.
Thành phần lọc (FILTERING COMPONENT): Thành phần này khai thác
hồ sơ ngƣời dùng để gợi ý các đối tƣợng có liên quan bằng cách so sánh sự tƣơng tự
giữa biểu diễn hồ sơ ngƣời sử dụng và biểu diễn của các đối tƣợng ứng viên. Kết
quả tạo ra một sự dự đoán về sở thích ngƣời sử dụng cho đối tƣợng ứng viên, thơng
thƣờng đặc trƣng bởi một giá trị nhị phân hoặc liên tục, trƣờng hợp thứ hai dẫn đến
một danh sách hạng của các đối tƣợng. Trong trƣờng hợp này, sự tƣơng tự có thể
đƣợc thực hiện bằng cách tính tốn độ tƣơng đồng cosine giữa vector biểu diễn hồ
sơ ngƣời dùng và vector biểu diễn đối tƣợng.
Bƣớc đầu tiên của quá trình gợi ý đƣợc thực hiện bởi thành phần phân tích
đặc điểm đối tƣợng, sử dụng các kỹ thuật từ lĩnh vực truy vấn thông tin
(information retrieval). Các thông tin khơng có cấu trúc của các đối tƣợng từ
Information Source qua thành phần phân tích đặc điểm đối tƣợng, đƣợc trích xuất ra
các đặc điểm và từ đó sinh ra sự biểu diễn có cấu trúc cho đối tƣợng, đƣợc lƣu vào
Represented Items.
Để xây dựng và cập nhật hồ sơ ngƣời dùng ua, các tƣơng tác của ua với hệ
thống đƣợc thu thập theo một vài phƣơng pháp khác nhau và đƣợc lƣu ở Feedback.
Các thông tin phản hồi (là các đánh giá) này cùng với các đối tƣợng đƣợc phản hồi,
đƣợc sử dụng trong suốt quá trình học một hồ sơ ngƣời sử dụng. Ngƣời sử dụng
16
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
cũng có thể xác định rõ sở thích của họ ngay từ lúc đầu mà không cần bất kỳ đánh
giá nào về sau.
Hai kỹ thuật đƣợc sử dụng để thu thập các thông tin phản hồi của ngƣời sử
dụng. Khi một hệ thống yêu cầu ngƣời sử dụng đánh giá các đối tƣợng, kĩ thuật này
đƣợc gọi là phản hồi tƣờng minh (explicit feedback). Một kỹ thuật khác, đƣợc gọi là
phản hồi không tƣờng minh (implicit feedback), không yêu cầu bất cứ sự đánh giá
cụ thể nào của ngƣời sử dụng cho các đối tƣợng, thay vào đó các thơng tin phản hồi
đƣợc thu thập thông qua các tƣơng tác của ngƣời sử dụng với hệ thống theo thời
gian.
Có ba phƣơng pháp chính để có đƣợc thơng tin phản hồi tƣờng minh:
-
like/dislike – các đối tƣợng đƣợc phân loại là liên quan hoặc không liên quan
bằng đánh giá nhị phân.
-
ratings – sử dụng các số rời rạc để đánh giá đối tƣợng (ví dụ từ 1-5 để đánh
giá mức độ u thích của ngƣời dùng). Ngồi ra, xếp hạng mang tính tƣợng
trƣng đƣợc ánh xạ tới một dải số, chẳng hạn nhƣ trong Syskill & Webert,
trong đó ngƣời sử dụng có khả năng đánh giá một trang web nhƣ nóng, ấm,
hoặc lạnh.
-
text comments – thu thập và trình bày bình luận của ngƣời sử dụng để hỗ trợ
trong quá trình ra quyết định cho ngƣời sử dụng khác. Ví dụ, thông tin phản
hồi của khách hàng tại Amazon.com hay eBay.com có thể giúp ngƣời sử
dụng quyết định mua một sản phẩm đã đƣợc đánh giá cao bởi những ngƣời
sử dụng khác. Mặc dù rất hữu ích nhƣng ngƣời dùng mất thời gian để đọc và
phân tích các bình luận xem có nên hay khơng nên mua sản phẩm.
Thơng tin phản hồi tƣờng minh có ƣu điểm là đơn giản, mặc dù việc áp dụng các số
/ các tƣợng trƣng (biểu tƣởng) yêu cầu ngƣời sử dụng phải hiểu đƣợc, và có thể
khơng đầy đủ cho việc thu thập đánh giá của ngƣời sử dụng về các đối tƣợng.
Phƣơng pháp phản hồi không tƣờng minh là dựa trên các hành động cụ thể ngƣời sử
dụng vào một đối tƣợng, chẳng hạn nhƣ lƣu trữ, loại bỏ, in ấn, đánh dấu trang,…
Ƣu điểm chính là khơng địi hỏi sự tham gia trực tiếp của ngƣời sử dụng.
17
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
Để xây dựng hồ sơ của ngƣời sử dụng ua, tập huấn luyện (training set) TRa cho
ngƣời sử dụng ua phải đƣợc xác định. TRa là tập hợp các cặp ⟨Ik, rk⟩, với rk là điểm
số đánh giá (feedback) cung cấp bởi người sử dụng ua cho đối tượng Ik. Sau đó
TRa được sử dụng bởi thành phần học hồ sơ người sử dụng, bằng cách áp dụng
các thuật toán học máy có giám sát để sinh ra một mơ hình đặc trưng cho sự
u thích của người sử dụng, được lưu ở khối Profile và về sau được sử dụng
bởi thành phần lọc.
Để cụ thể hơn, đặt Content(s) là tập thông tin (hay tập các đặc trƣng) về sản
phẩm s. 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 là text, nên nội dung sản phẩm thƣờng đƣợc biểu diễn bởi các từ
khóa (keyword): Content(s) = (w1s, …w ks), với w1s,…,w
ks
là trọng số của các
từ khóa từ 1 tới k (có thể đƣợc tính bằng TF-IDF). Ví dụ, hệ gợi ý website Fab biểu
diễn nội dung các trang web bằng 100 từ quan trọng nhất. Tƣơng tự, hệ thống
Syskill & Webert biểu diễn văn bản bằng 128 từ có trọng số cao nhất.
Đặt Profile(ua) là hồ sơ về ngƣời dùng ua, bao gồm các thơng tin về sở thích
của ua. 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 ua đá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(ua) cũng có thể đƣợc
định nghĩa nhƣ một vector trọng số:
, …,
Profile(ua) = (
) với
biểu thị độ quan trọng của từ khóa i với
ngƣời dùng ua.
Trong hệ thống tƣ vấn dựa trên nội dung, độ phù hợp u(ua,s) đƣợc xác định bởi
cơng thức:
u(ua,s) = score(Profile(ua), Content(s))
Cả Profile(ua), Content(s) đều có thể đƣợc biểu diễn bằng vector trọng số từ TFIDF (tƣơng ứng là ⃗⃗⃗⃗⃗ , ⃗⃗⃗⃗ ) nên có thể đo độ tƣơng đồng của chúng bằng độ đo
cosin:
u(
, s)
cos(⃗⃗⃗⃗⃗ , ⃗⃗⃗⃗ )
⃗⃗⃗⃗⃗ . ⃗⃗⃗⃗
⃗⃗⃗⃗⃗
18
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
⃗⃗⃗⃗
Ví dụ, nếu ua đọc nhiều bài báo thuộc lĩnh vực sinh học thì các từ khóa liên quan tới
sinh học (nhƣ gen, protein, tế bào, ADN…) trong Profile(ua) sẽ có trọng số cao. Hệ
quả là với các bài báo s cũng thuộc lĩnh vực này sẽ có độ phù hợp u(ua,s) cao hơn
với ngƣời dùng ua.
Thông thƣờng, thành phần lọc thực thi một vài phƣơng pháp để xếp hạng các
đối tƣợng có khả năng đƣợc u thích bởi ngƣời sử dụng. Những đối tƣợng đƣợc
xếp hạng cao nhất (có khả năng phù hợp với sở thích của ngƣời dùng nhất) sẽ đƣợc
gợi ý tới ngƣời sử dụng. Sở thích của ngƣời sử dụng có thể thay đ i theo thời gian,
do đó các thơng tin cập nhật về sở thích ngƣời sử dụng đƣợc cập nhật bởi thành
phần học hồ sơ ngƣời sử dụng.
Tiếp sau đây chúng ta sẽ tìm hiểu về phƣơng pháp biểu diễn đối tƣợng và
học hồ sơ ngƣời sử dụng.
2.2.1.2.
Biểu diễn có cấu trúc một đối tƣợng (Item Profile)
a. Biểu diễn theo phƣơng pháp trọng số TF-IDF
Các đối tƣợng có thể đƣợc biểu diễn bởi một tập hợp các đặc điểm (attribute
hoặc property). Ví dụ, trong một hệ thống gợi ý phim, các đặc điểm thích hợp có thể
đƣợc dùng cho biểu diễn một phim là: các diễn viên, các đạo diễn, các thể
loại,...Khi mọi đối tƣợng đƣợc miêu tả bởi cùng một tập hợp các đặc điểm, và có
một tập các giá trị đã biết cho mỗi đặc điểm này, ta nói các đối tƣợng này đƣợc biểu
diễn có cấu trúc (structured data). Trong trƣờng hợp này, nhiều thuật tốn học máy
có thể đƣợc sử dụng để học một hồ sơ ngƣời sử dụng .
Trong hầu hết các hệ thống gợi ý dựa theo nội dung, các đối tƣợng đƣợc biểu
diễn bởi các đặc điểm văn bản (textual features) đƣợc trích xuất từ các trang Web,
thƣ điện tử, các bài báo, tin tức mới, hoặc các thông tin mô tả sản phẩm. Thông
thƣờng một đối tƣợng văn bản đƣợc biểu diễn bởi các từ khóa quan trọng nhất trong
văn bản. Mức độ quan trọng của từ khóa
định bởi một trọng số
trong đối tƣợng văn bản
đƣợc quyết
có thể đƣợc xác định theo một vài cách khác nhau.
19
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
Phƣơng pháp đánh giá đƣợc biết đến nhiều nhất cho việc chỉ ra trọng số từ
khóa là TF-IDF (term frequency/inverse document frequency) . Giả sử N là số
lƣợng tài liệu trong hệ thống, và từ khóa
sử rằng
là số lần từ khóa
,
xuất hiện trong tài liệu
(term frequency) của từ khóa
,
xuất hiện trong
trong tài liệu
tài liệu. Hơn nữa, giả
. Do đó
,
, tần số từ
, đƣợc đinh nghĩa nhƣ sau:
,
=
,
Ở đây
,
là giá trị lớn nhất trong các
trong đối tƣợng
,
của tất cả những từ
xuất hiện
. Tuy nhiên, những từ khóa xuất hiện cùng lúc trong nhiều đối
tƣợng khơng có ích trong việc phân biệt giữa các đối tƣơng liên quan và không liên
quan. Do đó, việc đánh giá nghịch đảo tần số văn bản (inverse document frequency)
) đƣợc kết hợp với
(
,
.
cho từ khóa
Sau đó, trọng số TF-IDF của từ khóa
đƣợc định nghĩa nhƣ sau:
trong đối tƣợng
đƣợc định nghĩa nhƣ
sau:
,
Và đối tƣợng văn bản
(
,
,
,
,.....,
,
,
đƣợc xác định nhƣ sau:
)
Khơng giống nhƣ các dữ liệu có cấu trúc, các đối tƣợng văn bản khơng có các thuộc
tính với tập giá trị đƣợc định nghĩa trƣớc. Chính các đặc điểm văn bản tạo ra nhiều
sự phức tạp mới khi học một hồ sơ ngƣời sử dụng, do sự không “rõ ràng” của ngôn
ngữ tự nhiên. Vấn đề là ở chỗ, hồ sơ ngƣời sử dụng theo truyền thống thƣờng dựa
trên các từ khóa (keyword) khơng thể nắm bắt đƣợc ngữ nghĩa sở thích ngƣời sử
dụng do chúng ta chủ yếu sử dụng các phƣơng pháp so sánh sự tƣơng tự giữa các
chuỗi văn bản (string). Nếu một chuỗi văn bản, hoặc các biến thể hình thái học,
đƣợc tìm thấy trong cả hồ sơ ngƣời sử dụng và các dối tƣợng (trong trƣờng hợp
đang nói tới là các đối tƣợng văn bản), về cơ bản phải có một sự tƣơng quan xảy ra,
20
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
va do đó đối tƣợng phải đƣợc xem xét là có liên quan đến hồ sơ ngƣời sử dụng. Tuy
nhiên, việc so sánh sự tƣơng tự giữa các chuỗi văn bản gặp phải các vấn đề sau:
Tính đa nghĩa (Polysemy): Một từ (cụm từ) có nhiều nghĩa khác nhau
Tính đồng nghĩa (Synonymy): Nhiều từ có cùng một nghĩa
Kết quả là, do tính đồng nghĩa, các sự phù hợp (liên quan) có thể bị bỏ qua nên hồ
sơ ngƣời sử dụng khơng chứa đựng chính xác từ khóa trong đối tƣợng văn bản,
trong khi đó do tính nhiều nghĩa, các đối tƣơng văn bản có thể bị đánh giá nhầm là
có sự phù hợp (liên quan).
Việc sử dụng các kĩ thuật phân tích ngữ nghĩa trong q trình mơ hình cá nhân
hóa là một trong những các tiếp cận mới đƣợc đƣa ra để giải quyết vấn đề ở trên. Ý
tƣởng chính là việc áp dụng các kiến thức dựa trên, chẳng hạn nhƣ từ vựng hoặc
bản thể học, chú thích cho các đối tƣợng và mơ tả hồ sơ ngƣời dùng để có đƣợc một
sự phân tích “ngữ nghĩa” của các thông tin ngƣời dùng cần. Chúng ta sẽ tìm hiểu về
mơ hình tiếp theo ở phần dƣới.
b. Biểu diễn mơ hình chủ đề LDA (Latent Dirichlet Allocation)
Phân tích chủ đề cho văn bản nói chung và cho dữ liệu Web nói riêng có vai trị
quan trọng trong việc “hiểu” và định hƣớng thông tin trên Web. Khi ta hiểu một
trang Web có chứa những chủ đề hay thơng tin gì thì dễ dàng hơn cho việc xếp loại,
sắp xếp, và tóm tắt nội dung của trang Web đó. Trong phân lớp văn bản, mỗi văn
bản thƣờng đƣợc xếp vào một lớp cụ thể nào đó. Trong phân tích chủ đề, chúng ta
giả sử mỗi văn bản đề cập đến nhiều hơn một chủ đề (K chủ đề) và mức độ liên
quan đến chủ đề đƣợc biểu diễn bằng phân phối xác suất của tài liệu đó trên các chủ
đề.
21
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
Hình 2. 5: Tài liệu với K chủ đề ẩn
Có rất nhiều phƣơng pháp phân tích thơng tin chủ đề từ văn bản, điển hình là
mơ hình LDA. LDA là một mơ hình sinh (generative model) và thực hiện phân tích
chủ đề từ các tập dữ liệu văn bản hồn toàn phi giám sát (fully unsupervised). Về
mục tiêu, tƣơng tự với LSA (Latent Semantic Analysis), LDA đƣa ra một kĩ thuật
mô tả thu gọn các tập dữ liệu rời rạc (nhƣ tập văn bản). Về mặt trực quan, LDA
tìm những cấu trúc chủ đề (topics) và khái niệm (concepts) trong tập văn bản dựa
trên thông tin về đồng xuất hiện (co-occurrence) của các từ khóa trong văn bản, và
cho phép mơ hình hóa các khái niệm đồng nghĩa (synonymy) và đa nghĩa
(polysemy). Về mặt mơ hình hóa, LDA hoạt động tƣơng đối giống với pLSA
(Probabilistic Latent Semantic Analysis). Tuy vậy, LDA ƣu việt hơn pLSA ở một
vài điểm nhƣ tính đầy đủ và tính khái qt cao hơn.
Hình 2. 6: Biểu diễn đồ họa LDA
22
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
Mơ hình sinh trong LDA:
Cho trƣớc tập M tài liệu D = {d1, d2,…, dM}, trong đó tài liệu thứ m gồm Nm từ, từ
wi đƣợc rút ra từ tập các thuật ngữ {t1, t2,…, tV), V là số các thuật ngữ. Mơ hình
LDA đƣợc biểu diễn dƣới dạng đồ họa trong hình 2.7.
Q trình sinh trong mơ hình LDA diễn ra nhƣ sau: mơ hình LDA sinh các từ
wm,n có thể quan sát, các từ này đƣợc phân chia về các tài liệu. Với mỗi tài liệu, một
tỉ lệ chủ đề
đƣợc chọn từ phân bố Dirichlet (Dir( )), từ đó xác định các từ thuộc
chủ đề cụ thể. Sau đó, với mỗi từ thuộc tài liệu, chủ đề của từ đó đƣợc xác định là
một chủ đề cụ thể bằng cách lấy mẫu từ phân bố đa thức (Mult( ⃗⃗⃗⃗⃗ )).Cuối cùng, từ
phân bố đa thức (Mult( ⃗ zm,n)), một từ cụ thể wm,n đƣợc sinh ra dựa trên chủ đề đã
đƣợc xác định. Các chủ đề ⃗ zm,n đƣợc lấy mẫu một lần trong toàn kho ngữ liệu.
Các khối vng trong hình 2.7 biểu diễn các q trình lặp.
Các tham số đầu vào:
α và β: tham số mức tập hợp kho dữ liệu
⃗⃗⃗⃗⃗⃗ : phân bố chủ đề trên tài liệu m (tham số mức tài liệu)
Và Θ = *⃗⃗⃗⃗⃗ +
: ma trận M x K
zm,n: chỉ số chủ đề của từ thứ n trong tài liệu m (biến mức từ ngữ)
⃗ zm,n: phân bố thuật ngữ trên chủ đề cụ thể zm,n
Φ = ⃗⃗⃗⃗⃗⃗⃗⃗
* +
: ma trận K x V
wm,n: từ thứ n của văn bản n (biến mức từ ngữ)
M: số lƣợng các tài liệu
: sốlƣợng từtrong tài liệu m (độ dài của văn bản sau khi đã loại bỏ
stopword)
K:số lƣợng các chủ đề ẩn
Dir và Mult: phân bố Dirichlet và phân bố đa thức.
Vì wm,n phụ thuộc điều kiện vào phân bố ⃗⃗⃗⃗⃗ và zm,n phụ thuộc vào phân bố ⃗⃗⃗⃗⃗ , xác
suất để một chỉ mục chủ đề wm,n là một từ t nằm trong phân bố chủ đề trên tài liệu
⃗⃗⃗⃗⃗ và phân bố từ trên chủ đề (Φ) là:
23
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1
(
⃗⃗⃗⃗⃗ , )
,
∑ (
⃗⃗⃗⃗⃗ ) (
,
⃗⃗⃗⃗⃗⃗⃗ )
,
Với xác suất của mỗi thuật ngữ, ta có thể xác định đƣợc xác suất chung của tất cả
các biến đã biết và biến ẩn với các tham số Dirichlet cho trƣớc:
(⃗⃗⃗⃗⃗⃗ , ⃗⃗⃗⃗⃗ , ⃗⃗⃗⃗⃗ ,
, )
Tính tích phân trên ⃗⃗⃗⃗⃗ ,
(
)∏ (
,
⃗
,
) (
,
⃗⃗⃗⃗⃗⃗⃗ ) (⃗⃗⃗⃗⃗⃗⃗
)
và t ng trên ⃗⃗⃗⃗⃗ , ta xác định đƣợc xác suất của tài liệu
⃗⃗⃗⃗⃗⃗ . Khi đã có xác suất của mỗi tài liệu (⃗⃗⃗⃗⃗⃗
, ) xác suất của cả kho ngữ liệu D
= {d1, d2,…, dM} là tích của tất cả các xác suất của tất cả các tài liệu nằm trong đó:
(
, )
∏
(⃗⃗⃗⃗⃗⃗
, )
(2-1)
Ƣớc lƣợng giá trị tham số cho mơ hình LDA:
Hình 2. 7: Ƣớc lƣợng tham số tập dữ liệu văn bản.
Ƣớc lƣợng tham số cho mơ hình LDA bằng tối ƣu hóa một cách trực tiếp và chính
xác xác suất của tồn bộ tập dữ liệu trong biểu thức (2-1) là khó có thể thực hiện.
24
Học viên thực hiện: Nguyễn Văn Thịnh CB130460 Khóa 2013B Lớp CNTT1