Mô hình sở thích người dùng

Một phần của tài liệu ĐỀ TÀI " 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 " pot (Trang 37 - 59)

Trong mô hình này, sở thích của người dùng được biểu diễn bởi hai thông tin: Tập

các chủ đề ẩn người dùng quan tâm nhất và tập các thực thể liên quan.

Xác định tập chủ đề ẩn người dùng quan tâm được thực hiện qua 3 bước

Bước 1: Từ tập tài liệu mô tả sở thích người dùng, các chủ đề và phân phối của

chúng vào từng tài liệu được tính toán.

Ứng với mỗi tài liệu di thuộc vào tập D các tài liệu mô tả mối quan tâm người sử

dụng, sử dụng phân tích chủ đề ẩn ta được kết quả là tập các topic của tài liệu di,

kí hiệu là các TPj thuộc vào tập các topic TP, với trọng số wtpj. Topics(di) = {(TPj, wtpj),…}

Bước 2: Xếp hạng chủ đề dựa trên thống kê tính phổ biến

Rank (TPj) = Số lần xuất hiện của TPj trong ma trận D x TP với wtpj lớn hơn một

ngưỡng

Bước 3:Xác định Top N chủ đề ẩn có hạng cao nhất được sử dụng để biểu diễn

mô hình người dùng.

Các thực thể liên quan Các tin tức

người dùng

quan tâm trong phiên

Các chủ đề ẩn phổ

biến

30

Xác định tập thực thểqua 2 bước

Bước 1:Xác định tài liệu cần phân tích thực thể. Các tài liệu được sử dụng đề

phân tích các thực thể biểu diễn sở thích người dùng thỏa mãn hai điều kiện

sau:

o Là các tin tức thuộc phiên duyệt web người dùng

o Là các tin tức có nội dung liên quan đến chủ đề người dùng quan tâm đã

xác định ở quá trình xác định chủ đề ẩn phổ biến.

Bước 2: Trích xuất các thực thể từ các văn bản tin tức.

3.3. Áp dụng mô hình sở thích người dùng vào tư vấn tin tức

Nghiên cứu của chúng tôi phát triển một mô hình hệ thống tư vấn sử dụng mô hình

mối quan tâm đề xuất ở phần trước. Trong đó, ý tưởng chung của việc tư vấn dựa trên

xem các tin tức tư vấn tiềm năng là các tin tức mang thông tin về chủ đề và các thực thể (adsbygoogle = window.adsbygoogle || []).push({});

người dùng từng quan tâm. Ứng dụng tư vấn được tích hợp trong một hệ thống quản lý

nội dung (Content Management System). Vì vậy, giải pháp được đưa ra là xác định chủ đề

và các thực thể nằm trong mỗi tin tức được thực hiện ngay sau khi dữ liệu tin tức được

nhập vào cơ sở dữ liệu các tin tức của hệ thống. Khóa luận xem giai đoạn này là pha xử lý

phân tích dữ liệu tư vấn. Sau pha này, mỗi tin tức sẽ tương ứng với hai danh sách một

danh sách các chủ đề và một danh sách các thực thể. Pha tư vấn trực tuyến thực hiện thu

thập thông tin về sở thích người dùng thông qua thống kê các chủ đề phổ biến trong phiên duyệt web, sau đó tự động sinh các truy vấn cho cơ sở dữ liệu, kết quả đạt được là dữ liệu tư vấn liên quan thuộc về nhiều chủ đề và chứa các thông tin về các thực thể người dùng từng quan tâm.

3.3.1. Pha phân tích dữ liệu tư vấn

Input: Mỗi văn bản tin tức.

Output: Phân tích chủ đề và thực thể của từng tin tức.

Pha phân tích chủ đề ẩn.

o Suy diễn chủ đề ẩn

o Lựa chọn chủ đề chính

31

o Xác định các thực thể

o Lựa chọn thực thể chính

Pha này xử lý các tin tức trước khi được lưu trữ vào cơ sở dữ liệu. Quá trình xử lý

gồm hai pha phân tích độc lập.

Phân tích các chủ đề ẩn

Tin tức được suy diễn các chủ đề nó thuộc vào theo một mô hình chủ đề ẩnđã được

huấn luyện. Pha này, được thực hiện bởi hai bước:

Bước 1. Suy diễn chủ đềẩn:

Nhận đầu vào là các văn bản tin tức, bước này phân tích xác suất các chủ đề ẩn phản ánh nội dung trong văn bản. Các chủ đề có xác suất lớn hơn là các

Top chủ đề có xác suất cao Top các thực thể có trọng số cao Mô hình chủ đề Từ điển thực thể Tin tức Suy diễn chủ đề Xác định thực thể Cơ sở dữ liệu tin tức

32

chủ đề mà nội dung chính của tin tức hướng tới. Chú ý rằng số lượng các chủ đề

ẩn là không đổi, và mỗi chủđề đều có một xác suất phản ánh nội dung của văn

bản. Ví dụ, nếu ta chọn mô hình với 100 chủ đề ẩn để phân tích, mỗi văn bản

được xác định bởi một vector 100 chiều, với mỗi chiều là một chủ đề và mỗi giá

trị trong các chiều là trọng số xác suất của chủ đềtương ứng. (adsbygoogle = window.adsbygoogle || []).push({});

Bước 2.Xác định top các chủ đề có phân phối cao:

Từ các vector phân phối chủ đề của văn bản tin tức, ta cần xác định đâu là các chủ đề có thể đại diện cho nội dung thông tin của tin tức. Các chủ đề này có thể được nhận ra bởi hai ràng buộc:

o Số lượng chủ đề có thể biểu diễn nội dung cho một văn bản phải nằm

trong một giới hạn.

o Xác suất của chủ đề đó phải lớn hơn một ngưỡng cho trước.

Phân tích các thực thể liên quan.

Vì giá trị của tin tức còn liên quan đến các thực thể mà nó đề cập tới, ví dụ như tin

tức về kì nghỉ của tổng thống có giá trị hơn tin tức về kì nghỉ của một người bình thường. Pha này xác định các thực thể nằm trong văn bản tin tức. Các thực thể có thể được trích

xuất từ văn bản thông qua hai bước:

Bước 1:Xác định tất cả các thực thể trong nội dung tin tức.

Nếu coi văn bản tin tức tương ứng với một xâu và mỗi thực thể trong từ điển

là một mẫu, ta có thể áp dụng một thuật toán đối sánh xâu để nhận ra tất cả các

thực thể nằm trong nội dung của tin tức. Kết quả của bước này là một danh sách

các thực thể với trọng số là số lần xuất hiện của nó trong văn bản.

Bước 2: Lựa chọn các thực thể có trọng số cao để lưu trữ.

Những thực thể được nhận định là liên quan nhiều hơn tới nội dung của văn

bản nếu nó được nhắc tới hơn một số lần nào đó, bước này thực hiện lọc bớt các

thực thể xuất hiện quá ít (nhỏ hơn một ngưỡng). Các thực thể được lưu trữ như

33

3.3.2. Pha tư vấn trực tuyến

Input: Tập Url lưu trong phiên duyệt web.

Output: Tập các tin tức tư vấn.

Pha tiền xử lý tập Url trong phiên.

o Đưa các Url về một chuẩn thống nhất, xác định các tin tức trong phiên.

Pha phân tích mối quan tâmngười dùng.

o Xác định tin tức trong phiên và các chủđề tương ứng.

o Phân tích chủ đề ẩn phổ biến.

o Xác định tập thực thể liên quan trong phiên.  Pha xác định các tin tức tư vấn.

o Lọc ra danh sách các tin có cùng chủ đề phổ biếnẩn.

o Xếp hạng lại các tin có liên quan đến nhiều thực thể. (adsbygoogle = window.adsbygoogle || []).push({});

Tập url các tin tức trong phiên

Tiền xử lý CSDL tin

tức

Tập các tin tức trong phiên với các chủ đề ẩn. Thống kê các chủ đề phổ biến Các thực thể người dùng quan tâm trong phiên Truy vấn 1 Truy vấn 2 Các tin tức có chủ đề là chủ đề phổ biến. Truy vấn 3 Xếp hạng lại các tin tức Top các tin tức giành cho tư vấn

34

Tiền xử lý dữ liệu

Các Url lưu trong phiên người dùng được đưa về dạng chuẩn và thống nhất.

 Loại bỏ các Url không tương ứng với một tin tức chi tiết.

 Đưa các Url về dạng chuẩn, loại bỏ các tham số thừa.

Ví dụ: www.bestnews4u.com?newsid=20#top

www.bestnews4u.com?newsid=20

 Loại bỏ các Url trùng lặp.

 Lọc lấy trường định danh tin tức (newsid) trong các địa chỉ Url.

Phân tích sở thích người dùng

Như đã trình bày trong chương 3, sở thích người dùng có thể được xác định thông

qua các chủ đề phổ biến và các thực thể. Để nâng cao tốc độ đáp ứng, các phân tích về

chủ đề và thực thể cho từng tin tức đã được thực hiện trong pha phân tích dữ liệu tư vấn. Vì vậy, sở thích người dùng có thể trực tiếp trích xuất từ cơ sở dữ liệu. Một cách hình thức, công việc này gồm ba bước:

Bước 1. Trích xuất từcơ sở dữ liệu các tin tức trong phiên và các chủ đề tương ứng. (truy vấn 1như minh họa hình 14) .

Bước 2. Thống kê các chủ đề ẩn phổ biến:

Từ dữ liệu thu được ở bước 1, hệ thống thống kê các chủ đề xuất hiện lặp lại

trên các tin tức.

Trong thực tế, khi số lượng các tin tức trong phiên còn ít, chưa có sự chồng

lấn về chủ đề hay các tin tức có thể nằm ở những chủ đề riêng rẽ. Do vậy, hệ thống chưa thể xác định được chủ đề nào được quan tâm phổ biến, giải pháp cho tình huống này là lựa chọn các chủ đề của tin tức gần nhất được người dùng truy cập. Trong các trường hợp còn lại, một ngưỡngnào đó được sử dụng để xác định tính phổ biến của chủ đề.

Bước 3.Xác định tập thực thể trong các tin tức thuộc các chủ đề ẩn phổ biến:

Mỗi tin tức có nội dung liên quan đến một tập hợp các thực thể. Sau khi đã

xác định được các chủ đề phổ biến, cần có một phương pháp xác định thực thể vừa

35

(có thể có những tin tức không thuộc về chủ đề phổ biến). Vì vậy, truy vấn thực

hiện trích xuất các thực thể cần thỏa mãn hai ràng buộc (truy vấn 2 như minh họa

hình 14): (adsbygoogle = window.adsbygoogle || []).push({});

o Thuộc vào các tin tức trong phiên.

o Thuộc vào các tin tức có chủ đề là chủ đề phổ biến.

Tư vấn tin tức

Giai đoạn cuối cùng của tiến trình tư vấn là tìm ra những tin tức phù hợp nhất với

sở thích người dùng. Vì vậy, sự tư vấn có thể đạt được theo hai bước sau:

Bước 1:Xác định các tin tức ứng viên từ tập các tin tức có thể tin vấn.

Hệ thống lọc ra các tin tức thuộc vào cùng chủ đề với mối quan tâm người

dùng, thông qua đối sánh chủ đề ẩn của các tin tức trong cơ sở dữ liệu và chủ đề ẩn

được phân tích là được người dùng quan tâm phổ biến (truy vấn 3 minh họa hình

14).

Bước 2: Xếp hạng lại các tin tức.

Kết quả của bước 1 là một lớp các tin tức có thể người dùng quan tâm ở mức

chủ đề, có thể có quá nhiều tin tức như vậy, do vậy cần có một giải pháp xếp hạng

lại các tin tức này. Một giải pháp có thể triển khai dựa trên ý tưởng một phần tiêu chí ra quyết định của người dùng phụ thuộcở việc xem xét tin tức đó có liên quan

đến các thực thể đang được họ quan tâm hay không.

Từ tập thực thể của các tin tức tư vấn tiềm năng, hạng của một tin tức được

xác định bằng số thực thể nó đề cập tới thuộc vào danh sách các thực thể người

dùng quan tâm trong phiên duyệt webđã được phân tích trong pha trước.  Bước 3:Tư vấn top các tin tức xếp hạng cao nhất.

Quá trình xếp hạng cho ra một danh sách các tin tức được sắp xếp theo thứ tự

giảm dần về mức độ liên quan tới các thực thể người dùng đang quan tâm. Bước

36

3.4. Đánh giá kết quả tư vấn.

Việc đánh giá chất lượng của tin tứctư vấn trả về bởi hệ thống là một bài toán khó, vì không có một độ đo ngữ nghĩa đánh giá chính xác được sự phù hợp giữa người dùng và tin tức hệ thống trả lại.

Herlocker [18] đưa ra hai nguyên nhân chủ yếu dẫn tới việc đánh giá các hệ thống tư vấn là khó khăn. Nguyên nhân đầu tiên là chất lượng của hệ tư vấn phụ thuộc vào tập

dữ liệu sử dụng. Một hệ tư vấn tin tức có mô hình tốt chưa chắc đã tư vấn tốt hơn một hệ tư vấn có dữ liệu tốt(như một cơ sở dữ liệu tin tức phong phú). Nguyên nhân thứ hai là việc đánh giá hệ tư vấn có thể hướng tới các mục tiêu khác nhau. Trong một số hệ thống, các đánh giá có thể dựa trên số lần tư vấn dẫn đến quyết định đúng và sai. Trong một số khác, các đánh giá có thể dựa trên xem xét người dùng hài lòng hoặc không hài lòng đối

với các kết quả tư vấn.

Do các nguyên nhân này, để đánh giá tính đúng đắn của mô hình tư vấn đã được đề xuất, chúng tôi chủ yếu dựa vào việc thu thập ý kiến người sử dụng về kết quả tư vấn.

Bên cạnh đó, dựa vào kết quả nghiên cứu về phân tích sở thích của người sử dụng

thông qua lịch sử trình duyệt (history browser) được chúng tôi đề xuất trong công trình nghiên cứu sinh viên 2010 [1], chúng tôi đưa ra một phương pháp đánh giá tự động mô

hình phân tích sở thích dựa vào sự tương đồng giữa sở thích nổi trội trong phiên duyệt (adsbygoogle = window.adsbygoogle || []).push({});

web với sở thích nổi trội của lịch sử duyệt web của người sử dụng trong cùng một thời

điểm. Phương pháp đánh giá này sẽ xem xét sự tương đồng giữa sở thích của người sử

dụng trên nhiều trang và sở thích người sử dụng trên hệ thống để đưa ra sự đánh giá.

Chúng tôi so sánh 2 loại sở thích trên bằng cách lấy 3 chủ đề ẩn phổ biến nhất của 2 loại

sở thích ra làm đại diện, nếu giữa chúng có sự xuất hiện của 1 chủ đề cụ thể nào thì xem

37

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

4.1. Môi trường thực nghiệm

Bảng 5. Môi trường thực nghiệm.

Thành phần Thông số

CPU Core 2 Duo 2.0 GHz

RAM 2 GB HDD 320 GB OS Windows 7 Ultimate 4.2. Dữ liệu và công cụ 4.2.1. Dữ liệu Dữ liệu tư vấn

Để xây dựng bộ dữ liệu tư vấn của hệ thống, chúng tôi thu thập dữ liệu từ 3 trang

web là: Dantri, Vnexpress, 24h. Sau quá trình tiến hành tiền xử lý như bóc tách lấy nội

dung chính của tin tức, chúng tôi thu được 4333 tin :  2060 tin trên website Dantri.com.vn  1291 tin trên website Vnexpress.net  982 tin trên website 24h.com.vn

Dữ liệu phiên duyệt web của người sử dụng

Chúng tôi tiến hành thu thập 30 phiên duyệt web của 30 người sử dụng trên các website Dantri và Vnexpress thông qua việc phân tích các history.

Dữ liệu lịch sử trình duyệt của người sử dụng

Thu thập 30 dữ liệu lịch sử trình duyệt (history browser) của chính nhưng người sử

38

4.2.2. Công cụ

Bảng 6. Công cụ.

Công cụ Mô tả

SessionRecommendation Tác giả: Uông Huy Long

Mô tả: Bộ công cụ phân tích sở thích duyệt web của người sử

dụng thông qua Session và tư vấn tin tức dựa trên sở thích đã

được phân tích

JGibbLDA Tác giả: Nguyễn Cẩm Tú và Phan Xuân Hiếu

Mô tả: Công cụ phân tích chủ đề ẩn cho tài liệu viết trên nền

Java (adsbygoogle = window.adsbygoogle || []).push({});

Website: http://jgibblda.sourceforge.net

VutmDic Tác giả: Trần Mai Vũ

Mô tả: Bộ từ điển thực thể gồm 6479 thực thể thuộc 4 loại

thực thể: địa danh trong nước, địa danh nước ngoài, tên người,

tên tổ chức.

Vnexpress 100topics Tác giả: Nguyễn Cẩm Tú và Phan Xuân Hiếu

Mô tả: Bộ dữ liệu 100 chủ đề ẩn được phân tích từ Vnexpress

dùng để phân tích chủ đề ẩn

Website: http://jgibblda.sourceforge.net/vnexpress- 100topics.txt

Crawler4j Tác giả: Yasser Ganjisaffar

Mô tả: Công cụ thu thập dữ liệu từ các website báo điện tử

39

4.3. Thực nghiệm

4.3.1. Ví dụ về phân tích tin tức

Bảng 7. Một số chủ đề ẩn

Một phần của tài liệu ĐỀ TÀI " 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 " pot (Trang 37 - 59)