Hiện nay, sự gia tăng của các phương tiện truyền thông trong việc lưu trữ và sự bùng nổ của các cơ sở dữ liệu lớn làm cho việc tìm kiếm văn bản càng trở nên quan trọng hơn bao giờ hết
Trang 1MỤC LỤC
LỜI MỞ ĐẦU
PHẦN I CƠ SỞ LÝ THUYẾT
I.TIẾNG VIỆT VÀ NGỮ PHÁP TIẾNG VIỆT
1.Tính chính xác của văn bản tiếng Việt
4.2 Vấn đề đa nghĩa và nhập nhằng trong ngôn ngữ
II MỘT SỐ KỸ THUẬT KHAI PHÁ DỮ LIỆU VĂN BẢN
1 Biểu diễn văn bản
Sinh từ ( Term Generation)
III MỘT SỐ PHƯƠNG PHÁP TÌM KIẾM VĂN BẢN
1 Tìm hiểu chung về các hệ thống khai thác thông tin
2 Tìm kiếm văn bản theo mô hình không gian vectơ
2.1 Độ chính xác và độ truy hồi
2.2 Bảng tần xuất
2.3 Chỉ dẫn ngữ nghĩa tiềm ẩn (Latent Sematic Indexing LSI)
2.4.Tìm kiếm tài liệu dùng SVD
Trang 22.5 TV_Tree
2.5.1 Thiết lập TV_Tree
2.5.2.Chèn vào TV_Tree
2.5.3.Tìm kiếm trên TV_Tree
3 Tìm kiếm văn bản theo mô hình tập thô dung sai
3.1 Khái niệm tập thô và không gian dung sai
3.2 Mô hình tập thô dung sai (TRSM) trong việc khai thác thông tin
3.2.1 Không gian dung sai:
3.2.2 Giải thuật tìm kiếm văn bản sử dụng TRSM
3.3 Hàm xếp hạng chính và xếp hạng phụ trong việc đánh giá mức độ chínhxác của tài liệu
PHẦN II PHƯƠNG ÁN GIẢI QUYẾT VÀ CÀI ĐẶT THỬ NGHIỆM
I PHƯƠNG ÁN GIẢI QUYẾT
II CÀI ĐẶT THỬ NGHIỆM
1 TIỀN XỬ LÝ VĂN BẢN TIẾNG VIỆT
1.1 Tổ chức từ điển
1.2 Tổ chức cơ sở dữ liệu văn bản
1.3 Xác định các từ khoá trong văn bản
2 Xử lý dữ liệu để phục vụ cho mô hình tìm kiếm văn bản bằng phương pháp tập thô dung sai.
Tính không gian dung sai và các xấp xỉ trên và xấp xỉ dưới
3 Tìm kiếm văn bản sử dụng mô hình tập thô dung sai
HƯỚNG PHÁT TRIỂN TRONG TƯƠNG LAI
TÀI LIỆU THAM KHẢO.
Trang 3LỜI MỞ ĐẦU
Chúng ta biết rằng nguồn tài nguyên được lưu trữ dưới dạng dữ liệuvăn bản là rất rộng lớn và giàu thông tin nhưng việc khai thác nguồn dữ liệunày vẫn chưa đạt hiệu quả cao Hiện nay, trên thế giới đã có khá nhiều hệthống thực hiện công việc này theo những phương pháp khác nhau tuy chưađạt được hiệu quả tối ưu nhưng cũng phần nào đáp ứng được các yêu cầuthông tin của người sử dụng Mỗi phương pháp khác nhau đều thể hiện đượcnhững điểm mạnh riêng của nó và việc lựa chọn phương pháp nào phụ thuộcvào những mục đích và tiêu chí riêng đặt ra
Hiện nay, sự gia tăng của các phương tiện truyền thông trong việc lưutrữ và sự bùng nổ của các cơ sở dữ liệu lớn làm cho việc tìm kiếm văn bảncàng trở nên quan trọng hơn bao giờ hết Chính vì vậy, việc lựa chọn phươngpháp tìm kiếm văn bản giúp cho người sử dụng có thể tìm kiếm được nhữngthông tin cần thiết một cách chính xác hiệu quả từ nguồn tài liệu văn bản rộnglớn phục vụ cho các mục đích trong công việc cũng như trong đời sống là rấtcần thiết Nhận thức được tầm quan trọng của việc khai thác dữ liệu văn bản,
em đã lựa chọn đề tài: “Tìm kiếm văn bản tiếng Việt”
Với đề tài này em đi sâu vào nghiên cứu việc tìm kiếm văn bản tiếngViệt sử dụng lý thuyết tập thô tập thô dung sai (Tolerance Rough Set Model).Đây cũng là một trong những phương pháp rất hiệu quả cho mục đích khaiphá dữ liệu cũng như tìm kiếm văn bản tiếng Việt vì nó đã phần nào giảiquyết được vấn đề đồng nghĩa trong tiếng Việt mà từ trước cho tới nay vẫnchưa có một biện pháp nào giải quyết tốt cho vấn đề đồng nghĩa Đây là một
đề tài tương đối rộng và phức tạp nhưng thời gian nghiên cứu không nhiều, sựhiểu biết trong lĩnh vực này còn bị hạn chế nên đồ án tốt nghiệp này sẽ khôngtránh khỏi những thiếu sót Em rất mong nhận được sự đóng góp, chỉ bảothêm của thầy cô và các bạn đọc để đồ án này hoàn thiện và hữu ích hơntrong thời gian tới
Trang 4Em xin chân thành cảm ơn TS Nguyễn Kim Anh Cô đã mở ra cho emhướng nghiên cứu về tìm kiếm văn bản tiếng Việt đồng thời cô đã tận tìnhhướng dẫn em trong suốt quá trình làm đồ án.
anh Lưu Anh Tuấn và anh Lê Minh Hiền những người đã tận tình giúp
em trong quá trình làm đồ án Tôi cũng xin cảm ơn các bạn học cùng khoa đãđóng góp ý kiến cho tôi để hoàn thành đồ án một cách tốt hơn
Trang 5PHẦN I CƠ SỞ LÝ THUYẾT I.TIẾNG VIỆT VÀ NGỮ PHÁP TIẾNG VIỆT
1.Tính chính xác của văn bản tiếng Việt
Khi nghiên cứu về văn bản tiếng Việt chúng ta gặp rất nhiều khó khăntrong việc tin học hoá phục vụ cho việc khai phá nguồn dữ liệu văn bản tiếngViệt Một trong những khó khăn đó chính là ngữ pháp tiếng Việt Để phântích và kiểm tra tính chính xác của một văn bản tiếng Việt, chúng ta phải tiếnhành phân tích từ vựng, phân tích cú pháp, phân tích ngữ nghĩa, và phân tíchchứng thực
Phân tích từ vựng: Quá trình này nhằm phân tích hình thái của các từ
tạo nên câu từ đó kiểm tra được tính đúng đắn của âm tiết và từ
Phân tích cú pháp: Quá trình này đưa ra mô tả về quan hệ và vai trò
ngữ pháp của các từ trong câu đồng thời đưa ra hình thái của câu Đầu vàocủa giai đoạn này là câu đã được phân tách từ, trong đó mỗi từ có đặc điểmhình thái nhất định Quá trình kiểm tra cú pháp tiến hành phân tích và tổ hợpcác từ ở đầu vào, dựa trên các luật cú pháp để loại bỏ các trường hợp bất quytắc và từng bước dựng lên cấu trúc cú pháp của câu Đầu ra của giai đoạnnày là hình thái câu Các luật cú pháp thường được xây dựng theo cơ chế
mở, nghĩa là có thể sửa đổi, bổ sung hay loại bỏ các luật thừa Kết quả củabước phân tích cú pháp phụ thuộc rất nhiều vào tính chính xác và đầy đủ củacác luật cú pháp
Phân tích ngữ nghĩa: Mục đích của quá trình này là kiểm tra ý nghĩa
của câu có mâu thuẫn với cả đoạn hay không? Dựa trên mối quan hệ logic vềnghĩa giữa các cụm từ trong câu và mối quan hệ giữa các câu trong đoạn, hệthống sẽ xác định được một phần ý nghĩa của câu trong ngữ cảnh của cảđoạn Đầu vào của giai đoạn phân tích ngữ nghĩa là tập các khả năng phântích câu và thông tin về ngữ nghĩa của tất cả các từ Các thực từ thường có
Trang 6nhiều nghĩa và nghĩa của nó chỉ được xác định duy nhất trong mối quan hệgiải thích với các từ khác trong câu.
Một cách tiếp cận được nhiều người quan tâm là sử dụng logic vị từ để biểudiễn thông tin ngữ nghĩa Thông tin ngữ nghĩa được lưu trư giống như thôngtin cú pháp Các phương pháp lập luận logic có thể dùng để phỏng đoán vàsuy luận nhiều thông tin hơn dựa trên thông tin đầu vào Các thông tin nàykhông cần phải phân loại (nhận giá trị đúng hay sai) Mô hình cấu trúc ngữpháp của câu là cấu trúc có đầy đủ nghĩa ngữ pháp và thông báo Có hai cáchmiêu tả:
Miêu tả các quan hệ cú pháp giữa từ và tổ hợp từ
Miêu tả mô hình hay ý của câu Việc miêu tả nhằm cho phép suy đoánđược ý của các bộ phận lớn hơn từ từ đó xác định ý của câu Câu là một thểtrọn vẹn chứ không phải là tổng các bộ phận cấu thành nó Ý của câu là tích
ý nghĩa các yếu tố tham gia cùng với ý nghĩa quan hệ tổng thể cấu trúc câu
Từ là một tổ hợp của câu, trong từ thể hiện một phần ý của câu Nhưng từkhông nhất thiết phải hiện diện trong câu với nghĩa mà nó có khi đóng vaitrò một đơn vị độc lập ở cấp độ khác Dựa trên mô hình cấu trúc cú phápcâu, ta có thể nhận diện cấu trúc chìm của câu (như hành động-chủ thể hànhđộng, hành động - đối tượng hành động…), giúp giải thích được ý nghĩa củacâu và vạch ra tính đa nghĩa của chúng
Phân tích thực chứng: Quá trình này xác định ý nghĩa câu dựa trên
mối quan hệ của câu với hiện thực Ý nghĩa thực tế của câu phụ thuộc phụthuộc rất nhiều vào ý, tứ và ngữ cảnh diễn ra lời nói Do vậy, quá trình phântích thực chứng rất khó thực hiện bằng máy tính thông thường, việc phântích câu chỉ dừng ở mức phân tích phân tích ngữ nghĩa, còn việc phân tíchthực chứng do người dùng quyết định
Trang 72 Từ tiếng Việt
Trong phạm vi cấu tạo từ, phương tiện chủ yếu về ngữ pháp chính là
sự kết hợp các tiếng Trật tự sắp xếp các tiếng có vai trò qua trọng trong cấutạo từ Kết hợp các phương tiện này Có hai phương thức cấu tạo từ chủ yếu
đó là láy và ghép Láy là việc sắp đặt các tiếng thành đôi, kề cận nhau, có sựphối hợp về ngữ âm tạo nên nghĩa Còn ghép là việc sắp đặt các tiếng thànhđôi, kề cận nhau, có sự kết hợp về ngữ nghĩa tạo nên nghĩa của từ ghép
Trang 82.1 Từ đơn_từ ghép.
Từ trong tiếng Việt có thể là một tiếng hay gồm nhiều tiến Hơn nữa,trong tiếng Việt những từ nhiều tiếng có thể được ghép bởi những tiếng hay
từ khác có nghĩa Ví dụ như hai từ chỉ một tiếng đó là từ “đất”, “nước” có
thể được ghép với nhau thành một từ có nghĩa trừu tượng hơn là đó là từ
“đất nước” Những từ này gọi là từ ghép.
Do sự tồn tại của những từ đơn (là những từ một tiếng) và từ ghép,chúng ta phải tiến hành nghiên cứu để có thể đề xuất những phương án hữuhiệu trong bài toán nhận dạng từ trong câu
Khi xem xét từ ghép, chúng ta có thể thấy có hai loại như sau:
Từ ghép song song: Mỗi tiếng thường là một tiếng có nghĩa, có thể
dùng là từ một tiếng, gắn bó với nhau theo quan hệ song song và nói chung
có thể đổi chỗ cho nhau Trong sự phối hợp về ngữ nghĩa thì thường có sựbiến đổi về nghĩa riêng thành một nghĩa hình tượng
Ví dụ: Ăn uống, bàn ghế, nhà cửa…
Từ ghép chính phụ: Mỗi tiếng có thể có một tiếng có nghĩa, nhưng
thông thường có một tiếng có thể dùng làm từ còn tiếng kia không có chứcnăng ngữ pháp đó
Tiếng Việt tồn tại một số các các từ ghép có nhiều hơn hai tiếng, pháttriển từ loại từ ghép chính phụ, qua đó có thể chia thành cá phần chính, phầnphụ, thuận tiện hơn trong việc phân tích từ Chính sự tồn tại của từ ghép(ghép bởi các tiếng có nghĩa) là nguyên nhân của sự nhập nhằng về nghĩacủa câu Do vậy, để tránh sự nhập nhằng về nghĩa trong câu, muốn phân tích
và xử lý văn bản tiếng Việt một cách tốt nhất thì bài toán đặt ra là làm thếnào để tách các từ trong câu thật chính xác
Trang 92.2 Từ loại
Trong tiếng Việt, từ được phân ra thành nhiều từ loại khác nhau.Trong tài liệu “Từ loại danh từ trong tiếng Việt hiện đại” của tác giả NguyễnTài Cẩm ta thấy xuất hiện các từ loại cơ bản sau:
Danh từ: bàn, ghế, vải vóc, khoa học, kỹ thuật,…
Động từ: đi, đứng, nghiên cứu, chăm sóc,…
Trạng từ: trên, dưới, trong, ngoài,…
Liên từ và, hay, nếu, tuy,…
Trang 102.3 Dùng từ cấu tạo ngữ
Ngữ là đơn vị ngữ pháp trung gian giữa từ và câu Cho nên việc tìmhiểu cấu tạo cũng như các loại ngữ là cần thiết để tìm hiểu cấu tạo của câu.Qua cấu tạo ngữ, có thể nhận rõ thêm đặc điểm ngữ pháp của từ loại
Theo “Ngữ pháp tiếng Việt-câu ”của tác giả Hoàng Trọng Hiếu,tiếng Việt có các ngữ loại cơ bản sau:
Danh ngữ: Ngữ có danh từ làm trung tâm
Động ngữ: Ngữ có động từ làm trung tâm
Tính ngữ: Ngữ có tính từ làm trung tâm
Giới ngữ: Ngữ bắt đầu bằng giới từ
Để xây dựng được một hệ thống luật cú pháp tốt, ta cần phải chia cácloại ngữ một cách chặt chẽ hơn Và do vậy, ta cũng hạn chế số lượng câu sai.Chẳng hạn, danh ngữ kết thúc trái (là danh ngữ mà vế trái của nó đã ở điểmtận cùng), ta không thể thêm hay bổ sung từ nào vào đầu để tạo nên danhngữ mới
Ví dụ “một bài toán”; ta không thể bổ sung “các”, “những”,… vàotrước ngữ đó
3 Câu tiếng Việt
Câu là đơn vị dùng từ, hay đúng hơn là dùng ngữ mà cấu tạo nên trongquá trình tư duy Xét về mặt cấu trúc câu, tiếng Việt có hai loại câu là câuđơn và câu ghép
Trang 113.1 Câu đơn
Câu đơn là loại câu cơ sở của tiếng Việt, nó bao gồm một nòng cốtđơn hay một kết cấu chủ vị Về mặt ngữ nghĩa, Câu đơn mang ngữ nghĩa tựthân, còn câu ghép mang nghĩa kết hợp Câu đơn có thể là câu khẳng định,câu phủ định, câu nghi vấn, câu tường thuật, câu cầu khiến, câu biểu cảm
Em mới học giỏi làm sao!
Nòng cốt của câu đơn là một kết cấu chủ vị Ngoài ra câu đơn còn cócác thành phần nòng cốt khác như:
Thành phần than gọi Ví dụ ” Bạn ơi, chúng ta đi nào”.
Thành phần chuyển tiếp Ví dụ “ Anh Trường, trái lại, không làm gì
cả”
Thành phần chú thích Ví dụ “Nó, em tôi, rất thông minh”.
Thành phần tình huống Ví dụ “ Trong máy tính, dữ liệu ở dạng nhị
phân”
Thành phần khởi ý Ví dụ “Thuốc, anh ấy không hút”.
Để diễn đạt một câu đơn, người ta thường dùng mô hình suy diễn:
Câu đơn Px – Cx – Vx – Bx
Trong đó P: Thành phần phụ
C: Chủ ngữ
Trang 12V: Vị ngữ B: Bổ ngữ, định ngữ.
x: thành phần có thể triển khai tiếp
3.2 Câu ghép
Về mặt ngữ pháp, câu ghép bao gồm bộ phận chủ yếu là một nòng cốtghép, được tạo nên bởi ít nhất hai vế và mỗi vế thường bao gồm một nòngcốt đơn Tuy rằng, câu đơn chỉ có một nòng cốt đơn nhưng không phải baogiờ câu đơn cũng ngắn hơn câu ghép Người ta có thể chia câu ghép thànhhai loại: Câu ghép song song và câu ghép qua lại
Câu ghép song song: Là loại câu có thể có hai hay nhiều hơn hai vế.
Tuy nhiên, sự liên kết giữa các vế lỏng lẻo, có thể tách thành các câu đơn màvẫn bảo toàn nghĩa Có trường hợp các vế có quan hệ sử dụng kết từ, tuynhiên ý nghĩa độc lập của các vế vẫn tương đối rõ ràng
Ví dụ:
Khán giả hò reo, cuộc đấu diễn ra thật sôi động và chúng tôi muốn độichủ nhà sẽ thắng
Câu ghép qua lại: Là loại câu có hai vế và vế này là điều kiện tồn tại
của vế kia Có cả hai vế thì câu mới có ý nghĩa trọn vẹn Nối giữa các vế làcác kết từ, thông thường người ta dùng cả cặp kết từ Ta có thể biểu diễn câughép như sau:
Câu ghép xN1 + yN2
Một trong cá kết từ có thể được loại bỏ Ta có một số ví dụ sau:
(Bởi) vì N1 nên (hoặc mà N2)
Để N1 (cho) nên (hoặc mà) N2
Nếu N1 thì N2
Trang 13Không những N1 mà còn N2
Tôi đi thì nó sẽ buồn.
Vì phở ngon nên cửa hàng của nó mới đông khách đến thế
3.3 Các thành phần của câu
Chủ ngữ: Thành phần chủ yếu của câu
Vị ngữ: Thành phần chính, bổ sung, giải thích ý nghĩa chothành phần chủ yếu
Trạng ngữ: Thành phần chủ yếu, bổ sung ý nghĩa cho câu, chỉnơi chốn, thời gian, không gian, …
Bổ ngữ: Thành phần phụ thuộc, bổ sung ý nghĩa cho động từlàm vị ngữ
Định ngữ: Thành phần phụ thuộc, bổ sung ý nghĩa cho vị ngữ
4 Các đặc điểm của tiếng Việt
Trang 144.1 Đặc điểm chính tả
Chính tả tiếng Việt đã có một hệ thống các quy tắc chuẩn mực Tuyvậy, vẫn còn có một số từ tồn tại nhiều cách viết khác nhau Ngay cả bảnthân một người cũng có lúc viết thế này, có lúc lại viết khác Sự sai khác này
là do những nguyên nhân sau:
Những từ đồng âm: y/i (kỹ thuật/ kĩ thuật, bác sĩ/ bác sỹ), d/gi (dôngbão/ giông bão)
Phương ngữ: chính đáng/ chánh đáng
Vị trí dấu trong một nguyên âm: cứu hoả/ cứu hỏa
Cách viết hoa tuỳ tiện đối với danh từ riêng: Tồn tại nhiều cách viếtkhác nhau ví dụ như Việt nam / Việt Nam
Phiên âm nước ngoài: là hình thức biến chữ ngoại quốc thành chữ địaphương Nhưng hiện nay tồn tại cả hai cách viết đó là phiên âm hoặc khôngphiên âm Ví dụ singapo / sing-ga-po
Dấu gạch nối thường xuất hiện các từ đa âm nước ngoài du nhập vàoViệt Nam Ví dụ như: Portugal được dịch là Bồ Đào Nha / Bồ-Đào-Nha
Các cách viết không thống nhất sẽ gây rất nhiều khó khăn trong việckiểm tra chính tả cũng như áp dụng kiểm tra chính tả tự động bằng máy tính
Trang 154.2 Vấn đề đa nghĩa và nhập nhằng trong ngôn ngữ
Phân tích cú pháp cho ta điểm khởi đầu để tìm ra ý nghĩa của toàn bộcâu Khi chỉ có một cách phân tích thì việc tìm ra ý nghĩa của câu là việc kháđơn giản Nhưng khi có nhiều cách phân tích thì việc tìm ra ý nghĩa thật củacâu là một công việc khó khăn
Ví dụ câu: “Tôi nghe nó ra thành phố” Câu này có hai cách phân tíchsau:
Tôi (là chủ ngữ) // nghe ( là động từ) // nó ra thành phố( là bổ ngữ)
Tôi (chủ ngữ) // nghe nó (thành phần giải thích) // ra thành phốCách phân tích thứ nhất thì đối tượng “ra thành phố ” là “Tôi”
Cách phân tích thứ hai thì đối tượng “ra thành phố” là “nó”
Những câu như thế gọi là nhập nhằng cú pháp Sự nhập nhằng cú pháp
sẽ gây khó khăn trong quá trình phân tích
Trang 16II MỘT SỐ KỸ THUẬT KHAI PHÁ DỮ LIỆU VĂN BẢN
1 Biểu diễn văn bản
Như chúng ta đã biết, bài toán khai phá dữ liệu văn bản là điphát hiện các tri thức còn tiềm ẩn trong dữ liệu văn bản Các tri thức đó cóthể là một mẫu hình hoặc được biểu diễn dưới dạng luật Đó thực chất là cácbiểu diễn có cấu trúc Tuy nhiên dữ liệu mà chúng ta áp dụng các kỹ thuậtkhai phá lai là dữ liệu phi cấu trúc Chính vì điều này làm cho chúng takhông thể áp dụng trực tiếp trên dữ liệu đầu vào mà cần phải có các thao táctiền xử lý khác
Với yêu cầu phân tích sâu hơn các văn bản, mỗi tài liệu cầnđược chuyển sang một dạng ngôn ngữ biểu diễn lại nào đó Một trong cácngôn ngữ biểu diễn lại được sử dụng rộng rộng rãi nhất đối với các văn bản
là kiểu lập chỉ mục theo từ đại diện Khi xem một văn bản ta quan tâm đến từđại diện Đó chính là một từ hay một cụm từ được lựa chọn để biểu diễn ýnghĩa hay đặc trưng của văn bản
Do vậy, một vấn đề đặt ra là làm thế nào để trích lọc các từ đại diệncho văn bản một cách chính xác và đặc trưng cho văn bản Việc trích lọc các
từ đại diện cho văn bản là một khâu quan trọng trong việc giải quyết bài toánkhai phá dữ liệu văn bản
Mô hình dưới đây nhằm xác định các từ đại diện cho văn bản mộtcách tự động
Hình 1: Mô hình xác định từ đại diện cho văn bản
Bộ đọc (reader)
Phân tích
cú pháp
Sinh từ Lọc từ Văn bản
Trang 18Sinh từ ( Term Generation)
Văn bản sau khi qua bộ phân tích cú pháp có thể đã thu được kháchính xác các từ trong văn bản Tuy nhiên, không phải từ nào cũng đượcchọn làm từ đại diện cho văn bản Chúng ta phải loại bỏ các từ mang ít thôngtin Trong bước sinh từ đại diện, chuỗi các từ đại diện chọn làm ứng cử viêntiềm năng dựa trên mẫu hình thái cú pháp như: “Danh từ - Danh từ”, “Tính
từ - Danh từ”…
Sau khi đã có một chuỗi các ứng cử viên, ta tiến hành nối các từ đạidiện này thành các từ đại diện đơn (single term) mới, quá trình này đượcthực hiên qua nhiều vòng lặp Tại mỗi vòng lặp, ta tính hệ số kết hợp(association coeffcient) giữa mỗi cặp từ đại diện kề nhau Nếu cặp từ nào có
hệ số kết hợp đủ lớn sẽ được nối lại thành một từ đại diện mới
Có hai vấn đề đặt ra, thứ nhất là những mẫu hình thái – cú pháp nào
được sử dụng để tiến hành lập danh sách các từ đại diện tiềm năng, thứ hai là
hệ số kết hợp được tính như thế nào
Đã có rất nhiều nghiên cứu về các mẫu hình thái – cú pháp, việc sử
dụng các mẫu nào để có thể trích các từ đại diện từ văn bản Hiện nay, người
ta thường sử dụng một số mẫu hình như “Danh từ Danh từ”, “Động từ Danh từ”, “Danh từ - Kết từ - Dang từ” để có thể trích được các từ đại diệndạng như: Khai phá dữ liệu, Quản trị doanh nghiệp, quản lý nhân sự…
-Tuy nhiên, không phải bất cứ tổ hợp từ nào phù hợp với mẫu hình
hình thái – cú pháp đều có thể được chọn Chỉ những cụm từ có hệ số kết
hợp đủ lớn mới được đưa vào danh sách những từ đại diện có nhiều tiềmnăng Có nhiều cách tính hệ số kết hợp, trong đó người ta thường sử dụngmột hàm tính độ đo đồng xuất hiện, tính số lần hai từ cùng xuất hiện theo
mẫu hình thái – cú pháp trong văn bản.
Trang 19Lọc từ (Term Filter)
Bước sinh từ được mô tả ở trên tạo ra một danh sách rất dài các từ đạidiện, danh sách này được gắn với mỗi tài liệu mà không quan tâm đến mốiliên hệ trên toàn bộ các tập văn bản Trong khi đó, bước chiết xuất từ đạidiện (term extraction) chỉ có ý nghĩa là chuẩn bị cho các kỹ thuật khai phá
dữ liệu văn bản khác, giải quyết các bài toán làm việc trên một tập lớn các
tài liệu như phân lớp văn bản, phân loại văn bản, tìm kiếm văn bản…do đó
mối tương quan giữa các từ chiết xuất được và tập văn bản phải được lưu ýđến Ngưỡng kết hợp mà ta chọn ở trên có thể tạo ra một danh sách rất dàicác từ đại diện nhiều hơn mong đợi, dư thừa, không có hiệu quả khi xét trêntoàn bộ tập văn bản Mục đích của pha lọc từ này là thu gọn tập từ đại diệndựa vào tần xuất của mỗi từ trên toàn bộ tập văn bản Pha lọc từ sẽ tìm vàloại bỏ các từ đại diện không đáng quan tâm trên toàn bộ ngữ cảnh của toàn
bộ tập văn bản, hoặc tần xuất của từ đó chưa đủ lớn (chưa vượt qua ngưỡng)hoặc sự phân bố không đồng đều trên toàn bộ tập văn bản
Cách tiếp cận của chúng ta là sử dụng một hàm thống kê cho điểmtrên các từ Hàm này gán điểm cho mỗi từ dựa trên tần xuất của từ đó trêntoàn bộ văn bản nói chung và phân bố xác xuất trên mỗi văn bản nói riêng.Chúng ta sẽ tiến hành chọn những từ có số điểm vượt ngưỡng M (do người
sử dụng chọn qua thực nghiệm), tập này sẽ được sử dụng cho các kỹ thuậtkhai phá dữ liệu văn bản sẽ được trình bầy ở phần sau
2 Các kỹ thuật khai phá
Các bài toán thường được quan tâm trong khai phá dữ liệu văn bản làPhân loại văn bản (text categorization), Phân lớp văn bản (textclassification), lập chỉ mục tìm kiếm (text indexing) Các bài toán này đềuphải dựa vào một yếu tố vô cùng quan trọng là những mẫu hình tri thức(patterns) hoặc các luật mà chúng ta khai phá được từ tập văn bản để luyện(training document) Trong phần này, ta sẽ xem xét một số những kỹ thuật
Trang 20dùng để khai phá tri thức từ tập các văn bản như phát hiện các luật kết hợp(association rules discovery), lập chỉ mục tự động (automated indexing)…
Trang 212.1 Khai phá các luật kết hợp (Association Rules)
Nếu dữ liệu dạng văn bản đã được lập chỉ mục, với mục đích trợ giúpcho quá trình xử lý ngôn ngữ tự nhiên, cấu trúc chỉ mục (indexing structure)
có thể được sử dụng cho quá trình phát hiện tri thức chính xác từ dữ liệu vănbản
Trong phần này, chúng ta xem xét cách tìm kiếm thông tin trong mộttập các tài liệu đã được lập chỉ mục bằng cách tìm kiếm (retrieveing) mộtcách tự động những mối quan hệ kết hợp giữa các từ khoá (key-word), đượcgọi là luật kết hợp (association rule)
Trang 222.2 Lập chỉ mục tự động (Auto indexing)
Trong hầu hết các trường hợp lập chỉ mục, người ta vẫn thực hiện mộtcách thủ công Rõ ràng thao tác lập chỉ mục thủ công đòi hỏi rất nhiều thờigian và không đáng tin cậy Việc lập chỉ mục tự động trên cơ sở tài liệu vănbản có thể được xem xét với mục đích cho phép sử dụng các kỹ thuật chiếtxuất luật kết hợp trên một diện rộng Các kỹ thuật lập chỉ mục tự động có thể
sử dụng sơ đồ gán trọng số như sau:
Trong đó: wi,j là trọng số của từ khoá tj trong tài liệu di,
N là số lượng tài liệu trong tập tài liệu và nj là số lượng tàiliệu có chứa từ khoá tj
pij là tần số lài liệu liên quan của tj trong di và được tính theocông thức sau:
Trong đó: fi,j là số lần xuất hiện từ khoá tj trong tài liệu dj
Khi một sơ đồ đánh trọng số được lựa chọn thì việc đánh chỉ mục tựđộng có thể được thực hiện như là phép lựa chon đơn giản, trong đó các từđược lựa chọn thoả mãn ràng buộc trong số đã cho
Lợi ích của việc lập chỉ mục tự động là rút gọn được chi phí của việclập chỉ mục Tuy nhiên, một trong những nhược điểm của phương pháp này
là do không có thêm bất kỳ một tri thức (ví dụ như từ điển xếp loại đồng
0 )
log(
) ) ( max 1
( 5 0
,
, ,
, ,
j i
j i j l
l
j j
i
p
p n
N p
p w
k i k
j i j
i
f
f p
, , ,
Trang 23nghĩa) nên thủ tục lập chỉ mục tự động tạo ra các chỉ mục chung chung,không thực sự mạnh mẽ, chặt chẽ, hướng chủ đề.
3 Phân nhóm văn bản
Với nhiệm vụ của bài toán khai phá dữ liệu văn bản là tìm kiếm nhữngthông tin còn tiềm ẩn trong trong cơ sở dữ liệu Với những cơ sở dữ liệu lớnvấn đề đặt ra là các hệ thống tìm kiếm sao cho có hiệu quả, một trong những
kỹ thuật chủ yếu là phân nhóm văn bản nhằm giải quyết vấn đề trên
Trong bài toán phân nhóm, một nhóm là tập hợp các phần tử giốngnhau hơn so với các phần tử thuộc nhóm khác Mục tiêu của bài toán phânnhóm là tìm ra được một tập các nhóm sao cho độ tương đồng giữa cácthành phần bên trong mỗi nhóm cao và độ tương đồng giữa các phần tửthuộc các nhóm khác nhau thấp
Phương pháp phân nhóm phân cấp.
Đối với phương pháp phân nhóm phân cấp, quá trình xây dựngphân cấp thường có chi phí lớn nhất Đã có rất nhiều thuật toán được pháttriển nhằm xây dựng cây phân cấp văn bản một cách có hiệu quả Các thuậttoán này thường có chung phương pháp lặp quá trình phân tích hai cặp nhóm
đã được xây dựng từ trước và hợp nhất cặp có độ tương đồng lớn nhất thànhmột nhóm văn bản Các thuật toán chỉ khác nhau việc tính toán độ tươngđồng khi một trong số các cặp là sản phẩm của quá trình hợp nhất trước đó.Phương pháp phân nhóm đơn liên kết định nghĩa độ tương đồng là độ tươngđồng lớn nhất giữa hai đơn vị từ hai nhóm Các phương pháp phân nhómkhác như phương pháp như liên kết hoàn toàn sử dụng độ tương đồng nhỏnhất, phương pháp phân nhóm liên kết nhóm trung bình sử dụng độ tương
đồng trung bình Các thuật toán này thường có chung đặc tính tích tụ ở chỗ
chúng đều lặp quá trình ghép hai nhóm văn bản thành một nhóm Các thuậttoán tích tụ theo nghĩa của thuật toán tham lam, nghĩa là cặp nhóm văn bảnđược chọn để kết hợp là cặp gần giống nhau nhất theo một tiêu chí nào đó
Trang 24Cuối cùng, thuật toán này đều có tính toàn cục ở chỗ tất cả các cặp nhóm đềuđược xử lý để tính toán độ tương đồng và do đó độ phức tạp tính toán đều làO(n2) Đây là một trong nhược điểm lớn nhất của các thuật toán dạng này.
Phương pháp phân nhóm không phân cấp:
Các thuật toán phân nhóm dạng không phân cấp hoạt động theocách thức trái ngược so với các thuật toán phân nhóm phân cấp Các thuậttoán này luôn tăng đơn điệu số phần tử của từng nhóm và các nhóm mới cóthể là kết quả của quá trình tách hay hợp các nhóm cũ Các phương phápphân nhóm không phân cấp có thể yêu cầu các văn bản không thể được trùngnhau ở các nhóm khác nhau (như phương pháp chia) hoặc có thể trùng nhau
Trang 25III MỘT SỐ PHƯƠNG PHÁP TÌM KIẾM VĂN BẢN
1 Tìm hiểu chung về các hệ thống khai thác thông tin
Các hệ thông khai thác thông tin có thể được công thức hoá mộtcách tổng quát như một hàm =(,D,Q,) với ={tt1, t2,…, tM} là tập cácterm (các từ khoá) ; D={td1, d2,…, dN } là tập các tài liệu trong đó mỗi di ;Q={tQ1,Q2,…, Qp} là tập các truy vấn trong đó mỗi QK ; và : Q D -
> R là hàm xếp hạng ước lượng độ chính xác giữa một truy vấn và một tàiliệu Cho một truy vấn qQ với các tài liệu dj1,dj2 D nếu (q,dj1) > (q,dj2)thì dj1 được cho rằng chính xác hơn dj2 với truy vấn q
Thông thường, một tài liệu dj có thể được biểu hiện với các cặp term
và trọng lượng dj= (tj1,wj1 ;tj2,wj2 ; ….; tjn,wjn) với tjk và wj1 [0,1] đánhgiá tầm quan trọng của term tjk trong tài liệu dj Một truy vấn q Q cũng cóthể được biểu diễn bởi tập các cặp term và trọng lượng q=(q1,wq1;t2,wq2;
….;tt,wqt) với qk và wqk [0,1] Nhiệm vụ của khai thác thông tin là manglại một tập A={tdj1,dj2,…,djm}D với truy vấn q và một hàm xếp hạng (Q,djk)
Sau đây, chúng ta sẽ tìm hiểu kỹ về hai mô hình tìm kiếm thông tin
được sử dụng rộng rãi và khá phổ biến đó là mô hình không gian vectơ và
mô hình lý thuyết tập thô
Trang 262 Tìm kiếm văn bản theo mô hình không gian vectơ
Một trong những mô hình phân nhóm hoặc tìm kiếm văn bản truyềnthống đó là dựa theo mô hình không gian vectơ, với cơ sở lí thuyết về matrận xây dựng những vấn đề liên quan tới kỹ thuật phân nhóm các tài liệu,cách tiếp cận tới những vấn đề trong truy vấn cơ sở dữ liệu văn bản Trong
đồ án này sẽ trình bày cụ thể hơn về mô hình không gian vectơ áp dụng chobài toán tìm kiếm văn bản, các khái niệm và xây dựng thuật toán cho tìmkiếm thông tin
2.1 Độ chính xác và độ truy hồi
Giả sử D là một tập hữu hạn các văn bản A là một giải thuật nhậnchuỗi ký tự theo chủ đề là t làm đầu vào và trả lại một tập các văn bản A(t) ởđầu ra A(t)D
Với việc đưa vào thuộc tính thích hợp (relevant) với hai đối số: Mộtchủ đề t và một văn bản d Nếu relevant(t,d) là đúng thì có nghĩa là văn bản dđược xem xét thích hợp với chủ đề t Ví dụ: Thuộc tính thích hợp có thể thựchiện trên nghiệm Dtest D của những văn bản và tập hợp kiểm tra độ tương
tự Ttest của các chủ đề
Hình 2: Truy vấn văn bản
tập các văn bản có liên quan thích đáng
tập các văn bản
các văn bản tìm được sau thuật toán truy vấn
Trang 27Độ chính xác (Precision) của giải thuật A với sự tập trung tới thuộctính thích hợp và tập thử nghiệm Dtest là Pt% cho chủ đề t Ttest được tính
100
Pt
)}) ( ({t
1
}) )
, ( )
( ({t
1
t A d D d card
true is d t relevant t
A d D d card
Độ chính xác của giải thuật A với sự tập trung vào thuộc tính thích
hợp, tập hợp thử của văn bản Dtest và tập hợp thử của các chủ đề Ttest là P%được tính theo công thức:
) ( test
t T t T card
, ( )
( ({t
1
true is d t relevant d
D d card
true is d t relevant t
A d D d card
(Trong đó: Rt là độ truy hồi liên quan đến một chủ đề t)
Độ truy hồi R kết hợp với thử nghiệm Dtest của các văn bản và thửnghiệm Ttest của những chủ đề đã cho xác định bởi công thức sau:
) ( test
t T t T card
Trang 282.2 Bảng tần xuất
Giả sử D là tập hợp của N văn bản, T là tập hợp của M term xuất hiệntrong các văn bản D Bảng tần xuất (frequency table) FreqT là sự kết hợpgiữa D và T là ma trận (MN) trong đó FreqT(i,j) là số lần xuất hiện củaterm Ti trong văn bản dj Như vậy trong bảng tần xuất FreqT văn bản dj biểudiễn bằng số cột j, còn số lần xuất hiện của term ti được biểu diễn bằng hàng i trong ma trận bảng tần xuất Có một câu hỏi đặt ra là tại sao bảng tần xuất lại quan trọng? Để giải thích một cách chính thức câu hỏi này hãy làm một ví dụ gồm một vài văn bản mang tính giả thiết.
Bảng 1: Bảng tần suất của một số văn bản
Nếu chúng ta kiểm tra các văn bản này, chúng ta cần chú ý rằng d1 vàd2 là tương tự nhau vì sự phân bố các từ trong d1 phản ánh sự phân bố các từtrong d2 Cả hai văn bản này đều có t1 và t4 xuất hiện nhiều lần, t2 và t3 xuấthiện ít và xuất hiện nhiều tương đối là t5
Nhưng việc đếm từ một các đơn thuần không chỉ ra được tầm quantrọng của các từ trong văn bản Xét một ví dụ, một từ xuất hiện ba lần trongmột văn bản gồm mười từ thì nó được cho là quan trọng Nhưng xét trong
Trang 29một văn bản khác gồm một triệu từ thì tầm quan trọng giảm đi rất nhiều Vìvậy, trong bảng tần suất, chúng ta thường quan tâm đến tỉ lệ giữa số lần xuấthiện của một từ trong văn bản và tổng số từ trong văn bản đó Vấn đề đặt ra
là cần phải loại bỏ các từ mang ít thông tin
Sau đây, chúng ta giả sử rằng bảng tần xuất FreqT(i,j) là những sốthực lớn hơn hay bằng không và giá trị chính xác đã được xác định Nếuchúng ta coi truy vấn Q như là một văn bản thì chúng ta đang đi tìm các cộttrong ma trận trong ma trận tần xuất FreqT càng gần với vectơ Q càng tốt
Sự gần nhất được định nghĩa bằng một thuật ngữ như sau:
khoảng cách từ ( term distance) : Giả sử vectơ vecQ (i) chứa số lầnxuất hiện của từ ti trong ,Q thì khoảng cách từ giữa Q và văn bản dr được tínhbằng công thức:
1
2
)) , ( )
(
khoảng cách cosin: Thước đo này sử dụng rộng rãi trong thế giới cơ
sở dữ liệu văn bản, nó được tính bằng công thức sau:
vec
r j FreqT j
vec
1
2 1
2
1
) , ( )
(
)) , ( )
( (
(6)
Ở đây, chúng ta tính toán kết quả của vectơ gắn với yêu cầu Q và vănbản di Trong trường hợp xấu nhất, chúng ta sẽ yêu cầu O(N) sự so sánh, mộtcho mỗi tài liệu và mỗi sự so sánh sẽ mất thời gian là O(M) Vì vậy, tổngcộng chúng ta sẽ mất một khoảng thời gian là O(MN) để tìm ra giải pháptối ưu nhất
Trang 302.3 Chỉ dẫn ngữ nghĩa tiềm ẩn (Latent Sematic Indexing LSI)
Ý nghĩa cơ bản của chỉ dẫn ngữ tiềm ẩn (LSI) là đưa các văn bảntương tự có tần suất các từ giống nhau Tuy nhiên, trong trường hợp tổngquát, với một số cơ sở dữ liệu văn bản các văn bản M và số các term N là rấtlớn Nếu chúng ta muốn lập bảng chỉ mục cho các tài liệu văn bản thì việccon số các từ là rất lớn, khi đó bảng tần suất với số phần tử là rất lớn Thaotác trên những ma trận kích thước là rất phức tạp Để làm giảm độ phức tạp
ta dùng kỹ thuật phân tích giá trị riêng (singular value decompsition SVD)
để làm giảm kích thước của ma trận tần suất Chỉ dẫn ngữ nghĩa tiềm ẩn(LSI) xem mỗi tài liệu là một véctơ có độ dài k, bởi vì sau khi thực hiệnphân tích thành giá trị riêng chỉ giữ lại k hàng biểu diễn ý nghĩa quan trọng.Một trong những phương pháp thành công nhất cho dữ liệu văn bản lớn chỉđược số hoá Kỹ thuật này cho phép chúng ta loại bỏ những cụm từ và nhómcụm từ mà chúng ta phân biệt được giữa những tài liệu khác nhau Với lượngcác văn bản lớn để tạo bảng chỉ số từ các văn bản thì một trong những vấn đềcần giải quyết đó là bảng tần xuất có kích thước rất lớn Để giảm bớt kíchthước của bảng tần số nhỏ hơn nhiều so với (M x N)
Kỹ thuật chỉ dẫn ngữ nghĩa tiềm ẩn (LSI) gồm các bước sau đây: Tạo bảng SVD: Bằng tính toán thực hiện phép phân tích thành giá trị
riêng
(A, S, B) của FreqT Bởi phép phân tách FreqT vào trong 3 ma trận A, S, B
Đồng nhất với vectơ: Với mỗi tài liệu d đặt tương ứng với Vec (d) là
tập hợp của tất cả các term trong Freqt mà những hàm tương ứng không bịloại trừ trong ma trận đơn S
Tạo mục chỉ dẫn: Lưu trữ tập hợp của tất cả các Vec(d) đã được chỉ
số theo con số đã qui định của kỹ thuật
Trang 31Khi đã có một yêu cầu thu hồi tài liệu tương tự với một tài liệu truyvấn dQ thì chúng ta chỉ xem cấu trúc chỉ số được tạo ra ở trên và thử để tìmtài liệu d trong tập tài liệu lưu trữ sao cho vec (dQ) là bao đóng tới vec (d) vớikhoảng cách đã chọn trên vectơ.
Quá trình phân tích giá trị riêng (Singular Value Decomposion
1
1 1
2 2
2
1 1
1
1
n m n
n
m m
a a
a
a a
a
a a
a M
2
2 2
2 2
2
1 1
1
2
n m n
n
m m
b b
b
b b
b
b b
b M
2
1 1
2 2
2
1 1
1
2
cn m n
n
m m
b c
c
c c
c
c c
c M
i j
i r
i
Trang 32x
2
3 4
20 20 7
Cho một ma trận M với cấp (m x n), chuyển vị của M1, ký hiệu là MTđược thành lập bởi chuyển mỗi hàng của M thành cột tương ứng của MT.Sau đó, hàng đầu tiên của M được trở thành cột đầu tiên của MT, hàng thứhai của M trở thành cột thứ hai của MT và tiếp tục, cho tới khi thứ m hàngcủa M trở thành thứ m cột của MT Cuối cùng là một ma trận kích thước (n xm)
Xem mỗi vectơ là một ma trận có cấp (n x m) Hai vectơ x và y cùngcấp là trực giao thì xTy = o
Ví dụ: Giả sử có hai véc là trực giao (Orthogonal), bởi vì:
xTy = (1 2 - 1) x 0
20 5 10
Ma trận M là đã được nói là trực giao (Orthogonal) nếu (Mt x M) là
ma trận đơn vị (ma trận có các phần tử trên đường chéo là 1)
Với các từ khác nhau, M là một ma trận đường chéo Nếu nó là một
ma trận vuông và tất cả các phần tử trên đường chéo là 0 Cần lưu ý rằngkhông nhất thiết các phần tử trên đường chéo là khác 0 Chúng có thể bằng 0hoặc khác 0 Ví dụ, cả hai ma trận A và B ở dưới là ma trận đường chéo,nhưng C thì không phải
Trang 33Giả sử rằng FreqT là một bẳng tần số bất kỳ Một biểu biễn theo giá trịriêng của FreqT là một bộ ba (A, S, B) Trong đó:
Trang 34A là một ma trận giao (Orthogonal) cấp (M x M) thật vậy ATA=I.
B là một ma trận trực giao cấp (N x N) thật vậy BT B= I
S gọi là ma trận đường chéo gọi là ma trận đơn
Điều đó cho ta thấy rằng với ma trận bất kỳ có cấp (m x n), nó là cóthể tìm một phân tích một phân tích theo giá trị riêng (A, S, B) của M Nhưvậy, S là một ma trận chéo không tăng
Sau đây là các bước thực hiện:
1 Chọn một số nguyên k có giá trị thực sự nhỏ hơn R
2 Thay thế S bởi S* là một ma trận (k x k) như S*(i,j) = S(i,j) với 1 i,jk
3 Thay thế ma trận DT cấp (R x N) bởi ma trận D*T cấp (k x N) ở đây
D*T(i,j)=DT(i, j) nếu 1 i k và 1 j N
Trang 354 Thay thế ma trận T (M x M) bởi ma trận T*(M x K) một cách tươngtự.
Sau đây chúng ta xét ví dụ về làm giảm kích thước ma trận dùng kỹthuật LSI
Giả sử FreqT có SVD như sau:
a
a a a a a
a a a a a
5 4 3 3 1
2 5
2 4
2 3
2 2
2
1
1 5
1 4
1 3
1 2
0 08 0 0 0 0
0 0
12 0 0
0 0
0 16 0
0 0
0 0 20
b b
b
b
b b
b
b
b b
2 2
2
1
1 3
1 2
1
1
a a
a
a a
0 16 0
0 0 20
3 1
1 2 2
2 1
1 1 2
1 1
N N N
b b b
b b b
b b b
Trang 36Thông thường, kích thước của ma trận riêng trong trong vùng rộnghợp lý là 200 Với kích thước này nó có những ý nghĩa sau:
1 Kích thước của ma trận tần suất ban đầu là (M x N) ở đây M là sốterm của tất cả các văn bản và N số văn bản Có thể dễ dàng nhận thấy sốterm M (số term) có thể lên đến hàng triệu và N (số văn bản) có thể lên đếnhàng nghìn
2 Kích thước của 3 ma trận sau khi chúng ta giảm kích thước của matrận riêng(giả sử M=1.000.000 , R=200, N=10.000):
+ Kích thước của ma trận đầu tiên là M*R : 200 triệu đầu vào.+ Kích thước của ma trận thứ hai là R*R: 40.000 đầu vào( nhưng thực tế chỉ có 200 đầu vào cần lưu trữ, còn các đầu vào khác là bằng
Chú ý: Những phân tích trên có phần hơi đơn giản vào khả năng có
thể tin cậy của SVD Trong nhiều trường hợp, ma trận ban đầu (m x N) làmột ma trận thưa (sparse matrix) Nó sử dụng số đầu vào ít hơn so với M*N.Trong trường hợp này, việc dùng SVD có thể làm tăng số lượng vùng chứacần thiết
Trang 372.4.Tìm kiếm tài liệu dùng SVD
Giả sử với biểu diễn SVD, T*S*D*T của một bảng tần suất Trong phầnnày chúng ta xem xét sự biểu diễn này và trả lời câu hỏi Cho hai tài liệu d1
và d2 trong một tập hợp các tài liệu văn bản lưu trữ, chúng “tương tự” thếnào? Cho một câu truy vấn Q, trong n văn bản thì văn bản nào “tương tự”nhất với Q
Trước hết chúng ta dưa vào khái niệm phép nhân vô hướng của haivectơ (có cùng độ dài): Giả sử x = (x1, … ,Xw) và y = (y1, …, yw) là hai vectơ có
giá trị thực Thì tích vô hướng của x và y ký hiệu là xoy =
w
xy x
Độ tương tự của tài liệu
Giả sử di, và dj là hai tài liệu Sự tương tự giữa tài liệu này với nhauliên quan tới sự biểu diễn SVD, TS* x D*T của bảng tần số đã cho bởi tínhtoán vô hướng của hai cột trong ma trận D*T liên kết giữa hai tài liệu này
R Z
Z J T
Trong đó, ma trận đơn sau sự thu nhỏ kích thước là (R x R) Thay vì
so sánh thuật ngữ (term) M giữa 2 tài liệu này, chúng ta chỉ so sánh R
Tìm kiếm tài liệu tương tự với truy vấn Q
Giả sử Q là một truy vấn Xem Q như một tài liệu và tạo một vectơVecQ tương ứng của nó Cho dù có một sự khác nhau, chỉ R term quan trọng
là được xem xét chứ không phải tất cả N Khi tìm tài liệu tương tự với truyvấn Q Chúng ta phải đi tìm p tài liệu dQ(1), dQ(2), dQ(p)
Với tất cả 1 i j p sự tương tự giữa vecQ và dQ(i) là quan trọnghơn hoặc bình đẳng với sự tương tự giữa vecQ và dQ(i)
Với mục đích này một kỹ thuật cần thiết TV_Tree được trình bầytrong phần sau nhằm giải quyết vấn đề này
Trang 382.5 TV_Tree
Để truy nhập chỉ số dữ liệu trong không gian kích thước rất lớn phảiđạt hiệu quả cao Chúng ta đã biết một tài liệu d có thể được xem như mộtvectơ d có chiều dài K Với ma trận có giá trị riêng, sau khi phân tích, là cókích thước (k x k)
N.Center: Đại diện cho 1 điểm trong không gian k chiều
N.Radius: Một số thực lớn 0
N.ActiveDims: Đây là danh sách tối đa chiều Mỗt một chiều đó là 1
số giữa 1 và k Như vậy, N.ActiveDims là một tập con của (1,…,k)
Giả sử x và y là 2 điểm trong không gian k chiều và ActiveDims là tậphợp nào đó của chiều hoạt động Khoảng cách hoạt động (active_distance)giữa x và y, ký hiệu bởi act_dist (x,y) và được biểu diễn bằng công thức:
ActiveDims i
Trang 396 7 ( ) 8 13 ( ) 14 11 ( ) 4 5
Ví dụ: nếu ta có nút N với center của nó
N.Center = (10, 5, 11, 13, 7, 0, 0, 0, 0,…, 0)
N.ActiveDims = {t91, 2, 3, 4, 5} thì nút này đại diện cho vùnggồm tất cả các điểm x như sau:
2 5 2 4 2 3 2 2 2
Nếu N là một nút và chứa một tập các nút con N1, N2, Nr thì Region(N) = Region(Ni)
2.5.2.Chèn vào TV_Tree
Có 3 bước để chèn một vectơ vào cây TV
Trang 40Chọn nhánh (branch selection): Khi ta chèn một vectơ vào cây TV
mà ta dang ở nút Nj có con là Ni và 1 i NumChiild Ta cần xác định connào sẽ được chèn khoá vào
Tách (Split): Ta dùng phương pháp này khi ta ở nút và nó đã đầy
(full) và không thể chứa thêm vectơ v mà ta cần chèn Vấn đề này là nguyênnhân cần tách các nút
Thu gọn (Telescoping): Giả sử 1 nút N được tách vào 2 nút N1 và N2.Trong trường hợp này, có thể sản sinh vectơ trong Region(N1) chấp thuậnhoặc không chiều hoạt động của nút cha N Việc thêm một số chiều được gọi
là lồng động mà chúng ta se xem xét sau đây
Lựa chọn rẽ nhánh:
Xét tình huống khi có nút N với 1 j, =NumChild con ký hiệu là n1,
…,Numchilds Dùng ký hiệu expj(v) để biểu thị số lượng Ta phải mở rộng
Nj, Radius như vậy khoảng cách hoạt động của v từ Nj, Center nhỏ hơn hoặcbằng với (Nj (v), Radius +expj(v))
Expj(v) = 0 nếu act_dist(v, Rj, Center), Rj, Radius
Hoặc expj(V) = act_dist(v, R, Center) – Rj.Radius nếu act_dist(v,Rj,Center) > Rj.Radius
Đầu tiên ta chọn tất cả do vậy expj(v) giảm đến mức tối thiểu Cáchnói khác, nếu ta có nút N1,…, N5 với exp có giá trị 10, 40, 19, 10 ,32 tươngứng, hai ứng viên khả thi của việc chọn để chèn là N1 & N4 vì sự mở rộngcủa chúng là nhỏ nhất