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

Phân cụm tập kết quả tìm kiếm web theo cách tiếp cận phân tích ngữ nghĩa tiềm ẩn và fisher kernel

83 934 4

Đ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 83
Dung lượng 1,16 MB

Nội dung

Một trong những cách tiếp cận để giải quyết vấn đề này là sử dụng kĩ thuật phân cụm tài liệu theo chủ đề tạo nên cách biểu diễn kết quả tìm kiếm Web cô động và rõ ràng.. Tư tưởng chính c

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI

Trường Đại học Công nghệ ––––––––––oOo––––––––––

Trang 2

MỤC LỤC

DANH SÁCH HÌNH VẼ 4

DANH SÁCH BẢNG BIỂU 4

BẢNG TỪ VIẾT TẮT 5

TỪ KHÓA 5

MỞ ĐẦU 6

CHƯƠNG 1 - GIỚI THIỆU TỔNG QUAN 7

1.1 Động lực 7

1.2 Phạm vi công việc 9

1.3 Cấu trúc luận văn 11

CHƯƠNG 2 - VẤN ĐỀ TÌM KIẾM WEB VÀ PHÂN CỤM TÀI LIỆU 12

2.1 Máy tìm kiếm Web 12

2.1.1 Cấu trúc bên trong 12

2.1.2 Biểu diễn kết quả tìm kiếm 14

2.2 Phân cụm 16

2.2.1 Khái niệm phân cụm 17

2.2.2 Phân cụm tài liệu 18

2.2.2.1 Khái niệm 18

2.2.2.2 Ứng dụng vào Phân cụm kết quả tìm kiếm Web 18

2.2.3 Các bước thực hiện phân cụm 20

2.2.4 Mục tiêu phân cụm 20

2.2.5 Các vấn đề cần chú ý 20

2.2.6 Giải thuật phân cụm 21

2.2.6.1 Phương pháp phân cụm phân cấp 21

2.2.6.2 Phương pháp phân cụm phân hoạch 23

2.2.7 Đánh giá kết quả phân cụm 25

2.2.8 Ứng dụng phân cụm 25

2.3 Một số kĩ thuật phân cụm kết quả tìm kiếm Web hiện nay 26

2.3.1 Scather/Gather 26

2.3.2 Grouper 26

2.3.3 LINGO 26

2.4 Một số kĩ thuật xử lí tự động tài liệu văn bản 28

2.4.1 Phân tích từ vựng 28

2.4.2 Loại bỏ stop-words 28

2.4.3 Stemming 28

Trang 3

CHƯƠNG 3 - PHÂN TÍCH NGỮ NGHĨA TIỀM ẨN VÀ FISHER

KERNEL 30

3.1 Mô hình không gian vectơ 30

3.1.1 Trọng số từ 31

3.1.2 Độ đo tương tự giữa các tài liệu 32

3.2 Phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analysis - LSA) 33

3.2.1 Đặc điểm ngôn ngữ tự nhiên 34

3.2.2 Ý tưởng LSA 35

3.2.3 Mục tiêu LSA 36

3.2.4 Kĩ thuật LSA 36

3.2.4.1 Biểu diễn tập tài liệu dưới dạng bảng co_occurrence 36

3.2.4.2 SVD 37

3.2.4.2.1 Cơ sở toán học 38

3.2.4.2.2 Chi tiết kĩ thuật SVD 40

3.3 Fisher Kernel 50

3.3.1 Giới thiệu 50

3.3.2 Fisher Kernel 50

3.3.3 Xây dựng Fisher Kernel dựa trên LSA 51

CHƯƠNG 4 - GIẢI THUẬT PHÂN CỤM KẾT QUẢ TÌM KIẾM WEB THEO CÁCH TIẾP CẬN LSA VÀ FISHER KERNEL 55

4.1 Phân cụm tài liệu theo cách tiếp cận LSA và Fisher Kernel 55

4.1.1 Xác định phần tử đại diện nhóm 55

4.1.2 Giải thuật phân cụm phân hoạch theo LSA và Fisher Kernel (LSA-FK) 55

4.2 Phân cụm kết quả tìm kiếm Web theo cách tiếp cận LSA và Fisher Kernel 56

4.2.1 Tiền xử lí 58

4.2.2 Biểu diễn tập tài liệu dưới dạng bảng co_occurrence 59

4.2.2.1 Trích chọn từ đặc trưng 59

4.2.2.2 Đánh giá mức độ quan trọng của từ thông qua phương pháp trọng số từ 59

4.2.3 Khai phá các khái niệm ẩn bên trong tập tài liệu theo phương pháp LSA và tính độ tương tự giữa các tài liệu theo hàm đo độ tương tự Fisher Kernel 60

4.2.3 Phân cụm 60

4.2.5 Tạo nhãn 61

4.3 Mô hình thực hiện 62

4.3.1 Mô hình Carrot 2 62

4.3.2 Lí do chọn ngôn ngữ lập trình Java 64

Trang 4

CHƯƠNG 5 - ĐÁNH GIÁ THỰC NGHIỆM 66

5.1 Các phương pháp đánh giá thực nghiệm 66

5.1.1 Sự thật (Ground truth) 66

5.1.2 Ý kiến người sử dụng 68

5.2 Đánh giá giải thuật LSA-FK 69

5.2.1 Giá trị k tối ưu 70

5.2.2 Ngưỡng tương tự 71

5.2.3 Tính tổng quát câu hỏi truy vấn 72

KẾT LUẬN 74

TÀI LIỆU THAM KHẢO 75

PHỤ LỤC 79

Trang 5

DANH SÁCH HÌNH VẼ

Hình 1.1 Sự mất cân xứng giữa ý tưởng và câu hỏi truy vấn của người sử dụng

8

Hình 1.2 Khai phá Web 10

Hình 2.1 Cấu trúc bên trong của của máy tìm kiếm Web 12

Hình 2.2 Cấu trúc dữ liệu inverted index 13

Hình 2.3 Giao diện biểu diễn kết quả tìm kiếm của Google 16

Hình 2.4 Mô phỏng phân cụm 17

Hình 2.5 Tiến trình phân cụm tài liệu 19

Hình 2.6 Phân cụm phân cấp 23

Hình 3.1 Biểu diễn hình học SVD 41

Hình 3.2 Biểu diễn hình học mô hình khái niệm (aspect model) 50

Hình 4.1 Kiến trúc Carrot2 63

Hình 4.2 Kiến trúc Carrot2 theo dạng đường ống 63

Hình 4.3 Tiến trình phân cụm của Carrot2 64

Hình 5.1 Giao diện 70

Hình 5.2 Hình bên trái với q=0.77 , hình bên phải với q=0.90 71

Hình 5.3 Hình bên trái với ngưỡng tương tự 0.23 và bên phải 0.53 72

Hình 5.4 Bên trái câu hỏi “Clinton” và bên phải ““hillary rodham clinton” 73 DANH SÁCH BẢNG BIỂU Bảng 3.1 Một số phép đo độ tương tự giữa hai vectơ tài liệu X, Y Trong đó, xi, yi là trọng số thành phần thứ i của vectơ 33

Bảng 3.2 Ma trận biểu diễn quan hệ giữa các từ và các tài liệu 46

Trang 6

BẢNG TỪ VIẾT TẮT

Từ hoặc cụm từ Từ viết tắt Từ tiếng Anh

Decomposition

Phân cụm kết quả tìm kiếm

Web theo cách tiếp cận LSA

và Fisher Kernel

and Fisher Kernel approach

to Clustering of Web Search Results

Độ đo tương tự Fisher

Kernel theo LSA

K(LSA(di ), R k )

TỪ KHÓA

Phân cụm, Phân cụm tài liệu, Phân tích ngữ nghĩa tiềm ẩn (LSA), Phân tích trị đặc biệt (SVD), Fisher Kernel

Trang 7

MỞ ĐẦU

Hiện nay khai thác và tìm kiếm thông tin trên Internet là vấn đề được rất nhiều nhà nghiên cứu quan tâm Chúng ta đều biết, khối lượng thông tin trên Web khổng lồ, câu hỏi truy vấn của người sử dụng thường ít chính xác, nên số kết quả trả về từ các máy tìm kiếm có thể lên đến hàng trăm hay hàng ngàn tài liệu Do đó, tìm được chính xác tài liệu mình quan tâm là rất khó và đôi lúc là không thể Một trong những cách tiếp cận để giải quyết vấn đề này

là sử dụng kĩ thuật phân cụm tài liệu theo chủ đề tạo nên cách biểu diễn kết quả tìm kiếm Web cô động và rõ ràng Trong luận văn này tôi xin mạnh dạn

đề xuất giải thuật Phân cụm kết quả tìm kiếm Web theo cách tiếp cận phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analysis) và Fisher Kernel Tư tưởng chính của giải thuật là, trước tiên phân tích ngữ nghĩa tiềm ẩn bên trong tập kết quả để tìm ra các khái niệm bao hàm trong đó, sau đó phân cụm tập kết quả theo tư tưởng giải thuật phân cụm K-means sử dụng hàm độ đo tương tự Fisher Kernel để nhóm các kết quả theo khái niệm chúng mô tả Giải thuật được cài đặt trên mô hình Carrot2

Mặc dù bản thân đã nổ lực cố gắng, được sự tạo điều kiện nghiên cứu rất tốt của trường ĐH Công nghệ và sự hướng dẫn của thầy giáo Vũ Đức Thi, nhưng đề tài không tránh khỏi những thiếu sót, rất mong nhận được sự cộng tác của các chuyên gia, bạn bè và đồng nghiệp

Trang 8

Chương 1 - GIỚI THIỆU TỔNG QUAN

Mặc dù hiện nay đã có rất nhiều máy tìm kiếm như Google1

, Altavista2, HotBot3, Lycos4, AllTheWeb5, v.v…giúp chúng ta rất nhiều trong việc tìm kiếm thông tin Song hầu hết các máy này đều thực hiện việc tìm kiếm dựa trên phương pháp tính hạng liên quan (Document Ranking) và biểu diễn kết quả tìm kiếm theo thứ tự hạng xuất hiện Tuy nhiên phương pháp này được đánh giá là không hiệu quả vì một vài nguyên nhân sau đây:

 WWW là một kho dữ liệu khổng lồ và luôn được cập nhật thay đổi

do tính động của các trang Web, nên máy tìm kiếm chỉ có thể xây dựng được một phần bảng chỉ số tài liệu 6, do vậy không thể thực hiện tính hạng được cho tất cả các tài liệu

 Người sử dụng đặt câu hỏi truy vấn quá ngắn không đủ để thể hiện được mục đích của họ Khi đó kết quả tìm kiếm là chung chung và

có thể lên đến hàng trăm hoặc hàng ngàn kết quả Theo thống kê cho

Trang 9

biết không quá một nữa số người sử dụng duyệt quá trang thứ hai và chỉ có 3/4 người sử dụng duyệt hết 2 trang Vậy đa số người sử dụng duyệt tối đa 10-30 kết quả (mặc định hiển thị 10 – 20 kết quả trên

một trang), do đó bỏ qua một số kết quả tìm kiếm cần thiết nhất

 Đa số người sử dụng gặp khó khăn trong việc đặt câu hỏi truy vấn nên câu hỏi thường không đúng như mong muốn Sở dĩ như vậy là

vì khi có ý định tìm thông tin trên WWW, thì trong suy nghĩ của họ cũng hình thành khái niệm về cái họ cần tìm Sau đó khái niệm này được chuyển thành một tập các từ và được sử dụng để đặt câu hỏi truy vấn Tuy nhiên tính chính xác của việc chuyển đổi khái niệm thành tập các từ lại phụ thuộc vào nhiều nhân tố, chẳng hạn như kinh nghiệm tìm kiếm, kiến thức cơ bản liên quan đến khái niệm đó, hoặc là sự thành thạo về ngôn ngữ Điều này tạo nên sự bất cân xứng giữa khái niệm và câu hỏi truy vấn Máy tìm kiếm lại chỉ có thể tìm kiếm và sắp xếp kết quả theo các từ khóa trong câu hỏi truy vấn, nên thứ tự hạng xuất hiện của các kết quả không đúng như mong muốn người sử dụng

Hình 1.1 Sự mất cân xứng giữa ý tưởng và câu hỏi truy vấn của người sử dụng

Trang 10

 Hơn nữa, phương pháp tính hạng yêu cầu quá khắt khe về mức độ liên quan giữa kết quả tìm kiếm với câu hỏi truy vấn và giả định rằng các kết quả luôn so sánh được với nhau Tuy nhiên điều này là không đúng, vì đối với các câu hỏi truy vấn chung chung có những kết quả chỉ là chủ đề con nên việc so sánh giữa các kết quả không cân xứng Ví dụ, đối với câu hỏi truy vấn “jaguar”, kết quả trả về có thể bao gồm những từ về jaguar cars, jaguar as a cat, Mac OS X Jaguar v.v…

 Ngoài ra phương thức này dễ bị Spam lợi dụng để đưa những trang Web xấu lên đầu

Do đó yêu cầu phát triển giao diện tương tác thông minh giữa người và máy, hỗ trợ người sử dụng trong việc tìm kiếm thông tin là cần thiết Nó đang

là một trong những vấn đề được nhiều nhà nghiên cứu quan tâm Mặc dù gần đây đã có nhiều giải thuật được đưa ra, nhưng tôi vẫn mạnh dạn đề xuất giải thuật Phân cụm kết quả tìm kiếm Web theo cách tiếp cận LSA và Fisher Kernel, viết tắt là LSA-FK, với hy vọng đóng góp được một giải thuật phân cụm tốt xử lí được vấn đề từ đồng nghĩa và từ đa nghĩa trong ngôn ngữ tự nhiên với mức độ nhất định

1.2 Phạm vi công việc

Để đạt được mục đích trên, tôi sẽ phải thực hiện những công việc sau:

 Tìm hiểu hướng nghiên cứu hiện tại đối với bài toán tìm kiếm thông tin, đặc biệt tập trung vào khai phá nội dung trang Web và tối ưu kết quả trả về;

 Vận dụng lí thuyết đại số tuyến tính và kĩ thuật phân tích ma trận để rút gọn số chiều của vectơ biểu diễn nội dung tài liệu, từ đó xây

Trang 11

dựng cách biểu diễn tài liệu theo các khái niệm ngữ nghĩa ẩn bên trong tập tài liệu;

 Vận dụng lí thuyết xác suất, thống kê toán học và Kernel Method để xây dựng hàm Fisher Kernel đo độ tương tự giữa các tài liệu

 Cài đặt giải thuật LSA-FK trên nền Carrot2

;

 Đánh giá giải thuật đề ra

Các vấn đề trên thuộc vào lĩnh vực khai phá Web – lĩnh vực riêng của khai thác và tìm kiếm thông tin Trong đó khai phá Web tiếp tục được phân thành một số lĩnh vực sau:

+ Khai phá sử dụng Web, phân tích mẫu truy cập và phân tích xu hướng cá nhân

+ Khai phá kết hợp cấu trúc Web, tập trung vào vấn đề phân tích các cấu trúc liên kết của Web

+ Cuối cùng khai phá nội dung Web, nghiên cứu các vấn đề tìm kiếm thông tin từ Internet Luận văn của tôi thuộc vào lĩnh vực sau cùng này

Khai phá sử dụng Web

Khai phá nội dung

trang Web

Tối ưu kết quả trả về

Khai phá các mẫu truy nhập

Phân tích các xu hướng cá nhân

Trang 12

1.3 Cấu trúc luận văn

Các phần còn lại của luận văn được tổ chức như sau:

Chương 2 tóm tắt ngắn gọn về máy tìm kiếm Web Đồng thời khảo sát các cách tiếp cận biểu diễn kết quả tìm kiếm Web, trong đó đặc biệt chú ý cách biểu diễn theo chủ đề Phần tiếp của chương này tôi trình bày về các kỹ thuật phân cụm và xử lí văn bản liên quan

Chương 3 giới thiệu các khái niệm sử dụng trong giải thuật phân cụm kết quả tìm kiếm Web Đầu tiên, trình bày hai mô hình Không gian vectơ và Phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analysis - LSA) được sử dụng nhiều trong bài toán tìm kiếm thông tin Sau cùng, trình bày về Fisher Kernel

Chương 4 trình bày chi tiết về giải thuật phân cụm LSA-FK và cho ví

dụ minh hoạ cần thiết Tóm tắt mô hình Carrot2 cài đặt giải thuật LSA-FK

Chương 5 trình bày các phương pháp đánh giá kết quả thực nghiệm, sau đó thực hiện đánh giá giải thuật LSA-FK

Trang 13

Chương 2 - VẤN ĐỀ TÌM KIẾM WEB VÀ PHÂN CỤM TÀI LIỆU

2.1 Máy tìm kiếm Web

Máy tìm kiếm Web là một loại chương trình tiện ích hỗ trợ nhằm giúp người sử dụng tìm kiếm thông tin một cách nhanh chóng và đầy đủ Giao diện tương tác giữa người và máy khá đơn giản và thân thiện Người sử dụng chỉ cần đặt câu hỏi truy vấn về vấn đề quan tâm, sau đó lập tức máy trả về tập kết

quả tìm kiếm (snippets) Mỗi snippet bao gồm tựa đề, địa chỉ web của tài liệu

(được gọi là URL7) và miêu tả ngắn gọn nội dung chính tài liệu Web

2.1.1 Cấu trúc bên trong

Hình 2.1 Cấu trúc bên trong của của máy tìm kiếm Web

Web Crawler

Web Crawler là một trong hai thành phần tương tác trực tiếp với Internet, còn được gọi là Web Spider hoặc Robot Công việc chính của Web Crawler phát hiện những nguồn tài nguyên mới trên Web Để thực hiện công

Trang 14

việc này, Web Crawler tìm kiếm đệ quy trên các đường link của tất cả các

trang đã được duyệt

Đồng thời, trong khi khai phá các nguồn tài nguyên mới trên Internet, Web Crawler kiểm tra liệu rằng các trang có còn giá trị sử dụng hay không và liệu chúng đã được cập nhật hay chưa Với chức năng này nó giúp cho máy tìm kiếm cập nhật được nguồn tài nguyên mới và xóa bỏ tài nguyên không còn giá trị sử dụng trong World Wide Web

Chỉ số tài liệu (Document Index)

Modul lập chỉ số tài liệu thực hiện chức năng xây dựng bảng chỉ số tài liệu hỗ trợ công việc tìm kiếm Thông thường, các hệ thống tìm kiếm thông tin thực hiện việc tìm kiếm các tài liệu hoặc dựa trên phương pháp lựa chọn tài liệu (Document Selection) có chứa các từ trong câu hỏi truy vấn, hoặc dựa trên phương pháp tính hạng liên quan (Document Ranking) đến câu hỏi truy vấn Do đó hầu hết các máy tìm kiếm đều sử dụng biến dữ liệu có cấu trúc

inverted index để hỗ trợ thực hiện công việc này Inverted index có cấu trúc

giống như bảng mục lục ở phần cuối của cuốn sách – tương ứng với mỗi một

từ là một danh sách liên kết chứa địa chỉ các trang trong đó nó xuất hiện Với kiểu lưu trữ này nó có khả năng giúp máy tìm kiếm xác định đúng các tài liệu liên quan đến câu hỏi truy vấn

Hình 2.2 Cấu trúc dữ liệu inverted index

Trang 15

Lưu trữ tài liệu (Document Cache)

Hiện nay có nhiều máy tìm kiếm vừa lưu trữ bảng chỉ số tài liệu như ở phần trên, vừa lưu trữ bảng chỉ số tài liệu gốc Ví dụ như trong Google, bảng chỉ số tài liệu gốc được sử dụng để tạo các snippet và phục vụ cho việc lưu trữ các phiên bản của tài liệu

Tính hạng tài liệu liên quan (Document Ranking)

Chắc chắn rằng trong môi trường World Wide Web, thậm chí ngay cả với những câu hỏi truy vấn hoàn thiện và chính xác, số kết quả tìm kiếm vẫn có thể lên đến hàng ngàn hoặc hàng triệu Do vậy, cần phải có kĩ thuật tính hạng tài liệu liên quan và đó là công việc của modul tính hạng tài liệu liên quan

Modul xử lí truy vấn (Query Processor)

Modul xử lí truy vấn phối hợp thực hiện cùng với các modul trên để trả lời câu hỏi truy vấn của người sử dụng Cụ thể trong quá trình thực hiện, bộ

xử lí truy vấn kết hợp với bảng chỉ số tài liệu, modul lưu trữ tài liệu, modul tính hạng tài liệu liên quan để đưa ra tập kết quả tìm kiếm Sau đó tập kết quả này được đưa đến người sử dụng thông qua giao diện của máy tìm kiếm

Giao diện biểu diễn kết quả (Presentation interface)

Bất kì một chương trình ứng dụng nào, giao diện là nơi giao tiếp chính giữa người sử dụng với hệ thống máy tính Do vậy khi đánh giá chất lượng chương trình thì giao diện được xếp vào tiêu chí đầu tiên, nó có vai trò vô cùng quan trọng và có ảnh hưởng rất lớn đến toàn bộ chất lượng của chương trình Chính vì những lí do này mà các nhà nghiên cứu tập trung nghiên cứu nhiều về các hình thức biểu diễn giao diện

2.1.2 Biểu diễn kết quả tìm kiếm

Như trên đã thảo luận, giao diện đóng vai trò vô cùng quan trọng, thông

Trang 16

qua nó người dùng có thể xác định được những thứ họ cần và các bước thực hiện tiếp theo Hầu hết hiện nay các máy tìm kiếm đều thực hiện việc tìm kiếm dựa trên phương pháp tính hạng liên quan (Document Ranking) và biểu diễn kết quả tìm kiếm theo thứ tự hạng xuất hiện Nhưng vì số lượng kết quả tìm kiếm có thể lên đến hàng ngàn tài liệu, nên người sử dụng không đủ thời gian và kiên nhẫn đọc toàn bộ lượng tài liệu này để xác định các tài liệu cần thiết Do vậy cần có một kĩ thuật mới để nâng cao hiệu quả trong việc duyệt tìm tài liệu Qua thực nghiệm người ta đã chứng minh được rằng việc duyệt tìm đối tượng theo chủ đề là rất nhanh [11] Vậy để nâng cao hiệu quả trong việc tìm kiếm, ta nên biểu diễn kết quả tìm kiếm Web theo chủ đề vì nó có những ưu điểm sau:

 Tên chủ đề giúp người sử dụng phát hiện được chủ đề chính trong tập kết quả và do đó có thể xác định nhanh chóng tài liệu cần tìm

 Việc phân chia tập kết quả theo chủ đề giúp người sử dụng có thể nghiên cứu thêm các tài liệu liên quan đến những chủ đề khác mà

nó thường bị bỏ qua khi duyệt kết quả tìm kiếm theo thứ tự hạng xuất hiện, vì những kết quả này thường rất xa so với các trang đầu Vậy vấn đề đặt ra là làm thế nào để có thể biểu diễn tập kết quả tìm kiếm theo chủ đề? Như chúng ta đều biết, tập kết quả phụ thuộc vào câu hỏi truy vấn, do đó không thể biết trước bất kỳ thông tin nào về các chủ đề chứa trong tập kết quả này Đây là một thách thức lớn đối với ngành khoa học máy tính Song cũng đã có nhiều giải pháp được đưa ra, một trong những giải pháp

là sử dụng phương pháp phân cụm tài liệu Phân cụm tài liệu thực hiện nhóm các tài liệu theo chủ đề và tạo ra mô tả nội dung của mỗi nhóm Như vậy, người sử dụng chỉ cần quan sát tóm tắt nội dung các nhóm và dễ dàng định vị được vùng tài liệu mà mình quan tâm

Trang 17

2.2 Phõn cụm

Để giải quyết một vấn đề phức tạp chỳng ta thường hay sử dụng phương phỏp chia để trị, cú thể hiểu nụm na là chia vấn đề phức tạp thành những vấn đề nhỏ ớt phức tạp hơn, đõy là cỏch thức rất tự nhiờn Với phương phỏp này chỳng ta cú thể dễ dàng nắm bắt được cỏc vấn đề cơ bản tiềm ẩn bờn trong vấn đề phức tạp hay được gọi là tỡm cấu trỳc bờn trong vấn đề Phương phỏp phõn cụm cũng xuất phỏt từ ý tưởng này, nú đó được ỏp dụng rộng rói và mang lại nhiều thành cụng trong nhiều lĩnh vực, vớ dụ như khai phỏ dữ liệu, thống kờ và thu thập thụng tin, v.v

tựa đề SNIPPET

tóm tắt nội dung

URL

Hỡnh 2.3 Giao diện biểu diễn kết quả tỡm kiếm Web của Google

Trang 18

2.2.1 Khái niệm phân cụm

Phân cụm là kĩ thuật quan sát và nhóm các đối tượng lại thành các cụm hoặc kĩ thuật chia một tập dữ liệu ban đầu thành các cụm sao cho thỏa mãn:

 Các đối tượng trong mỗi cụm là tương tự hoặc gần nhau được xác định bằng độ tương tự Tức là, các phần tử trong mỗi cụm là tương tự nhau

 Các đối tượng thuộc vào các cụm khác nhau thì không tương tự nhau Tức là, các phần tử thuộc cụm này thì phi tương tự với các phần tử thuộc cụm khác

Có thể định nghĩa phân cụm ở mức cơ bản nhất: “Phân cụm là quá trình

tổ chức các đối tượng thành các cụm sao cho các phần tử trong mỗi cụm tương tự nhau”

Ví dụ, minh họa phân cụm

Hình 2.4 Mô phỏng phân cụm

Cho tập dữ liệu (hình bên trái), tiến hành thực hiện phân cụm tập dữ liệu

Trang 19

theo khoảng cách hình học Kết thúc quá trình phân cụm ta thu được 4 cụm như hình vẽ bên phải, các đối tượng trong cùng cụm có khoảng cách gần nhau Cách phân cụm theo kiểu này được gọi là phân cụm dựa vào khoảng cách

Ngoài ra, còn có một loại phân cụm khác dựa vào khái niệm Khi đó, các đối tượng trong cùng cụm đều liên quan đến khái niệm chung của cụm Hay nói cách khác, các đối tượng được nhóm lại theo nội dung chúng diễn tả, không đơn giản là chỉ dựa theo độ đo khoảng cách hình học Phân cụm tài liệu

là một trong những ứng dụng loại phân cụm này

2.2.2 Phân cụm tài liệu

Phân tích, tổ chức và sắp xếp kho tài liệu trên máy tính là một thách thức lớn đối với ngành khoa học máy tính Tác vụ chính cần phải thực hiện đối với công việc này là đánh giá mối quan hệ tương tự giữa các tài liệu Thực chất đây là bài toán phân cụm tài liệu

2.2.2.1 Khái niệm

Cho D = {d1, d2, …, dn} là một tập các tài liệu và (di, dj ) là độ tương

tự giữa hai tài liệu di và dj Phân cụm tài liệu là phân rã tập D thành k nhóm C

= {c1, c2,…, ck} thỏa mãn điều kiện các tài liệu cùng nhóm cùng chủ đề và các tài liệu khác nhóm khác chủ đề

2.2.2.2 Ứng dụng vào Phân cụm kết quả tìm kiếm Web

Trong khi phương pháp phân cụm được sử dụng để thực hiện nhiều tác

vụ khác nhau trong lĩnh vực thu thập thông tin [6, 7], phương pháp phân cụm tài liệu chỉ tập trung vào hai hướng nghiên cứu chính Thứ nhất, là công cụ cải tiến hiệu năng thu thập thông tin và là cách thức tổ chức kho tài liệu Ý tưởng phân cụm tài liệu áp dụng cho việc thu thập thông tin xuất phát từ lí thuyết nhóm [11], kết hợp các tài liệu liên quan theo yêu cầu lại với nhau Bằng việc

Trang 20

nhóm các tài liệu theo từng cụm khi đó ta dễ dàng phân biệt được tài liệu nào

là liên quan và không liên quan với nhau, vì vậy hiệu quả thu thập tài liệu theo không gian nhóm được cải tiến đáng kể Thứ hai, là công cụ tiện ích hiệu quả khi duyệt tìm thông tin trong tập tài liệu lớn[11, 8] Gần đây nó được sử dụng để phân cụm kết quả tìm kiếm Web[30, 28]

Hình 2.5 Tiến trình phân cụm tài liệu

Khái niệm phân cụm kết quả tìm kiếm Web

Phân cụm kết quả tìm kiếm web là tổ chức sắp xếp tập kết quả tìm kiếm theo chủ đề, giống như cách tạo các thư mục với bố cục từ tổng thể đến chi tiết

Ví dụ đối với câu hỏi truy vấn “clinton” thì các kết quả được trình theo các chủ đề như: “Bill Clinton”, “Hillary Clinton”, “George Clinton”, “Clinton County” v.v…

Yêu cầu đối với phân cụm kết quả tìm kiếm Web

Liên quan : các tài liệu được xếp vào cùng chủ đề phải thực sự liên

quan với nhau

Tính tổng thể: Nhãn của từng chủ đề phải thể hiện được nội dung

chính của chủ đề, đồng thời phải ngắn gọn và súc tích

Nạp chồng: Mỗi một kết quả có thể thuộc về nhiều chủ đề khác

nhau

Tốc độ: theo yêu cầu của chương trình trực tuyến, tốc độ thực hiện

Trang 21

được đặt lên hàng đầu, do vậy quá trình thực hiện phân cụm không được phép làm chậm quá trình hồi đáp kết quả truy vấn đến người sử dụng

Tăng tốc độ xử lí: Do yêu cầu về tốc độ, để tiết kiệm thời gian, giải

thuật cần phải xử lí từng kết quả ngay sau khi nhận được từ máy tìm kiếm Hiểu một cách nôm na, nhận được kết quả nào là xử lí ngay kết quả ấy không phải đợi nhận đủ rồi mới thực hiện

2.2.3 Các bước thực hiện phân cụm

1 Xây dựng thủ tục biểu diễn đối tượng,

2 Xây dựng hàm tính độ tương tự,

3 Xây dựng các tiêu chuẩn phân cụm ,

4 Xây dựng mô hình cho cấu trúc cụm dữ liệu,

5 Xây dựng thuật toán phân cụm và xác lập các điều kiện khởi tạo,

6 Đánh giá kết quả phân cụm

Trang 22

tìm cấu trúc ẩn bên trong tập hợp dữ liệu chưa được phân loại

Vấn đề thường gặp trong phân cụm là hầu hết dữ liệu cần phân cụm đều chứa nhiễu do quá trình thu thập thiếu chính xác hoặc không đầy đủ, vì vậy cần phải xây dựng chiến lược cho bước tiền xử lí dữ liệu nhằm khắc phục hoặc loại bỏ nhiễu Dữ liệu bị nhiễu có thể được hiểu là dữ liệu không chính xác, hoặc dữ liệu bị khuyết thông tin về một vài thuộc tính nào đó Ngoài ra,

dò tìm phần tử ngoại lai cũng là một trong những hướng nghiên cứu quan trọng trong phân cụm, nhiệm vụ của nó là phát hiện một nhóm nhỏ các đối tượng khác thường so với các đối tượng khác trong dữ liệu phân cụm Khác thường có thể là không tuân theo các hành vi hoặc mô hình của dữ liệu nhằm tránh sự ảnh hưởng của chúng tới quá trình và kết quả của việc phân cụm Khám phá các phần tử ngoại lai đã được phát triển và ứng dụng trong viễn thông, dò tìm gian lận thương mại, làm sạch dữ liệu, v.v…

Phân cụm đang là vấn đề mở và khó

2.2.6 Giải thuật phân cụm

Như trên đã trình bày, tùy thuộc vào từng cấu trúc dữ liệu cụm mà có một giải thuật phân cụm phù hợp Đối với đối tượng dữ liệu là tập tài liệu thường thì người ta sử dụng mô hình không gian vectơ để biểu diễn và đã có nhiều giải thuật phân cụm được đề xuất cho mô hình này Dựa trên các phương pháp tiếp cận có thể phân các giải thuật này thành hai loại: thứ nhất theo phương pháp phân cụm phân hoạch và thứ hai theo phương pháp phân cụm phân cấp

2.2.6.1 Phương pháp phân cụm phân cấp

Phương pháp này xây dựng một phân cấp trên cơ sở các đối tượng dữ liệu đang xem xét Nghĩa là sắp xếp một tập dữ liệu đã cho thành một cấu trúc dạng cây, cấu trúc này được xây dựng theo kĩ thuật đệ quy Theo kĩ thuật này

Trang 23

có hai cách tiếp cận phổ biến: hòa nhập nhóm hay được gọi là tiếp cận bottom-up, và phân chia nhóm hay được gọi là tiếp cận top-down

Kĩ thuật tiếp cận bottom-up: Bắt đầu xuất phát khởi tạo mỗi một nhóm tương ứng với mỗi một đối tượng và sau đó tiến hành hòa nhập đối tượng dựa vào độ đo tương tự giữa các nhóm Quá trình này được lặp lại cho đến khi tất

cả các nhóm được hòa nhập thành một nhóm (mức cao nhất của cây phân cấp) hoặc cho đến khi thỏa mãn điều kiện kết thúc Cách tiếp cận này sử dụng chiến lược ăn tham trong quá trình sát nhập

Kĩ thuật tiếp cận top-down: khởi đầu, tất cả các đối tượng được sắp xếp vào cùng một nhóm và sau đó tiến hành chia nhỏ các nhóm Mỗi vòng lặp, thực hiện phân chia nhóm thành các nhóm nhỏ hơn dựa vào độ đo tương tự giữa các nhóm Quá trình được lặp lại cho đến khi mỗi đối tượng là một nhóm riêng biệt hoặc khi thỏa điều kiện dừng Cách tiếp cận này sử dụng chiến lược chia để trị

Giải thuật 1 Phân cụm phân cấp

Input: tập đối tượng d1, , dn, độ đo tương tự (di, dj), i j; i, j = 1 n

1 Khởi tạo các nhóm từ tập đối tượng, mỗi đối tượng tạo thành một nhóm

2 for i = 1 to n - 1 do

3 Nhập hai nhóm tương tự nhau nhất thành một nhóm mới

4 end for

Trang 24

Hình 2.6 Phân cụm phân cấp

Chú ý: Có nhiều phương thức đo mức độ tương tự giữa các nhóm, với

mỗi phương thức sẽ thu được các kết quả khác nhau:

Single-linked: khoảng cách giữa hai nhóm được định nghĩa là khoảng cách bé nhất giữa hai đối tượng thuộc hai nhóm khác nhau

Complete-linked : ngược với single-linked, khoảng cách giữa hai nhóm được định nghĩa là khoảng cách lớn nhất giữa hai đối tượng thuộc hai nhóm khác nhau

Average-linked: khoảng cách giữa hai nhóm được định nghĩa là khoảng cách trung bình của tất cả các cặp đối tượng, trong cặp đó mỗi đối tượng thuộc về một nhóm khác nhau

Độ phức tạp tính toán của giải thuật phân cụm phân cấp là O(n2

logn) và chi phí bộ nhớ O(n2), trong đó n là số đối tượng (tài liệu) Giải thuật này là không hiệu quả đối với tập đối tượng cực lớn Khi đó ta áp dụng phương pháp phân cụm phân hoạch

2.2.6.2 Phương pháp phân cụm phân hoạch

Kĩ thuật này xây dựng một phân hoạch của tập dữ liệu n đối tượng thành

tập k nhóm theo điều kiện tối ưu Khởi đầu, giải thuật phân cụm phân hoạch

Trang 25

K-means là được sử dụng nhiều nhất và sau đó có thêm các kiểu cải tiến thay đổi của nó (K-mediods mỗi nhóm được đại diện bởi phần tử trong nhóm)

K-means là thuật toán phân cụm được định nghĩa theo phần tử đại diện, nghĩa là mỗi nhóm được xác định bởi tâm của nhóm (điểm có khoảng cách đều với tất cả các cạnh của cái gì đó, điểm hoặc phần tử chính của cái gì đó) Phương pháp này dựa vào độ đo khoảng cách giữa các đối tượng trong cụm Trong thực tế, phần tử trung tâm thường được xác định theo trung bình khoảng cách giữa các đối tượng trong mỗi cụm Như vậy, bắt đầu cần phải khởi tạo một tập các phần tử trung tâm cụm Sau đó thực hiện xác lập cụm theo các tâm cụm (phần tử nào gần với tâm cụm nào nhất thì sẽ thuộc vào cụm đó) và xác

định lại tâm cụm Thực hiện lặp lại cho đến khi thỏa điều kiện hội tụ

Chú ý: theo phương pháp K-means việc chọn k tâm cụm là được chọn

ngẫu nhiên

Giải thuật 2: Giải thuật K-means

Input: Tập n đối tượng, k nhóm

Bước 1 Phân tập n đối tượng thành k tập con tùy ý khác rỗng

Bước 2 Xác định tâm của mỗi nhóm

Bước 3 Phân các đối tượng vào cụm mà nó gần tâm nhất

Bước 4 Quay lại bước 2, hoặc dừng khi không hoặc còn ít sự thay đổi

Độ phức tạp tính toán của giải thuật K-means tương đối thấp (kn),

trong đó k là số nhóm, n là số đối tượng (tài liệu) Vì vậy giải thuật này được

đánh giá là thích hợp trong việc ứng dụng phân cụm tập tài liệu kích thước lớn

Một vài điều kiện hội tụ thường được sử dụng trong phân cụm phân cấp [33]

Trang 26

2.2.7 Đánh giá kết quả phân cụm

Làm thế nào để đánh giá được chất lượng cụm? Trong thực tế, không

có một tiêu chuẩn tuyệt đối nào, tùy theo các mục đích phân cụm sẽ có các tiêu chuẩn cụm khác nhau phù hợp với yêu cầu sử dụng Các tiêu chuẩn này được người sử dụng đưa ra tùy theo từng bài toán phân cụm cụ thể

Tuy nhiên, nhìn chung một phương thức phân cụm được đánh giá là tốt nếu tạo ra được các cụm có chất lượng cao, tức là các đối tượng trong cùng cụm có mức tương tự với nhau rất cao, còn các đối tượng không cùng cụm mức tương tự rất thấp (phi tương tự) Ngoài ra, chất lượng của phương pháp phân cụm còn được đánh giá bằng khả năng khám phá một vài hoặc tất cả cấu trúc ẩn bên trong nó

Ta có thể tổng quát rằng, bản chất của việc phân cụm là xác định các đối tượng tương tự nhau để nhóm lại thành cụm Do đó, chất lượng của kết quả phân cụm phụ thuộc chủ yếu hàm độ đo tương tự Vậy hàm độ đo tương

tự đóng vai trò quyết định chất lượng cụm dữ liệu

2.2.8 Ứng dụng phân cụm

Phân cụm dữ liệu có thể được ứng dụng trong nhiều lĩnh vực:

 Thương mại: phân nhóm khách hàng theo hành vi mua hàng từ cơ sở

dữ liệu lớn chứa các thông tin về thuộc tính và hành vi mua sắm của khách hàng

 Sinh học: phân lớp động vật và thực vật theo tập thuộc tính của chúng

 Thư viện: phân loại sách

 Nghiên cứu trái đất: phân cụm để theo dõi các tâm động đất từ đó xác định được các vùng nguy hiểm

 WWW: phân cụm kết quả tìm kiếm web, v.v…

Trang 27

2.3 Một số kĩ thuật phân cụm kết quả tìm kiếm Web hiện nay

2.3.1 Scather/Gather

Scather/Gather xuất phát từ ý tưởng duyệt tập tài liệu theo nhóm chủ đề

Nó đã được chứng minh là có hiệu quả trong việc đặt câu hỏi truy vấn theo chủ

đề [19] Scather/Gather thực hiện nhóm các tài liệu theo chủ đề, và biểu diễn

các nhãn mô tả tóm tắt nội dung của mỗi nhóm đến người sử dụng Nhãn tóm

tắt gồm có tên chủ đề và số lượng tài liệu trong mỗi nhóm Scather/Gather áp dụng phương pháp phân cụm phân hoạch, khi đó tập tài liệu n được phân thành

k nhóm, mỗi tài liệu được biểu diễn bởi một vectơ trọng số theo phương pháp TF-IDF Hệ số góc cosin được sử dụng để đo độ tương tự giữa các tài liệu và

giữa các nhóm

2.3.2 Grouper

Grouper là hệ thống post-retrieval đầu tiên, được thiết kế dành riêng

cho phân cụm kết quả tìm kiếm Nó sử dụng giải thuật Suffix Tree Clustering (STC) để nhóm các tài liệu có sử dụng chung cụm từ (chuỗi từ có trật tự)

thành một nhóm Grouper sử dụng cấu trúc dữ liệu kiểu suffix tree (kiểu

inverted index) Tiến trình phân cụm được thực hiện như sau: duyệt cây và nhập các node có chung cụm từ Sau đó sử dụng cụm từ xuất hiện nhiều nhất trong mỗi nhóm làm nhãn Cách tiếp cận này cho phép các nhóm chồng nhau (một tài liệu có thể thuộc vào nhiều nhóm)

2.3.3 LINGO

LINGO [18] dựa trên ý tưởng của Vivisimo LINGO gồm có 4 bước Bước đầu tiền xử lí dữ liệu, sau đó trích chọn các từ đặc trưng Bước thứ hai sử dụng kĩ thuật Latent Semantic Indexing (LSI) xây dựng ma trận xấp xỉ từ - tài liệu và tìm các khái niệm bao hàm trong tập tài liệu Nhãn của mỗi nhóm được tạo ra bằng cách kết hợp các từ trích chọn ở pha trước có nghĩa gần với các

Trang 28

khái niệm trong tập tài liệu theo độ đo cosin Khi đó các tài liệu được phân vào

mỗi nhóm theo khái niệm và nhãn Tốc độ của giải thuật phụ thuộc vào thời gian phân tích trị đặc biệt (Singular Value Decomposition –SVD) của ma trận

từ - tài liệu

Ngoài ra còn có một số kĩ thuật AHC (Agglomerative Hierarchical Clustering)[31], CHCA (Class Hierarchy Construction Algorithm)[4], TRSM (Tolerance Rough Set Model)[16]

Hình 2.7 Giao diện biểu diễn kết quả tìm kiếm Web của Vivísimo

Trang 29

2.4 Một số kĩ thuật xử lí tự động tài liệu văn bản

2.4.1 Phân tích từ vựng

Phân tích từ vựng là phân tách tài liệu thành các từ riêng biệt Tuy nhiên trong một vài trường hợp đặc biệt cần phải có cách hành xử khác trong khi phân tách, chẳng hạn như số, dấu ngoặc, dấu chấm câu và trường hợp chữ hoa, chữ thường Ví dụ về cách hành xử đặc biệt, số thường bị loại ra trong khi phân tích vì một mình nó không mang lại một ý nghĩa nào cho tài liệu (ngoại trừ một vài trường hợp đặc biệt, chẳng hạn trong thu thập thông tin về lĩnh vực lịch sử) Dấu chấm câu, ví dụ như “.”, “!”, “?”, “-“, v.v… cũng thường được loại ra mà không có ảnh hưởng gì đến nội dung của tài liệu Ngoài ra cần phải chú ý một vài trường hợp sau, chẳng hạn đối với những từ ghép nối (state-of-the-art) là không được phép bỏ dấu “-“, vì sẽ làm thay đổi nghĩa của từ

từ và tính từ đặc biệt

2.4.3 Stemming

Stemming là loại bỏ tiền tố và hậu tố của từ để biến đổi về từ gốc Vì trong thực tế một từ gốc có thể có nhiều hình thái biến đổi, chẳng hạn như động từ, danh từ, tính từ, trạng từ; và giữa chúng có mối quan hệ ngữ nghĩa Như vậy, Stemming có thể làm giảm số lượng từ mà không ảnh hưởng đến nội dung tài liệu

Trang 30

Ví dụ như những từ: “clusters”, “clustering”, “clustered” là có cùng mối quan hệ với từ “cluster”

Tuy nhiên cần phải thận trọng khi xây dựng giải thuật stemming Nếu giải thuật stemming chỉ sử dụng một tập các quy tắc đơn giản để loại bỏ tiền tố/hậu tố thì có thể dẫn đến hậu quả là sinh ra các từ không chính xác Ví dụ như “computing”, “computation” sau khi stemming sẽ còn là “comput” trong khi đó từ đúng phải là “compute‟

Trang 31

Chương 3 - PHÂN TÍCH NGỮ NGHĨA TIỀM ẨN VÀ FISHER KERNEL

Chương này giới thiệu các khái niệm sử dụng trong giải thuật phân cụm kết quả tìm kiếm Web Đầu tiên, trình bày hai mô hình Không gian vectơ và Phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analysis - LSA) được sử dụng nhiều trong bài toán tìm kiếm thông tin Sau cùng, trình bày về Fisher Kernel

3.1 Mô hình không gian vectơ

Trong bài toán khai thác tìm kiếm thông tin, mỗi tài liệu được xem như

là một chuỗi các từ, và chúng thường được biểu diễn dưới dạng vectơ nhiều chiều Mỗi một chiều tương ứng với một từ riêng biệt Với cách biểu diễn này chúng ta có thể dễ dàng thực hiện phân cụm tài liệu Tuy nhiên, vì phụ thuộc vào số từ riêng biệt trong tài liệu nên số chiều của vectơ thường rất lớn Việc tính toán trong không gian nhiều chiều tốn nhiều thời gian và đôi lúc không thể thực hiện vì hạn chế không gian nhớ và thời gian thực Do đó, để sử dụng hiệu quả cách biểu diễn này trước tiên cần phải giảm số chiều của vectơ

Như chúng ta đều biết, thường thì nội dung của tài liệu đúng bằng nghĩa của tất cả các từ trong nó cộng lại Tuy nhiên, điều đó không có nghĩa

là tất cả các từ trong tài liệu đều có ý nghĩa diễn đạt nội dung tài liệu Vì vậy chúng ta chỉ cần biểu diễn những từ có nghĩa Khi đó số chiều của vectơ sẽ được giảm đáng kể kéo theo làm giảm độ phức tạp tính toán, song vẫn đảm bảo tính toàn vẹn nội dung tài liệu Do đó bước tiền xử lí dữ liệu là không thể thiếu được Nó bao gồm các bước xử lí sau: phân tích từ vựng, stemming, loại

bỏ stop_word, v.v…(xem 2.4)

Sau khi hoàn thành các bước tiền xử lí, ta có thể biểu diễn tập tài liệu theo mô hình không gian vectơ như sau:

Trang 32

Giả sử có tập N tài liệu d1, d2, …, dN và tập M từ (sau khi xử lí) Khi

đó, mỗi tài liệu di sẽ được biểu diễn như sau: di = [w1i, w2i, …, wMi]T với wji là trọng số của từ thứ j trong tài liệu di

trong đó tfij là tần số xuất hiện của từ j trong tài liệu di

Phương pháp trọng số TF*IDF (term – frequency – inverse document frequency): gọi t1, t2,…., tm là số từ được trích trọn trong tập D và d1, d2,….,

dn là tập tài liệu Theo phương pháp TF*IDF, trọng số của mỗi từ tj trong tài liệu di được định nghĩa như sau:

w i,j = tf ij * log(n/df i ) , CT 3.2

trong đó,

 tfij là số lần xuất hiện của từ tj trong tài liệu di

 dfi là số tài liệu trong tập D có chứa từ tj

Phương pháp này và các phiên bản cải tiến của nó thường hay được sử dụng Thực chất theo TF*IDF những từ xuất hiện thường xuyên trong tài liệu

Trang 33

(nhân tố TF) thì quan trọng hơn những từ chỉ xuất hiện một vài lần Tuy nhiên, những từ thường xuất hiện trong hầu hết tập tài liệu thì ít hữu ích trong phân biệt nội dung ngữ nghĩa giữa các tài liệu, vì vậy sử dụng nhân tố IDF để làm giảm vai trò của những từ này

3.1.2 Độ đo tương tự giữa các tài liệu

Với cách biểu diễn tập tài liệu theo mô hình không gian vectơ, người ta thường hay sử dụng các độ đo sau để đo độ tương tự giữa các vectơ tài liệu

cả các tài liệu cùng chủ đề Do vậy theo các công thức tính trên thì không thể cho được kết quả chính xác về mức độ tương tự giữa các tài liệu Thứ nhất, đánh giá thấp về mức độ tương tự giữa hai tài liệu mặc dù trong thực tế là chúng khá tương tự, nguyên nhân do từ đồng nghĩa Thứ hai, nó lại đánh giá cao về mức độ tương tự giữa các tài liệu dù rằng trong thực tế là chúng khá khác nhau, nguyên nhân do từ đa nghĩa

Do đó để khắc phục những vấn đề trên, người ta đã đưa ra một phương thức biểu diễn tài liệu mới, đó là biểu diễn theo không gian khái niệm tiềm ẩn bên trong tập tài liệu và xây dựng hàm Fisher Kernel để đo mức độ tương tự giữa các tài liệu

Trang 34

Hệ số góc

Y X

Y X

 2

t i i i

t i

i i

y x

y x

2 2

1

2

Y X

Y X

t i i i

t i

i i

y x

y x

2 2

1

Hệ số Jaccard

Y X Y X

Y X

t i

t i

i i i

i

t i

i i

y x y

x

y x

2 2

1

Bảng3.1 Một số phép đo độ tương tự giữa hai vectơ tài liệu X, Y Trong đó, x i ,

y i là trọng số thành phần thứ i của vectơ

3.2 Phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analysis - LSA)

Như trên đã thảo luận, khi biểu diễn tài liệu theo mô hình không gian

vectơ và sử dụng các độ đo tương tự (bảng 3.1) để đo mức độ tương đồng

giữa các tài liệu thì kết quả sẽ không chính xác, nguyên nhân do vấn đề từ đồng nghĩa và từ đa nghĩa Vì vậy trong phần này, tôi xin trình bày cách khắc phục những vấn đề trên bằng cách xây dựng hàm độ đo tương tự Fisher Kernel dựa trên LSA

Trang 35

3.2.1 Đặc điểm ngôn ngữ tự nhiên

Bất cứ ai trong chúng ta cũng đều biết, ngôn ngữ tự nhiên rất đa dạng

và phong phú, trong đó chứa đựng rất nhiều từ đồng nghĩa và từ đa nghĩa

Theo quan niệm truyền thống, từ đồng nghĩa là những từ có nghĩa gần nhau hay giống nhau Theo quan niệm hiện đại, dựa vào tương quan ngữ cảnh, một

số tác giả cho rằng từ đồng nghĩa là từ có thể thay thế được cho nhau trong những ngữ cảnh giống nhau mà ý nghĩa chung của câu về cơ bản là không thay đổi Dựa vào nghĩa biểu vật và sự vật, hiện tượng được gọi tên cho rằng

từ đồng nghĩa là những từ có nghĩa giống nhau; là những từ khác nhau cùng

chỉ một sự vật, một đặc tính, một hành động nào đó; là những tên khác nhau của một hiện tượng Dựa vào nghĩa biểu niệm và khái niệm, trong hệ thống ngôn ngữ, nói đến hiện tượng đồng nghĩa là phải nói đến sự giống nhau của các nghĩa sở biểu Trong luận văn này, để thống nhất tôi quan niệm từ đồng nghĩa là những từ gần nhau về nghĩa, nhưng khác nhau về âm thanh, biểu thị các sắc thái của một khái niệm Như vậy có thể quan niệm về từ đồng nghĩa như sau: từ đồng nghĩa là những từ có hình thức ngữ âm khác nhau nhưng có quan hệ tương đồng về nghĩa biểu niệm Trong khi đó từ đa nghĩa là những từ

sử dụng vỏ ngữ âm giống nhau để biểu thị những ý nghĩa khác nhau Hoặc nói cách khác, từ đa nghĩa là từ có nhiều hơn một nghĩa phân biệt Do vậy, mặc

dù cùng sử dụng một từ nhưng trong những hoàn cảnh khác nhau thì có thể hiểu theo những nghĩa khác nhau tùy thuộc vào hoàn cảnh

Vì những lí do trên nên có rất nhiều cách khác nhau để diễn tả một chủ

đề Chính vì vậy mà không nhất thiết hai tài liệu phải cùng sử dụng từ miêu tả giống nhau mới được đánh giá là tương tự nhau hoặc là có cùng chủ đề Vậy làm thế nào để có thể đánh giá đúng về mối quan hệ giữa hai tài liệu thông qua các từ sử dụng trong chúng, đây là một vấn đề đang được nhiều nhà nghiên cứu quan tâm Trong thực tế đời sống, vấn đề này được giải quyết rất

Trang 36

đơn giản bằng cách xét nghĩa của từ theo ngữ cảnh cụ thể hoặc theo khái niệm Do vậy, để cho máy tính cũng có thể hiểu đúng như con người, các nhà nghiên cứu cũng đã cố gắng đưa ra các mô hình phù hợp LSA là một trong những mô hình được sử dụng phổ biến [25, 26, 29, 23] Với mô hình này các vấn đề từ đồng nghĩa và từ đa nghĩa được giải quyết một cách thỏa đáng

3.2.2 Ý tưởng LSA

Xuất phát từ lập luận, trong tập tài liệu luôn tồn tại các khái niệm ngữ nghĩa tiểm ẩn mà phương pháp phân tích ngữ nghĩa tiềm ẩn đã ra đời Có thể hiểu, phân tích ngữ nghĩa là đưa ra cách “hiểu” văn bản qua mối liên quan ngữ nghĩa của văn bản với tập khái niệm cho trước Khái niệm là ý chung và trừu tượng về một vật, do hoạt động của trí tuệ tạo nên qua các kinh nghiệm đúc kết thành Các khái niệm này biểu thị nghĩa thông qua tập từ khóa sử dụng trong nó Ví dụ, khi nói đến “bệnh viện” thì ta nghĩ ngay đến bác sĩ, y tá, bệnh nhân, thuốc, v.v

Vậy LSA là gì? Phát biểu một cách hình thức, LSA là kĩ thuật chuyển đổi ma trận gốc biểu diễn quan hệ giữa các từ với các tài liệu thành ma trận biểu diễn quan hệ giữa các từ với các khái niệm, và ma trận biểu diễn quan hệ giữa các khái niệm với các tài liệu Sau khi chuyển đổi, từ và tài liệu quan hệ gián tiếp với nhau thông qua các khái niệm Với cách biểu diễn này ngay cả những tài liệu không cùng sử dụng từ miêu tả nội dung vẫn có thể được đánh giá là tương tự nhau

LSA thực hiện được phép biến đổi trên là nhờ vào kĩ thuật thống kê và suy diễn theo các từ sử dụng trong các đoạn văn của các tài liệu Hay nói cách khác, LSA là phương pháp trích chọn và biểu diễn quan hệ từ - tài liệu theo các khái niệm ngữ nghĩa nhờ vào phương pháp thống kê toán học (Landauer and Dumais, 1997), cụ thể hơn là dựa trên kĩ thuật phân tích trị đặc biệt

Trang 37

(Singular Value Decomposition - SVD)[13]

Dựa trên cơ sở lí thuyết thống kê toán và đại số tuyến tính, LSA có thể phân tích, suy luận và rút ra được các khái niệm tiềm ẩn bên trong tập tài liệu Điểm nổi bậc của LSA là phương thức học nghĩa của từ giống như cách học của các trẻ lên ba lên bốn Tức là học thông qua quan sát cách sử dụng từ trong từng hoàn cảnh cụ thể, hoàn toàn không qua các định nghĩa tường minh

Do vậy mà không cần phải sử dụng thêm bất kỳ kiến thức nào, ví dụ từ điển, WorldNet v.v… Một điều ngạc nhiên hơn nữa, nhìn chung kết quả học của LSA tốt hơn so với con người Sở dĩ như vậy là vì việc hiểu nghĩa của con người phụ thuộc nhiều vào tri thức của từng người cụ thể

3.2.3 Mục tiêu LSA

Mục tiêu của LSA là giảm số chiều n của không gian thuộc tính Để thực hiện mục tiêu này nó thực hiện ánh xạ không gian vectơ từ (có số chiều rất lớn) vào không gian khái niệm (có số chiều ít hơn nhiều) Thực chất phép ánh xạ này là ánh xạ các từ thường xuyên xuất hiện cùng nhau vào cùng một vectơ Ngoài ra ta có thể hiểu, LSA là kĩ thuật biến đổi trực giao nhằm mục đích tách các thành phần độc lập (tách theo các khái niệm)

3.2.4 Kĩ thuật LSA

3.2.4.1 Biểu diễn tập tài liệu dưới dạng bảng co_occurrence

Theo phương pháp thống kê toán, mỗi tài liệu có thể được biểu diễn rút gọn thông qua tần số xuất hiện của từ trong tài liệu Bỏ qua trật tự xuất hiện của các từ, tập tài liệu D = {d1, d2,…., dN} chứa tập từ W = { w1, w2,…,wM},

có thể được biểu diễn dưới dạng bảng co_occurrence kích thước MxN Giá trị

phần tử [j, i] của bảng là tần số xuất hiện của từ wj trong tài liệu di , kí hiệu n(wj, di)

Trang 38

Bảng co_occurrence có thể viết dưới dạng sau: N = (n(wj, di))j,i được gọi là ma trận từ - tài liệu Trong đó, hàng biểu diễn các tài liệu, cột biểu diễn các từ trong tập tài liệu, mỗi phần tử n(wj, di) trong bảng là số lần từ wj được

sử dụng trong tài liệu di

3.2.4.2 SVD

Như trên đã trình bày, LSA sử dụng kĩ thuật SVD với mục đích xác định các khái niệm ẩn bên trong tập tài liệu Vậy SVD là gì mà có thể thực hiện được công việc này?

SVD là kĩ thuật phân tích trị đặc biệt của ma trận dựa trên cơ sở toán đại số và thống kê, chi tiết hơn là nó sử dụng kĩ thuật phân tích vectơ riêng, phân tích trị riêng và phân tích thừa số Phương pháp này được đánh giá là thích hợp trong xử lí ngôn ngữ tự nhiên

Sơ khởi ban đầu, kĩ thuật phân tích này được áp dụng cho mô hình mode, nghĩa là các ma trận biểu diễn các đối tượng cùng kiểu, chẳng hạn ma trận tài liệu – tài liệu Mục đích biểu diễn theo ma trận dạng này là để đánh giá mối quan hệ tương tự giữa các tài liệu, hoặc để đo mức độ sử dụng chung

one-từ vựng giữa các cặp tài liệu Quá trình phân tích ma trận vuông kiểu này còn

được gọi là phân tích trị riêng “Eigen-analysis”, và khi đó kết quả thu được là

hai ma trận có cấu trúc đặc biệt Một là, ma trận trị riêng (eigenvalues) có dạng ma trận chéo; hai là, ma trận vectơ riêng (eigenvectors) tương ứng với từng trị riêng Đặc biệt, các vectơ thành phần của hai ma trận là độc lập Nhìn chung, nhiều vectơ thành phần của hai ma trận này có giá trị rất nhỏ, và do

đó có thể được bỏ qua tạo nên ma trận xấp xỉ ít vectơ thành phần hơn so với

ma trận đầu

Tuy nhiên trong thực tế phát sinh, không phải lúc nào SVD cũng chỉ áp dụng cho mô hình one-mode mà còn được áp dụng cho mô hình two-mode;

Trang 39

nghĩa là không chỉ áp dụng cho ma trận vuông đối xứng giữa cặp các đối tượng cùng kiểu mà còn áp dụng cho ma trận chữ nhật với các đối tượng khác nhau trên các hàng và các cột, ví dụ ma trận từ - tài liệu Do đó để có thể áp dụng cho ma trận chữ nhật kĩ thuật này được sửa đổi thành phân tích trị đặc

biệt “Singular Value Decomposision - SVD” Khi thực hiện quá trình SVD

trên ma trận hình chữ nhật thu được ba ma trận có cấu trúc đặc biệt Một ma trận chéo trị đặc biệt (singular values) và hai ma trận vectơ đặc biệt (singular vectors) tương ứng với từng trị đặc biệt Giống như trong mô hình one-mode các vectơ thành phần của các ma trận là độc lập Và có nhiều vectơ thành phần có giá trị rất nhỏ, do đó có thể bỏ qua các vectơ thành phần này tạo nên các ma trận xấp xỉ chứa ít vectơ thành phần hơn so với ma trận đầu Sau đó để tính mức độ tương tự giữa từ - từ, tài liệu – tài liệu, từ - tài liệu thì sử dụng các ma trận xấp xỉ này

Theo quan sát ở trên, dễ dàng nhận thấy rằng trong quá trình SVD lại

phát sinh thêm vấn đề chọn hạng k như thế nào để có thể xây dựng được ma

trận xấp xỉ tốt nhất của ma trận ban đầu Với giả thiết là dữ liệu trong ma trận ban đầu bị nhiễu, không tin cậy nên không cần xây dựng ma trận xấp xỉ chính

xác bằng ma trận A ban đầu Do vậy, việc chọn giá trị k chỉ phụ thuộc vào số khái niệm có nghĩa trong tập tài liệu Nếu giá trị k là quá bé thì có thể một vài khái niệm ẩn bên trong tập tài liệu bị mất Ngược lại, nếu giá trị k quá lớn thì

vấn đề khử nhiễu không được thực hiện tốt

Tóm lại, với bài toán phân loại tài liệu LSA có thể được xem là kĩ thuật phân loại tài liệu theo các khái niệm ẩn bên trong tập tài liệu gốc ban đầu nhờ quá trình SVD

3.2.4.2.1 Cơ sở toán học

Định nghĩa SVD: Cho ma trận Am x n, không mất tính tổng quát m > n

Trang 40

và rank(A) = r, khi đó SVD của A được định nghĩa như sau:

A = UV T CT 3.3

trong đó:

 UTU = VTV = In và  = diag (1, 2,…., n), i > 0 với 1 < i < r, i = 0 với j > r + 1

 r cột đầu của ma trận trực giao U và V là các vectơ riêng trực giao tương ứng với r trị riêng khác 0 của AAT

và ATA  là ma trận vuông chéo xác định dương, giá trị của các phần tử trong nó bằng căn bậc hai các trị riêng của ma trận AAT

Do vậy, các cột của ma trận U là các vectơ đặc biệt bên trái, còn các cột của ma trận V là các vectơ đặc biệt bên phải [10]

Hai định lí quan trọng dưới đây được sử dụng để giải thích kĩ thuật SVD khai phá thông tin quan trọng ẩn bên trong ma trận

Định lí 1: Thực hiện SVD ma trận A theo công thức 3.3 và có 1 > 2 >

… > r > r+1 = … = n = 0 và gọi R(A) và N(A) lần lượt là hạng và không gian null của A Khi đó,

 Tính chất hạng ma trận: rank(A) = r, N(A)  span {vr+1, …., vn} (tập tất cả các tổ hợp tuyến tính của các vectơ vr+1, …., vn được gọi là bao tuyến tính), và R(A)  span { u1, …., ur}, trong đó U = [u1 u2 … um] và

i v u A

Ngày đăng: 03/08/2015, 18:06

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Mai Kim Chi, Trần Doãn Phú. Lí thuyết xác suất và Thống kê toán, NXB Đại học Quốc gia Hà Nội, 2001 Sách, tạp chí
Tiêu đề: Lí thuyết xác suất và Thống kê toán
Nhà XB: NXB Đại học Quốc gia Hà Nội
3. Nguyễn Đình Trí. Toán học cao cấp, Tập 1 Đại số và Hình học giải tích, NXB Giáo dục, 2001.Tiếng Anh Sách, tạp chí
Tiêu đề: Toán học cao cấp
Nhà XB: NXB Giáo dục
4. Adam Schenker, Mark Last, A. K. Design and implementation of a web mining system for organizing search engine results. In Data Integration over the Web (DIWeb),First International Workshop, Interlaken, Switzerland, 4 June 2001. (2001), pp. 62-75 Sách, tạp chí
Tiêu đề: Design and implementation of a web mining system for organizing search engine results
Tác giả: Adam Schenker, Mark Last, A. K. Design and implementation of a web mining system for organizing search engine results. In Data Integration over the Web (DIWeb),First International Workshop, Interlaken, Switzerland, 4 June 2001
Năm: 2001
5. April Kontostathis and William Pottenger. A Mathermatical View of Latent Semantic Indexing: Tracing Term Co-ocurrences.http://www.cse.lehigh.edu/techreports/2002/LU-CSE-02-006.pdf Sách, tạp chí
Tiêu đề: A Mathermatical View of Latent Semantic Indexing
6. Baeza-Yates, R., and Ribeiro-Neto, B. Modern Information Retrieval, 1st ed. Addison Wesley Longman Publishing Co. Inc., May 1999 Sách, tạp chí
Tiêu đề: Modern Information Retrieval
10. G.Golub, C.V.Loan. Matrix Computations. Johns-Hopkins, Baltimore, second ed., 1989 Sách, tạp chí
Tiêu đề: Matrix Computations
11. Hearst, M. A., and Pedersen, J. O. Reexamining the cluster hypothesis: Scat-ter/gather on retrieval results. In Proceedings of SIGIR-96, 19th ACM International Conference on Research and Development in Information Retrieval (ZÄurich, CH, 1996), pp. 76-84 Sách, tạp chí
Tiêu đề: Reexamining the cluster hypothesis: "Scat-ter/gather on retrieval results
12. Jerzy Stefanowski và Dawid Weiss. Carrot 2 and Language Properties in Web Search Results Clustering. Proceedings of the First International Atlantic Web Intelligence Conference, Madrit, Span, vol.2663, 2003, pp.240-249 Sách, tạp chí
Tiêu đề: Carrot"2" and Language Properties in Web Search Results Clustering
13. M.W. Berry, S.T. Dumais &amp; G.W. O ‟ Brien. Using Linear Algebra for Intelligent Information Retriaval. Computer Science Department, CS-94-270, December 1994 Sách, tạp chí
Tiêu đề: Using Linear Algebra for Intelligent Information Retriaval
14. Michael I. Jordan, Fisher Kernels and Semidenite Programming. 281B/Stat241B: Advanced Topics in Learning &amp; Decision Making Sách, tạp chí
Tiêu đề: Fisher Kernels and Semidenite Programming
15. Mehran Sahami, Timothy D. Heilman. A Web-based Kernel Function for Measuring the Similarity of Short Text Snippets. WWW 2006, May 23.26, 2006, Edinburgh, Scotland. ACM 1-59593-323-9/06/0005 Sách, tạp chí
Tiêu đề: A Web-based Kernel Function for Measuring the Similarity of Short Text Snippets
16. Ngo Chi Lang, A tolerance rough set approach to clustering web search results. Master's thesis, 2003 Sách, tạp chí
Tiêu đề: A tolerance rough set approach to clustering web search results
17. Nello Cristianini, John Shawe- Taylor, Huma Lodhi. Latent Semantic Kernels. Journal of Intelligent Information Systems, 18:2/3, 127-152, 2002 Sách, tạp chí
Tiêu đề: Latent Semantic Kernels
18. Osinski, S. An algorithm for clustering of web search result. Master's Sách, tạp chí
Tiêu đề: An algorithm for clustering of web search result
19. Pirolli, P., Schank, P., Hearst, M., and Diehl, C. Scatter/gather browsing communicates the topic structure of a very large text collection. In Proceedings of the SIGCHI conference on Human factors in computing systems (1996), pp. 213-220 Sách, tạp chí
Tiêu đề: Scatter/gather browsing communicates the topic structure of a very large text collection
Tác giả: Pirolli, P., Schank, P., Hearst, M., and Diehl, C. Scatter/gather browsing communicates the topic structure of a very large text collection. In Proceedings of the SIGCHI conference on Human factors in computing systems
Năm: 1996
20. Porter, M. F. An algorithm for suffix stripping. In Readings in Information Retrieval, P. W. Karen Sparck Jones, Ed. Morgan Kaufmann, San Francisco, 1997, pp. 130-137 Sách, tạp chí
Tiêu đề: An algorithm for suffix stripping
21. Salton, G. Automatic text processing: the transformation, analysis, and retrieval of information by computer. Addison-Wesley Longman Publishing Co., Inc., 1989 Sách, tạp chí
Tiêu đề: Automatic text processing: the transformation, analysis, and retrieval of information by computer
23. Scott Deerwester. Indexing by Latent Semantic Analysis. Graduate Library School University of Chicago Sách, tạp chí
Tiêu đề: Indexing by Latent Semantic Analysis
24. Thomas Hofmann. Learning the Similarity of Documents: An Information-Geometric Approach to Document Retrival and Categorization.In Advances in Neural Information Processing Systems 12 S.A. Solla, T.K Sách, tạp chí
Tiêu đề: Learning the Similarity of Documents
25. Thomas Hofmann. Probabilistic Latent Semantic Indexing. Proceedings of the Twenty-Second Annual Internation SIGIR Conference on Research and Development in Information Retrieval Sách, tạp chí
Tiêu đề: Probabilistic Latent Semantic Indexing

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w