1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phát triển giải thuật so trùng hồ sơ cá nhân trong cộng đồng nghiên cứu khoa học

88 5 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 88
Dung lượng 624,43 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Việc xây dựng một mạng bao gồm các chuyên gia thuộc nhiều lĩnh vực, dựa trên các thông tin có được về mỗi người để xây dựng nên hồ sơ profile của người đó, so sánh các profile này để tìm

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA



  

THÁI THỊ THU THỦY

PHÁT TRIỂN GIẢI THUẬT SO TRÙNG HỒ

SƠ CÁ NHÂN TRONG CỘNG ĐỒNG NGHIÊN

CỨU KHOA HỌC

Chuyên ngành: Khoa học Máy tính

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 12 năm 2010

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

Cán bộ hướng dẫn khoa học : TS Phạm Trần Vũ

Cán bộ chấm nhận xét 1 :

Cán bộ chấm nhận xét 2 :

Luận văn thạc sĩ được bảo vệ tại

HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày tháng năm 2010

Trang 3

TRƯỜNG ĐẠI HỌC BÁCH KHOA CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA KHOA HỌC MÁY TÍNH Độc Lập - Tự Do - Hạnh Phúc

Tp HCM, ngày tháng năm 2010

NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ và tên học viên: Thái Thị Thu Thủy Phái: Nữ

Ngày, tháng, năm sinh: 24-09-1983 Nơi sinh: Huế

Chuyên ngành: Khoa học Máy tính

MSHV: 00707188

1- TÊN ĐỀ TÀI:

PHÁT TRIỂN GIẢI THUẬT SO TRÙNG HỒ SƠ CÁ NHÂN TRONG CỘNG ĐỒNG NGHIÊN CỨU KHOA HỌC 2- NHIỆM VỤ LUẬN VĂN:

3- NGÀY GIAO NHIỆM VỤ :

4- NGÀY HOÀN THÀNH NHIỆM VỤ :

5- HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: TS Phạm Trần Vũ

Nội dung và đề cương Luận văn thạc sĩ đã được Hội Đồng Chuyên Ngành thông qua

CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN KHOA QL CHUYÊN NGÀNH

(Họ tên và chữ ký) QUẢN LÝ CHUYÊN NGÀNH (Họ tên và chữ ký)

(Họ tên và chữ ký)

Trang 4

LỜI CAM ĐOAN

Tôi cam đoan rằng, ngoại trừ các kết quả tham khảo từ các công trình khác như

đã ghi rõ trong luận văn, các công việc trình bày trong luận văn này là do chính tôi thực hiện và chưa có phần nội dung nào của luận văn này được nộp để lấy một bằng cấp ở trường này hoặc trường khác

Ngày 06 tháng 12 năm 2010

Thái Thị Thu Thủy

Trang 5

LỜI CẢM ƠN

Tôi xin gởi lời cảm ơn chân thành và sâu sắc nhất đến TS Phạm Trần Vũ Cám

ơn Thầy đã tận tình chỉ bảo, hướng dẫn, định hướng cho tôi trong suốt thời gian thực hiện Luận văn Cám ơn Thầy đã chia sẻ cho tôi những kinh nghiệm quý báu trong nghiên cứu khoa học Điều đó đã giúp tôi rất nhiều trong việc thực hiện Luận văn cũng như trong công việc giảng dạy, nghiên cứu của tôi sau này

Tôi cũng xin cảm ơn gia đình đã động viên và tạo mọi điều kiện tốt nhất để tôi có thể tiếp tục theo đuổi việc học tập nghiên cứu Con xin cám ơn Cha Mẹ, nhờ công lao dưỡng dục của Người mà con mới có được thành quả như ngày hôm nay Con xin hứa

sẽ tiếp tục cố gắng phấn đấu để vươn cao hơn nữa Cám ơn anh Huỳnh Văn Quốc Phương, chồng của tôi, vì những động viên và hỗ trợ cho tôi trong suốt thời gian qua

Thái Thị Thu Thủy

Trang 6

TÓM TẮT ĐỀ TÀI

Trong đời sống sinh hoạt thường ngày cũng như trong công việc, học tập; được chia sẻ, tham vấn thông tin từ Internet là một nhu cầu thiết yếu Người mua hàng muốn biết thông tin về sản phẩm, ý kiến của các khách hàng khác đã từng mua và sử dụng sản phẩm để hỗ trợ cho việc ra quyết định mua hay không mua; người bán hàng cung cấp thông tin về sản phẩm, thông tin về các khách hàng đã từng mua sản phẩm, những gợi ý sản phẩm đi kèm; bạn bè muốn kết nối để chia sẻ thông tin, hình ảnh… của nhau…

Lĩnh vực nghiên cứu khoa học cũng vậy Trong lĩnh vực này, các nhà nghiên cứu luôn có nhu cầu chia sẻ và được chia sẻ thông tin với nhau Người làm nghiên cứu mong muốn được chia sẻ những nghiên cứu của họ, đồng thời cũng muốn có thông tin về hướng nghiên cứu mà họ đang quan tâm từ các nhà nghiên cứu khác Việc tìm ra các nhà nghiên cứu có cùng mối quan tâm, giới thiệu họ với nhau là một vấn đề rất đáng quan tâm

Đề tài mong muốn tìm ra một phương pháp đơn giản nhưng vẫn hiệu quả trong việc tìm ra những người dùng (cụ thể là các nhà nghiên cứu khoa học) có cùng mối quan tâm nghiên cứu Kết quả sẽ được sử dụng trong việc xây dựng một mạng (tương

tự mạng xã hội) gồm các nhà nghiên cứu, tìm ra những người có cùng mối quan tâm (có độ tương tự lớn nhất) để giới thiệu họ với nhau

Trang 7

ABSTRACT

In everyday life, sharing and getting information from Internet is an essential need Customers want to know about product information, comments about the products that other customers have bought and used; providers provide information

of products and that of customers whose have bought and used, recommend accompanied products; friends want to connect to share each other information, pictures…

It is the same for research field In this area, researchers always have the need

to share information They hope to share their research and at the same time want to have information about current research directions of others The task of finding researchers that have similar interest and introduce them is a noticeable issue

This work will try to find a simpe but efficient method to find out users (researchers specifically) with similar research interest The result will be used in the project of buiding a researcher network (something like social network) that can find researchers with similar interest and recommend them to each others

Trang 8

MỤC LỤC

Chương 1: GIỚI THIỆU 1

1.1 Phát biểu vấn đề 1

1.2 Tên đề tài 2

1.3 Phạm vi đề tài 2

1.4 Mục tiêu đề tài 3

1.5 Phương pháp thực hiện 3

Chương 2: TỔNG QUAN VỀ THU THẬP THÔNG TIN VÀ MÔ HÌNH NGƯỜI DÙNG 4

2.1 Thu thập thông tin (Information Retrieval – IR) 4

2.2 Mô hình người dùng (User Modeling) trong các hệ thống IR 5

2.2.1 Tạo, biểu diễn, duy trì profile 6

2.2.2 So sánh profile 16

Chương 3: LATENT SEMANTIC ANALYSIS (LSA) 25

3.1 Hoạt động của LSA 25

3.2 Ưu nhược điểm và các ứng dụng của LSA 32

Chương 4: HƯỚNG TIẾP CẬN ĐỀ TÀI VÀ GIẢI PHÁP 34

4.1 Hướng tiếp cận đề tài 34

4.2 Giải pháp 35

4.2.1 Xây dựng profile 35

4.2.2 So sánh profile 38

Chương 5: CHƯƠNG TRÌNH HIỆN THỰC VÀ ĐÁNH GIÁ 41

5.1 Chương trình hiện thực 41

5.2 Kết quả và đánh giá 42

Chương 6: TỔNG KẾT 75

6.1 Tổng kết những công việc đã làm 75

6.2 Đóng góp của đề tài 76

6.3 Hướng phát triển đề tài 76

TÀI LIỆU THAM KHẢO 77

Trang 9

Chương 1: GIỚI THIỆU

1.1 Phát biểu vấn đề

Ngày nay với sự phát triển rộng khắp của mạng toàn cầu Internet, mọi người

có cơ hội kết nối và nhu cầu chia sẻ thông tin với nhau nhiều hơn Lĩnh vực chuyên gia cũng vậy Khi các nhà khoa học tiến hành các nghiên cứu hay cần tìm hiểu thêm kiến thức ở một lĩnh vực nào đó mà họ đang quan tâm, họ rất mong muốn được biết những ai đang có mối quan tâm giống mình để có thể chia sẻ thông tin Việc xây dựng một mạng bao gồm các chuyên gia thuộc nhiều lĩnh vực, dựa trên các thông tin có được về mỗi người để xây dựng nên hồ sơ (profile) của người đó, so sánh các profile này để tìm ra những người dùng tương tự (nghĩa là đang có các mối quan tâm giống nhau) để giới thiệu họ với nhau là một vấn đề rất đáng quan tâm

Vấn đề nêu trên có nhiều điểm tương đồng với các mạng xã hội hiện nay Hàng triệu người hiện đang sử dụng các mạng xã hội để kết nối, gặp gỡ và chia sẻ thông tin Người dùng của các mạng xã hội như MySpace.com, Facebook.com, … thuộc mọi lứa tuổi, ngành nghề và sở thích khác nhau Đa số người dùng sử dụng các mạng xã hội này như một công cụ để giữ liên lạc với bạn bè

Mỗi người dùng trong các mạng xã hội này có một mô tả/tiểu sử sơ lược về bản thân, được gọi là các profile người dùng (user profile) Thông tin chứa trong profile có thể là họ tên, ngày tháng năm sinh, tình trạng hôn nhân, trường học, các sách đã đọc, phim đã xem và một số thông tin khác liên quan đến người dùng và thường là do người dùng khai báo, cập nhật Các thông tin profile này sẽ được so sánh

để đưa ra các gợi ý (kết bạn, tham gia các hội, nhóm …) Các profile được người dùng khai báo và chỉ thay đổi khi người dùng cập nhật được gọi là các profile tĩnh (static user profile)

Có thể nói việc khai thác thông tin của các profile là một vấn đề mấu chốt trong lĩnh vực thu thập thông tin (IR – Information Retrieval) mà trong đó chúng

Trang 10

được sử dụng để hỗ trợ cho các ứng dụng tìm kiếm, gợi ý (recommendation applications) hoặc các ứng dụng tìm kiếm chuyên gia (expert finding applications)

Profile người dùng chứa tri thức về một người dùng cụ thể Profile được khai thác để các thao tác tìm kiếm trong các hệ thống IR được cá nhân hóa (personalized) hơn Các hệ thống này tận dụng các thông tin hướng người dùng cụ thể (user-specific)

có trong profile để thu thập các tài liệu thỏa mãn một truy vấn nào đó tương ứng với một cá nhân người dùng Profile cũng được dùng để xếp hạng lại các tài liệu theo sở thích cá nhân của người dùng Trong các ứng dụng tìm kiếm chuyên gia [8, 9, 10, 13], các profile được so sánh, xếp hạng để tìm kiếm những người dùng có cùng các mối quan tâm

Tuy nhiên, việc sử dụng các profile tĩnh trong các thao tác xử lý có chính xác hay không? Profile tĩnh chỉ phản ánh được các thông tin ít thay đổi của người dùng như họ tên, tuổi, các sở thích bền vững… mà không đủ linh động để phản ánh các thay đổi theo thời gian của người dùng (ví dụ như một mối quan tâm nào đó mới xuất hiện) Do đó các ứng dụng đòi hỏi việc tạo và duy trì một cách tự động các profile

Nói tóm lại, việc tạo, duy trì tự động các profile người dùng [2] dựa trên các thông tin của người dùng như các dự án đã tham gia, các dự án đang thực hiện, wiki

…; so sánh các profile người dùng này để tìm ra những người dùng có mức độ tương

tự nhau lớn nhất (nghĩa là người dùng có cùng mối quan tâm), giới thiệu họ với nhau

là vấn đề đang đặt ra cho các mạng cộng tác giữa các chuyên gia

Trang 11

nhóm tính độ tương tự dựa trên các phương pháp thống kê sự xuất hiện của từ Phương pháp dựa trên ontology tuy thường cho kết quả tốt hơn nhưng lại có nhược điểm ở việc xây dựng và bảo trì ontology cũng như vấn đề bao phủ (khi 2 từ không xuất hiện trong ontology) Với mục tiêu tìm ra một phương pháp đơn giản trong tính toán và xây dựng nhưng vẫn hiệu quả, đề tài sẽ sử dụng phương pháp dựa trên thống

kê sử dụng LSA (Latent Semantic Analysis) làm cơ sở Bên cạnh đó, yếu tố thời gian cũng sẽ được xem xét dựa trên thực tế là mối quan tâm của một người có thể thay đổi theo thời gian

1.4 Mục tiêu đề tài

 Xây dựng profile cho người dùng sử dụng các phương pháp đánh trọng số cho các nhóm dữ liệu, trọng số thời gian, trọng số cho mỗi từ khóa Profile kết quả sẽ có dạng vector các từ khóa

 Xây dựng giải thuật so sánh các profile Việc so sánh ngữ nghĩa của các từ khóa sẽ dựa trên phương pháp được đề nghị

 Phân tích, đánh giá kết quả đạt được dựa trên dữ liệu thực tế

 Trong quá trình thử nghiệm đưa ra các ưu nhược điểm của mô hình, đề nghị các giải pháp khắc phục nhược điểm, cải tiến mô hình trong tương lai

Trang 12

Chương 2: TỔNG QUAN VỀ THU THẬP THÔNG TIN VÀ

MÔ HÌNH NGƯỜI DÙNG

2.1 Thu thập thông tin (Information Retrieval – IR)

IR [1] là một nhánh của khoa học máy tính liên quan đến các vấn đề lưu trữ, duy trì và tìm kiếm với khối lượng dữ liệu lớn Dữ liệu có thể ở dưới dạng văn bản, hình ảnh, âm thanh… IR đang trở thành dạng truy xuất dữ liệu chiếm ưu thế, vượt trội hình thức tìm kiếm dạng cơ sở dữ liệu truyền thống

Một hệ thống thu thập thông tin (Information Retrieval System – IRS) là một công cụ cho phép biểu diễn, lưu trữ dữ liệu và tìm kiếm thông tin Lượng tài liệu (documents) chứa trong các tập dữ liệu được quản lý bởi IRS thường rất lớn và vấn đề tìm kiếm thông tin chính xác, dễ dàng, hiệu quả là một trong những vấn đề lớn được quan tâm

Tập các tài liệu sử dụng cho mục đích tìm kiếm thường được phân tích và chuyển đổi sang dạng biểu diễn phù hợp trong một quá trình gọi là indexing Thông tin trong thế giới thực sẽ được diễn đạt theo ngôn ngữ truy vấn mà các hệ thống IRS

có thể hiểu được Một câu truy vấn tìm kiếm sau đó sẽ được đánh giá với các biểu diễn của tài liệu và hệ thống sẽ quyết định một tài liệu nào đó có phù hợp với truy vấn hay không và mức độ phù hợp như thế nào Cách thức indexing tài liệu, cấu trúc biểu diễn bên trong của tài liệu, ngôn ngữ truy vấn và các cơ chế so trùng giữa tài liệu và câu truy vấn phụ thuộc vào từng IRS Thông thường người sử dụng cung cấp cho IRS

2 chức năng cơ bản: lưu trữ dữ liệu và thu thập thông tin để thỏa mãn nhu cầu thông tin (information need) của người dùng

Nhu cầu thông tin là trạng thái mà trong đó tri thức của một người dùng chưa

đủ thỏa mãn các đòi hỏi của họ Nếu một IRS được sử dụng cho quá trình tìm kiếm thông tin, thì nhu cầu thông tin được đòi hỏi phải được mô tả bằng ngôn ngữ truy vấn của IRS trong quá trình được gọi là truy vấn (querying) Hệ thống tìm kiếm cố gắng

Trang 13

tìm kiếm trong các tập tài liệu đang được quản lý các thực thể phù hợp với truy vấn Tập có thứ tự các tài liệu được thu thập sau đó sẽ được đưa cho người dùng Tập các tài liệu được thu thập là tập con của tập các tài liệu được ứng dụng IR đánh giá là phù hợp (relevant) đối với truy vấn của người dùng Các tài liệu được thu thập sẽ được sắp xếp theo thứ tự nào đó (phụ thuộc vào chiến lược xếp hạng cụ thể của IRS)

Có thể thấy rằng không phải bất kì tài liệu phù hợp nào cũng được thu thập và một số các tài liệu không phù hợp lại có thể nằm trong số các tài liệu được thu thập

Do đó một trong các mục tiêu cơ bản của các hệ thống tìm kiếm IR là cải tiến độ chính xác của tập tài liệu được thu thập, nghĩa là tăng các tài liệu phù hợp được thu thập và giảm bớt các tài liệu không phù hợp được thu thập

Các tài liệu được đánh giá là phù hợp hoặc không phù hợp đối với một truy vấn mặc dù khái niệm phù hợp là khái niệm còn đang được bàn luận Phù hợp khách quan (objective relevance) có thể là một độ đo của giải thuật đo mức độ tương tự giữa tài liệu và câu truy vấn Phù hợp chủ quan (subjective relevance) phụ thuộc người dùng, liên quan đến cách hiểu thuộc về trí tuệ của người dùng và có thể xem như là một quá trình động, dựa trên kinh nghiệm, có liên quan đến các tương tác giữa người dùng thông tin và nguồn thông tin

Trong thực tế, cùng một câu truy vấn nhưng mỗi người dùng lại có mức độ hài lòng khác nhau đối với kết quả truy vấn nhận được Đó là do mỗi người dùng có các

sở thích, khả năng, mong muốn… khác nhau Vấn đề cá nhân hóa quá trình tìm kiếm được đặt ra như một tất yếu nhằm cải thiện hiệu quả tìm kiếm theo từng cá nhân, thông qua việc sử dụng các tri thức của người dùng như sở thích, mối quan tâm, khả năng… Vấn đề này được biết đến thông qua các thuật ngữ như mô hình người dùng (User Modeling) [11, 12, 22, 23] hay hồ sơ người dùng (User Profiling)

2.2 Mô hình người dùng (User Modeling) trong các hệ thống IR

Như đã nói ở trên, khái niệm phù hợp giữa tài liệu và truy vấn là một vấn đề mang tính chủ quan Thông tin mong muốn đối với mỗi người dùng cụ thể có thể được đáp ứng tốt hơn nếu có thêm tri thức về nhu cầu, khả năng, ngữ cảnh

Trang 14

(context)… của người dùng Đây là lĩnh vực của các hệ thống IR cá nhân hóa (personalized IR system) khai thác profile người dùng [12] Một profile người dùng (user profile) hay một mô hình người dùng (user modeling) là một tri thức được lưu trữ về một người dùng cụ thể Profile đơn giản thường chứa các từ khóa (keywords)

mô tả các mối quan tâm bền vững của người dùng Các profile mở rộng có thể bao gồm thêm các thông tin như tên, địa chỉ, ngôn ngữ… Profile nâng cao chứa thêm các

mô tả về hành vi và thói quen của người dùng

Profile người dùng có thể được khai thác để quá trình tìm kiếm được cá nhân hóa hơn Profile người dùng có thể được tạo bởi người dùng hoặc người quản trị hệ thống, các profile dạng này thường không chính xác và linh động trong việc phản ánh các thay đổi của người dùng Một cách khác là profile có thể được tạo và cập nhật tự động thông qua các thông tin có được về người dùng (ngoài các thông tin do người dùng khai báo còn có thêm các thông tin như các thao tác của người dùng trong một cộng đồng (đọc, tải một bài báo; tag cho một bài báo…)); các profile dạng này được

đề cập đến trong nhiều nghiên cứu gần đây về vấn đề User Modeling/User Profiling

Bất kì một hệ thống IR nào có sử dụng profile trong quá trình tìm kiếm đều bao gồm 2 bước cơ bản sau:

- Tạo, biểu diễn, duy trì profile người dùng từ các thông tin có được

- So sánh profile (profile matching) Profile có thể được so sánh với các item (ví dụ như một món hàng trong các hệ thống gợi ý sản phẩm) hoặc các profile có thể được so sánh với nhau (trong các hệ thống tìm kiếm chuyên gia) Dựa trên mức độ tương tự của kết quả so sánh để xếp hạng và trả kết quả về cho người dùng

2.2.1 Tạo, biểu diễn, duy trì profile

Có 5 vấn đề cần được quan tâm trong quá trình tạo và duy trì một profile người dùng: (1) biểu diễn của profile, (2) kĩ thuật sinh profile khởi tạo, (3) nguồn phản hồi

sự phù hợp nhằm biểu diễn mối quan tâm của người dùng, (4) kĩ thuật học profile và (5) kĩ thuật thích ứng của profile

Trang 15

 Biểu diễn của profile

Xây dựng các profile chính xác là một công việc quan trọng bởi vì sự thành công của hệ thống phụ thuộc khá nhiều vào khả năng biểu diễn các mối quan tâm hiện tại của người dùng Profile chính xác là vấn đề sống còn đối với các thành phần dựa vào nội dung (content-based) (để đảm bảo các gợi ý là thích hợp) cũng như các thành phần cộng tác (collaborative) (để đảm bảo những người dùng có các profile tương tự thật sự tương tự nhau)

Có nhiều cách tiếp cận khác nhau để biểu diễn profile người dùng, ví dụ như lịch sử mua hàng, điều hướng web (web navigation) hoặc thư điện tử, một vector có chỉ mục của các đặc trưng (feature), n-gram, mạng ngữ nghĩa, mạng kết hợp (associative network), một bộ phân lớp bao gồm các mạng nơ ron, cây quyết định, các luật suy diễn hoặc mạng Bayesian, một ma trận sắp hạng và một tập các đặc tính nhân khẩu học

Mô hình dựa trên lịch sử (History-based Model): Một vài hệ thống lưu giữ một danh sách các sản phẩm đã mua, lịch sử điều hướng trong WWW hay nội dung của các hộp thư điện tử như một profile người dùng Thêm vào đó còn có các phản hồi về sự phù hợp của người dùng tương ứng với mỗi sản phẩm trong lịch sử Cách tiếp cận lịch sử thường được sử dụng trong thương mại điện tử, trong đó các hệ thống lưu giữ danh sách các sản phẩm đã mua và xếp hạng của người dùng như là một profile của người dùng đó Hệ thống gợi ý của Amazon.com sử dụng phương pháp này

Mô hình không gian vector (Vector Space Model): Trong mô hình không gian vector [34], các item được biểu diễn bằng một vector các đặc trưng, thường là các từ (words) hoặc khái niệm (concepts) với một giá trị tương ứng Giá trị này có thể là một giá trị Boolean hoặc một giá trị thực Giá trị Boolean biểu diễn sự hiện diện (có hoặc không) giá trị của đặc trưng, giá trị thực biểu diễn tần số, độ phù hợp hoặc xác suất của đặc trưng được tính toán bằng các kĩ thuật chỉ mục thông tin (information indexing techniques)

Trang 16

N-grams có trọng số (Weighted N-Grams): Trong n-grams [25] có trọng số, các item được biểu diễn bằng một mạng các từ với các trọng số tại các nút và các cạnh Một số hệ thống dựa trên giả định rằng các từ có xu hướng xuất hiện cùng nhau nhiều lần, rút trích loạt có chiều dài cố định n kí tự và tổ chức chúng bằng các liên kết

có trọng số biểu diễn sự xuất hiện đồng thời của các từ khác nhau Do đó, cấu trúc đạt được một biểu diễn ngữ nghĩa của các từ

Các mạng ngữ nghĩa có trọng số: Các mạng ngữ nghĩa có khả năng lưu trữ nghĩa của từ, do đó việc sử dụng nghĩa của từ này như con người là có thể đạt được Một vài hệ thống biểu diễn mỗi nút như là một từ hoặc một khái niệm và các cung giữa các nút biểu diễn mối quan hệ cùng xuất hiện giữa 2 từ; mỗi nút và mỗi cung có một trọng số biểu diễn các mức độ được quan tâm khác nhau đối với người dùng

Các mạng kết hợp có trọng số: Một mạng kết hợp bao gồm một tập các nút biểu diễn các thuật ngữ (term), các khái niệm hoặc từ cơ sở mà người dùng quan tâm Một tập các liên kết có trọng số thiết lập nên tổ chức của các thuật ngữ này trong các cụm từ phù hợp (relevant phrases) Các mạng kết hợp khác với mạng ngữ nghĩa vì các mạng ngữ nghĩa có các kiểu liên kết chung khác nhau như đồng nghĩa, lớp cha-lớp con, và có thể là tập các liên kết phân biệt hoặc liên kết Ngược lại, các mạng kết hợp chỉ có một kiểu liên kết đơn, một cạnh có trọng số, ngữ nghĩa ngầm định trong cấu trúc của mạng và các thông số liên kết với quá trình xử lý

Mô hình dựa trên phân loại: Các hệ thống sử dụng một bộ phân loại như là một kĩ thuật học profile sẽ giữ cấu trúc của bộ phân loại như là một profile Đây là các trường hợp trong các mạng nơ ron, cây quyết định, các luật suy diễn và mạng Bayesian

Ma trận xếp hạng người dùng- sản phẩm: Một vài hệ thống lọc cộng tác duy trì ma trận người dùng-sản phẩm như là một profile người dùng Ma trận này chứa lịch sử xếp hạng của người dùng cho các sản phẩm Mỗi phần tử của ma trận chứa một xếp hạng thể hiện đánh giá của người dùng đối với sản phẩm, giá trị rỗng nếu

Trang 17

không có đánh giá Các hệ thống này không sử dụng kĩ thuật học profile nào nhưng bao gồm tất cả các quy trình trong các kĩ thuật so trùng profile

Các đặc trưng nhân khẩu học: Các hệ thống lọc nhân khẩu học tạo một profile người dùng thông qua các mẫu có sẵn Do đó, biểu diễn profile người dùng là một danh sách các đặc trưng nhân khẩu học thể hiện loại người dùng

 Sinh profile khởi tạo

Các hệ thống rất mong muốn học được càng nhiều càng tốt từ các thông tin có được của người dùng sao cho hệ thống cho ra kết quả thỏa mãn ngay từ đầu Tuy nhiên không phải lúc nào người dùng cũng muốn bỏ thời gian vào việc khai báo các mối quan tâm của họ để phục vụ cho việc tạo profile Thêm vào đó các mối quan tâm của người dùng luôn thay đổi theo thời gian nên việc bảo trì profile khá khó khăn Vì những lý do này mà việc khởi tạo và bảo trì profile người dùng là một vấn đề khó khăn trong việc thiết kế và phát triển các hệ thống gợi ý Mức độ tự động trong việc

có được profile có thể trải rộng từ việc nhập thủ công, các thủ tục bán tự động (các mẫu có sẵn và các tập đào tạo) đến các nhận biết tự động của bản thân các hệ thống

Rỗng: Một vài hệ thống không cần quan tâm đến profile khởi tạo và bắt đầu với cấu trúc profile rỗng Không có giai đoạn khởi tạo, cấu trúc profile được lấp đầy thông qua các phương pháp nhận biết tự động khi người dùng bắt đầu tương tác với

hệ thống

Phương pháp thủ công: Hệ thống thủ công đòi hỏi người dùng đăng kí các mối quan tâm của họ dưới dạng các từ khóa, chủ đề… Một trong những ưu điểm của phương pháp này là tính trong suốt của hành vi của hệ thống Khi các item được phân phối cho một người dùng, họ dễ dàng đoán được vì sao mỗi item được phân phối Tuy nhiên vấn đề đối với phương pháp này là nó đòi hỏi nhiều nỗ lực từ phía người dùng Một vấn đề khác là người dùng đôi khi cũng không nhận ra được mối quan tâm của

họ là gì

Mẫu sẵn có: Mẫu sẵn có dựa trên việc mô hình khởi tạo, theo một nghĩa nào

đó, là một vấn đề phân loại, nhắm đến việc tạo ra một dự báo về người dùng Mô hình

Trang 18

người dùng được khởi tạo bằng cách phân loại người dùng vào các mô tả khuôn mẫu, biểu diễn cho các đặc trưng của các lớp người dùng Thông thường, dữ liệu sử dụng trong phân loại là các dữ liệu về nhân khẩu học và người dùng được yêu cầu điền vào các mẫu đăng kí: các dữ liệu bản ghi (tên, địa chỉ…), dữ liệu địa lý (mã vùng, thành phố…), đặc điểm cá nhân (tuổi, giới tính…), dữ liệu tâm lý (lối sống…)…

Giới hạn của kĩ thuật này là các khó khăn trong việc lấy dữ liệu cá nhân từ người dùng Người sử dụng Internet thường tránh việc tham gia vào các mối quan hệ với các Internet sites Nguyên nhân là do việc thiếu sự tin tưởng vào các chính sách bảo mật của các site Thường thì người dùng giấu các thông tin cá nhân hoặc cung cấp

dữ liệu sai

Tập đào tạo: Tập đào tạo là một tập các mẫu tương tác của người dùng được dùng để suy luận ra profile khởi tạo của người dùng Một cách thực tế để thiết lập tập đào tạo là yêu cầu người dùng đánh giá một vài mẫu rời rạc có phù hợp hay không phù hợp với mối quan tâm của họ Một cách tiếp cận tương tự là yêu cầu người dùng đánh giá một tập các mẫu đã được xác định trước Trong cả 2 trường hợp, một khi người dùng đã đưa ra thông tin thích hợp, hệ thống xử lý dữ liệu với một trong các kĩ thuật học sẽ được đề cập vào phần sau

Cách này có ưu điểm là đơn giản hóa việc quản lý nhưng có nhược điểm là đôi khi người dùng chọn các mẫu không tiêu biểu và kết quả ít chính xác

 Các kĩ thuật học profile

Phần trước đã mô tả các nguồn thông tin tiêu biểu cho mối quan tâm của người dùng, chủ yếu là các tập đào tạo Các kĩ thuật học profile xây dựng một profile người dùng thông qua các dữ liệu này Các kĩ thuật này có thể được xem như là bước chuẩn

bị cho việc biểu diễn profile

Cần chú ý rằng khi dữ liệu học chứa các văn bản (text) không có cấu trúc thì cần tiền xử lý các thông tin để có được thông tin thích hợp có cấu trúc Một vài hệ thống sử dụng một kĩ thuật chỉ mục thông tin (information indexing technique) để xây

Trang 19

dựng một profile và biểu diễn nó như một cấu trúc các từ có chỉ mục, mặc dù các kĩ thuật chỉ mục thông tin không thể được xem như các kĩ thuật trí tuệ nhân tạo

Không cần thiết: Một vài hệ thống dùng thông tin lấy trực tiếp từ hệ thống để làm profile người dùng, do đó chúng không cần một kĩ thuật học profile nào cả Có 3 loại hệ thống không cần các kĩ thuật học profile:

 Các hệ thống lấy thông tin profile người dùng từ cơ sở dữ liệu

 Các hệ thống lọc cộng tác dùng ma trận đánh giá người dùng-sản phẩm như một profile

 Các hệ thống tạo profile khởi tạo từ mẫu có sẵn và không chỉnh sửa

nó Đây là trường hợp của các hệ thống lọc nhân khẩu học

Các hệ thống không cần kĩ thuật học profile sẽ tập trung các công việc lọc dữ liệu cho các kĩ thuật so trùng profile-item hoặc profile-profile

Các kĩ thuật thu thập thông tin có cấu trúc: Khi thông tin không có cấu trúc (ví dụ như văn bản) thì cần có các bước tiền xử lý để trích rút ra các thông tin thích hợp có cấu trúc Thông thường quá trình này gồm 2 bước chính: chọn đặc trưng và chỉ mục thông tin

Chọn đặc trưng có thể đạt được thông qua các cách khác nhau nhằm làm giảm

số lượng các từ như stopwords, stemming, …

Chỉ mục thông tin sử dụng tần số xuất hiện của từ để tính toán sự phù hợp của một item TF-IDF [1, 36] là một trong những kĩ thuật thành công nhất Một tài liệu được biểu diễn như một vector các từ có trọng số Tính toán các trọng số phản ánh các quan sát dựa trên kinh nghiệm đối với văn bản Các thuật ngữ xuất hiện nhiều trong một tài liệu (TF-Term Frequency) nhưng ít xuất hiện bên ngoài (IDF-Inverse Document Frequency) có khả năng phù hợp với chủ đề của tài liệu

TF-IDF có 2 biến thể: phương pháp Boolean và phương pháp xác suất Phương pháp Boolean là phương pháp đơn giản trong đó profile được biểu diễn như là một vector các từ với các giá trị Boolean thể hiện sự hiện diện của từ trong văn bản

Trang 20

Phương pháp xác suất là tổng quát của kĩ thuật so trùng chính xác Mạng suy luận Bayesian được chứng minh là một kĩ thuật hữu ích trong việc tính toán xác suất này

Gom nhóm: Ý tưởng cơ bản của kĩ thuật này là gom nhóm các thông tin người dùng tương tự vào các nhóm dựa trên dữ liệu Sau đó các nhóm này được so trùng với thông tin thực để kết luận xem nó có được quan tâm hay không

Các kĩ thuật lọc cộng tác truyền thống thường dựa vào việc so trùng profile người dùng hiện tại với các nhóm gồm các profile tương tự được hệ thống thu thập theo thời gian từ những người dùng khác

Bộ phân loại: Bộ phân loại là các mô hình tính toán tổng quát nhằm gán một phân lớp cho một đầu vào Để xây dựng một hệ thống gợi ý sử dụng một bộ phân loại

có nghĩa là sử dụng thông tin về item (sản phẩm) và profile người dùng như là đầu vào, và có phân lớp đầu ra biểu diễn mức độ trong việc gợi ý một item cho người dùng Bộ phân loại có thể được hiện thực sử dụng nhiều chiến lược học máy khác nhau bao gồm mạng nơ ron, cây quyết định, luật kết hợp và mạng Bayesian

Học trong mạng nơ ron đạt được bằng cách đào tạo mạng với một tập dữ liệu Mỗi mẫu đầu vào được lan truyền tiến thông qua mạng và các đầu ra thể hiện mức độ quan tâm của người dùng Khi một lỗi được phát hiện, nó sẽ được lan truyền ngược để điều chỉnh các thông số nhằm giảm lỗi

Cây quyết định là một phương pháp xấp xỉ các hàm đích có giá trị rời rạc, trong đó hàm học được biểu diễn bởi một cây quyết định Các cây dùng để học có thể được biểu diễn như một tập các luật if-then Cây quyết định được xây dựng bằng cách chia đệ quy các mẫu thành các nhóm con

Việc khám phá ra các luật kết hợp bằng học suy diễn là một trong các ví dụ về

bộ phân loại phổ biến nhất Phương pháp phát hiện luật suy diễn bắt đầu bằng việc tìm các nhóm item thường xuất hiện cùng nhau trong nhiều giao tác Các nhóm item như vậy được gọi là các tập item thường xuyên Các luật kết hợp giữ các mối quan hệ giữa các item này dựa trên sự xuất hiện cùng nhau

Trang 21

Giải thuật học mạng Bayesian được áp dụng cho một tập các dữ liệu đào tạo, tìm kiếm trên nhiều cấu trúc mô hình khác nhau dưới dạng độc lập cho mỗi item Trong mạng kết quả, mỗi item sẽ có một tập các item cha là dự báo cho việc bầu chọn của item đó Mô hình có thể được xây dựng offline Do đó, kĩ thuật này có thể được chứng minh là thiết thực cho các môi trường trong đó tri thức về mối quan tâm của người dùng thay đổi chậm so với thời gian cần có để xây dựng mô hình

 Phản hồi sự phù hợp

Mối quan tâm của người dùng luôn thay đổi theo thời gian Do đó, các hệ thống gợi ý cần các thông tin cập nhật để tự động cập nhật profile của người dùng Các cách thức để đạt được thông tin này được gọi là phản hồi sự phù hợp

Thông thường có 2 loại phản hồi sự phù hợp: thông tin rõ ràng (các sản phẩm

mà người dùng thích) và thông tin không rõ ràng (suy diễn các đặc tính mà người dùng không quan tâm) Các thông tin không rõ ràng này có thể làm tăng hay giảm độ chính xác của hệ thống tùy theo từng hệ thống

2 cách thức thông thường để có được phản hồi sự phù hợp là sử dụng các thông tin được đưa ra một cách rõ ràng hoặc lấy các thông tin được quan sát một cách ngầm định từ các tương tác của người dùng Một vài hệ thống sử dụng các cách tiếp cận lai giữa thông tin rõ ràng và ngầm định

Không phản hồi: Một vài hệ thống không cập nhật profile người dùng một cách tự động và do đó không cần phản hồi sự phù hợp Ví dụ như các hệ thống cập nhật profile thủ công hoặc các hệ thống không bao giờ cập nhật profile

Phản hồi rõ ràng: Trong một vài hệ thống, người dùng cần đánh giá các item một cách rõ ràng Các đánh giá này cho biết item đó được người dùng quan tâm như thế nào, hoặc một người dùng nghĩ item đó phù hợp hay được quan tâm bởi người dùng khác như thế nào

3 phương pháp cơ bản để có các phản hồi sự phù hợp: thích/không thích, đánh giá (ratings) hoặc các lời bình dưới dạng văn bản Trong các hệ thống thích/không thích, người dùng đánh giá các item trong phạm vi nhị phân, nghĩa là phân loại một

Trang 22

đối tượng là quan tâm hay không quan tâm, phù hợp hay không phù hợp, thích hay không thích Phương pháp đánh giá yêu cầu người dùng cung cấp đánh giá trong phạm vi rời rạc Phạm vi đánh giá thường là phạm vi số hoặc các biểu tượng được gán vào phạm vi số Một vài site khuyến khích các bình luận văn bản của người dùng Các

hệ thống tập hợp các lời bình về một item nào đó và đưa chúng cho người dùng như là một cách thức để làm dễ dàng hơn quá trình ra quyết định Mặc dù bình luận văn bản khá hữu ích nhưng chúng lại đòi hỏi một lượng xử lý khá nhiều đối với người dùng Người dùng phải đọc văn bản và xem thử chúng tích cực hay tiêu cực ở mức độ nào

Phản hồi rõ ràng có ưu thế là đơn giản Tuy nhiên trong thực tế, phản hồi rõ ràng có 3 trở ngại cơ bản:

 Sự phù hợp của thông tin thường tương đối đối với việc thay đổi yêu cầu thông tin của người dùng, và đánh giá sự phù hợp thông tin của mỗi item riêng rẽ thường được giả định là độc lập trong khi thực tế lại không như vậy

 Các phạm vi số chưa đủ để mô tả phản ứng mà con người có đối với các item

 Người dùng máy tính không cung cấp đủ phản hồi, đặc biệt là các phản hồi không rõ ràng (negative)

Phản hồi ngầm định: Phản hồi ngầm định [2] nghĩa là hệ thống tự động suy diễn sự quan tâm của người dùng một cách thụ động thông qua việc quan sát các hành động của người dùng

Đa số các phương pháp ngầm định lấy phản hồi sự phù hợp bằng cách phân tích các liên kết được người dùng liên kết đến, lịch sử mua hàng, lịch sử điều hướng, hộp thư điện tử và thời gian bỏ ra cho một trang web nào đó

Còn có một vài thao tác củng cố khác Đối với các tài liệu như trang web, các bài báo tin tức hoặc thông điệp thư điện tử, việc xem người dùng có sử dụng các thao tác như lưu một tài liệu, in một tài liệu, đánh dấu một trang web, xóa một tài liệu, trả lời hoặc chuyển tiếp một thư điện tử, cuộn chuột để xem… cũng rất có giá trị Do các

Trang 23

thao tác này được thực hiện dưới sự điều khiển của ứng dụng nên chúng có thể được đăng kí và đánh giá để học profile người dùng

Phương pháp lai: phản hồi rõ ràng và phản hồi ngầm định có thể được kết hợp trong một hệ thống lai Phản hồi ngầm định làm giảm các nỗ lực của người dùng trong khi đó phản hồi rõ ràng giúp cho hệ thống suy diễn mối quan tâm của người dùng chính xác hơn

 Các kĩ thuật thích ứng profile

Các hệ thống gợi ý thường tương tác với người dùng trong một khoảng thời gian dài nên mối quan tâm của người dùng không thể giả định là không thay đổi Nghĩa là những quan sát có được thông qua phản hồi sự phù hợp sẽ thể hiện mối quan tâm hiện tại của người dùng tốt hơn Do đó, cần có một kĩ thuật thích ứng profile người dùng với các mối quan tâm mới

Có nhiều kĩ thuật liên quan đến vấn đề này: thủ công (chỉ đơn giản là thêm các thông tin mới), cửa sổ thời gian, kết hợp các mô hình lâu dài (long-term) và ngắn hạn (short-term)…

Thủ công: Trong một vài hệ thống người dùng phải thay đổi profile khi họ muốn cập nhật nó Cũng giống như việc sinh profile khởi tạo bằng phương pháp thủ công, phương pháp này có 2 vấn đề quan trọng: nó đòi hỏi nỗ lực từ phía người dùng

và đôi khi người dùng cũng chưa xác định được mối quan tâm của họ là gì Do đó, cập nhật thủ công sẽ rất khó khi các yêu cầu thay đổi nhanh chóng

Thêm thông tin mới: Phương pháp này được sử dụng phổ biến trong nhiều hệ thống Ý tưởng là cập nhật profile người dùng bằng cách thêm các thông tin mới có được thông qua việc trích rút các phản hồi sự phù hợp của người dùng Do đó, profile được thích ứng với các mối quan tâm mới của người dùng Với phương pháp này thì các mối quan tâm cũ không bị bỏ qua

Các hàm quên dần: Khái niệm quên dần được đưa ra trên cơ sở của việc quên

tự nhiên là một quá trình từ từ Do đó, một hàm quên dần có thể được định nghĩa Nó

sẽ tạo ra một trọng số cho mỗi quan sát (observation) dựa trên vị trí của nó trong tiến

Trang 24

trình thời gian Một số hệ thống gán khởi tạo cho mỗi quan sát một trọng số là 1, khi

có một quan sát phù hợp mới được đưa vào mô hình thì các quan sát cũ sẽ bị giảm trọng số theo một tỉ lệ nào đó Như vậy, các quan sát mới sẽ được xem là quan trọng hơn với giả định là nó thể hiện mối quan tâm hiện tại của người dùng tốt hơn

Một trường hợp cụ thể của hàm quên dần là phương pháp cửa sổ thời gian Đây là phương pháp phổ biến giải quyết vấn đề quên dần mối quan tâm cũ Nó bao gồm việc học các mô tả về mối quan tâm mới của người dùng từ các quan sát gần nhất Các mẫu đào tạo được chọn từ cửa sổ thời gian, nghĩa là chỉ có các mẫu mới nhất được sử dụng cho việc đào tạo

Chọn lọc tự nhiên: Cách tiếp cận tự nhiên kết hợp với các hệ thống hiện thực một kiến trúc hệ sinh thái các tác nhân (agents) dựa trên giải thuật di truyền Các tác nhân tạo ra các kết quả tốt nhất được tái tạo thông qua các toán tử trao đổi chéo và đột biến, các tác nhân khác sẽ bị phá hủy

2.2.2 So sánh profile

Để gợi ý các sản phẩm hoặc thao tác cho người dùng, một hệ thống gợi ý sẽ ra các quyết định dựa trên các thông tin có sẵn (sản phẩm, profile của những người dùng khác… ) Do đó, việc chọn thông tin thích hợp để ra quyết định là vấn đề khá quan trọng Các phương pháp lọc thông tin dựa trên các kĩ thuật so trùng profile-item và so trùng các profile với nhau Vì vậy có 3 vấn đề cần quan tâm khi khai thác profile: (1) phương pháp lọc thông tin (nhân khẩu học, dựa trên nội dung, cộng tác), (2) kĩ thuật

so trùng item-profile (khi dựa trên nội dung) và (3) kĩ thuật so trùng các profile với nhau (trường hợp cộng tác)

2.2.2.1 Các phương pháp lọc thông tin

Có 3 phương pháp lọc thông tin cơ bản: nhân khẩu học, dựa trên nội dung, cộng tác

Lọc nhân khẩu học: Phương pháp này sử dụng các mô tả về con người để học mối quan hệ giữa một item và kiểu người thích nó Các profile người dùng được tạo

ra bằng cách phân loại những người dùng theo các mô tả khuôn mẫu, tiêu biểu cho

Trang 25

đặc trưng của lớp người dùng Dữ liệu cá nhân của người dùng được yêu cầu và được

sử dụng để phân loại người dùng theo các dữ liệu nhân khẩu học này Phân loại được

sử dụng như các mô tả tính cách của người dùng và mối quan tâm của họ Thông thường, dữ liệu cá nhân được lấy từ người dùng thông qua các mẫu đăng kí Các profile kết quả trải rộng trong phạm vi thông tin được chứa trong cơ sở dữ liệu nhân khẩu học

Hệ thống lọc nhân khẩu học có 2 hạn chế cơ bản:

- Lọc nhân khẩu học được dựa trên sự tổng quát hóa các mối quan tâm của người dùng, do đó hệ thống sẽ gợi ý cùng các item cho những người có các profile nhân khẩu học tương tự nhau Mỗi người dùng là khác nhau nên những gợi ý này tỏ ra quá tổng quát

- Cách tiếp cận nhân khẩu học không cung cấp sự thích ứng đối với sự thay đổi mối quan tâm

Lọc dựa trên nội dung [15]: Phương pháp này gợi ý các item cho người dùng dựa trên các mô tả về các item đã được đánh giá trước đó Nói một cách khác, hệ thống gợi ý các item bởi vì chúng tương tự với các item mà người dùng quan tâm trong quá khứ Profile người dùng được tạo ra bằng cách sử dụng các đặc trưng được rút trích từ các item này và mỗi người dùng được giả định là hoạt động độc lập

Một hệ thống thuần lọc trên nội dung có các hạn chế sau:

- Phương pháp dựa trên nội dung dựa trên thông tin khách quan về các item Thông tin này được trích rút tự động từ nhiều nguồn khác nhau (các trang web) hoặc được giới thiệu thủ công (ví dụ như cơ sở dữ liệu sản phẩm) Tuy nhiên lựa chọn item này hay item khác là phụ thuộc vào các thuộc tính chủ quan của item Các thuộc tính này, dù ảnh hưởng hơn đến việc lựa chọn của người dùng lại không được bàn đến

- Các kĩ thuật lọc dựa trên nội dung không có phương thức cố hữu nào để tạo ra các tìm kiếm may mắn, người dùng bị giới hạn trong việc được giới thiệu chỉ các item tương tự với các item trong quá khứ

Trang 26

- Với cách tiếp cận dựa trên nội dung thuần, đánh giá của người dùng là nhân tố duy nhất ảnh hưởng đến các hoạt động tương lai

Lọc cộng tác: Lọc cộng tác [3, 14, 16] so trùng những người dùng có cùng mối quan tâm và ra gợi ý dựa trên cơ sở này Các gợi ý thường được trích rút từ các phân tích thống kê các mẫu, sự tương tự của dữ liệu được trích rút rõ ràng từ việc đánh giá các item của những người dùng khác nhau hoặc dữ liệu trích rút ngầm định từ việc quan sát các hành xử của người dùng trong hệ thống Phương pháp này khác với phương pháp dựa trên nội dung, thay vì gợi ý item vì nó tương tự với các item mà người dùng quan tâm trong quá khứ, nó sẽ gợi ý các item dựa trên mối quan tâm của người dùng khác Thay vì tính độ tương tự giữa các item, độ tương tự giữa các người dùng sẽ được tính toán Trong lọc cộng tác, profile người dùng chứa các dữ liệu mà người dùng đã chỉ định Dữ liệu này được so sánh với dữ liệu của những người dùng khác để tìm sự chồng lắp về mối quan tâm giữa những người dùng

Với vấn đề so trùng, thông thường có 2 loại so trùng được quan tâm là so trùng item-profile và so trùng profile-profile Ở đây chỉ bàn sơ qua về so trùng giữa item-profile, vấn đề so trùng profile-profile sẽ được nói kĩ hơn vì sự liên quan trực tiếp của

b Cosine similarity [37]

Mô hình này xem biểu diễn của profile và item là các vector n chiều Công thức Cosine sẽ tính toán góc Cosine giữa 2 vector Phép tính toán tiến tới 1 khi 2 vector đồng nhất Nếu 2 vector hoàn toàn không có mối quan hệ thì nó sẽ trực giao và giá trị cosine là 0

c Láng giềng gần nhất (Nearest Neighbor)

Trang 27

Các giải thuật dạng này dựa trên việc tính toán khoảng cách từ item được quan tâm đến các item còn lại hoặc các lớp item trong profile người dùng Giải thuật hoạt động bằng cách lưu trữ tất cả các mẫu trong tập đào tạo, tức là tất cả các item trong profile người dùng Để biết được một item có được quan tâm hay không, giải thuật sẽ gán nó cho lớp các mẫu gần nhất Dựa trên biểu diễn của item, hàm tính toán khoảng cách có thể là kĩ thuật so trùng từ khóa đơn giản hoặc một so sánh trọng số

d Phân loại

Các hệ thống dựa trên lọc nội dung có thể điều khiển tác vụ gợi ý như là một tác vụ phân loại Dựa trên một tập các đặc tính của item, hệ thống sẽ cố gắng suy luận một mô hình cho mỗi người dùng cho phép họ phân loại các item mới vào trong 2 hay nhiều lớp Các phân lớp tiêu biểu là thích hay không thích nhưng hệ thống có thể phân loại các item vào bất kì tập các lớp nào (thích hợp, không thích hợp, chưa định nghĩa) Điều này có nghĩa là profile người dùng được biểu diễn như là một bộ phân loại: mạng nơ ron, cây quyết định, các luật suy diễn hay mạng Bayesian

2.2.2.3 So trùng profile-profile

Các hệ thống dựa trên lọc cộng tác so trùng những người dùng có cùng mối quan tâm và sau đó đưa ra các gợi ý dựa trên cơ sở này Nói chung quá trình tính toán một gợi ý bao gồm 3 bước sau: (1) tìm kiếm người dùng tương tự, (2) tạo một vùng lân cận (vùng láng giềng) và (3) tính toán dự đoán dựa trên những láng giềng được lựa chọn

a Tìm kiếm người dùng tương tự

Các độ đo tương tự chuẩn được sử dụng để tính toán khoảng cách giữa biểu diễn người dùng hiện tại và biểu diễn của một tập các người dùng Kĩ thuật phổ biến nhất được sử dụng để tính toán sự tương tự giữa các người dùng là láng giềng gần nhất, gom nhóm và phân loại

i Láng giềng gần nhất: Các giải thuật láng giềng gần nhất có thể áp dụng (như trong kĩ thuật so trùng profile-item) như là phương pháp tìm người dùng tương tự Ở đây, các giải thuật láng giềng gần nhất sẽ dựa trên việc

Trang 28

tính toán khoảng cách giữa các người dùng dựa trên lịch sử của họ.Việc dự đoán một người dùng thích một item như thế nào được tính toán bằng cách lấy trung bình cộng trọng số các ý kiến đối với item đó của một tập các láng giềng gần nhất Các giải thuật láng giềng gần nhất có ưu điểm là có thể kết hợp các thông tin cập nhật một cách nhanh chóng nhưng việc tìm kiếm các láng giềng là khá chậm trong cơ sở dữ liệu lớn Có 2 phương pháp được sử dụng trong các hệ thống hiện tại để tính toán sự tương tự giữa những người dùng: cosine similarity và correlation

1 Cosine similarity: được áp dụng tương tự như trong kĩ thuật

so sánh item-profile, người dùng được so sánh với những người dùng khác bằng cách sử dụng 2 vector

2 Correlation: dễ dàng định nghĩa các độ đo tương tự giữa 2 profile người dùng khi sử dụng các cơ sở dữ liệu về đánh giá của người dùng đối với item, trong đó người dùng cho biết mối quan tâm của họ với một item bằng một con số Các độ đo correlation điển hình là hệ số correlation Pearson r và hệ số correlation xếp hạng Spearman

[14] đưa ra một phép đo độ tương tự mới giữa các người dùng dựa trên các đặc tính chung (common features) lẫn các đặc tính riêng (different features)

ii Gom nhóm (Clustering): đây là cách tiếp cận dựa trên khuôn mẫu, trong suốt giai đoạn phát triển hệ thống, các nhóm con của người dùng được xác định và các đặc tính tiêu biểu của các thành viên của các nhóm con này được xác định Trong thời gian chạy của hệ thống, người dùng được gán vào một hoặc nhiều nhóm người dùng đã được định nghĩa trước và các đặc tính của nhóm được gán cho người dùng Nhược điểm của phương pháp này là việc định nghĩa trước các khuôn mẫu này phụ thuộc vào kinh nghiệm Các kĩ thuật gom nhóm thường đưa ra các gợi ý ít mang tính cá

Trang 29

nhân hơn các phương pháp khác, trong một vài trường hợp, phương pháp này ít chính xác hơn phương pháp láng giềng gần nhất Tuy nhiên một khi việc gom nhóm được hoàn tất thì nó hoạt động với hiệu suất tốt do kích thước các nhóm cần được phân tích sẽ nhỏ hơn

iii Phân loại (Classification): Phương pháp lọc cộng tác có thể được xem như một tác vụ phân loại như một phần của lọc dựa trên nội dung Trong lọc cộng tác, khi muốn suy diễn mối quan tâm của người dùng dựa trên sự tương tự với những người dùng khác thì dữ liệu khởi tạo thường tồn tại dưới dạng một ma trận rải rác, trong đó các hàng tương ứng với các người dùng, các cột tương ứng với các item và mỗi thành phần của ma trận là đánh giá của người dùng Sự rải rác ở đây nghĩa là phần lớn ma trận là rỗng

vì mỗi người dùng chỉ đánh giá trên một tập con rất nhỏ các item Việc dự đoán có thể được xem như việc điền các giá trị còn thiếu vào ma trận Do ta quan tâm đến việc học các mô hình cá nhân hóa cho mỗi người dùng, ta sẽ kết hợp một bộ phân loại với mỗi người dùng Mô hình này có thể được sử dụng để dự đoán các giá trị còn thiếu cho một dòng trong ma trận

b Tạo vùng lân cận

Khi các hệ thống tìm kiếm những người dùng tương tự, nó sẽ tạo một vùng những người dùng tương tự nhất với người dùng đích Một cách tổng quát, 2 kĩ thuật được sử dụng để xác định vùng lân cận: kĩ thuật ngưỡng correlation và kĩ thuật n láng giềng tốt nhất

Kĩ thuật ngưỡng correlation thiết lập một ngưỡng correlation tuyệt đối trong đó tất cả người dùng với một giá trị correlation tuyệt đối lớn hơn những ngưỡng nào đó

sẽ được chọn Thiết lập ngưỡng cao sẽ giới hạn vùng lân cận chỉ chứa các người dùng

có độ tương quan tốt nhưng với nhiều người dùng, độ tương quan tốt không tồn tại, dẫn đến vùng lân cận nhỏ không thể cung cấp sự dự đoán bao phủ cho nhiều item

Trang 30

Kĩ thuật n láng giềng gần nhất lấy ra số lượng người dùng cố định tốt nhất Kĩ thuật này hoạt động tương đối tốt do nó không giới hạn độ bao phủ dự đoán Tuy nhiên, lấy một số lượng người dùng lớn hay quá nhỏ đều không tốt

c Dự đoán dựa trên những láng giềng được lựa chọn

Bước cuối cùng là đưa ra các gợi ý dựa trên vùng lân cận đã được lựa chọn Một khi vùng lân cận được chọn, đánh giá từ những người dùng lân cận này sẽ được tính toán để đưa ra dự đoán Các kĩ thuật có thể được sử dụng: gợi ý các item được đánh giá thường xuyên nhất, gợi ý dựa trên luật kết hợp và trung bình trọng số của các đánh giá

[9, 18, 21] đưa ra một số phương pháp so sánh độ tương tự của các profile Việc so sánh 2 profile thông thường được đưa về việc so sánh 2 từ 2 từ hoàn toàn giống nhau có thể khác nhau về mặt ngữ nghĩa Ngược lại, 2 từ khác nhau hoàn toàn lại có thể cùng ngữ nghĩa Tính đa nghĩa và đồng nghĩa của từ luôn là vấn đề được quan tâm trong các nghiên cứu liên quan đến ngữ nghĩa Từ đồng nghĩa có thể được giải quyết thông qua từ điển hoặc phân loại (taxonomy), từ đa nghĩa cần có các

kĩ thuật phức tạp hơn như kĩ thuật làm đồng nghĩa từ (word sense disambiguation) [41] Bên cạnh việc quản lý từ đồng nghĩa và đa nghĩa, một số ứng dụng quan tâm đến

độ tương tự ngữ nghĩa giữa 2 từ hoặc 2 khái niệm Các độ đo tương tự này có thể được xếp vào 2 phương pháp cơ bản: Phương pháp dựa trên tri thức [4, 5] và phương pháp dựa trên thống kê

Các độ đo của phương pháp dựa trên tri thức có thể được chia thành 2 phân lớp chính:

 Các độ đo dựa trên cạnh (edge-based measure) [39]: tính toán sự tương tự dựa vào việc đếm số cạnh phân tách 2 nút bằng một quan hệ “is-a” Do các khái niệm

cụ thể có thể tương tự hơn các khái niệm trừu tượng nên độ sâu được tính đến bằng cách tính toán xem thử độ sâu tối đa trong taxonomy hay độ sâu của khái niệm cụ thể nhất bao gộp 2 khái niệm được so sánh Có thể xem 2 khái niệm là tương tự về mặt

Trang 31

ngữ nghĩa nếu chúng được nối với nhau bằng một đường đi không quá dài và không thay đổi hướng thường xuyên

 Các độ đo dựa trên nút (node-based measure): Cách tiếp cận này nhằm khắc phục tính không tin cậy khi sử dụng khoảng cách giữa các cạnh, thay vào đó sự tương

tự được dựa trên thông tin kết hợp với mỗi nút Thông tin có thể là mô tả của một nút (các độ đo đựa trên đặc điểm-feature based measures) hoặc các giá trị số được gia tăng từ kho văn bản (các độ đo nội dung thông tin-information content measures)

Phương pháp dựa trên tri thức [4, 5, 9, 10] thường cho kết quả đáng tin cậy vì các tính toán của chúng dựa trên cấu trúc của các ontology Tuy nhiên phương pháp này lại gặp một số vấn đề như:

 Việc xây dựng và bảo trì các ontology không phải là một vấn đề đơn giản

 Vấn đề bao phủ: Việc so sánh độ tương tự chỉ được thực hiện khi 2 từ hiện diện trong cấu trúc của ontology

Phương pháp thống kê dựa vào các phân tích thống kê trên các kho văn bản (text corpus) lớn Chúng có ưu điểm là độc lập, nghĩa là không cần các nguồn tri thức bên ngoài, do đó có thể giải quyết vấn đề bao phủ của các phương pháp ngữ nghĩa dựa trên taxonomy Phương pháp thống kê bao gồm các độ đo dựa trên sự xuất hiện đồng thời (co-occurrence), dựa trên ngữ cảnh (context-based) và LSA (Latent Semantic Analysis)

 Sự tương tự dựa trên sự xuất hiện đồng thời [31]: Phương pháp này nghiên cứu sự xuất hiện đồng thời hoặc sự gần nhau của các từ trong các văn bản với giả định rằng các cặp từ thường xuyên thể hiện sự tồn tại một sự phụ thuộc nào đó giữa chúng

 Sự tương tự dựa trên ngữ cảnh [33, 38]: phương pháp này dựa trên trực giác rằng các từ tương tự nhau có xu hướng xuất hiện trong các ngữ cảnh tương tự Mô hình không gian vector được sử dụng như một công cụ đo ngữ nghĩa

 LSA (Latent Semantic Analysis) [40]: LSA được đưa ra nhằm khắc phục vấn đề đa chiều của mô hình không gian vector chuẩn, đặc biệt là cho các phương pháp dựa trên ngữ cảnh Đầu tiên văn bản được biểu diễn như một ma trận trong đó

Trang 32

các hàng đại diện cho các từ, các cột đại diện cho ngữ cảnh và mỗi phần tử của ma trận chứa trọng số chỉ định nào đó (ví dụ như tần số) Sau đó, SVD (Singular Value Decomposition) được áp dụng cho ma trận để phân tích các mối quan hệ thống kê giữa các từ trong tập các văn bản Trong SVD, một ma trận dạng hình chữ nhật được phân rã thành tích của 3 ma trận khác và sau đó được tạo lại thành một ma trận nén 2 chiều Cuối cùng, độ tương tự LSA được tính toán trong một không gian chiều thấp hơn, trong đó các quan hệ thứ cấp giữa từ và văn bản được khai thác Độ tương tự giữa 2 từ được tính toán bằng cosine của góc giữa các vector hàng nén (compressed row vectors) tương ứng

Trang 33

Chương 3: LATENT SEMANTIC ANALYSIS (LSA)

Latent Semantic Analysis (LSA) [40], còn được gọi là Latent Sematic Indexing (LSI) là phương pháp phân tích các tài liệu để tìm được ý nghĩa hoặc khái niệm bên trong các tài liệu này Nếu mỗi từ chỉ có một khái niệm, và mỗi khái niệm chỉ được

mô tả bởi một từ thì LSA trở nên đơn giản vì chỉ có một đơn ánh từ các từ vào các khái niệm

Tuy nhiên điều này là không thể do hiện tượng đồng nghĩa và đa nghĩa của từ,

và một số nhập nhằng khác mà ngay cả con người đôi khi cũng khó hiểu được khái niệm của một từ

Ví dụ trong tiếng Anh, nếu từ “bank” được sử dụng chung với các từ

“mortage” (sự cầm cố), “loan” (khoản vay) và “rates” (lãi suất) thì nó có nghĩa là ngân hàng, nhưng khi từ “bank” được sử dụng cùng với các từ như “lures” (nhử mồi),

“fish” (cá) thì nó có nghĩa là bờ sông

3.1 Hoạt động của LSA

LSA được nảy sinh từ vấn đề làm thế nào để tìm ra các tài liệu thích hợp từ các

từ tìm kiếm Vấn đề khó khăn cơ bản là ở chỗ ta so sánh các từ để tìm ra tài liệu phù hợp trong khi cái thực sự chúng ta muốn là so sánh ý nghĩa và khái niệm bên trong của từ LSA cố gắng giải quyết vấn đề này bằng cách ánh xạ các từ và khái niệm vào không gian khái niệm và thực hiện các so sánh trong không gian này

Do người viết có thể có nhiều cách lựa chọn từ khi họ viết, các khái niệm có thể bị che khuất do các lựa chọn từ khác nhau giữa các tác giả khác nhau Cách lựa chọn từ khác nhau này sẽ tạo ra nhiễu trong mỗi quan hệ từ-khái niệm LSA lọc bớt các nhiễu này, đồng thời cố gắng tìm tập nhỏ nhất các khái niệm bao phủ toàn tài liệu

LSA đưa ra một vài sự đơn giản hóa như sau:

- Các tài liệu được biểu diễn như là một tập các từ, trong đó thứ tự của các từ trong tài liệu là không quan trọng, chỉ quan trọng ở số lần xuất hiện của mỗi từ trong

Trang 34

- Các khái niệm được biểu diễn như là một mẫu các từ thường xuất hiện cùng nhau trong các tài liệu

- Các từ được giả định là chỉ có một nghĩa Điều này có vẻ không hoàn toàn đúng (như từ “bank” ở trên) nhưng sẽ giúp cho vấn đề dễ kiểm soát hơn

Xem xét một ví dụ nhỏ trong đó ta tìm kiếm các cuốn sách trên Amazon.com

sử dụng từ tìm kiếm là “investing” và lấy ra 10 tiêu đề sách xuất hiện trong kết quả tìm kiếm Một tiêu đề trong số này sẽ được loại bỏ vì nó chỉ chứa một index word chung với các tiêu đề khác Index word là một từ thỏa mãn các điều kiện sau:

- Xuất hiện trong 2 hoặc nhiều tiêu đề

- Không phải là một từ phổ biến như “and”, “the” (gọi là các stopword) Các

từ này không được xem xét vì nó không đóng góp nhiều ý nghĩa

Trong ví dụ này ta loại bỏ các stopword sau: and, edition, for, in, little, of, the,

to

Đây là 9 tiêu đề còn lại Các index word (các từ xuất hiện trong 2 hoặc nhiều tiêu đề và không phải là stopword) được gạch dưới

1 The Neatest Little Guide to Stock Market Investing

2 Investing For Dummies, 4th Edition

3 The Little Book of Common Sense Investing: The Only Way to Guarantee Your Fair Share of Stock Market Returns

4 The Little Book of Value Investing

5 Value Investing: From Graham to Buffett and Beyond

6 Rich Dad's Guide to Investing: What the Rich Invest in, That the Poor and the Middle Class Do Not!

7 Investing in Real Estate, 5th Edition

8 Stock Investing For Dummies

9 Rich Dad's Advisors: The ABC's of Real Estate Investing: The Secrets

of Finding Hidden Profits Most Investors Miss

Trang 35

Khi LSA được thực hiện trên ví dụ này, chúng ta có thể biểu diễn các index word và các tiêu đề trong một đồ thị XY và xác định các nhóm (cluster) của tiêu đề 9 tiêu đề được biểu diễn là các chấm tròn và 11 index word là các ô vuông Không những có thể đánh dấu nhóm các tiêu đề mà chúng ta còn có thể gán nhãn cho các nhóm do các từ có thể được biểu diễn cùng với các tiêu đề Ví dụ nhóm chứa tiêu đề T7 và T9 là về bất động sản (real estate) Nhóm chứa T2, T4, T5, và T8 về đầu tư giá trị (value investing) và nhóm chứa T1, T3 là về thị trường cổ phiếu (stock market) T6 chỉ có một mình nó

Tạo ma trận đếm

Công việc đầu tiên trong LSA là tạo ma trận từ-tài liệu (trong ví dụ của chúng

ta là ma trận từ-tiêu đề) Trong ma trận này, mỗi từ là một hàng, và mỗi tiêu đề là một cột Giao điểm của hàng và cột chứa số lần từ đó xuất hiện trong tiêu đề tương ứng

Ví dụ, từ “book” xuất hiện 1 lần trong tiêu đề T3 và 1 lần trong tiêu đề T4, trong khi

Trang 36

đó “investing” xuất hiện 1 lần trong tất cả các tiêu đề Thường thì ma trận được xây dựng rất lớn nhưng cũng rất thưa thớt (nhiều giao điểm hàng cột chứa giá trị 0) Điều này xảy ra do mỗi tiêu đề hay tài liệu thường chỉ chứa một lượng từ rất ít so với số lượng từ có thể có

Trong ma trận sau, ta bỏ qua các giá trị 0 để dễ nhìn hơn:

Thay đổi ma trận bằng phương pháp TF-IDF

Trong các hệ thống LSA phức tạp, ma trận đếm thường được chỉnh sửa để các

từ hiếm được đánh trọng số lớn hơn các từ phổ biến Ví dụ, từ xuất hiện trong khoảng 5% số tài liệu nên được đánh trọng số cao hơn các từ xuất hiện trong 90% tài liệu Phương pháp đánh trọng số phổ biến là TF-IDF (Term Frenquency – Inverse Document Frequency) Theo phương pháp này, số đếm trong mỗi cell (giao điểm giữa hàng và cột của ma trận) được thay thế bằng công thức sau:

Trang 37

TF-IDFi,j = (Ni,j/N*j) * log(D/Di)

Trong đó:

Ni,j: số lần từ i xuất hiện trong tài liệu j (giá trị đếm trong cell gốc)

N*j: số lượng tất cả các từ trong tài liệu (cộng các số đếm theo cột j)

D: số lượng tài liệu (số lượng các cột)

Di: số lượng tài liệu trong đó từ i xuất hiện (số lượng các cột không có giá trị 0 trong hàng i)

Trong công thức này, các từ tập trung ở các tài liệu nào đó được nhấn mạnh (bởi tỉ lệ Ni,j/N*j) và các từ chỉ xuất hiện trong một số ít các tài liệu cũng được nhấn mạnh (bởi thành phần log(D/Di))

Sử dụng phân rã giá trị đơn (Singular Value Decomposion – SVD)

a/ Phân rã giá trị đơn

SVD là phương pháp hệ số hóa ma trận thành một chuỗi các xấp xỉ tuyến tính bộc lộ được cấu trúc của ma trận SVD đặc biệt hữu ích và có nhiều ứng dụng như phân tích dữ liệu, xử lý tín hiệu, nhận dạng mẫu, dự báo thời tiết và LSA

SVD hoạt động như thế nào?

Xem xét ví dụ đơn giản sau về điểm số trong trận đấu gôn Giả sử Phil, Tiger

và Vijay chơi với nhau trong 9 lỗ (hole) và mỗi người đều có tỉ số thắng (par) cho mỗi

lỗ Bảng điểm có thể mô tả dưới dạng ma trận như sau:

Hole Par Phil Tiger Vijay

Trang 38

8 3 3 3 3

Xem xét bài toán dự báo mỗi người chơi sẽ có điểm như thế nào đối với một

hole nào đó Có thể cho mỗi lỗ một hệ số HoleDifficulty thể hiện độ khó của lỗ và mỗi người chơi có một hệ số PlayerAbility thể hiện khả năng của người chơi Điểm thực

sự được dự đoán bằng cách nhân 2 hệ số này với nhau

PredictedScore = HoleDifficulty * PlayerAbility

Cho HoleDifficulty là điểm par cho lỗ, và cho khả năng người chơi là 1 Như

vậy đối với lỗ đầu tiên, có par là 4, chúng ta mong đợi người chơi có khả năng 1 sẽ ghi điểm là 4

PredictedScore = HoleDifficulty * PlayerAbility = 4 * 1 = 4

Đối với toàn ma trận, ta cần nhân PlayerAbility (giả sử là 1 cho tất cả người

chơi) cho HoleDifficulty (trong phạm vi từ par 3 đến par 5) và ta có thể đoán chính

xác tất cả các điểm trong ví dụ này

Thực sự, đây là hệ số hóa SVD một chiều của bảng điểm Chúng ta có thể biểu

diễn bảng điểm hay ma trận như là tích của 2 véc tơ, véc tơ HoleDifficulty và véc tơ

PlayerAbility Để dự báo điểm bất kì, chỉ cần nhân hệ số HoleDifficulty thích hợp với

hệ số PlayerAbility thích hợp Tuân theo các luật nhân véc tơ thông thường, ta có thể tạo ma trận điểm bằng cách nhân véc tơ HoleDifficulty và véc tơ PlayerAbility theo

Trang 39

Các nhà toán học muốn giữ mọi thứ có thứ tự, do đó quy tắc là tất cả các véc tơ

phải được scale để có chiều dài là 1 Ví dụ, véc tơ PlayerAbility được sửa đổi để tổng

bình phương các thành phần của nó là 1 thay vì hiện tại là 12+12+12 =3 Để thực hiện điều này, ta phải chia mỗi thành phần bởi căn bình phương của 3, khi đó khi ta bình phương sẽ có giá trị 1/3 và 3 thành phần có tổng sẽ là 1 Tương tự, ta chia mỗi thành

phần HoleDifficulty cho căn bình phương của 148 Tích của căn bậc 2 của 3 và căn

bậc 2 của 148 sẽ là hệ số scale 21.07 Hệ số hóa SVD một chiều là:

Trang 40

3.2 Ưu nhược điểm và các ứng dụng của LSA

LSA có nhiều ưu điểm và được sử dụng rộng rãi cho nhiều bài toán

- Thứ nhất, các tài liệu và các từ cuối cùng được ánh xạ vào cùng không gian khái niệm Trong không gian này chúng ta có thể gom nhóm các tài liệu, các từ và quan trọng nhất là thấy được các gom nhóm này đồng nhất như thế nào để chúng ta có thể truy xuất tài liệu dựa trên các từ và ngược lại

PlayerAbility Phil Tiger Vijay 0.58 0.58 0.58

Ngày đăng: 04/04/2021, 00:34

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. C.D. Manning, P. Raghavan and H. Schütze. An introduction to Information Retrieval. Cambridge University Press Online Edition, 2009 Sách, tạp chí
Tiêu đề: Cambridge University Press Online Edition
[2]. K. Sugiyama, K. Hatano and M. Yoshikawa. Adaptive Web Search Based on User Profile Constructed without Any Effort from Users. WWW2004, New York, USA, May 17–22, 2004 Sách, tạp chí
Tiêu đề: WWW2004, New York, USA
[3]. J. B. Schafer, D. Frankowski, J. Herlocker, and S. Sen. Collaborative Filtering Recommender Systems. The Adaptive Web, LNCS 4321, pages. 291 – 324, 2007 Sách, tạp chí
Tiêu đề: The Adaptive Web, LNCS 4321, pages. 291 – 324
[4]. E. Gabrilovich and S. Markovitch. Computing Semantic Relatedness using Wikipedia-based Explicit Semantic Analysis. IJCAI’07, 2007 Sách, tạp chí
Tiêu đề: IJCAI’07
[5]. R. Thiagarajan, G. Manjunath, and M. Stumptner. Computing Semantic Similarity Using Ontologies. HP Labs Technical Report HPL-2008-87, 2008 Sách, tạp chí
Tiêu đề: HP Labs Technical Report HPL-2008-87
[6]. H. Kwak and H. Y. Shin and J. I. Yoon and S. Moon. Connecting Users with Similar Interests Across MultipleWeb Services. Association for the Advancement of Artificial Intelligence (www.aaai.org), 2009 Sách, tạp chí
Tiêu đề: Association for the Advancement of Artificial Intelligence (www.aaai.org)
[7]. B. Markines, C. Cattuto, F. Menczer, D. Benz, A. Hotho and G. Stumme. Evaluating Similarity Measures for Emergent Semantics of Social Tagging. World Wide Web, 2009 Sách, tạp chí
Tiêu đề: World Wide Web
[8]. H. Jung, M. Lee, I. Kang, S.W. Lee and W. K. Sung. Finding Topic-centric Identified Experts based on Full Text Analysis. 2nd International ExpertFinder Workshop, 2007 Sách, tạp chí
Tiêu đề: 2nd International ExpertFinder Workshop
[9]. R. Thiagarajan, G. Manjunath, and M. Stumptner. Finding Experts By Semantic Matching of User Profiles. Technical Reports, HP Laboratories, 2008 Sách, tạp chí
Tiêu đề: Technical Reports, HP Laboratories
[10]. G. Demartini. Finding Experts Using Wikipedia. 2nd International ExpertFinder Workshop, 2007 Sách, tạp chí
Tiêu đề: 2nd International ExpertFinder Workshop
[11]. G. Amato and U. Straccia. User Profile Modeling and Applications to Digital Libraries. Proceedings of the Third European Conference on Research and Advanced Technology for Digital Libraries, 1999 Sách, tạp chí
Tiêu đề: Proceedings of the Third European Conference on Research and Advanced Technology for Digital Libraries
[12]. S. Gauch, M. Speretta, A. Chandramouli and A. Micarelli. User Profiles for Personalized Information Access. springerlink.com, 2007 Sách, tạp chí
Tiêu đề: springerlink.com
[13]. T. Bogers, K. Kox and A. Bosch. Using Citation Analysis for Finding Experts in Workgroups. DIR-2008, Maastricht, the Netherlands, April 14-15, 2008 Sách, tạp chí
Tiêu đề: DIR-2008, Maastricht, the Netherlands
[14]. L. Shen and Y. Zhou. A New User Similarity Measure for Collaborative Filtering Algorithm. Second International Conference on Computer Modeling and Simulation, 2010 Sách, tạp chí
Tiêu đề: Second International Conference on Computer Modeling and Simulation
[15]. P. Lops, M. Gemmis, G. Semeraro, C. Musto, F. Narducci, and M. Bux. A Semantic Content-Based Recommender System Integrating Folksonomies for Personalized Access. springerlink.com, 2009 Sách, tạp chí
Tiêu đề: springerlink.com
[16]. H. Liang, Y. Xu, Y. Li, R. Nayak. Collaborative Filtering Recommender Systems based on Popular Tags. Proceedings of the 14th Australasian Document Computing Symposium, Sydney, Australia, 4 December 2009 Sách, tạp chí
Tiêu đề: Proceedings of the 14th Australasian Document Computing Symposium, Sydney, Australia
[17]. A. Kumar and Dr. P. Thambidurai. Collaborative Web Recommendation Systems - A Survey Approach. Global Journal of Computer Science and Technology Vol. 9 Issue 5 (Ver 2.0), January 2010 Sách, tạp chí
Tiêu đề: Global Journal of Computer Science and Technology Vol. 9 Issue 5 (Ver 2.0)
[18]. H. Naderi and B. Rumpler. Graph-Based Profile Similarity Calculation Method and Evaluation. springerlink.com, 2008 Sách, tạp chí
Tiêu đề: springerlink.com
[19]. R. Wetzker and C. Zimmermann. I Tag, You Tag: Translating Tags for Advanced User Models. http://portal.acm.org/, 2010 Sách, tạp chí
Tiêu đề: http://portal.acm.org/
[20]. A. K. Milicevic, A. Nanopoulos and M. Ivanovic. Social tagging in recommender systems: a survey of the state-of-the-art and possible extensions.springerlink.com, Published online: 21 January 2010 Sách, tạp chí
Tiêu đề: springerlink.com

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w