Luận văn Xây dựng bộ ngữ liệu để đánh giá bằng tiếng Việt và chương trình trợ giúp đánh giá các hệ tìm kiếm thông tin

MỤC LỤC

MỞ ĐẦU . 10

Chương 1 : TỔNG QUAN . 13

1.1. Tổng quan vềtìm kiếm thông tin và hệthống tìm kiếm thông tin . 13

1.2. Tổng quan về đánh giá các hệthống tìm kiếm thông tin . 14

1.2.1. Lý do đểtiến hành đánh giá các hệthống tìm kiếm thông tin. 14

1.2.2. Các tiêu chuẩn được dùng để đánh giá . 15

1.2.3. Các mô hình đánh giá. 15

1.2.4. Các độ đo dùng để đánh giá . 18

1.2.5. Các phương pháp xây dựng bộngữliệu dùng để đánh giá . 18

1.2.6. Phương pháp xây dựng bộngữliệu được chọn . 20

1.2.7. Phương pháp đánh giá tầm quan trọng của kết quảtrảvề. 21

Chương 2 : CƠSỞLÝ THUYẾT. 22

2.1. Tìm kiếm thông tin và các hệthống tìm kiếm thông tin. 22

2.1.1. Lịch sửtìm kiếm thông tin và hệthống tìm kiếm thông tin . 22

2.1.2. Hệthống tìm kiếm thông tin. 25

2.1.2.1. Khái niệm vềhệthống tìm kiếm thông tin . 25

2.1.2.2. Cách thức hoạt động của hệthống tìm kiếm thông tin. 25

2.1.2.3. Các phương tiện tìm kiếm thông tin (Search Engines) . 27

2.1.3. So sánh tìm kiếm thông tin cổ điển và tìm kiếm thông tin trên Web . 29

2.1.4. So sánh tìm kiếm thông tin với tìm kiếm dữliệu . 30

2.1.5. Công thức trừu tượng trong tìm kiếm thông tin . 31

2.1.6. Các mô hình tìm kiếm thông tin cổ điển đểsắp thứtựliên quan . 32

2.1.6.1. Mô hình Đại sốBool . 32

2.1.6.2. Mô hình không gian vec-tơ. 33

2.2. Đánh giá các hệthống tìm kiếm thông tin . 36

2.2.1. Nền tảng đánh giá các hệthống tìm kiếm thông tin . 36

2.2.2. Mô hình đánh giá hướng hệthống . 37

2.2.2.1. TừCranfield đến TREC . 37

2.2.2.2. Thủtục đánh giá. 39

2.2.2.3. Đánh giá sựliên quan . 40

2.2.3. Thực hiện đo khảnăng tìm kiếm . 41

2.2.3.1. Các khái niệm về độ đo và liên quan . 41

2.2.3.2. Cách tính độbao phủ(R) và độchính xác (P). 42

2.2.3.3. Phương pháp tính độchính xác dựa trên 11 điểm chuẩn của độbao phủ44

2.2.3.3.1. Đồthịbiểu diễn hiệu suất thực thi hệthống tìm kiếm . 44

2.2.3.3.2. Đường cong độbao phủvà độchính xác RP. 45

2.2.3.3.3. Đường cong RP cho tập truy vấn . 47

2.2.3.3.4. Đánh giá hệthống tìm kiếm thông tin dựa vào đồthị. 48

2.2.3.4. Sựliên quan giữa câu hỏi và tài liệu . 49

2.2.3.4.1. Các độliên quan . 49

2.2.3.4.2. Các vấn đềvề độliên quan . 49

2.2.3.4.3. Đánh giá với độliên quan nhiều cấp độ. 51

2.2.3.4.4. Phương pháp đo độbao phủ(R), độchính xác (P) dựa trên độliên

quan nhiều cấp độ. 53

2.2.4. TREC và đánh giá theo chuẩn TREC . 54

2.2.4.1. TREC là gì? . 54

2.2.4.2. Cách xây dựng ngữliệu của TREC. 56

2.2.4.2.1. Xây dựng tập hợp các tài liệu. 57

2.2.4.2.2. Xây dựng các chủ đề. 57

2.2.4.2.3. Xây dựng bảng đánh giá liên quan chuẩn. 58

2.3. Ngữliệu tiếng Việt . 59

2.3.1. Từ. 60

2.3.1.1. Quan niệm vềtừ. 60

2.3.1.2. Quan niệm vềhình vị. 61

2.3.1.3. Khái niệm vềcấu tạo từ. 61

2.3.2. Ranh giới từ. 62

Chương 3 : THIẾT KẾVÀ CÀI ĐẶT . 63

3.1. Xây dựng bộngữliệu dùng để đánh giá . 63

3.1.1. Xây dựng kho ngữliệu bằng tiếng Việt . 63

3.1.1.1. Chuẩn hóa ngữliệu . 63

3.1.1.1.1. Chuẩn hóa dạng ngữliệu . 63

3.1.1.1.2. Định dạng ngữliệu . 64

3.1.2. Xây dựng tập câu hỏi bằng tiếng Việt. 64

3.1.3. Tách từtiếng Việt . 65

3.1.4. Xây dựng bảng đánh giá. 65

3.1.4.1. Hệthống SMART . 66

3.1.4.1.1. Giới thiệu hệthống SMART . 66

3.1.4.1.2. Quá trình tìm kiếm thông tin của SMART . 66

3.1.4.1.3. Mô hình vec-tơcủa hệthống SMART . 67

3.1.4.1.4. Sửdụng mô hình vec-tơ. 69

3.1.4.2. Hệthống Search4Vn . 73

3.1.4.3. Hệthống TERRIER . 73

3.1.4.4. Hệthống X-IOTA . 74

3.1.4.5. Hệthống LUCENE . 74

3.2. Phân tích hệthống đánh giá các hệthống tìm kiếm thông tin . 74

3.2.1. Mô tảhệthống trợgiúp đánh giá. 74

3.2.1.1. Phát biểu bài toán . 74

3.2.1.2. Mục tiêu . 75

3.2.1.3. Phạm vi . 75

3.2.1.4. Chức năng . 75

3.2.1.5. Tính khảdụng . 76

3.2.1.6. Hiệu suất . 76

3.2.1.7. Tính bảo mật . 76

3.2.2. Phân tích hệthống đánh giá. 76

3.2.2.1. Chức năng của hệthống . 76

3.2.2.2. Chức năng yêu cầu . 77

3.2.2.2.1. Chức năng đánh giá một hệthống IR . 77

3.2.2.2.2. Chức năng so sánh nhiều hệthống IR . 77

3.2.2.2.3. Sơ đồuse case . 77

3.2.2.2.4. Sơ đồtuần tựhoạt động usecase. 79

3.3. Thiết kếhệthống đánh giá . 86

3.3.1. Các chức năng của chương trình. 86

3.3.1.1. Chức năng “Định dạng cơsởdữliệu tài liệu” . 86

3.3.1.2. Chức năng “Định dạng kết quảtrảvề”. 86

3.3.1.3. Chức năng “Định dạng file index” . 87

3.3.1.4. Chức năng “Thực thi hệthống IR” . 87

3.3.1.5. Chức năng “Xửlý kết quảtrảvề” . 87

3.3.1.6. Chức năng ”Đánh giá một hệthống IR”. 87

3.3.1.7. Chức năng “Đánh giá nhiều hệthống IR” . 87

3.3.2. Thiết kếhệthống . 88

3.3.2.1. Sơ đồkiến trúc tổng thể. 88

3.3.2.1.1. Danh sách các lớp đối tượng . 88

3.3.2.1.2. Lớp đối tượng thểhiện. 88

3.3.2.1.3. Lớp đối tượng xửlý. 91

3.3.2.1.4. Lớp đối tượng lưu trữ. 99

3.3.2.2. Sơ đồkiến trúc tổng quát cho từng chức năng của chương trình . 99

3.3.2.2.1. Chức năng “Định dạng tài liệu” . 99

3.3.2.2.2. Chức năng “Định dạng câu hỏi”.100

3.3.2.2.3. Chức năng “Thực thi hệthống”.101

3.3.2.2.4. Chức năng “Định dạng kết quả”.102

3.3.2.2.5. Chức năng “Định dạng file index”.103

3.3.2.2.6. Chức năng “Đánh giá và hiện thi kết quả đánh giá” .103

3.3.2.2.7. Chức năng ”So sánh các hệthống IR đã được thực thi”.104

3.3.2.3. Thiết kếdữliệu – tổchức lưu trữ.105

3.3.2.3.1. Mô hình dữliệu .105

3.3.2.3.2. Sơ đồlogic dữliệu.107

3.3.2.4. Tốchức lưu trữdữliệu .110

3.3.2.4.1. System.110

3.3.2.4.2. Topic.112

3.3.2.4.3. Index_topic.113

3.3.2.4.4. Document .114

3.3.2.4.5. Index_Doc.115

3.3.2.4.6. relevant_TT .115

3.3.2.4.7. relevant_LT .116

3.3.2.4.8. evaluation .117

3.3.2.5. Thiết kếgiao diện.119

3.3.2.5.1. Sơ đồliên hệgiữa các màn hình.119

3.3.2.6. Thiết kếmàn hình.122

3.3.2.6.1. Màn hình chính (TH_Main).122

3.3.2.6.2. Màn hình định dạng tài liệu (TH_DDTaiLieu).122

3.3.2.6.3. Màn hình tạo thuộc tính cho tài liệu (TH_TTTaiLieu) .124

3.3.2.6.4. Màn hình định dạng câu hỏi (TH_DDCauHoi).125

3.3.2.6.5. Màn hình tạo thuộc tính cho câu hỏi (TH_TTCauHoi).127

3.3.2.6.6. Màn hình xửlý điều kiện đểthực thi hệthống IR.128

3.3.2.6.7. Màn hình thực thi hệthống (TH_ThucThiHT).129

3.3.2.6.8. Màn hình định dạng kết quả(TH_DDKetQua).130

3.3.2.6.9. Màn hình định dạng thông tin index (TH_DDIndex).131

3.3.2.6.10. Màn hình đánh giá hệthống (TH_KqDanhGia).133

3.3.2.6.11. Màn hình xem đồthịcủa hệthống .136

3.3.2.6.12. Màn hình xem chi tiết (TH_XemChiTiet).136

3.3.2.6.13. Màn hình so sánh hệthống (TH_SoSanhHT).138

3.3.2.7. Thiết kếhệthống lớp đối tượng.139

3.3.2.7.1. Các lớp đối tượng xửlý.139

3.3.2.7.2. Các lớp đối tượng lưu trữ.169

Chương 4 : KẾT QUẢ ĐÁNH GIÁ . 171

4.1. Ngưỡng đánh giá .171

4.2. Đánh giá hệthống tìm kiếm thông tin search4VN .171

4.3. So sánh hệthống tìm kiếm search4VN và hệthống Lucene.177

4.4. Nhận xét chương trình hỗtrợ đánh giá hệthống tìm kiếm thông tin.179

4.4.1. Ưu điểm.179

4.4.2. Khuyết điểm .179

Chương 5 : KẾT LUẬN . 181

Chương 6 : HƯỚNG PHÁT TRIỂN. 182

PHỤLỤC . 183

Tài liệu tham khảo. 186

pdf187 trang | Chia sẻ: netpro | Lượt xem: 1652 | Lượt tải: 3download
Bạn đang xem trước 20 trang tài liệu Luận văn Xây dựng bộ ngữ liệu để đánh giá bằng tiếng Việt và chương trình trợ giúp đánh giá các hệ tìm kiếm thông tin, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
là phần không thể thiếu. Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 60 Khác với tiếng Anh, Pháp (thường được dùng trong các hệ thống tìm kiếm thống tin phổ biến), tiếng Việt có những đặc thù riêng, đặc biệt trong việc xác định từ tiếng Việt. 2.3.1. Từ 2.3.1.1. Quan niệm về từ Theo [10 ], thì tổng hợp từ các sách ngôn ngữ học đại cương, sách ngữ pháp và sách về từ vựng học, chúng tôi xin trình bày lại một số định nghĩa điển hình về từ như sau: ♦ Từ là một hình thái tự do nhỏ nhất. ♦ Từ là đơn vị ngôn ngữ có tính hai mặt : âm và nghĩa. Từ có khả năng độc lập về cú pháp khi sử dụng trong lời. ♦ Từ là đơn vị nhỏ nhất có nghĩa của ngôn ngữ, được vận dụng độc lập, tái hiện tự do trong lời nói để xây dựng nên câu”. Đây cũng chính là định nghĩa mà trong ngôn ngữ học đại cương hay sử dụng. Từ các định nghĩa trên, ta rút ra những nét đặc trưng chính của từ như sau: Về hình thức : từ phải là một khối về cấu tạo (mặt chính tả, ngữ âm) Về nội dung : từ phải có ý nghĩa hoàn chỉnh. Về khả năng : từ có khả năng hoạt động tự do và độc lập về cú pháp. Ngoài ra, ta còn gặp một số thuật ngữ khác trong ngôn ngữ học đại cương mà S.E.Jakhontov [ 11] đưa ra để nhận diện từ, như: 1. Từ ngữ âm: đó là những đơn vị được thống nhất với hiện tượng ngữ âm nào đó. Đối với Việt ngữ, đó chính là những âm tiết, hay còn gọi là “tiếng”, “tiếng một 2. Từ chính tả: đó là những khoảng cách giữa 2 chỗ trên văn tự; tức là những đơn vị được viết liền thành khối, đối với tiếng Việt, đó chính là “chữ” 3. Từ hoàn chỉnh: đó là những cấu trúc ổn định, không thể tách rời hay hoán vị các thành tố của chúng. Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 61 4. Từ từ điển học: đó là đơn vị mà căn cứ vào đặc điểm ý nghĩa của nó phải xếp riêng trong từ điển. 5. Từ biến tố: đó là những đơn vị luôn luôn gồm 2 phần: gốc từ (biểu thị ý nghĩa đối tượng) và phụ tố (biểu thị mối liên hệ với các từ khác trong câu). Đây còn gọi là từ ngữ pháp. Về phương diện xử lý tự động bằng máy tính, thì từ chính tả và từ từ điển là hai loại được nhận diện dễ nhất và được sử dụng nhiều nhất trong tài liệu này. 2.3.1.2. Quan niệm về hình vị Trong ngữ pháp truyền thống thì hình vị được xem là thành tố trực tiếp để tạo nên từ. Do đó, hình vị được xem như là đơn vị tế bào gốc, đơn vị tế bào của ngữ pháp, và còn được gọi là từ tố. Chính vì vậy, mà việc nhận diện hình vị phải là bước đi đầu tiên trong việc nhận diện từ. Để nhận diện hình vị, Jakhontov đưa ra cách phân xuất câu đến mức tối giản, gọi là từ câu, hay hình vị; ngoài ra, giới ngôn ngữ học hay sử dụng phương pháp lập hình vuông Greenberg để đối sánh. Ví dụ: đối sánh “có lý” và “có ý”, ta tách được thành 3 hình vị: “có”, “lý” và “ý”. Trước hết ta hãy xem lại quan niệm về hình vị (morpheme) trong ngôn ngữ học đại cương: theo Baudouin de Courtenay thì hình vị là bộ phận nhỏ nhất có nghĩa của từ, còn theo Bloomfield thì hình vị là đơn vị ngôn ngữ nhỏ nhất có nghĩa. Nhưng quan niệm thường thấy trong ngôn ngữ học đại cương là: “hình vị là đơn vị ngôn ngữ nhỏ nhất có nghĩa và/hoặc có giá trị (chức năng) về mặt ngữ pháp”. “Từ” được cấu tạo bằng một hình vị hay nhiều hình vị kết hợp với nhau theo những nguyên tắc nhất định. Ví dụ: anti-virus (chống vi rút). Hình vị bao gồm hai loại: hình vị tự do (như: work, home,…) và hình vị hạn chế (như: -ed, -less,…). Trong hình vị hạn chế gồm hình vị biến tố (như: work-ed) và hình vị phái sinh (như: home-less). 2.3.1.3. Khái niệm về cấu tạo từ Từ được cấu tạo nhờ các hình vị (morpheme). Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 62 Ví dụ: anti + poison = antipoison. Hình vị là đơn vị ngôn ngữ nhỏ nhất có nghĩa và/hoặc có giá trị (chức năng) về mặt ngữ pháp. Hình vị gồm các loại : - Hình vị tự do : tự nó xuất hiện với tư cách là một từ độc lập, ví dụ : house, man, black, nhà, người, đen... - Hình vị hạn chế : xuất hiện trong tư thế đi kèm, phụ thuộc vào hình vị khác, nó bao gồm các hình vị biến tố và hình vị phát sinh. Ví dụ : -ing, -ed, -s, -ness, ... Để cấu tạo từ, người ta dùng các phương thức : - Dùng một hình vị. - Tổ hợp 2 hay nhiều hình vị. - Thêm phụ tố (tiền, trung, hậu tố) vào. - Láy. 2.3.2. Ranh giới từ Nhận diện ranh giới từ (word boundary identification) hay còn gọi là phân đoạn từ (word segmentation) là một công đoạn tiên quyết đối với hầu hết các hệ xử lý ngôn ngữ tự nhiên. Đối với các ngôn ngữ biến hình (tiếng Anh, tiếng Nga,...) thì ranh giới từ được xác định chủ yếu bằng khoảng trắng hay dấu câu, còn đối với các ngôn ngữ đơn lập (trong đó có tiếng Việt) thì khoảng trắng không thể là tiêu chí để nhận diện từ. Muốn xác định được ranh giới từ trong các ngôn ngữ này, chúng ta phải dựa vào các thông tin ở mức cao hơn, như hình thái, từ pháp, cú pháp, hoặc ngữ nghĩa và thậm chí cả ngữ dụng. Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 63 Chương 3 : THIẾT KẾ VÀ CÀI ĐẶT 3.1. Xây dựng bộ ngữ liệu dùng để đánh giá Như chúng tôi đã trình bày trong các phần trên, chúng tôi xây dựng bộ ngữ liệu dùng để đánh giá theo tiêu chuẩn của TREC. Việc xây dựng gồm 3 phần sau : 3.1.1. Xây dựng kho ngữ liệu bằng tiếng Việt Chúng tôi xây dựng kho ngữ liệu dùng để đánh giá bằng cách thu thập tài liệu từ các báo điện tử, chẳng hạn : www.tuoitre.com.vn, www.thanhnien.com.vn, www.vnexpress.net . Các tài liệu này bao gồm rất nhiều lĩnh vực khác nhau gồm có khoa học kỹ thuật, kinh tế, giáo dục, văn hóa, thời sự … Kho ngữ liệu của chúng tôi cho đến nay đã có gần 15.000 tài liệu, với kích thước lưu trữ là 34 MB. Tuy nhiên, các tài liệu này ở dưới dạng thô, chưa được chuẩn hóa nên bước quan trọng nhất là chuẩn hóa ngữ liệu. 3.1.1.1. Chuẩn hóa ngữ liệu Chuẩn hóa ngữ liệu là chuẩn hoá thành một dạng, một tiêu chuẩn duy nhất. Việc chuẩn hoá ngữ liệu gồm các nhiệm vụ sau: 3.1.1.1.1. Chuẩn hóa dạng ngữ liệu Chuẩn hoá dạng ký tự: đưa về đúng dạng điện tử, định dạng tập tin (từ các định dạng tập tin khác nhau sẽ chuyển về txt, loại bỏ những thứ không phải là văn bản), đúng mã ký tự (chuyển về mã Unicode). Chuẩn hoá tập tin: mỗi tập tin ngữ liệu sẽ gồm một số câu (khoảng 2000 từ), mỗi câu có thể nằm trên một dòng, hết câu, ngắt xuống dòng cứng sau dấu chấm câu. Mỗi đầu câu, sẽ có một mã số định danh để cho biết thông tin về văn bản, như: ngôn ngữ (Anh, Việt, Pháp, Hoa, …), lĩnh vực của tập tin (văn học, tin học, kinh tế, thể thao,…), tiểu loại (như: trong văn học có truyện ngắn, tiểu thuyết, Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 64 thơ, ký, …) và thông tin về số hiệu câu (câu thứ mấy trong tập tin), số hiệu văn bản (văn bản thứ mấy trong tiểu loại/lĩnh vực đang xét). Chuẩn hoá chính tả: xem xét biến thể hình thái chính tả, như: quy tắc bỏ dấu thanh (với tiếng Việt: bỏ dấu trên nguyên âm chính theo nguyên tắc thẩm mỹ hay bỏ trên nguyên âm chính theo nguyên tắc ngữ âm học), các biến thể chữ viết, như: cách viết i/y trong tiếng Việt “hoá lý” và “hóa lí”. 3.1.1.1.2. Định dạng ngữ liệu Sau khi thu thập ngữ liệu và chuẩn hóa ngữ liệu về dạng văn bản, chúng tôi chuyển tất cả ngữ liệu sang định dạng XML với một thẻ định danh như DOCNO của TREC. Thẻ định danh của chúng tôi là DOCID. Sở dĩ chúng tôi chuyển sang định dạng XML là vì như thế chúng tôi có thể dễ dàng chuyển đổi định dạng để tìm kiếm cho tất cả các hệ thống tìm kiếm khác nhau. Định dạng ngữ liệu của chúng tôi có trong phần phụ lục. Chúng tôi có chương trình cho phép chuyển đổi định dạng từ text sang XML giống tài liệu của chúng tôi. Chương trình này rất hữu ích trong việc tạo thêm tài liệu cho kho ngữ liệu của chúng tôi. 3.1.2. Xây dựng tập câu hỏi bằng tiếng Việt Tập câu hỏi được xây dựng bằng cách đọc lướt qua một số tài liệu và tạo một tập X câu hỏi. Sau đó, chúng tôi tạo định dạng cho câu hỏi theo tiêu chuẩn của TREC, tức câu hỏi phải có phần định danh, tiêu đề, mô tả và tường thuật. Câu hỏi cũng được định dạng ở XML. Tiếp theo, chúng tôi chạy tập X các câu hỏi cho các hệ thống tìm kiếm. Rồi xem lại kết quả tìm kiếm của các hệ thống để lựa chọn những câu hỏi nào là tối ưu nhất để tạo tập Y câu hỏi chính thức. Vì vậy Y luôn nhỏ hơn hay bằng X. ™ Cả câu hỏi và ngữ liệu tiếng Việt đều phải được tách từ trong trường hợp đánh giá các hệ thống tìm kiếm tiếng Anh cho tiếng Việt vì hệ thống tiếng Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 65 Anh không thể nào được dùng để đánh giá hệ thống tiếng Việt. Do đó, chúng tôi cũng xây dựng một chương trình tách từ cho ngữ liệu tiếng Việt. 3.1.3. Tách từ tiếng Việt Để nhận diện ranh giới từ, chúng tôi đã sử dụng một số hình như: MM Maximum Matching: forward / backward ; LRMM: Left Right, RLMM: Right Left và phương pháp MMSEG : Maximum Matching Segmentation. Theo phương pháp LRMM để phân đoạn từ tiếng Việt trong một ngữ/câu, ta đi từ trái sang phải và chọn từ có nhiều âm tiết nhất mà có mặt trong từ điển, rồi cứ tiếp tục cho từ kế tiếp cho đến hết câu. Với cách này, ta dễ dàng tách được chính xác các ngữ/câu như: “hợp tác xã | mua bán”; “thành lập | nước | Việt Nam | dân chủ | cộng hoà”,…. Phương pháp RLMM thì ngược lại, trong một câu/ngữ, ta đi từ phải sang trái và chọn từ có nhiều âm tiết nhất mà có mặt trong từ điển, rồi cứ tiếp tục cho từ kế tiếp cho đến hết câu. Phương pháp MMSEG là sự kết hợp của cả hai phương pháp LRMM và RLMM, do đó MMSEG cho kết quả tốt hơn hai phương pháp trên. 3.1.4. Xây dựng bảng đánh giá Chúng tôi xây dựng bảng đánh giá theo phương pháp Pooling. Chúng tôi chạy các hệ thống khác nhau để đánh giá. Chúng tôi đã tìm hiểu các hệ thống sau: Hệ thống SMART [12 ] của Đại học Cornell phát triển, một hệ thống kinh điển về mô hình vec-tơ . Hệ thống XIOTA [ 13], hệ thống cho phép định dạng ngữ liệu theo XML, được phát triển tại Pháp. Hệ thống Terrier [14 ] của Đại học Glasgow, Scot-len. Hệ thống này được dùng để chạy các track Tetra, Robust của TREC. Hệ thống Lucene [15 ], do nhóm Jakarta Apache phát triển, đây là một search engine được dùng phổ biến. Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 66 Hệ thống Tìm kiếm Tiếng Việt hay Search4Vn của một nhóm làm luận văn khóa 2001 phát triển để tìm kiếm thông tin tiếng Việt. Tuy nhiên, đa số các hệ thống làm cho tiếng Anh nên mã hóa của các hệ thống này không hỗ trợ tiếng Việt (mặc dù tiếng Việt được mã hóa bằng mã Unicode), vì vậy muốn thực thi các hệ thống tìm kiếm cho tiếng Việt bắt buộc chúng tôi phải thực hiện chuyển mã cho chương trình tìm kiếm. Các hệ thống này được viết trên rất nhiều ngôn ngữ khác nhau, gồm có ngôn ngữ C trên Linux, ngôn ngữ BASH Shell, ngôn ngữ Java, JSP, ngôn ngữ DOT NET; và tài liệu cho các thành phần mã nguồn không đầy đủ nên chúng tôi khó có thể chỉnh sửa hết tất cả các hệ thống. Chúng tôi đã làm hết khả năng có thể để đọc mã nguồn và tìm cách sửa mã cho hệ thống tìm kiếm nhưng chúng tôi chỉ có thể chạy được vài hệ thống. Sau khi chạy các hệ thống, chúng tôi giao các bảng liên quan lại thành bảng liên quan chuẩn. Sau đó, chúng tôi đọc lại và tạo bảng đánh giá liên quan chuẩn hòan chỉnh. 3.1.4.1. Hệ thống SMART 3.1.4.1.1. Giới thiệu hệ thống SMART SMART là một hệ thống tìm kiếm thông tin dựa trên mô hình vector được đề xuất bởi Salton vào cuối những năm 60. Mục đích chính của SMART là cung cấp một nền tảng cho việc xây dựng tìm kiếm thông tin, lập chỉ mục, đánh giá tìm kiếm thông tin. Mục đích thứ hai là cung cấp cho người dùng thông tin cuối cùng vừa nhỏ thích hợp với người dùng. SMART có những ưu điểm và khuyết điểm của nó.SMART được thiết kế rất linh hoạt, nó cho phép thêm chỉnh sửa các đoạn mã và có thể chạy trên bất kỳ hệ thống UNIX với yêu cầu về kích thước bộ nhớ nhỏ. 3.1.4.1.2. Quá trình tìm kiếm thông tin của SMART SMART thực hiện qua 4 thủ tục: Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 67 1. lập chỉ mục tự động : trích dẫn và xác định các yếu tố thông tin là từ hay cụm từ (term) của tài liệu và câu truy vấn. 2. Phân loại tài liệu: tập hợp các tài liệu có liên quan với nhau để tạo thành những lớp tài liệu có cùng chủ đề, làm như vậy để hệ thống có thể tìm được nhiều tài liệu có chủ đề tương tự đồng thời cũng làm tăng tốc độ xử lý của hệ thống (xin xem giải thích phần dưới). 3. Xác định tài liệu được trả về bằng cách tính độ tương tự (similarity) giữa các yếu tố thông tin được lưu trữ và các yếu tố thông tin vừa được phân tích từ câu truy vấn mới nhập vào, sắp xép kết quả trả về theo thứ tự giảm dần độ tương tự. Quá trình này , hệ thống SMART dùng mô hình vec-tơ. 4. Cải tiến câu lệnh tìm kiếm (câu truy vấn) nhằm xây dựng lại câu truy vấn dựa vào những thông tin được lấy từ kết quả của quá trình phục hồi truy vấn trước. 3.1.4.1.3. Mô hình vec-tơ của hệ thống SMART Trong mô hình này, mỗi tài liệu được đặc trưng bởi 1 vector của tập các từ ngữ (term). Tập các từ ngữ này được xác định bởi quá trình lập chỉ mục của hệ thống. Có nghĩa là với mỗi tài liệu cụ thể DOCi sẽ được xác định bởi tập từ ngữ TERM1 ,TERM2,…..,TERMt (Từ ngữ ở đây có thể gọi 1 cách rộng hơn là yếu tố thông tin vì nó có thể là một từ, ngữ được trích dẫn từ các tài liệu hay một từ , cụm từ lấy từ các từ điển thuật ngữ đồng nghĩa). Một tập các tài liệu DOC1, DOC2, …., DOCn có thể được biểu diễn thành 1 ma trận trong đó mỗi dòng của ma trận là 1 tài liệu, mỗi cột biểu diễn 1 yếu tố thông tin của các atì liệu. TERM1 TERM2 … TERMt DOC1 TERM11 TERM12 … TERM1t DOC2 TERM21 TERM22 … TERM2t …. DOC3 TERM31 TERM32 … TERM3t Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 68 TERMij gọi là trọng số thông tin của yếu tố thông tin TEMj trong tài liệu DOCi , nó chính là tần số xuất hiện của TERMj trong tài liệu DOCi. TERMij=0 có nghĩa là trong tài liệu DOCi không tồn tại yếu tố thông tin TERMj => Tương tự như vậy các câu truy vấn khi được đưa vào hệ thống cũng sẽ được biểu diễn thành vector có t thành phần TERM có sẵn của tài liệu. Nhưng giá trị của các TERMij không phải là trọng số mà có giá trị trị nhị phân. - Khi TERMij=0 : từ (ngữ) của câu truy vấn không có trong tập yếu tố thông tin tài liệu - TERMij=1 : từ (ngữ) của câu truy vấn có trong tập yếu tố thông tin tài liệu ƒ Biểu diễn hình học của tập vec-tơ tài liệu: Tập tài liệu gồm n DOC : DOC1, DOC2,…,DOCn và t yếu tố thông tin TERM1, TERM2, …, TERMt. Theo mô hình vector : một tài liệu biểu diễn thành 1 vector trên không gian t chiều . Vậy ta có n vector tài liệu DOC1 (TERM11,TERM12,…..,TERM1t) DOC2 (TERM21,TERM22,…..,TERM2t) …. DOCn (TERMn1,TERMn2,…..,TERMnt) Lần lượt tính cos của góc tạo bởi 2 vector tài liệu DOCi,DOCj theo cộng thức sau: ∑ COS (DOCi, DOCj)= √ ∑ √ ∑ Ta thấy góc α tạo bởi 2 vector DOCi , DOCj càng nhỏ thì vector DOCi và DOCj càng gần nhau hay trọng số của các yếu tố thông tin so với tài liệu DOCi, DOCj gần bằng nhau Ù tài liệu DOCi và DOCj có cùng chủ đề Để thể hiện ý nghĩa trên ta có khái niệm độ tương tự (TERMik * TERMjk) k=1 t (TERMik)^2 k=1 t (TERMjk)^2 k=1 t Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 69 Ö Độ tương tự của các tài liệu chính là cos của góc tạo bởi 2 vector DOCi, DOCj Ö Đây chính là cách xác định phân loại tài liệu của hệ thống Một cách tương tự ta có thể định nghĩa độ tương tự của tài liệu và câu truy vấn: Xét 1 câu truy vấn Qj cụ thể , Qj có thể được biểu diễn dưới dạng vector như sau: Qj (QTERMj1, QTERMj2,…,QTERMjt) Vector Qj cũng được biểu diễn trong không gian t chiều như tập tài liệu Độ tương tự của câu truy vấn so với tài liệu DOCi chính là cos của góc α tạo bởi 2 vector Qj và DOCi . COS (DOCi, Qj) = ∑ √ ∑ √ ∑ Do giá trị của các vector Qj và DOCi luôn là 1 con số lớn hơn bằng 0, nên cosα >=0 => α là góc trong khoảng [0, ∏ ] . Do hàm số cos trong khoảng [ 0,∏ ] là hàm số nghịch biến nên cosα càng lớn thì α càng nhỏ có nghĩa là nếu 2 vector càng gần nhau thì độ tương tự càng lớn hay nội dung của tài liệu DOCi liên quan nhiều đến yêu cầu của câu truy vấn Qj. 3.1.4.1.4. Sử dụng mô hình vec-tơ Phân loại tài liệu: Dựa vào việc tính độ tương tự giữa các vector tài liệu ta có thể phân loại tài liệu, những tài liệu có độ tương tự gần nhau sẽ xếp vào 1 lớp • Mục đích của việc phân tài liệu: Là để tạo ra 1 tập tin cluster document. Dưới đây là ví dụ của tập tin cluster: (TERMik * QTERMjk) k=1 t (TERMik)^2 k=1 t (QTERMjk)^2 k=1 t Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 70 Mỗi 1 điểm x ký hiệu cho 1 vector tài liệu, khoảng cách giữa 2 điểm x tỷ lệ nghịch với độ tương tự (khoảng cách giữa 2 điểm x càng lớn có nghĩa là độ tương tự giữa 2 tài liệu càng nhỏ và ngược lại). Mỗi đường tròn đại diện cho lớp tài liệu. Để đặc trưng cho lớp đó người ta định nghĩa thêm 1 vector đặc biệt gọi là vector centroid , nó cũng giống như trọng tâm của tập các điểm x , được thể hiện trên hình vẽ là ‘o’. • Cách tính vector centroid Giả sử có m tài liệu thuộc lớp p, vector centroid của lớp p được biểu diễn như sau: CENTROIDp = CTERMp1 , CTERMp2,….,CTERMpt Trong đó : CTERMpk = ∑ TERMik với TERMik là trọng số của term k của tài liệu i trong lớp p • Mục đích của việc đưa ra vector centroid: Đầu tiên ,mỗi câu truy vấn sẽ được so sánh với các vector centroid để tính độ tương tự giữa vector truy vấn và vector centroid thay vì phải tính với tất cả các vector tài liệu . Nếu độ tương tự đó đủ lớn (có nghĩa là lớp tài liệu đó thích 1 m i=1 m x x x x x o x x x x o x x x o o x o o x x x Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 71 hợp) thì ta tiếp tục so sánh vector truy vấn với các vector tài liệu trong lớp mà vector centroid đó đại diện . Tài liệu nào có độ tương tự lớn sẽ được phục hồi Giả sử có n tài liệu trong tập cơ sở dữ liệu tài liệu được phân chia thành x lớp (nên có x vector centroid) , mỗi lớp có khả năng chứa n/x tài liệu Số lần so sánh giữa câu truy vấn và vector centroid là x lần. Sau khi đã so sánh x lần với các vector centroid ta chọn được 1 vector centroid có độ tương tự lớn nhất và tiến hành so sánh với n/x tài liệu trong lớp có vector centroid đó đại diện Ö Tổng số lần so sánh là x + n/x (*) Nếu không thiết lập tập tin cluster (tức là không định nghĩa vector centroid ) tổng số lần so sánh của 1 câu truy vấn với n tập tài liệu là n lần Áp dụng bất đẳng thức Cauchy cho biểu thức (*): x + ≥ 2√ n Dấu “=” xảy ra khi x = Ù x = √ n Vậy số lần so sánh ít nhất sẽ là 2√ n với số cluster trong tập tài liệu là x = √ n Đối với tập tài liệu lớn với các tài liệu có nhiều chủ đề khác nhau không đồng nhất thì số lượng cluster (lớp) sẽ lớn, lúc đó số lần so sánh giữa vector truy vấn và các vector centroid sẽ lớn . Để giải quyết trường hợp này , một lần nữa ta lại áp dụng phương pháp tính độ tương tự giữa các vector centroid như cách tính độ tương tự giữa các tài liệu để phân lớp cho tập vector centroid. Nói tóm lại việc tính độ tương tự giữa các tài liệu để phân lớp tài liệu tạo ra 1 vector đại diện cho lớp đó gọi là vector centroid , tương tự việc phân lớp vector centroid sẽ tạo ra 1 vector đại diện cho lớp vector centroid đó gọi là vector supercentroid và lớp đó được gọi là superclass Do đó việc tìm kiếm tài liệu sẽ được thực hiện qua 3 bước: i. Đầu tiên so sánh vector truy vấn với các vector supercentroid thuộc các superclass x n x n Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 72 ii. Sau đó so sánh câu truy vấn với các vector centroid của các superclass thoả ở bước 1 iii. Cuối cùng so sánh câu truy vấn với các vector tài liệu của các lớp mà vector centroid thoả ở bước 2 • Một ví dụ về cấu trúc của tập tin cluster: Việc tổ chức các file cluster phải thích hợp với sự phát triển của tập cơ sở dữ liệu tài liệu, bởi vì 1 tài liệu mới được thêm vào cơ sở dữ liệu cũng sẽ được thực hiện so sánh tương tự như đối với câu truy vấn. Các item của tài liệu sẽ được so sánh với các supercentroid và các centroid đã có , kết quả là tài liệu sẽ được thêm vào những cluster thích hợp mà độ tương tự giữa các cluster đủ lớn. Sau đó hệ thống phải tiến hành tính lại các vector supercentroid và centroid của những cluster vừa mới có thêm tài liệu mới SUPERCENTROIDk SCTERMk1 , SCTERMk2 , …… , SCTERMkt CENTROIDPOINTER i CENTROIDPOINTER j …. CENTROIDi CTERMi1 , CTERMi2 , …… , CTERMit DOCPOINTER i1 DOCPOINTER i2 ….. CENTROIDj CTERMj1 , CTERMj2 , …… , CTERMjt DOCPOINTER j1 DOCPOINTER j2 …. DOCi1 TERMi11 , TERMi12 , …… , TERMi1t DOCi2 TERMi21 , TERMi22 , …… , TERMi22 DOCj1 TERMj11 , TERMj12 , …… , TERMj1t DOCj2 TERMj21 , TERMj22 , …… , TERMj22 …… …… Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 73 Xác định tài liệu thích hợp trả về Cải tiến câu truy vấn: Thủ tục cải tiến câu truy vấn của hệ thống SMART còn được gọi là quá trình gửi thông tin phản hồi về tính liên quan của tài liệu (Relevance feedback) việc đánh giá độ liên quan mà người sử dụng cung cấp cho hệ thống dựa trên những tài liệu được phục hồi của câu truy vấn trước đó, để xây dựng lại mô hình vector truy vấn mới. Mục đích của quá trình này là xây dựng câu truy vấn mới có hiệu quả thực thi tốt hơn Thủ tục cải tiến câu truy vấn được thực thi như sau: i. Các từ ngữ xuất hiện trong tài liệu được người dùng xác định là có liên quan sẽ được thêm vào mô hình vector truy vấn ban đầu hoặc trọng số của những từ ngữ này (term) sẽ được tăng lên. ii. Các từ ngữ xuất hiện trong tài liệu được người dùng xác định là không có liên quan sẽ được xoá ra khỏi câu truy vấn ban đầu hoặc trọng số của nó sẽ được giảm lên.Thủ tục cải tiến câu truy vấn sẽ được thực thi một cách tự động dựa vào thông tin phản hồi từ phía người dùng. Quá trình này có thể được tiến hành nhiều lần để tìm ra câu truy vấn tối ưu nhất 3.1.4.2. Hệ thống Search4Vn Hệ thống này cũng sử dụng mô hình không gian vectơ để tìm kiếm. Mục đích hệ thống này là để tìm kiếm thông tin tiếng Việt. Mô hình tách từ được sử dụng là Longest Matching. Hệ thống được viết bằng ngôn ngữ C#. 3.1.4.3. Hệ thống TERRIER Hệ thống này cũng sử dụng mô hình không gian vectơ để tìm kiếm. Kết quả tìm kiếm có TF và IDF để các chuyên gia có thể biết hệ thống tìm theo mô hình đó tốt hay không. Tuy nhiên, hệ thống này chưa hỗ trợ Unicode,và các lớp được viết cho Unicode lại thuộc một thư viện chuẩn(thư viện antlr của Java) nên việc chuyển mã rất khó khăn. Muốn chuyển mã bắt buộc phải thay đổi cách viết Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 74 chương trình của hệ thống. Cho đến nay, chúng tôi chưa thể chuyển mã để tìm kiếm tiếng Việt. Hệ thống này được viết bằng Java và JSP nên độc lập môi trường. 3.1.4.4. Hệ thống X-IOTA Hệ thống XIOTA hay hệ thống IOTA là một khung làm việc XML mở cho thử nghiệm tìm kiếm thông tin. Vì sử dụng XML nên XIOTA rất linh hoạt trong xử lý ngữ liệu, hỗ trợ cài đặt nhanh nhiều thành phần thử nghiệm khác nhau mà dùng các xử lý ngôn ngữ tự nhiên tự động. Hệ thống XIOTA cũng tìm kiếm theo mô hình vec-tơ. Hệ thống X-IOTA được viết bằng C++ chạy trên môi trường Linux. Tuy nhiên, hệ thống này đang trong giai đoạn thử nghiệm nên thành phần mã nguồn chưa ổn định để tìm kiếm thông tin. 3.1.4.5. Hệ thống LUCENE Hệ thống này cũng sử dụng mô hình không gian vec-tơ để tìm kiếm. Hệ thống được viết bằng ngôn ngữ Java. Lucene cũng là một hệ thống mã nguồn mở, là một công cụ tìm kiếm mà người sử dụng có thể phát triển giao diện tìm kiếm theo ý riêng của mình. Chúng tôi cũng đã thêm giao diện và sửa mã của Lucene để có thể tìm kiếm được tiếng Việt. 3.2. Phân tích hệ thống đánh giá các hệ thống tìm kiếm thông tin 3.2.1. Mô tả hệ thống trợ giúp đánh giá 3.2.1.1. Phát biểu bài toán Như chúng tôi đã đề cập, chúng tôi thực hiện đánh giá dựa trên mô hình hướng hệ thống để đánh giá kết quả trả về của các hệ thống tìm kiếm thông tin (chúng tôi gọi tắt là hệ thống IR). Nhưng để việc đánh giá được thực hiện một cách rõ ràng, trực quan và đặc biệt là tự động hóa thì nhất thiết phải cần đến hệ Luận văn : Đánh giá các hệ thống tìm kiếm thông tin Trang 75 thống trợ giúp đánh giá các hệ tìm kiếm thông tin. Hệ thống trợ giúp đánh giá gồm có chương trình hỗ trợ đánh giá các hệ thống tìm kiếm tự động và bộ ngữ liệu dùng để đánh giá. 3.2.1.2. Mục tiêu Chương trình hỗ trợ đánh giá cho phép thực thi và xem cách thức hoạt động của các hệ thống tìm kiếm thông tin bất kỳ. Để thực thi tìm kiếm trên một hệ thống tìm kiếm thông tin bất kỳ, chương trình phải cho phép định dạng bộ ngữ liệu dùng để đánh giá của chương trình thành bộ ngữ liệu mà hệ thống tìm kiếm có thể hiểu và tìm kiếm được. Còn cách thức hoạt động của

Các file đính kèm theo tài liệu này:

  • pdfLuận văn - Đánh giá các hệ thống tìm kiếm thông tin.pdf