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

SỬ DỤNG PHƯƠNG PHÁP XẾP HẠNG TRONG BÀI TOÁN PHÂN CỤM TIẾNG VIỆT

42 508 1
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Sử Dụng Phương Pháp Xếp Hạng Trong Bài Toán Phân Cụm Tiếng Việt
Tác giả Hà Quang Thụy, Trần Thị Oanh, Nguyễn Minh Tuấn
Trường học Đại học Công nghệ
Thể loại Khóa luận tốt nghiệp
Định dạng
Số trang 42
Dung lượng 215 KB

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

Nội dung

Thuật toán phân cụm bottom-up (HAC - Hierarchical Agglomeraltive Clustering)

Trang 1

Tôi chân thành cảm ơn các thầy cô đã tạo cho tôi những điều kiện thuận lợi đểhọc tập và nghiên cứu tại trường đại học Công nghệ Tôi xin gửi lời cảm ơn tới cácanh chị và các bạn sinh viên trong phòng Công nghệ tri thức và tương tác người máy– trường ĐH Công nghệ - ĐHQGHN đã tạo điều kiện và giúp tôi tiến hành thựcnghiệm của khóa luận Cuối cùng, tôi muốn gửi lời cảm ơn vô hạn tới gia đình, bạn bèluôn bên cạnh và động viên cũng như tạo những điều kiện tốt nhất cho tôi trong suốtquá trình thực hiện khóa luận tốt nghiệp.

Trang 2

Tóm tắt

Cùng với sự gia tăng nhanh chóng về số lượng các trang Web thì nhu cầu vềkhai phá dữ liệu Web ngày càng nhận được sự quan tâm của các nhà khoa học và cácnhóm nghiên cứu Trong lĩnh vực khai phá Web thì phân cụm Web là một trongnhững bài toán cơ bản và quan trọng Đây cũng là thành phần chịu nhiều ảnh hưởngcủa các đặc trưng ngôn ngữ Khóa luận này tập trung nghiên cứu về bài toán phâncụm Web sử dụng phương pháp xếp hạng Trên cơ sở lý thuyết phân cụm Web và lựachọn các đặc trưng của tiếng Việt, khóa luận đã sử dụng phương pháp xếp hạng cáccụm từ quan trọng vào phân cụm các tài liệu Web tiếng Việt và tiến hành thựcnghiệm Kết quả thực nghiệm đánh giá theo các đặc trưng TFDF, độ dài (LEN), tương

tự nội tại (ICS), entropy nội tại cụm văn bản (CE) cho thấy đặc trưng TFIDF và LEN

có ảnh hưởng lớn hơn so với các đặc trưng khác

Trang 3

Mục lục

Tóm tắt

i Mục lục

ii Danh sách các bảng

iv Danh sách các hình v

Lời mở đầu 1

Chương 1 Khái quát về phân cụm Web 2

1.1 Giới thiệu về phân cụm Web 2

1.1.1 Đặc điểm bài toán phân cụm web 3

1.1.2 Các yêu cầu đối với phân cụm web 4

1.1.3 Một số độ đo độ đánh giá 5

1.2 Một số thuật toán phân cụm web 6

1.2.1 Thuật toán phân cụm bottom-up (HAC - Hierarchical Agglomeraltive Clustering) 7

1.2.2 Thuật toán phân cụm top-down 9

1.3 Đánh giá các thuật toán phân cụm 18

Chương 2: Phân cụm văn bản tiếng Việt 19

2.1 Đặc trưng của tiếng Việt và tách từ trong tiếng việt 19

2.1.1 Đặc trưng của tiếng Việt 19

2.1.2 Tách từ tiếng Việt 21

2.2 Một số nghiên cứu về phân cụm tiếng Việt 23

2.2.1 Phân cụm từ tiếng Việt bằng phương pháp học máy cấu trúc 23

2.2.2 Đánh giá chất lượng phân cụm trong máy tìm kiếm tiếng Việt 24

2.2.3 Gom cụm đồ thị và ứng dụng vào việc rút trích nội dung chính của khối thông điệp trên diễn đàn thảo luận 26

iii Chương 3 Phân cụm văn bản sử dụng 27

phương pháp xếp hạng cụm từ quan trọng 27

Trang 4

3.1 Khái quát bài toán 27

3.1.1 Nhu cầu về phân cụm các kết quả tìm kiếm 27

3.1.2 Mô tả bài toán và thuật toán 29

3.2 Trích các cụm từ quan trọng 31

3.2.1 Đặc trưng TFIDF 32

3.2.2 Đặc trưng độ dài 33

3.2.3 Đặc trưng tương tự nội tại cụm 33

3.2.4 Đặc trưng entropy nội tại cụm 34

3.2.5 Đặc trưng độc lập cụm từ 34

3.3 Xếp hạng các cụm từ quan trọng 35

3.3.1 Hồi qui tuyến tính 35

3.3.2 Hồi qui logistic 36

3.3.3 Hồi qui hỗ trợ vector (Support vector regression) 36

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

4.1 Dữ liệu của thực nghiệm 38

4.2 Cài đặt thực nghiệm 39

4.2.1 Phần cứng 39

4.2.2 Phần mềm 40

4.3 Phương pháp đánh giá 40

4.4 Kết quả thực nghiệm và đánh giá 40

Kết luận 44

Tài liệu tham khảo 46

iv Danh sách các bảng Bảng 1: Kết quả phân cụm với truy vấn “Việt Nam” [15] 4

Bảng 2: Các tài liệu chứa cụm từ ở các node .16

Bảng 3: So sánh một số đặc điểm của tiếng Việt và tiếng Anh 21

Bảng 4: Các truy vấn trong tập huấn luyện .38

Bảng 5: Số cụm từ và số giá trị y=1 trong tập dữ liệu huấn luyện 39

Bảng 6: Độ chính xác khi sử dụng từng đặc trưng để xếp hạng 41

Bảng 7: Độ chính xác của từng truy vấn 42

v

Danh sách các hình

Trang 5

Hình 1: Minh họa để tính cosin của hai vector 6

Hình 2: Cây hậu tố mở rộng 16

Hình 3: Kết quả sau khi trộn các tài liệu .17

Hình 4: Thống kê về tách từ tiếng Hoa và tiếng Việt [12] .22

Hình 5: Hệ thống phân cụm từ tiếng Việt theo phương pháp học máy cầu trúc 24

Hình 6: Ví dụ với truy vấn “Việt Nam” trên máy tìm kiếm google[14] 28

Hình 7: Ví dụ với truy vấn “Việt Nam” trên máy tìm kiếm Vivisimo[15] 28

Hình 8: Biểu đồ độ chính xác khi sử dụng từng đặc trưng để xếp hạng 41

Hình 9: Biểu đồ độ chính xác của từng truy vấn 42

1

Lời mở đầu

Internet được phát triển nhanh chóng và sinh ra một khối lượng khổng lồ các dữ

liệu dạng siêu văn bản (dữ liệu Web), đã trở thành một kênh quan trọng về mọi thông tin của đời sống Chính vì vậy, lĩnh vực khai phá Web có tốc độ phát triển vượt bậc, nhận được nhiều sự quan tâm của các nhà khoa học và các nhóm nghiên cứu Một trong những bài toán quan trọng trong lĩnh vực khai phá Web chính là phân cụm Web [6] Số lượng các trang Web là rất lớn và luôn luôn thay đổi, mỗi tài liệu không chỉ liên quan đến một khía cạnh mà còn đề cập đến nhiều khía cạnh khác nhau dẫn đến sự trùng lặp thông tin giữa các tài liệu Xuất phát từ những đặc điểm này mà phân cụm Web chỉ nên thực hiện trên các tài liệu Web của một truy vấn trả về từ máy tìm kiếm Sau đó kết quả sẽ được tổ chức lại cho người dùng theo các cụm

Khóa luận với đề tài “Sử dụng phương pháp xếp hạng trong bài toán phân cụm tiếng Việt” nghiên cứu về phân cụm Web, phân cụm trong tiếng Việt và bài toán phân

cụm tài liệu Web dựa vào việc xếp hạng các cụm từ quan trọng Khóa luận cũng trình bày kết quả và đánh giá ban đầu về thực nghiệm ứng dụng kỹ thuật phân cụm trên trong các tài liệu web tiếng Việt

Khóa luận gồm 4 chương với nội dung các chương được miêu tả như dưới đây:

Chương 1: Khái quát về phân cụm Web Chương 1 trình bày những nét cơ bản

nhất về bài toán phân cụm Web gồm: định nghĩa và đặc điểm của bài toán, một số độ

đo độ đánh giá, các phương pháp phân cụm phổ biến, đánh giá về các phương pháp

Chương 2: Phân cụm văn bản tiếng Việt Chương này sẽ trình bày về các đặc

điểm của tiếng Việt và các hướng tiếp cận trong việc tách từ tiếng Việt, đồng thời cũng

nêu ra một số đề tài đã được nghiên cứu về phân cụm trong tiếng Việt

Chương 3: Phân cụm văn bản sử dụng phương pháp xếp hạng cụm từ quan

Trang 6

trọng Nội dung chính của chương này là kỹ thuật phân cụm các kết quả trả về của

máy tìm kiếm dựa vào việc xếp hạng các cụm từ quan trọng Chương này đưa ra nhucầu về phân cụm kết quả tìm kiếm, mô tả về bài toán và thuật toán cũng như nhữngtính toán để giải quyết bài toán

Chương 4: Thực nghiệm và đánh giá trình bày các bước tiến hành thực nghiệm

trên các tài liệu Web tiếng Việt, việc thu thập dữ liệu huấn luyện, cài đặt thực nghiệm.Sau đó đưa ra kết quả của thực nghiệm và đánh giá các kết quả này

2

Chương 1 Khái quát về phân cụm Web

1.1 Giới thiệu về phân cụm Web

Trong thời gian gần đây, sự phát triển nhanh chóng của mạng Internet đã tạo nênmột khối lượng khổng lồ các dữ liệu dạng siêu văn bản Vì vậy, nội dung khai pháWeb rất được quan tâm Và một trong những bài toán quan trọng trong lĩnh vực khaiphá Web chính là bài toán phân cụm Web [6] Phân cụm Web - nói một cách kháiquát

- là việc tự động sinh ra các lớp tài liệu dựa vào sự tương tự của các tài liệu Các lớptài liệu ở đây là chưa biết trước, người dùng có thể chỉ yêu cầu số lượng các lớp cầnphân loại, hệ thống sẽ đưa ra các tài liệu theo từng tập hợp, từng cụm, mỗi tập hợpchứa các tài liệu tương tự nhau

Phân cụm Web – hiểu một cách đơn giản - là phân cụm trên tập các tài liệu đượclấy từ Web Theo [6] có hai tình huống phân cụm tài liệu, đó là:

• Tình huống thứ nhất là việc phân cụm trên toàn bộ một cơ sở dữ liệu (CSDL)

có sẵn gồm rất nhiều tài liệu Web Thuật toán phân cụm cần tiến hành việc

phân cụm toàn bộ tập dữ liệu thuộc CSDL đó Tình huống này thường được

gọi là phân cụm không trực tuyến (off-line).

• Tình huống thứ hai thường được áp dụng trên một tập tài liệu nhỏ là tập hợp

các tài liệu do máy tìm kiếm trả về theo một truy vấn của người dùng Trong

trường hợp này, giải pháp phân cụm được tiến hành kiểu trực tuyến (on-line)

theo nghĩa việc phân cụm tiến hành theo từng bộ phận các tài liệu nhận được

Khi đó, thuật toán phải có tính chất “gia tăng” để tiến hành phân cụm ngay

khi chưa có đủ tài liệu và phân cụm tiếp theo cần không tiến hành với dữ liệu

đã được phân cụm Do tập tài liệu trên Web là vô cùng lớn cho nên cách phân

cụm trực tuyến là thích hợp hơn và phải đòi hỏi tính "gia tăng" của thuật toán

phân cụm

Việc xử lý truy vấn cũng như xếp hạng các kết quả trả về của máy tìm kiếm phụ

thuộc vào sự tính toán độ tương tự giữa tài liệu và truy vấn, giữa các tài liệu với nhau.Mặc dù các truy vấn liên quan phần nào đến các tài liệu cần tìm, nhưng nó thường quángắn và dễ xảy ra sự nhập nhằng Như đã biết, trung bình các truy vấn trên Web chỉ

Trang 7

gồm hai đến ba từ do đó gây nên độ nhập nhằng Chẳng hạn, truy vấn star dẫn đến sự nhập nhằng rất cao, các tài liệu lấy được liên quan đến astronomy, plants, animals,

3

popular media and sports figures… Độ tương tự giữa các tài liệu của một truy từ đơn

như vậy là khác nhau rất lớn Vì lẽ đó, nếu máy tìm kiếm phân cụm các kết quả theotừng chủ đề thì người dùng có thể hiểu truy vấn nhanh chóng hoặc tìm vào một chủ đềxác định

1.1.1 Đặc điểm bài toán phân cụm web

Việc phân cụm trực tuyến các tài liệu Web kết quả trả về từ máy tìm kiếm là rất

khác so với việc phân cụm các tài liệu thông thường Một đặc điểm của phân cụm tàiliệu web chính là số lượng các tài liệu Web là vô cùng lớn và nội dung luôn luôn thayđổi Ngoài ra một vấn đề nữa là các hệ thống tìm kiếm thông tin là tương tác ngườidùng cho nên thời gian đáp ứng của hệ thống phải đủ nhanh, cụ thể bài toán ở đây cầnthời gian đáp ứng cần tính bằng giây [6] Mỗi tài liệu Web không chỉ liên quan đếnmột khía cạnh cụ thể nào đó mà đề cập đến nhiều khía cạnh khác nhau Chẳng hạnnhư

tài liệu nói về “Việt Nam” cũng có thể đề cập đến cuộc đời và sự nghiệp của “Cácdanh nhân Việt Nam” Cho nên tồn tại sự trùng lặp thông tin giữa các tài liệu, cónghĩa là một tài liệu có thể liên quan đến nhiều nội dung khác nhau

Xuất phát từ những đặc điểm đó nên việc phân cụm chỉ nên được thực hiện trên

tập các tài liệu Web của mỗi truy vấn trả về từ máy từ máy tìm kiếm Sau đó kết quả

sẽ được tổ chức lại cho người sử dụng Thông thường một máy tìm kiếm phục vụhàng

triệu truy vấn một ngày cho nên việc phân phối CPU cũng như bộ nhớ cho mỗi truyvấn cần được rút ngắn tối đa Cho nên việc phân cụm có thể được thực hiện trên mộtmáy tách riêng tại đó chỉ nhận các kết quả của máy tìm kiếm như đầu vào, tạo ra cáccụm và biểu diễn chúng cho người sử dụng [6]

Trang 8

… …

Bảng 1: Kết quả phân cụm với truy vấn “Việt Nam” [15]

1.1.2 Các yêu cầu đối với phân cụm web

Để có thể phân các tài liệu Web thành các cụm, việc đầu tiên là cần phải tính

được độ tương tự (hay độ tương đồng) giữa các tài liệu trên cơ sở biểu diễn tài liệuWeb và xem xét các đo độ tương tự giữa chúng Thuật toán phân cụm cần đưa ra cácđiều kiện dừng và gắn nhãn cho các cụm một các thích hợp nhất Căn cứ đặc điểm vàyêu cầu của bài toán phân cụm Web thì phương pháp phân cụm được lựa chọn cầnđáp

ứng được các yêu cầu sau [6]:

• Tính phù hợp: Phương pháp phải tạo nên các cụm trong đó nhóm tài liệu phù

hợp với truy vấn của người dùng tách riêng với các nhóm không phù hợp khác

• Tổng hợp phải dễ đọc: Tránh trường hợp thay vì người dùng không phải xem

xét danh sách các tài liệu được phân hạng lại phải xem xét danh sách tài liệu trongmột cụm Do đó phương pháp phải cung cấp mô tả ngắn gọn và chính xác của cáccụm

• Tính đa hình: Vì các tài liệu có nhiều chủ đề, nên tránh việc hạn chế một tài

liệu chỉ thuộc về một cụm

• Sử dụng các mẩu thông tin: Phương pháp phải tạo ra các cụm tốt thậm chí chỉ

sử dụng các mẩu thông tin được trả về bởi máy tìm kiếm (thông thường các máy tìm5

kiếm chỉ trả về các mẩu thông tin mô tả về tài liệu) Điều này tránh cho việc ngườidùng phải chờ đợi hệ thống tải toàn bộ tài liệu gốc từ Web, tải toàn bộ tài liệu gốc làrất tốn thời gian

• Tốc độ: Một người sử dụng dù kiên nhẫn cũng chỉ có thể xem xét khoảng

100 tài liệu trong danh sách các tài liệu được phân hạng Hệ thống cần cho phép

người dùng có thể đọc qua một tập đủ lớn các tài liệu trong một thời gian chấp nhậnđược Vì vậy cần một phương pháp phân cụm khoảng 1000 mẩu thông tin trong vàigiây

• Tính gia tăng: Để tiết kiệm thời gian, phương pháp nên xử lý từng mẩu thông

tin ngay khi lấy được từ Web để có được kết quả tức thời ứng với mỗi thời điểm

1.1.3 Một số độ đo độ đánh giá

Độ đo đánh giá thuật toán phân cụm là một tiêu chuẩn được chỉ ra bởi một tập n

tài liệu D và một tập các truy vấn Q Với mỗi q Є Q, một tập của các tài liệu phù hợp

là Dq Є D được xác định bằng tay Giả sử có một truy vấn được gửi đến hệ thống,

một

danh sách được phân hạng các tài liệu (d1, d2, … dn) được trả về Các hệ thống tìm

Trang 9

kiếm thông thường chỉ hiển thị một số mục đầu tiên của danh sách này Tương ứngvới

danh sách như vậy, có thể tính một danh sách phù hợp (r1, r2,…rn) bởi các số (0/1)trong đó ri =1 nếu di Є Dq và bằng 0 trong các trường hợp khác Dưới đây là một sốđộ

đo độ đánh giá được trình bày như trong [6]

• Độ hồi tưởng: Với truy vấn q, độ hồi tưởng (recall) tại hạng k ≥ 1 được xác

định là tỷ số của tất cả các tài liệu phù hợp bên trong (d1, d2, … dk):

- Một cách đo khác là độ chính xác trung bình (Average Precision): Độ chính

xác trung bình là tổng của độ chính xác tại mỗi vị trí phù hợp trong danh

sách đáp ứng chia cho tổng số các tài liệu phù hợp được chọn Độ chính xác

6

trung bình bằng 1 khi lấy được toàn bộ các tài liệu phù hợp và xếp loại

chúng lên trên tất cả các tài liệu không phù hợp

Trang 10

• Đo độ tương tự

- Độ trùng lặp: Độ trùng lặp dùng để đo độ tương tự của một tài liệu này với

tài liệu khác hay với một truy vấn Cách trực tiếp nhất là đo phần giao nhau

của các đặc trưng tương ứng, ở đây là trùng lặp của các từ khóa Đại lượng

này cũng được gọi là mức kết hợp (coordination level):

( , ) ( ) q d CoordLevel q d = K ∩ K

- Độ tương tự Cosin: Một phương pháp khác có thể được sử dụng để đo độ

tương tự giữa các tài liệu là độ tương tự cosin Kỹ thuật cosin là một kỹ

thuật (hay một phương pháp tính) được bắt nguồn từ tính toán vector Trong

thu nhận thông tin, công thức tính toán cosin được sử dụng để chỉ ra (để đo)

mức độ tương tự giữa hai tài liệu hoặc giữa tài liệu và truy vấn, (xem hình

minh họa)

Hình 1: Minh họa để tính cosin của hai vector

Hai vector j d và Q càng gần nhau khi góc θ càng nhỏ hay cosin của góc đó càng

lớn Có thể dùng cosin của góc θ làm độ tương tự của hai vector, trong đó cosin củagóc giữa hai vector được xác định như sau:

v w

v w

cos θ =

1.2 Một số thuật toán phân cụm web

Một phương pháp nhằm thi hành thuật toán phân cụm là phân hoạch tập tài liệu

vào k tập con hoặc các cụm D1, …, Dk để làm cực tiểu khoảng cách bên trong cụm

Nếu một biểu diễn bên trong của các tài liệu là có giá trị thì biểu diễn này cũng

được dùng để xác định một biểu diễn của các cụm liên quan đến cùng mô hình Chẳnghạn, nếu các tài liệu được biểu diễn sử dụng mô hình không gian vector, một cụm củacác tài liệu có thể được biểu diễn bởi trọng tâm (trung bình) của các tài liệu vector

Trang 11

Khi một biểu diễn cụm là có giá trị, một mục tiêu có thể phân hoạch D thành D1,

đó Di là biểu diễn vector của cụm i Có thể xem xét tới việc gán tài liệu d cho cụm i

như việc đặt một giá trị Boolean zd,i là 1 Điều này có thể phát sinh ra việc phân cụmmềm tại đó zd,i là một số thực từ 0 đến 1 Trong bối cảnh như vậy, ta có thể muốn tìm

zd,i để cực tiểu hóa ( , ) i d D i d D

i

r Σ Σ ∈ δ hoặc cực đại hóa ( , ) i d D i d D

i

r Σ Σ ∈ ρ

Việc phân hoạch có thể thực hiện theo hai cách Bắt đầu với mỗi tài liệu trong

một nhóm của nó và kết hợp các nhóm tài liệu lại với nhau cho đến khi số các phânhoạch là phù hợp; cách này gọi là phân cụm bottom-up Cách khác là có thể khai báo

số các phân hoạch mong muốn và gán các tài liệu vào các phân hoạch; cách này gọi làphân cụm top-down [6]

Có thể xem xét một kỹ thuật phân cụm bottom-up dựa vào quá trình lặp lại việc

trộn các nhóm của các tài liệu tương tự nhau cho đến khi đạt được số cụm mongmuốn,

và một kỹ thuật top-down sẽ làm mịn dần bằng cách gắn các tài liệu vào các cụmđược

thiết đặt trước Kỹ thuật bottom-up thường chậm hơn, nhưng có thể được sử dụng trênmột tập nhỏ các mẫu để khởi tạo các cụm ban đầu trước khi thuật toán top-down tiếnhành

1.2.1 Thuật toán phân cụm bottom-up (HAC - Hierarchical Agglomeraltive Clustering)

Mặc dù có rất nhiều các công thức của vấn đề phân cụm, một cách nhận thức đơngiản để tìm ra các cụm là bắt đầu với tất cả các tài liệu và từng bước kết nối chúngthành các nhóm ở đó độ tương tự các tài liệu bên trong mỗi nhóm là cao, và ngừng lạikhi đạt được số cụm mong muốn[6]

8

HAC (Hierarchical Agglomerative Clustering) được sử dụng rất rộng rãi trong

phân cụm và các ứng dụng truy xuất thông tin Dưới đây là đoạn mã giả của thuậttoán

Trang 12

Quá trình trộn theo cấp bậc tạo thành cây gọi là cây lược đồ Thông thường, việc

trộn giữa các nhóm với độ tương tự s(Ґ ∪ Δ) lớn sẽ thực hiện trước Giá trị này sẽ

ngày càng nhỏ hơn cho các lần trộn sau Người dùng có thể cắt qua cây lược đồ tạimức thích hợp để lấy được số cụm mong muốn Các thuật toán khác nhau ở cáchchúng tính các giá trị mong muốn để trộn Ґ và Δ Một độ đo phổ biến được sử dụng là

độ tương tự nội tại của Ґ ∪ Δ Độ tương tự nội tại của một nhóm các tài liệu Ф được định nghĩa là trung bình độ tương tự của từng cặp tài liệu trong Ф[6]

Trong đó độ đo cosin TFIDF được sử dụng phổ biến cho các độ tương tự s(d1, d2)

của các tài liệu bên trong Ngoài ra còn tồn tài nhiều điều kiện trộn khác Một cách

khác để trộn các cặp của các cụm (Ґ, Δ) là maximizes mind1Є Ґ,d2Є Δ s(d1, d2) hay maxd1Є Ґ,d2Є Δ s(d1,d2) hay ( ( , )) /( ) , 1 2 1 2

Trang 13

trì một vector đại diện cho cụm và tính Σ∈

Vì vậy để tính s(Ґ ∪ Δ) từ p(Ґ) và p(Δ) tại bước 4 của thuật toán HAC (ở trên)

chỉ phải mất thời gian để tính toán các tích vô hướng

Ngoài ra còn một số phương pháp phân cụm bottom up khác như là: Single-link,Group-average, Complete-link [1][9]:

• Single-link: với phương pháp này, khoảng cách giữa hai cụng được định

nghĩa là khoảng cách giữa những đối tượng giống nhau nhất giữa hai nhómD(r,s) = Min (d(i,j)) với i thuộc ra và j thuộc s Với hai cụm bất kỳ, ta tính tất

cả các khoảng cách giữa hai phần tử thuộc hai cụm, từ đó suy ra khoảng cáchnhỏ nhất tìm được chính là khoảng cách giữa hai cụm Tại mỗi bước, hai cụmgần nhau nhất sẽ được chọn để ghép lại với nhau

• Complete-link: Phương pháp này đối ngược với single-link, khoảng cách giữacác cụm được định nghĩa là: D(r,s) = Max(d(i,j)) với i thuộc r, j thuộc s Haicụm có khoảng cách nhỏ nhất sẽ được chọn để nhóm làm một cụm

• Group-average: phân cụm bằng group-average đánh giá chất lượng phân cụmdựa vào độ tương tự giữa tất cả các cụm, nó tránh được thiếu sót của hai

Trang 14

phương pháp single-link và complete-link Nó tính độ tương tự trung bình

sim-ga của tất cả các cặp văn bản, bao gồm cả các cặp trong cùng một cụm,

nhưng những độ tương tự tính trong một cùng một cụm không chứa trong

phép trung bình

1.2.2 Thuật toán phân cụm top-down

Nếu kỹ thuật phân cụm bottom-up dựa vào quá trình lặp việc trộn các cụm tài

liệu tương tự nhau đến khi đạt được số cụm mong muốn thì kỹ thuật top-down lạingược lại, gán các tài liệu vào các cụm được lập từ trước Dưới đây sẽ trình bày haithuật toán phân cụm theo kỹ thuật top-down là k-means và Sufix Tree Clustering

a Thuật toán k-means

“mềm” ánh xạ tài liệu tới các cụm theo một giá trị trong khoảng 0 và 1

Trong dạng tổng quát, thuật toán k-means sử dụng các biểu diễn nội tại cho các

đối tượng được phân cụm và chính các cụm Sử dụng phương pháp biểu diễn vectorcho tài liệu và dùng vector trọng tâm các tài liệu thuộc cụm để thể hiện cho cụm.Khởi tạo một cấu hình ban đầu tùy ý (hoặc được chọn từ một tính toán từ trước)

cho thuật toán k-means, chứa đựng tập các tài liệu được chia thành k cụm với k vector

trọng tâm tương ứng đã được tính Quá trình thực hiện thuật toán theo mô tả sau

đây[6]:

1 Khởi tạo các trọng tâm của cụm từ các vector được chọn

2 while có thể tốt hơn do

3 for mỗi tài liệu d do

4 Tìm cụm c tại đó trọng tâm của cụm là gần nhất với d

Trang 15

Bước cơ bản (vòng lặp while) trong thuật toán k-means được gọi là move-tonearest.

Tồn tại một số cách thức đặt điều kiện cho việc dừng vòng lặp Một điều kiện

dừng vòng lặp while ("có thể tốt hơn") thường được dùng là sau khi thực hiện thânvòng lặp while mà các cụm là không thay đổi (hoặc sự thay đổi là không đáng kể),hoặc trọng tâm của cụm di chuyển các khoảng không đáng kể trong các lần lặp tiếptheo

�Thuật toán K-means với gán “mềm”

Thay vì chỉ rõ việc gán các tài liệu cho các cụm, dạng “mềm” của k-means biểu

diễn mỗi cụm c sử dụng một vector μc trong không gian Do không có một sự rõ ràng

11

trong việc gán các tài liệu cho các cụm, μc không trực tiếp liên hệ với các tài liệu – ví

dụ nó không cần thiết là trọng tâm của các tài liệu Mục đích của k-means “mềm” là

tìm một μc cho mỗi cụm c để tối thiểu hóa lỗi lượng tử Σd c − c d 2 min μ Một chiến

lược đơn để giảm lỗi là đưa ra các vector trung bình là khoảng cách từ các tài liệu đến

cụm gần nhất[6] Ta sẽ lập lại việc quét qua các tài liệu, và với mỗi tài liệu d, tích lũy một Δμc cho cụm μc gần d nhất:

Trang 16

c c

c d d d

μμμ

c c

c d d d

μμμ

Trang 17

Tồn tại nhiều quy tắc cập nhật khác có thể được sử dụng Gán “mềm” không làmmất đi liên kết chặt trong việc tạo nên phân bố các tài liệu cho một cụm đơn đạt đượcmột cách tỉ mỉ[6].

b Thuật toán STC (Suffix Tree Clustering)

Theo [11][13] STC là thuật toán phân cụm dựa vào việc nhận dạng các cụm từ

thường xuyên xuất hiện trong một nhóm văn bản Trong hoàn cảnh của chúng ta, mộtcụm từ là một chuỗi có trình tự của một hoặc nhiều hơn một từ Chúng ta định nghĩa12

một base cluster (cụm cơ sở) là một tập hợp các văn bản cùng chia sẻ một cụm từ nào

đó

Thuật toán gồm ba bước: (1) “làm sạch” tài liệu (document “learning”), (2) xác

định các cụm cơ sở (base clusters) sử dụng cây hậu tố, (3) trộn các cụm cơ sở tạothành các cụm

(1)Trong bước làm sạch tài liệu, xóa tất cả các hậu tố và tiền tố của các từ nếu có,đưa toàn bộ số nhiều về số ít, loại bỏ các ký tự không phải là một từ (như các thẻHTML, hệ thống dấu chấm câu), các từ trong tài liệu được giữ nguyên vị trí

(2) Xác định các cụm cơ sở: Theo định nghĩa trong [13] thì cây hậu tố T là một

cây có hướng có gốc, biểu diễn một chuỗi s bất kỳ có chiều dài m với đúng m nút lá.Mỗi cạnh trên cây hậu tố đều được gán nhãn bằng một chuỗi con khác rỗng của chuỗi

s Các nhãn của hai cạnh bất kỳ xuất phát từ một nút chung phải bắt đầu bằng các ký

tự khác nhau Đối với nút lá của cây hậu tố, việc kết các nhãn của các nút nằm trêncon

đường đi từ gốc đến nút lá đó sẽ tạo thành một hậu tố của chuỗi s

Như tên của nó, cây hậu tố sẽ biểu diễn các chuỗi hậu tố của 1 từ hoặc một cụm từ.Chuỗi hậu tố là tập hợp các đơn vị từ hoặc chữ cái cạnh nhau đi sau từ hoặc cụm từ.Đơn vị từ ở đây có thể là chữ cái nếu xây dựng cây hậu tố cho từ, và là từ nếu xâydựng cây hậu tố cho 1 cụm

Lấy ví dụ: Từ misisippi có các hậu tố là

Trang 18

Việc xây dựng như trên giúp ta xây dựng một cây với đặc điểm là:

• Không có 2 nút nào cùng là con của một nút có nhãn cạnh như nhau

• Và có thể đưa ra tất cả các tập con với các đơn vị từ liên tiếp có đơn vị cuối là

đơn vị cuối của từ, cụm từ được đưa vào phân tích

• Có một nút gốc sinh ra cây

• Mỗi nút trong có ít nhất 2 nút con

• Các nhãn được đặt phải có liên kết với nhau

• Với mỗi hậu tố của s, tồn tại một nút có nhãn là s

Cây hậu tố được tổ chức thành cây gồm nhiều nút Mỗi nút sẽ lưu trữ tất cả các thôngtin về các cụm từ ( tần số xuất hiện trong tập văn bản, tần số xuất hiện trong từng vănbản) trong khi quan hệ giữa chúng lại nói lên sự tồn tại của các cụm từ

Trong phân cụm, người ta sử dụng cây hậu tố mở rộng để phân tích các câu: [11] Cây hậu tố mở rộng là cây hậu tố nhằm kết tất cả các hậu tố của các câu trong văn bản.

14

Tức là ta phân tích văn bản bằng cây hậu tố, mỗi câu được coi là một hậu tố, mỗi hậu

tố của câu cũng là một hậu tố Mỗi nút có thể là 1 tử, hoặc là 1 cụm từ đi liền Sau đóxét tất cả các cụm được coi là hậu tố và xét quan hệ của chúng với nhau để nhóm lạithành một cây

Ví dụ một cây hậu tố với tập hợp các string là 3 câu: “cat ate cheese”, "mouse atecheese too" , "cat ate mouse too" Phân tích với cây hậu tố với mỗi đơn vị là một từ Ởtrong văn bản gồm 3 câu này sẽ có các cụm từ được đưa ra lần lượt như sau:

1 cat [2]( 1 3)

2 cat ate [2]( 1 3)

Trang 19

3 cat ate cheese [1]( 3)

4 cat ate mouse [1]( 1)

5 cat ate mouse too [1]( 1)

6 ate [3]( 1 2 3) (ate xuất hiện 3 lần trong cả 3 câu)

14.mouse ate cheese [1]( 2)

15.mouse ate cheese too [1]( 2)

16 mouse too [1]( 1)

17 too [2]( 1 2]

15

và cây hậu tố chúng ta xây dựng được sẽ là

tree1>| -cat ate cheese

| -ate cheese

| -cheese

Tree2>| -mouse ate cheese too

| -ate cheese too

| - cheese too

| - too

Tree3>| -cat ate mouse too

| -ate mouse too

| - mouse too

| -too

Coi mỗi hậu tố là một vector Ta so sánh độ tương đồng giữa các vetor và dùng cácthuật toán gom cụm để gom các câu trong văn bản lại và tổng hợp đưa ra vector đặctrưng cho câu Cây cuối cùng được đưa ra là

Trang 20

a= hậu tố thuộc câu

b= số thứ tự của lần xuất hiện

chúng ta gán nhãn cho tất cả các nút trong của cây Mỗi nhãn này tương đương vớimột từ hoặc một cụm từ nhận được từ các cạnh liền nhau từ gốc đến nhãn đó Sau đóđánh giá các nút này

Bảng 2: Các tài liệu chứa cụm từ ở các node

Và bằng cách này, cụm cơ sở được đưa ra dựa vào số văn bản mà cụm từ này xuấthiện

và số từ trong cụm Công thức:

S(B) = |B| * f

17

Trong đó: |B| là số văn bản trong cụm cơ sở B

|P| số lượng từ hợp pháp trong cụm P (have non zero score)

zero score words: stopwords, quá ít(<3) hoặc quá nhiều( >40%)

hàm f không xác định với các cụm từ có độ dài bằng 1, là một hàm tuyến tính vớinhững cụm từ có độ dài từ 2 đến 6 và sẽ không đổi với những cụm từ dài hơn 6

(3)Một vấn đề đặt ra là các văn bản có thể chứa nhiều cụm từ giống nhau Vì thếvới cách phân cụm cơ sở như trên thì việc 2 cụm cơ sở có chia sẻ chung một số vănbản có xác suất khá lớn Để tránh việc trùng lấp này chúng ta trộn những cụm có chứa

số văn bản dùng chung lại thành một cụm Giả sử Bm and Bn là 2 cụm phân biệt Gọi

|Bm∩Bn| là tập hợp các văn bản thuộc cả 2 cụm trên.

Chúng ta định nghĩa độ tương tự giữa 2 cụm là 1 nếu:

|Bm∩Bn|/|Bm| >0.5 và

Trang 21

|Bm∩Bn|/|Bn| > 0.5.

Và là 0 trong trường hợp còn lại

Hình 3: Kết quả sau khi trộn các tài liệu

Xét trong ví dụ trên Các thông số được thể hiện như hình trên Mỗi nút là một

cụm và mỗi cạnh nối với nhau thể hiện rằng độ tương tự giữa 2 cụm là lớn hơn 1 tứclà

các cụm có tồn tại một cạnh nối có thể hợp lại với nhau thành một cụm như vậy sơ đồtrên thể hiện duy nhất một cụm

18

Xét trong trường hợp của ví dụ này Ta thấy b (ate) là một stopword, nút b sẽ

được đánh giá là 0 Như vậy các cạnh nối từ b cũng bị bỏ đi và chúng ta có 3 cụmđược đưa ra là “mouse too” “cat ate” “ate cheese”

1.3 Đánh giá các thuật toán phân cụm

Như đã được giới thiệu, thuật toán AHC thường chậm khi áp dụng cho các tập tài

liệu lớn Các thuật toán khác theo hướng này như Single-link và Group-average có thời gian thực hiện là O(n2), đồng thời thời gian kết nối hoàn toàn (complete-link) là

O(n3) Các thuật toán theo hướng này là quá chậm so với yêu cầu của bài toán phâncụm Web Một điểm đáng chú ý nữa đối với các thuật toán HAC là điều kiện dừng.Đã

có rất nhiều đề xuất về điều kiện dừng được đưa ra nhưng chủ yếu là dựa trên việcđiều kiện dừng đã được xác định trước (chẳng hạn, dừng khi chỉ còn 5 cụm) Điềukiện

dừng đối với các thuật toán này (HAC) là cực kỳ quan trọng Nếu như thuật toán trộncác cụm “tốt” với nhau có thể tạo ra kết quả không theo mong muốn của người dùng.Trên Web, với kết quả trả về theo truy vấn là vô cùng đa dạng (về số lượng, độ lớn,kiểu và sự phù hợp của các tài liệu) thì điều kiện dừng không tốt sẽ làm cho kết quảtrở

nên nghèo nàn [6]

Thuật toán k-means thuộc vào lớp các thuật toán phân cụm thời gian tuyến tính

và là những lựa chọn tốt nhất để đáp ứng yêu cầu về tốc độ của bài toán phân cụmonline

Thời gian thực hiện của các thuật toán này là O(nk) trong đó k là số các cụm

mong muốn [6] Thêm một ưu điểm của thuật toán K-means so với HAC là việc đápứng các yêu cầu của bài toán phân cụm Web là nó có thể tạo ra các cụm có sự giaothoa Điểm yếu chính của thuật toán này là nó chạy hiệu quả nhất chỉ khi các cụmmong muốn là các miền hình cầu đối với độ đo tương tự được dùng Không có lý dogì

để tin rằng các tài liệu sẽ thuộc vào các miền cầu Vì vậy thuật toán có thể làm mất đi

Ngày đăng: 27/04/2013, 09:13

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nguyễn Thị Thu Chung, Nguyễn Thu Trang, Hà Quang Thụy, “Đánh giá chất lượng phân cụm trong máy tìm kiếm tiếng Việt”, Hội thảo Quốc gia lần thứ XI, Huế, Việt Nam Sách, tạp chí
Tiêu đề: Đánh giá chấtlượng phân cụm trong máy tìm kiếm tiếng Việt”, "Hội thảo Quốc gia lần thứ XI
[2] Nguyễn Lê Minh, Hoàng Cao Trụ, “Phân cụm từ tiếng Việt bằng phương pháp học máy cấu trúc”, thực hiện trong khuôn khổ đề tài Nhà nước “Nghiên cứuphát triển một số sản phẩm thiết yếu về xử lý tiếng nói và văn bản tiếng Việt”mã số KC01.01/06-10 Sách, tạp chí
Tiêu đề: Phân cụm từ tiếng Việt bằng phương pháphọc máy cấu trúc”, thực hiện trong khuôn khổ đề tài Nhà nước “Nghiên cứuphát triển một số sản phẩm thiết yếu về xử lý tiếng nói và văn bản tiếng Việt
[3] Đỗ Phúc, Mai Xuân Hùng, Nguyễn Thị Kim Phụng, “gom cụm đồ thị và ứng dụng vào việc trích rút nội dung chính của khối thông điệp trên diễn đàn thảo luận”, Tạp chí phát triển KH &amp; CN, tập 11, số 05-2008 Sách, tạp chí
Tiêu đề: gom cụm đồ thị và ứngdụng vào việc trích rút nội dung chính của khối thông điệp trên diễn đàn thảoluận”, "Tạp chí phát triển KH & CN
[4] Lê Quyết Thắng, Phan Tấn Tài, Dương Văn Hiếu, “Giáo trình lý thuyết thông tin”, Khoa CNTT &amp; truyền thông, đại học Cần Thơ, 2007,http://ebook.edu.net.vn/resources/iportal/ebook/uploads/File/DHCantho/ltthongtin31/GT_LTTT.pdf Sách, tạp chí
Tiêu đề: Giáo trình lý thuyết thôngtin
[5] Nguyễn Văn Tuấn, “Phân tích số liệu và tạo biểu đồ bằng R”, nhà xuất bản Khoa học kỹ thuật, tr 94-101 Sách, tạp chí
Tiêu đề: Phân tích số liệu và tạo biểu đồ bằng R”, "nhà xuất bảnKhoa học kỹ thuật
Nhà XB: nhà xuất bảnKhoa học kỹ thuật"
[7] Trung tâm ngôn ngữ học Việt Nam. “Đặc điểm tiếng Việt”, http://www.vietlex.com/vietnamese.htmTiếng Anh Sách, tạp chí
Tiêu đề: Đặc điểm tiếng Việt
[8] Chien L. F. "PAT-Tree-Based Adaptive Keyphrase Extraction for Intelligent Chinese Information Retrieval". Proceedings of the 20th Annual International ACM/SIGIR Conference on Research and Development in InformationRetrieval (SIGIR'97), pages 50-58, Phliadelphia, 1997 Sách, tạp chí
Tiêu đề: PAT-Tree-Based Adaptive Keyphrase Extraction for IntelligentChinese Information Retrieval
[9] Christopher D. Manning, Prabhakar Raghavan, Hinrich Schutze, “An introduction to Information Retrival”, Cambridge University, 2007, page 349- 400 Sách, tạp chí
Tiêu đề: Anintroduction to Information Retrival”, "Cambridge University
[10] Hua-jun zeng, Qi-cai He, Zheng Chen, Wei-Ying Ma, Jinwen Ma."Learning to Cluster Web Search Results". Proceedings of SIGIR-04, 27th ACM International Conference on Re-search and Development in Information Retrieval, 2004, Sheffield, South Yorkshire, UK Sách, tạp chí
Tiêu đề: Learning to Cluster Web Search Results
[11] Paolo Ferragina, Dino Pedreschi, Francesco Romani, “On two web IR Boosting tools: Clustering and Ranking”, PhD. Thesis, University of Pisa May Sách, tạp chí
Tiêu đề: On two web IRBoosting tools: Clustering and Ranking”, "PhD. Thesis
[12] Thanh V. Nguyen, Hoang K. Tran, Thanh T.T. Nguyen and Hung Nguyen,“Word Segmentation for Vietnamese Text Categorization: An online corpus approach”, IEEE RIVF2006 - Research, Innovation and Vision of the Future - The 4rd IEEE International Conference in Computer Science, Ho Chi Minh City, Vietnam, 2/2006 Sách, tạp chí
Tiêu đề: Word Segmentation for Vietnamese Text Categorization: An online corpusapproach”, "IEEE RIVF2006 - Research, Innovation and Vision of the Future -The 4rd IEEE International Conference in Computer Science
[13] Zamir O., Etzioni O. Web Document Clustering: "Web DocumentClustering: A Feasibility Demonstration", Proceedings of SIGIR 1998: 46-54 [14] Máy tìm kiếm google, http://www.google.com Sách, tạp chí
Tiêu đề: Web DocumentClustering: A Feasibility Demonstration
[15] Máy tìm kiếm vivisimo, http://www.vivisimo.com [16] Máy tìm kiếm yahoo, http://www.yahoo.com [17] Máy tìm kiếm MSN, http://www.msn.com [18] Entropy, http://wikipedia.org/wiki/Entropy[19] Support Vector Machine for Ranking,http://www.cs.cornell.edu/people/tj/svm_light/svm_rank.html Link

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

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

w