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

WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO

60 699 1

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

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

Nội dung

Có thể nói, chúng ta đang bị “ngập” trong dữ liệu, và để có thể khai thác thông tin một cách hiệu quả từ những “núi” dữ liệu khổng lồ đó, chúng ta phải viện đến sự hỗ trợ của các công cụ

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

DƯ PHƯƠNG HẠNH

WEB MINING với giải thuật SOM và ứng dụng

cho máy tìm kiếm VINAHOO

luËn v¨n th¹c sÜ CÔNG NGHỆ THÔNG TIN

Hµ néi - 2005

Trang 2

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

DƯ PHƯƠNG HẠNH

WEB MINING với giải thuật SOM và ứng dụng

cho máy tìm kiếm VINAHOO

luËn v¨n th¹c sÜ CÔNG NGHỆ THÔNG TIN

Người hướng dẫn khoa học: TS Hà Quang Thuỵ

Hµ néi - 2005

Trang 3

Formatted: Dutch (Netherlands)

Mở đầu 53

Lời cảm ơn 75

Các từ viết tắt 86

Chương 1 Phân cụm dữ liệu Text và Web 97

1.1 Khai phá dữ liệu Text và các mô hình biểu diễn dữ liệu………

97 1.1.1 Khai phá dữ liệu Text 97

1.1.2 Các mô hình biểu diễn dữ liệu text 97

1.1.2.1 Mô hình không gian véc tơ 108

1.1.2.2 Đánh chỉ mục theo ngữ nghĩa tiềm tàng 119

1.1.2.3 Phép chiếu ngẫu nhiên 119

1.1.2.4 Phân cụm từ khoá 119

1.2 Phân cụm dữ liệu trong khai phá WEB………

1210 1.2.1 Bài toán phân cụm trang Web 1210

1.2.2 Sơ bộ về ứng dụng thuật toán SOM trong phân cụm Web 1614

Chương 2 Phương pháp WEBSOM và bộ công cụ SOM Toolbox 1816

2.1 Mạng nơ ron………

1816 2.1.1 Mạng nơ ron sinh học 1816

2.1.2 Mạng nơ ron nhân tạo 1917

2.1.2.1 Cấu tạo mạng nơ ron nhân tạo 1917

2.1.2.2 Mô hình nơ ron 1917

2.2 Thuật toán SOM………

2220 2.3 Phương pháp WEBSOM………

2725 2.3.1 Mã hóa tài liệu 3028

2.3.2 Xây dựng bản đồ (document map) 3129

2.3.2.1 Xây dựng bản đồ dựa trên phần bản đồ nhỏ hơn đã được hình thành trước đó 3129

Formatted: Dutch (Netherlands)

Trang 4

Formatted: Dutch (Netherlands)

2.3.2.2 Các thao tác hoàn thiện, làm mịn trên bản đồ 3230

2.4 Công cụ SOM Toolbox………

3432 2.4.1 Định dạng dữ liệu 3432

2.4.2 Xây dựng các tập dữ liệu 3533

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

2.4.4 Khởi tạo và huấn luyện 3937

2.4.5 Biểu diễn và phân tích 4038

Chương 3 Ứng dụng phương pháp WEBSOM trong bài toán phân cụm trang Web… 4240

3.1 Thử nghiệm thi hành WEBSOM phân cụm trang Web………

4240 3.1.1 Cấu trúc cơ sở dữ liệu trong máy tìm kiếm Vinahoo 4240

3.1.2 Cấu trúc một số bảng chính trong cơ sở dữ liệu MySQL của Vinahoo ……….42

40 3.1.3 Cấu trúc một số file nhị phân trong cơ sở dữ liệu của Vinahoo 4644 3.1.3.1 Cấu trúc các file nhị phân trong thư mục xxw: 4644

3.1.3.2 Cấu trúc các file nhị phân trong thư mục Deltas 4745

3.1.4 Tiến hành thử nghiệm 4846

3.1.5 Đánh giá kết quả thực nghiệm 5149

3.2 Đề xuất giải pháp ứng dụng phương pháp WEBSOM trong máy tìm kiếm Vinahoo………

5351 KẾT LUẬN 5553

Tài liệu tham khảo 5754

Mở đầu 3

Lời cảm ơn 5

Các từ viết tắt 6

Trang 5

Formatted: Dutch (Netherlands)

Chương 1 Phân cụm dữ liệu Text và Web 7

1.1 Khai phá dữ liệu Text và các mô hình biểu diễn dữ liệu 7 1.1.1 Khai phá dữ liệu Text 7

1.1.2 Các mô hình biểu diễn dữ liệu text 7

1.1.2.1 Mô hình không gian véc tơ 8

1.1.2.2 Đánh chỉ mục theo ngữ nghĩa tiềm tàng 9

1.1.2.3 Phép chiếu ngẫu nhiên 9

1.1.2.4 Phân cụm từ khoá 9

1.2 Phân cụm dữ liệu trong khai phá WEB 10 1.2.1 Bài toán phân cụm trang Web 10

1.2.2 Sơ bộ về ứng dụng thuật toán SOM trong phân cụm Web 14

Chương 2 Phương pháp WEBSOM và bộ công cụ SOM Toolbox 16

2.1 Mạng nơ ron 16 2.1.1 Mạng nơ ron sinh học 16

2.1.2 Mạng nơ ron nhân tạo 17

2.1.2.1 Cấu tạo mạng nơ ron nhân tạo 17

2.1.2.2 Mô hình nơ ron 17

2.2 Thuật toán SOM 20 2.3 Phương pháp WEBSOM 25 2.3.1 Mã hóa tài liệu 28

2.3.2 Xây dựng bản đồ (document map) 29

2.3.2.1 Xây dựng bản đồ dựa trên phần bản đồ nhỏ hơn đã được hình thành trước đó 29

2.3.2.2 Các thao tác hoàn thiện, làm mịn trên bản đồ 30

2.4 Công cụ SOM Toolbox 32 2.4.1 Định dạng dữ liệu 32

2.4.2 Xây dựng các tập dữ liệu 33

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

2.4.4 Khởi tạo và huấn luyện 37

2.4.5 Biểu diễn và phân tích 38

Trang 6

Formatted: Dutch (Netherlands)

Chương 3 Ứng dụng phương pháp WEBSOM trong bài toán phân cụm

trang Web 40

3.1 Cấu trúc cơ sở dữ liệu trong máy tìm kiếm Vinahoo 40

3.1.1 Cấu trúc một số bảng chính trong cơ sở dữ liệu MySQL của

Vinahoo 40

3.1.2 Cấu trúc một số file nhị phân trong cơ sở dữ liệu của Vinahoo 44

3.1.2.1 Cấu trúc các file nhị phân trong thư mục xxw: 44

3.1.2.2 Cấu trúc các file nhị phân trong thư mục Deltas 45

3.2 Cơ chế thực thi quá trình crawler trong module index của máy tìm

3.2.1 Mô hình thực thi của module đánh chỉ số (index) trong Vinahoo

Error! Bookmark not defined.

3.2.2 Quá trình crawler trong Vinahoo Error! Bookmark not defined.

3.2.2.1 Cấu trúc hàng đợi các url trong VinahooError! Bookmark

Tài liệu tham khảo Error! Bookmark not defined.

Trang 7

Formatted: Dutch (Netherlands)

Mở đầu

Trong những năm gần đây, Internet đã trở thành một trong những

phương tiện cung cấp hiệu quả các thông tin khoa học, thông tin kinh tế,

thương mại, quảng cáo và mọi mặt khác của đời sống Sự phát triển nhanh

chóng của mạng Internet và Intranet đã 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) Theo thống kê, lượng thông tin trên toàn

cầu tăng gấp đôi sau khoảng hai năm và theo đó số lượng cũng như kích cỡ của

các cơ sở dữ liệu (CSDL) cũng tăng lên một cách nhanh chóng Có thể nói,

chúng ta đang bị “ngập” trong dữ liệu, và để có thể khai thác thông tin một

cách hiệu quả từ những “núi” dữ liệu khổng lồ đó, chúng ta phải viện đến sự hỗ

trợ của các công cụ tìm kiếm, cụ thể là các Máy tìm kiếm (Search Engine) Tuy

nhiên, thường thì các máy tìm kiếm trên Web cho kết quả nhanh nhưng thiếu

độ chính xác hoặc ngược lại Các nhà nghiên cứu ở khắp mọi nơi trên thế giới

đã thực hiện những nỗ lực đáng kể để phát triển các phương pháp nhằm khắc

phục các yếu điểm trên, tức là cố gắng tăng độ chính xác của kết quả tìm kiếm

mà vẫn không gây ảnh hưởng tới tốc độ Một trong các giải pháp được rất

nhiều nhà nghiên cứu quan tâm và triển khai chính là giải thuật SOM (Self

Organizing Map) do giáo sư Teuvo Kohonen đề xuất

SOM (Self Organizing Map) được giáo sư Teuvo Kohonen phát triển, là

một công cụ rất thích hợp trong khai phá dữ liệu SOM là một thuật toán học

mạng nơron không giám sát, qua quá trình “tự tổ chức”, sắp xếp dữ liệu phức

tạp và nhiều chiều, sao cho các dữ liệu giống nhau được nhận ra và xếp cạnh

nhau trên bản đồ [5]

Từ việc tìm hiểu và phân tích giải thuật SOM, hướng tới mục tiêu nâng

cao hiệu quả tìm kiếm, Luận văn với đề tài “WEB Mining với giải thuật SOM

và ứng dụng cho máy tìm kiếm Vinahoo” tập trung vào lĩnh vực khai phá dữ

liệu Web dùng mạng nơron, sử dụng phương pháp học mạng nơron không giám

sát, dùng thuật toán SOM để giải quyết bài toán phân cụm, ứng dụng cho máy

tìm kiếm Vinahoo Nội dung của Luận văn bao gồm các phần chính như sau:

Chương 1: Tìm hiểu các mô hình biểu diễn dữ liệu trang Web, bBài toán

Trang 8

Formatted: Dutch (Netherlands)

của giải thuật phân cụm và tTổng quan về áp dụng giải thuật SOM cho bài

toán phân cụm các trang Web [4, 6, 8]

Chương 2: Tìm hiểu giải thuật SOM Tìm hiểu cCấu trúc và quá trình thực thi

phương pháp WEBSOM dựa trên giải thuật SOM và phương pháp học mạng

bộ công cụ SOM Toolbox [2, 5, 7, 8]

Chương 3: Tìm hiểu cấu trúc cơ sở dữ liệu của máy tìm kiếm Vinahoo [10]

Thực nghiệm ứng dụng giải thuật SOM trong phân cụm các trang Web lưu trữ

Trang 9

Formatted: Dutch (Netherlands)

Lời cảm ơn

Luận văn được thực hiện dưới sự hướng dẫn của thầy giáo TS Hà

Quang Thụy Tôi xin gửi tới thầy lời cảm ơn chân thành vì sự quan tâm, tận

tình chỉ dẫn, giúp đỡ mà thầy đã dành cho tôi trong suốt quá trình hoàn thành

luận văn

Xin trân trọng cảm ơn TS Nguyễn Tuệ - Chủ nhiệm Bộ môn Các hệ

thống thông tin, PGS.TS Trịnh Nhật Tiến – Chủ nhiệm Khoa Công nghệ thông

tin Xin cảm ơn các bạn, các đồng nghiệp của tôi tại Bộ môn Các hệ thống

thông tin, những người đã hết sức nhiệt tình cho tôi những chỉ dẫn, góp ý trong

suốt quá trình thực hiện luận văn

Tôi cũng xXin gửi lời cảm ơn bố mẹ, em và anhchân thành tới gia đình,

bạn bè, những người đã luôn ở bên tôi, động viên và nâng đỡ giúp đỡ, tạo điều

kiện cho những tiến bộ của tôi

{Nên đặt vị trí của gia đình khác với bàn bè}

Hà Nội ngày 20/12/2005

Dư Phương Hạnh

Trang 10

Formatted: Dutch (Netherlands)

Các từ viết tắt

CSDL Cơ sở dữ liệu

VSM Vector Space Model

LSI Latent Semantic Indexing

SOM Self Organizing Map

BMU Best Matching Unit

SVD Singular-Value Decomposition

SVD (singular-value decomposition)

Formatted: Font: Bold, Dutch (Netherlands) Formatted: Dutch (Netherlands)

Trang 11

Formatted: Dutch (Netherlands)

Chương 1 Phân cụm dữ liệu Text và Web

1.1 Khai phá dữ liệu Text và các mô hình biểu diễn dữ liệu.

1.1.1 Khai phá dữ liệu Text

Trong những năm gần đây Internet đã trở thành một trong những

phương tiện cung cấp hiệu quả các thông tin khoa học, thông tin kinh tế,

thương mại, quảng cáo và mọi mặt khác của đời sống Sự phát triển nhanh

chóng của mạng Internet và Intranet đã 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) Theo thống kê, lượng thông tin trên toàn

cầu tăng gấp đôi sau khoảng hai năm và theo đó số lượng cũng như kích cỡ của

các cơ sở dữ liệu (CSDL) cũng tăng lên một cách nhanh chóng Có thể nói,

chúng ta đang bị “ngập” trong dữ liệu, và để có thể khai thác thông tin một

cách hiệu quả từ những “núi” dữ liệu khổng lồ đó, chúng ta phải viện đến sự hỗ

trợ của các công cụ tìm kiếm, cụ thể là các Máy tìm kiếm (search Engine) Mục

tiêu của các máy tìm kiếm là thu thập các tài liệu phù hợp với yêu cầu của

người dùng trong một khoảng thời gian càng nhanh càng tốt Tuy nhiên, với

lượng thông tin khổng lồ không ngừng tăng trưởng trên Internet, với những yêu

cầu đôi khi rất mù mờ hoặc phức tạp từ phía người dùng, hiệu quả hoạt động

của máy tìm kiếm phụ thuộc rất nhiều vào phương pháp biểu diễn dữ liệu, giải

thuật áp dụng cho quá trình tìm kiếm và khả năng tương tác trực quan giữa máy

với người dùng

1.1.2 Các mô hình biểu diễn dữ liệu text

Hiện nay, trong phần lớn các nghiên cứu trong lĩnh vực khai phá dữ liệu

text, các văn bản, tài liệu thường được hiển thị như một tập hợp của các từ

Cách tiếp cận này được gọi tên là "Mã hoá kiểu túi" (bag of words encoding),

bỏ qua mục đích của từ cũng như cấu trúc hay dấu chấm câu nhưng lại ghi nhớ

số lần mỗi từ xuất hiện Phương pháp này là một sự đơn giản hoá tối đa về nội

dung thông tin mà các văn bản, tài liệu mang lại Mặc dù không đủ phức tạp để

biểu diễn dữ liệu, nhưng phương pháp này lại mang lại một số lượng thông tin

đáng kể về sự liên quan giữa các từ và các văn bản, điều hết sức quan trọng

trong việc phân cụm dữ liệu theo chủ đề hoặc trong việc lấy thông tin

Trang 12

Formatted: Dutch (Netherlands)

(information retrieval) từ một tập dữ liệu lớn Dưới đây là một số phương pháp

biểu diễn dữ liệu, tập trung vào các mô hình có thể được đánh giá một cách tự

động và hiệu quả thông qua một số lượng lớn dữ liệu và đòi hỏi tốc độ xử lý

nhanh Những mô hình này được thiết kế nhằm đưa ra các giải pháp kiến trúc

khả thi về mặt tính toán để giải quyết những công việc mà nếu sử dụng các

phòng thí nghiệm thông thường thì sẽ rất tốn kém, rất chậm và thậm chí là bất

khả thi

1.1.2.1 Mô hình không gian véc tơ

Mô hình véctơ (Vector Space Model), còn gọi là VSM do Salton đưa ra

[11], là cách thức mã hoá tài liệu phù hợp với mục tiêu thực thi nhanh chóng

Mỗi tài liệu sẽ được biểu diễn dưới dạng một véctơ trong không gian t-chiều,

trong đó t là số lượng từ khoá trong từ điển Giá trị di của thành phần thứ i biểu

diễn số lần từ khoá với chỉ số i xuất hiện trong tài liệu Hơn nữa, mỗi từ lại gắn

với một trọng số thể hiện mức độ quan trọng của từ đó Độ tương tự giữa các

tài liệu được tính bằng khoảng cách giữa các điểm hoặc góc giữa các véctơ (mà

không cần quan tâm đến độ dài của các véctơ) Với mô hình này, việc tìm kiếm

các tài liệu phù hợp với yêu cầu tìm kiếm chuyển thành tìm kiếm các véctơ tài

liệu gần nhất với véctơ truy vấn Mặc dù đơn giản, nhưng phương pháp biểu

diễn véctơ và các biến thể của nó hiện là các lựa chọn phổ biến nhất để biểu

diễn văn bản phục vụ mục đích khai phá text Có thể giải thích là do tốc xử lý

các phép toán trên véctơ rất nhanh, các giải thuật chuẩn áp dụng cho véctơ đều

đã có sẵn

Tuy nhiên, phương pháp này mắc phải yếu điểm yếu chính là, trong quá

trình xử lý, bộ nhớ phải lưu trữ các véctơ mẫu có số chiều vô cùng lớn Tất

nhiên kích cỡ của từ điển có thể được thu gọn lại bằng cách lựa chọn một tập

con chứa các từ khóa quan trọng nhất xét theo một số quy luật nào đó, thế

nhưng đây vẫn là một công việc hết sức khó khăn để đảm bảo rằng, tập con các

từ khóa này vẫn có khả năng biểu diễn các đặc trưng cơ bản của các tài liệu

Trang 13

Formatted: Dutch (Netherlands)

1.1.2.2 Đánh chỉ mục theo ngữ nghĩa tiềm tàng

Để thực hiện giảm số chiều của các véctơ tài liệu mà căn bản không gây

mất mát thông tin, trước tiên, người ta xây dựng một ma trận mà mỗi cột của

ma trận ứng với một véctơ tài liệu Sau đó, một phương pháp tính toán trên ma

trận, có tên gọi là SVD (singular-value decomposition) được áp dụng để phân

chia ma trận trên thành một tập hợp các yếu tố (factors) được sắp xếp theo trật

tự giảm dần độ ảnh hưởng đối với ma trận ban đầu Và khi những yếu tố sau

cùng, cũng là những yếu tố ít quan trọng nhất bị bỏ qua, thì véctơ tài liệu được

xây dựng dựa trên các yếu tố còn lại sẽ có số chiều nhỏ hơn rất nhiều mà vẫn

giữ được nhiều nhất có thể các thông tin quan trọng Phương pháp này được gọi

là đánh chỉ mục theo ngữ nghĩa tiềm tàng (Latent Semantic Indexing - LSI)

[4]

1.1.2.3 Phép chiếu ngẫu nhiên

Đây là phương pháp làm giảm số chiều của véctơ tài liệu một cách triệt

để mà lại đơn giản hơn rất nhiều so với phương pháp LSI nêu trên và không

gây ảnh hưởng tới độ phân biệt giữa các tài liệu [4] Xét véctơ ni Rn và một

ma trận ngẫu nhiên hình chữ nhật R mà các phần tử trong cột của R ứng với

các véctơ phân bố chuẩn và có độ dài đơn vị Chúng ta sẽ xây dựng các véctơ

tài liệu xi Rm, với m << n bằng phép chiếu:

xi = Rni

Nếu ta xét một cặp tài liệu bất kỳ (ni, nj), sau khi thực hiện phép chiếu ta

thu được tương ứng hai tài liệu (xi, xj), thì độ tương tự của hai tài liệu trước và

sau khi thực hiện phép chiếu là không thay đổi, và khả năng lỗi thì tỷ lệ nghịch

với m Thực nghiệm với giá trị m>100, kết quả thu được cho thấy độ chính xác

phân lớp của phương pháp này bằng với phương pháp VSM, tuy nhiên thời

gian cần thiết để thực hiện thì giảm đi nhiều

1.1.2.4 Phân cụm từ khoá

Phương pháp này được sử dụng nhằm làm giảm số lượng dữ liệu cần biểu

diễn bằng cách nhóm các thành phần tương tự lại với nhau Trong biểu diễn dữ

liệu, một sô phương pháp phân cụm được áp dụng để nhóm các từ tương tự

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Trang 14

Formatted: Dutch (Netherlands)

thành một nhóm, sau đó thực hiện biểu diễn tài liệu như tập hợp của các nhóm

từ khoá chứ không phải là tập hợp của từng từ khoá riêng lẻ Giải thuật SOM

dựa trên phương pháp học máy không giám sát là một trong những giải pháp

tốt để thực hiện việc phân cụm từ khoá Chúng ta sẽ đi sâu tìm hiểu vấn đề này

ở chương sau

1.2 Phân cụm dữ liệu trong khai phá WEB

1.2.1 Bài toán phân cụm trang Web

Ngày nay, sự phát triển nhanh chóng của mạng Internet và Intranet đã

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)

Cùng với sự thay đổi và phát triển hàng ngày hàng giờ về nội dung cũng như số

lượng của các trang Web trên Internet thì vấn đề tìm kiếm thông tin đối với

người sử dụng lại ngày càng khó khăn Thực vậy với Internet con người đã làm

quen với các trang Web cùng với vô vàn các thông tin Trong những năm gần

đây Internet đã trở thành một trong những kênh về khoa học, thông tin kinh tế,

thương mại và quảng cáo Một trong những lý do cho sự phát triển này là sự

thấp về giá cả tiêu tốn khi công khai một trang Web trên Internet So sánh với

những dịch vụ khác như mua bán hay quảng cáo trên một tờ báo hay tạp chí, thì

chi phí cho một trang Web rẻ hơn rất nhiều, đồng thời cập nhật nhanh chóng

hơn tới hàng triệu người dùng khắp mọi nơi trên thế giới Thông tin trên các

trang Web đa dạng về mặt nội dung cũng như hình thức Có thể nói Internet

như một xã hội ảo, nó bao gồm các thông tin về mọi mặt của đời sống kinh tế,

xã hội được trình bày dưới dạng văn bản, hình ảnh, âm thanh,

Tuy nhiên cùng với sự đa dạng và số lượng lớn thông tin như vậy đã nảy

sinh vấn đề quá tải thông tin Người ta không thể tìm tự kiếm địa chỉ trang Web

chứa thông tin mà mình cần, đặc biệt là khi chúng ta không có nhiều hiểu biết

về lĩnh vực mình cần tìm kiếm thông tin Do đó, cần phải có một công cụ quản

lý nội dung của các trang Web và cho phép tìm thấy các địa chỉ trang Web có

nội dung giống với yêu cầu của người tìm kiếm Các công cụ như vậy (được

gọi là máy tìm kiếm) quản lý dữ liệu như các đối tượng phi cấu trúc Hiện nay

chúng ta đã quen thuộc với các máy tìm kiềm như Yahoo, Google, Alvista,

Formatted: Font: Times New Roman, Dutch

(Netherlands)

Formatted: Dutch (Netherlands)

Trang 15

Formatted: Dutch (Netherlands)

Một trong những bài toán quan trọng trong lĩnh vực khai phá Web là bài

toán phân cụm Web Phân cụm Web - nói một cách khái quá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ớp tà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ần

phâ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ợp chứ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 được lấy từ Web Có hai tình huống phân cụm tài liệu Tình huống thứ

nhất là việc phân cụm trên toàn bộ một 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

Quá trình xử lý truy vấn và kết quả phân hạng được phản hồi từ các máy

tìm kiếm phụ thuộc vào việc tính toán độ tương tự giữa truy vấn và các tài liệu

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ỉ 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, 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ả theo từ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

Đặc điểm của 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

Trang 16

Formatted: Dutch (Netherlands)

là số lượng các tài liệu Web là vô cùng lớn và 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ười dù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ần thời

gian đáp ứng cần tính bằng giây Mỗi tài liệu Web không chỉ liên quan đến mộ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ạn

như 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ác danh 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 truy vấ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ột má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ác cụm và biểu diễn chúng cho người

sử dụng

Bảng dưới đây trình bày ví dụ về phân cụm kết quả của truy vấn “Việt

Nam”, ở đây chỉ biểu diễn 5 cụm đầu tiên

Minh họa cho việc phân cụm kết quả truy vấn “Việt Nam”

Số tài liệu: 185

Các cụm Số tài liệu Chủ đề liên quan

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

Trang 17

Formatted: Dutch (Netherlands)

tài liệu Web 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:

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 trong mộ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ác cụ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ìm 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ười dùng phải chờ đợi hệ thống tải toàn bộ tài liệu gốc từ Web

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ài giâ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

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à D q Є 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 kiếm thông thường chỉ hiển thị một số mục đầu

Trang 18

Formatted: Dutch (Netherlands)

tiên của danh sách này Tương ứng vớ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à

r

k1

1

Độ chính xác là tỷ số của k tài liệu trên cùng tập tài liệu mà thật sự phù hợp

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

k precision r

D 1

)(

1

Độ 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 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

1.2.2 Sơ bộ về ứng dụng thuật toán SOM trong phân cụm Web

Việc tìm kiếm các tài liệu có liên quan đến nhau trong một tập hợp dữ

liệu rất lớn, thông thường được thực hiện dựa trên các từ khoá và các biểu diễn

logic của chúng Tuy nhiên, thường thì các kết quả trả về nhanh nhưng thiếu độ

chính xác hoặc ngược lại Những nỗ lực đáng kể đã được thực hiện để phát

triển các phương pháp khác, chẳng hạn dựa trên các thống kê từ đơn, nhưng

khả năng ứng dụng của chúng đều thấp Điểm bất lợi căn bản trong các phương

pháp tìm kiếm truyền thống chẳng hạn như tìm kiếm thông qua từ khoá hoặc

đánh chỉ mục nội dung thông tin là: rất khó để xây dựng được các biểu thức tìm

kiếm phù hợp để không loại bỏ các tài liệu phù hợp và cũng không tạo ra các

danh sách dài các tiêu đề không phù hợp với mục tiêu tìm kiếm Giả sử chúng

ta mô tả các tài liệu toàn văn nhờ trọng số của các từ trong tài liệu đó Điểm

hạn chế của phương pháp này là, khi gặp một khối lượng nội dung đủ lớn, số

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Trang 19

Formatted: Dutch (Netherlands)

lượng từ được lựa chọn cũng sẽ rất lớn, chẳng hạn là con số 10.000 từ Rất

nhiều nghiên cứu đã chỉ ra rằng, tài liệu có thể được biểu diễn rất hiệu quả dưới

dạng một tập thuộc tính nhỏ hơn rất nhiều nếu như các từ được phân cụm theo

nội dung của chúng từ trước đó hoặc áp dụng một số phương pháp khác để làm

giảm số chiều (xem 1.1.2)

Một vấn đề khác còn lớn hơn mà một số phương pháp tìm kiếm đã không

chú ý hỗ trợ, đó là các trường hợp mà nội dung thông tin cần tìm kiếm là không

rõ ràng và khó để mô tả thành lời Chẳng hạn một số trường hợp, thông tin cần

tìm kiếm nằm ngoài phạm vi hiểu biết của cá nhân thì việc đưa ra các biểu thức

tìm kiếm thật chẳng khác nào đi tìm đường trong bóng đêm và tất nhiên kết quả

thu được là hết sức đáng thất vọng Lúc này đây, nếu trong tay chúng ta có một

tấm bản đồ mô tả tập hợp dữ liệu, trên đó các dữ liệu được sắp xếp và phân

vùng theo nội dung, thì khi đó, ngay chỉ một thông tin nhỏ có liên quan đến vấn

đề cần tìm kiếm cũng trở nên hữu ích Bản đồ hữu ích cho việc tìm kiếm trước

hết là nhờ khả năng trực quan hoá không gian thông tin, sau đó là khả năng

hướng dẫn người dùng đến với vùng thông tin cần tìm kiếm cũng như các

thông tin có liên quan Ta có thể hiểu rằng, trong trường hợp này, người dùng

viện đến sự trợ giúp của máy tìm kiếm không theo nghĩa tìm kiếm thông tin

(searching) mà theo nghĩa thăm dò thông tin (exploration) Sự khác biệt giữa

hai khái niệm này có thể được minh hoạ như sau: Một người tới hiệu sách và

hỏi người bán hàng về một cuốn sách cụ thể mà anh ta đang cần (searching) và

một người đi dạo qua từng kệ sách, đọc từng cái tên sách và phỏng đoán cuốn

sách nào là phù hợp với yêu cầu của anh ta (exploration)

Trong vài năm gần đây, một hướng nghiên cứu mới đã xuất hiện, đó là

một phương pháp tìm kiếm thông tin toàn văn có tính chất thăm dò và công cụ

duyệt tin có tên là WEBSOM [4, 6, -8] Nó được xây dựng dựa trên giải thuật

SOM, là giải thuật áp dụng thuật toán học không giám sát để phân tích và trừu

tượng hoá dữ liệu đa chiều Phương pháp này đáp ứng được cả hai nhu cầu:

phân cụm dữ liệu và trực quan hoá không gian thông tin

Trang 20

Formatted: Dutch (Netherlands)

Xúc tu

Khớp nối Nhân

Trục cảm ứng

Chương 2 Phương pháp WEBSOM và bộ công cụ

SOM Toolbox

2.1 Mạng nơ ron

2.1.1 Mạng nơ ron sinh học

Bộ não con người chứa khoảng 1010 các phần tử (được gọi là nơron) liên

kết chặt chẽ với nhau Đối với mỗi nơron, có khoảng 104 liên kết với các nơron

khác Một nơron được cấu tạo bởi các thành phần như tế bào hình cây, tế bào

thân và sợi trục thần kinh (trục cảm ứng) Tế bào hình cây có nhiệm vụ mang

các tín hiệu điện tới tế bào thân, tế bào thân sẽ thực hiện gộp (sum) và phân

ngưỡng các tín hiệu đến Sợi trục thần kinh làm nhiệm vụ đưa tín hiệu từ tế bào

thân tới tế bào hình cây của các nơron liên kết Điểm tiếp xúc giữa một sợi trục

thần kinh của nơron này với một tế bào hình cây của một nơron khác được gọi

là khớp nối (synapse) Sự sắp xếp các nơron và mức độ mạnh yếu của các khớp

thần kinh do các quá trình hoá học phức tạp quyết định, sẽ thiết lập chức năng

của mạng nơron [2]

Khi con người sinh ra, một bộ phận các nơron đã có sẵn trong não, còn

các bộ phận khác được phát triển thông qua quá trình học, và trong quá trình đó

xảy ra việc thiết lập các liên kết mới và loại bỏ đi các liên kết cũ giữa các

nơron Cấu trúc mạng nơron luôn luôn phát triển và thay đổi Các thay đổi có

Hình 2.1 Mô hình mạng nơron sinh học

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Trang 21

Formatted: Dutch (Netherlands)

khuynh hướng chủ yếu là làm tăng hay giảm độ mạnh các mối liên kết thông

qua các khớp thần kinh

Một trong những điển hình giải quyết bài toán học máy là thiết lập các

mạng nơron nhân tạo Mạng nơron nhân tạo chưa tiếp cận được sự phức tạp của

bộ não Tuy nhiên, do mô phỏng hoạt động học trong não mà về cơ bản có hai

sự tương quan giữa mạng nơron nhân tạo và nơron sinh học Thứ nhất, cấu trúc

tạo thành chúng đều là các thiết bị tính toán đơn giản (với mạng nơron sinh học

đó là các tế bào thân còn với mạng nhân tạo thì đơn giản hơn nhiều) được liên

kết chặt chẽ với nhau Thứ hai, các liên kết giữa các nơron quyết định chức

năng hoạt động của mạng

2.1.2 Mạng nơ ron nhân tạo

2.1.2.1 Cấu tạo mạng nơ ron nhân tạo

Mạng nơ ron nhân tạo bao gồm các thành phần sau:

1) Tập các đơn vị xử lý;

2) Trạng thái kích hoạt a, hay là đầu ra của đơn vị xử lý;

3) Liên kết giữa các đơn vị, mỗi liên kết được xác định bởi một

trọng số w ji ;

4) Luật lan truyền quyết định cách tính tín hiệu ra, ký hiệu là n của

đơn vị từ đầu vào của nó;

5) Hàm kích hoạt f, xác định mức độ kích hoạt khác dựa trên mức

độ kích hoạt hiện tại;

6) Đơn vị điều chỉnh (độ lệch - bias), ký hiệu là b, của mỗi đơn vị;

7) Phương pháp thu thập thông tin (luật học – learning rule);

2.1.2.2 Mô hình nơ ron

1) Neuron có đầu vào đơn

Trang 22

Formatted: Dutch (Netherlands)

01

n n

01

n n

10

11

n

n n n

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Trang 23

Formatted: Dutch (Netherlands)

 Hàm tuyến tính bão hoà đối xứng: (satlins)

11

11

n n

n n

0

n

n n

max1

n n

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands)

Trang 24

Formatted: Dutch (Netherlands)

2 Neuron nhiều đầu vào

2.2 Thuật toán SOM

Trong những năm gần đây, mạng nơ ron đã được ứng dụng rất thành công

trong vô số các trường hợp phân tích các tập dữ liệu phức tạp Một phương

pháp mới rất hiệu quả, ứng dụng thuật toán học mạng nơ ron, trợ giúp việc

thăm dò thông tin (data exploration) trên một tập dữ liệu rất lớn và nhiều chiều,

có tên là WEBSOM, được xây dựng dựa trên giải thuật SOM

SOM (Self Organizing Map) được giáo sư Teuvo Kohonen phát triển, là

một công cụ rất thích hợp trong khai phá dữ liệu SOM là một thuật toán học

mạng nơron không giám sát, qua quá trình “tự tổ chức”, sắp xếp dữ liệu phức

tạp và nhiều chiều, sao cho các dữ liệu giống nhau được nhận ra và xếp cạnh

nhau trên không gian 2 chiều (còn gọi là bản đồ - map) [5]

Formatted: Dutch (Netherlands)

Trang 25

Formatted: Dutch (Netherlands)

Để có được những nhìn nhận tổng quan về ánh xạ tự tổ chức

(self-organizing map) và tính phù hợp của nó trong xử lý các tập dữ liệu lớn, chúng

ta sẽ tiến hành xem xét một ví dụ minh hoạ: Một hệ thống xử lý thông tin, với

nhiệm vụ học cách giải quyết các công việc khác nhau sao cho mỗi công việc

đều được hoàn thành tốt Chúng ta hãy giả sử rằng hệ thống có thể gán các

công việc khác nhau đó cho các đơn vị con (sub-units) của hệ thống Các đơn

vị này có thể học từ chính những công việc mà chúng thực hiện Mỗi công việc

được gán cho đơn vị nào có khả năng thực hiện nó tốt nhất Khi các đơn vị đó

nhận được công việc mà nó có thể thực hiện tốt, chúng học và ngày càng trở

nên hoàn thiện hơn trong lĩnh vực đó Đây chính là mô hình chuyên môn hoá

nhờ học ganh đua Hơn nữa, nếu như các đơn vị được liên kết với nhau theo

một cách nào đó để khi một đơn vị đang xử lý một công việc thì các đơn vị

láng giềng của nó cũng được phép học chính công việc đó Cứ như vậy, dần

dần hệ thống sẽ đạt tới mức: các đơn vị gần nhau sẽ có các tính năng gần tương

tự, và các tính năng đó thay đổi một cách từ từ và rất mịn trên toàn bộ hệ thống

Đó là nguyên lý chung của phương pháp ánh xạ tự tổ chức (SOM) Hệ thống

được gọi là một map và công việc cần xử lý chính là việc mô phỏng, chẳng hạn

là biểu diễn một không gian dữ liệu nhiều chiều

Dạng đơn giản nhất của SOM, map là một lưới chứa rất nhiều đơn vị

con, còn công việc cần xử lý là biểu diễn dữ liệu thống kê, ký hiệu là véctơ

x Rn Mỗi đơn vị i trên map có chứa một véctơ mẫu ký hiệu là mi Rn Trong

quá trình học, các véctơ mẫu sẽ thay đổi dần dần Giải thuật SOM bao gồm

đồng thời cả quá trình phân cụm dữ liệu (Clustering) trên các véc tơ mẫu, và

thực hiện phép chiếu không tuyến tính (Nonlinear Projection) biến không gian

dữ liệu nhiều chiều thành lưới 2 chiều mà mỗi mắt lưới được tạo nên bởi các

véctơ mẫu Giải thuật cụ thể được trình bày như sau:

Xét một tập dữ liệu là các vectơ trong không gian n chiều:

n x x x

x 1, 2, , 

Xét một lưới SOM gồm M nơron nằm trong một lưới có kích thước 2

chiều Nơron thứ i có kích thước d là một vectơ:

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Trang 26

Formatted: Dutch (Netherlands)

Các nơron trong lưới có liên kết đến các nơron lân cận bằng một quan hệ

láng giềng Các láng giềng liền kề là các nơron lân cận tuỳ theo bán kính lân

cận của nơron thứ i

j d d

d

N i( ) , ,j với d là bán kính lân cận

Các nơron lân cận tuỳ thuộc vào bán kính, được sắp xếp trong lưới theo hình

chữ nhật hoặc hình lục giác Số các lân cận xác định trọng tâm của ma trận trả

về, có ảnh hưởng đến độ chính xác và khả năng tổng quát hoá của SOM

Trước khi huấn luyện cần khởi tạo các vectơ trọng số Một trong ba thủ tục

ban đầu điển hình sau được dùng:

 Ngẫu nhiên ban đầu, vectơ trọng số ban đầu được gán giá trị là các giá

trị ngẫu nhiên đủ nhỏ

 Ví dụ ban đầu, vectơ trọng số ban đầu được gắn với các ví dụ ngẫu

nhiên rút ra từ tập dữ liệu

 Tuyến tính ban đầu, vectơ trọng số ban đầu được gắn trong một không

gian con tuyến tính bởi hai vectơ của tập dữ liệu ban đầu

Trong mỗi bước huấn luyện, chọn ngẫu nhiên một vectơ ví dụ x trong tập

dữ liệu ban đầu Tính toán khoảng cách giữa x đến tất cả các vectơ mẫu, trong

đó c là chỉ số của mẫu gần x nhất gọi là BMU (Best Matching Unit) Sau khi

tìm được BMU, vectơ trọng số của SOM được cập nhập lại Vectơ trọng số của

BMU và các lân cận hình thái của nó di chuyển gần tới vectơ trong không gian

đầu vào Thủ tục cập nhập này trải dài theo BMU và các hình trạng lân cận của

Formatted: Dutch (Netherlands)

Trang 27

Formatted: Dutch (Netherlands)

Dưới đây là 5 bước của thuật toán huấn luyện theo phương pháp SOM:

1 Khởi tạo các giá trị trong lưới SOM

For each node i Khởi tạo véctơ trọng số wi (0) đủ nhỏ

Thiết lập bán kính lân cận Ni(0) đủ lớn

2 Khởi tạo véctơ đầu vào

Chọn ngẫu nhiên một véctơ x trong tập huấn luyện

3 Tìm BMU

Tính toán khoảng cách giữa x đến tất cả các vectơ mẫu c là chỉ số của mẫu

gần x nhất chính là BMU, được tìm theo công thức sau:

||x - mc|| = min {||x - mi||} (1)

4 Cập nhật lại các trọng số trong mạng

SOM cập nhật luật cho vectơ trọng số của đơn vị thứ i là tại thời điểm t:

mi (t+1) = mi(t) + α (t) hci(t)[x – mi(t)] (2)

trong đó: t là thời gian, α(t)là hệ số tỷ lệ học, hci là nhân lân cận quanh c tại

thời điểm t, thường được lựa chọn là hàm lân cận Gaussian

5 Chọn véctơ đầu vào tiếp theo

Giảm giá trị hci sao cho hci(t+1)<hci(t)

Lặp lại từ bước 2, chọn tiếp véctơ đầu vào x(t+1) cho đến khi hết các véctơ

trong tập huấn luyện

Dưới đây là hình ảnh mô phỏng việc huấn luyện SOM tại 1 thời điểm t,

Trang 28

Formatted: Dutch (Netherlands)

Input pattern: véctơ đầu vào

Winner: BMU

: mũi tên màu đen là giá trị khởi tạo ban đầu; mũi tên màu xám biểu

thị trọng số mới được cập nhật lại sau một lần học

Để tăng tốc độ tính toán, việc huấn luyện cũng có thể được tiến hành

theo khối (Batch Training Algorithm) Tập dữ liệu ban đầu được chia nhỏ

thành các tập con Voronoi

Thuật toán huấn luyện khối cũng là thuật toán lặp, nhưng thay vì chỉ

dùng một vectơ tại một thời điểm, mà toàn bộ tập dữ liệu được thể hiện trên

bản đồ (map) trước khi thực hiện bất kỳ điều chỉnh nào Trong mỗi bước huấn

luyện, tập dữ liệu được phân chia theo vùng Voronoi của các vectơ trọng số

Tính toán tổng các vectơ trọng số trong mỗi tập Voronoi:

nv i

j j

s

1

) (Hình 2.5 Mô phỏng việc huấn luyện SOM

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Trang 29

Formatted: Dutch (Netherlands)

với nv i là số các ví dụ trong tập Voronoi của đơn vị i Sau đó, các giá trị mới

của vectơ trọng số có thể được tính toán như sau:

j ij i

t h nv

t s t h t

m

1

1

)(

)()()

1(

với m là số các đơn vị trên bản đồ

Hai bước trên được thực hiện lặp lại cho tới khi giá trị mi đạt tới trạng

thái có thể xem như không thay đổi

2.3 Phương pháp WEBSOM

Trong phiên bản WEBSOM đầu tiên, việc giảm số chiều của véctơ tài liệu

được thực hiện nhờ phương pháp Phân cụm từ khóa (xem 1.1.2.4) Điều đó có

nghĩa là, thuật toán SOM được áp dụng hai lần Lần đầu, SOM được áp dụng

để phân cụm từ khóa thành các các nhóm (word category map) [7, 9] Nhờ đó,

các tài liệu sẽ được biểu diễn dưới dạng các véctơ với các thành phần là các

nhóm từ khóa Sau đó, SOM lại được áp dụng một lần nữa để phân cụm trên

tập các véctơ tài liệu (document map) – xem hình vẽ minh họa dưới đây:

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Trang 30

Formatted: Dutch (Netherlands)

Tuy nhiên, việc áp dụng SOM nhiều lần, áp dụng phương pháp huấn

luyện tuần tự khiến tốc độ tính toán giảm Đối với các tập dữ liệu với số chiều

vô cùng lớn, nhu cầu chiếm dụng bộ nhớ, không gian đĩa cứng và thời gian

chiếm dụng CPU trong quá trình huấn luyện là rất đáng kể Khi đó thuật toán

huấn luyện chuẩn như trên là không thích hợp, đòi hỏi phải có một vài cải tiến

để nâng cao hiệu quả tính toán Các cải tiến được đề xuất như sau:

 Xây dựng bản đồ từ các mảnh nhỏ hơn đã được dựng cẩn thận trước đó

 Áp dụng thuật toán huấn luyện khối

 Thực hiện song song hóa quá trình tính toán

 Thay vì thực hiện tìm kiếm BMU toàn cục, tiến hành tìm kiếm BMU

cục bộ mà vẫn đảm bảo tính chính xác

Trên những mục tiêu đó, một phương pháp WEBSOM mới ra đời với hiệu

năng được cải thiện rõ rệt [4, 7] Mô hình kiến trúc và xử lý của phương pháp

này được minh họa trong hình vẽ dưới đây:

Hình 2.6 Mô hình WEBSOM đầu tiên

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands) Formatted: Dutch (Netherlands)

Ngày đăng: 25/03/2015, 10:33

HÌNH ẢNH LIÊN QUAN

Bảng dưới đây trình bày ví dụ về phân cụm kết quả của truy vấn “Việt  Nam”, ở đây chỉ biểu diễn 5 cụm đầu tiên - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Bảng d ưới đây trình bày ví dụ về phân cụm kết quả của truy vấn “Việt Nam”, ở đây chỉ biểu diễn 5 cụm đầu tiên (Trang 16)
Hình 2.1 Mô hình mạng nơron sinh học - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 2.1 Mô hình mạng nơron sinh học (Trang 20)
Hình 2.2 Mô hình SOM - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 2.2 Mô hình SOM (Trang 24)
Hình 2.4: BMU - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 2.4 BMU (Trang 27)
Hình 2.5 Mô phỏng việc huấn luyện SOM - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 2.5 Mô phỏng việc huấn luyện SOM (Trang 28)
Hình 2.6 Mô hình WEBSOM đầu tiên - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 2.6 Mô hình WEBSOM đầu tiên (Trang 30)
Hình 2.7 Mô hình WEBSOM cải tiến - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 2.7 Mô hình WEBSOM cải tiến (Trang 31)
Hình 2.9 Hình minh họa quá trình tìm BMU - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 2.9 Hình minh họa quá trình tìm BMU (Trang 35)
Bảng urlword: bảng này chứa thông tin tổng quan về tất cả các URL  đã - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Bảng urlword bảng này chứa thông tin tổng quan về tất cả các URL đã (Trang 45)
Bảng UrlwordNN (NN là các số từ 00 – 15): Các bảng này chứa các thông - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
ng UrlwordNN (NN là các số từ 00 – 15): Các bảng này chứa các thông (Trang 46)
Bảng  wordurl1:  chứa thông  tin  các từ  khóa trong  cơ sở dữ  liệu  thời  gian - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
ng wordurl1: chứa thông tin các từ khóa trong cơ sở dữ liệu thời gian (Trang 47)
Bảng 3.1: Cấu trúc các file nhị phân delta d00 – d99. - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Bảng 3.1 Cấu trúc các file nhị phân delta d00 – d99 (Trang 49)
Hình 3.2: Sự phân cụm các trang Web thể hiện trên các nhãn - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 3.2 Sự phân cụm các trang Web thể hiện trên các nhãn (Trang 53)
Hình 3.3. mô tả cấu trúc của máy tìm kiếm Vinahoo. Nhìn vào sơ đồ hoạt  động này chúng ta thấy khả năng tích hợp WEBSOM vào một số thành phần,  chẳng hạn nhƣ môđun tìm kiếm hoặc môđun crawler - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 3.3. mô tả cấu trúc của máy tìm kiếm Vinahoo. Nhìn vào sơ đồ hoạt động này chúng ta thấy khả năng tích hợp WEBSOM vào một số thành phần, chẳng hạn nhƣ môđun tìm kiếm hoặc môđun crawler (Trang 55)
Hình 3.4 Minh họa giao diện người dùng  với máy tìm kiếm tích hợp WEBSOM. - WEB MINING với giải thuật SOM và ứng dụng cho máy tìm kiếm VINAHOO
Hình 3.4 Minh họa giao diện người dùng với máy tìm kiếm tích hợp WEBSOM (Trang 56)

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