TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN HỆ THỐNG THÔNG TIN TSÀN QUẾ HƯƠNG – 0112385 VÕ HỒ BẢO KHANH – 0112387 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
KHÓA LUẬN CỬ NHÂN TIN HỌC
GIÁO VIÊN HƯỚNG DẪN T.S HỒ BẢO QUỐC
NIÊN KHÓA 2001 - 2005
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Ý KIẾN CỦA GIÁO VIÊN PHẢN BIỆN
………………………………………………………………………………………
….…………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
……………………………………………………………………………………… ……………………………………………………………………………………… ………………………………………………………………………………………
Trang 2
Xác nhận của GVPB
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
ĐỀ CƯƠNG CHI TIẾT
Thông tin chung về đề tài: Tên đề tài: Xây dựng bộ ngữ liệu để đánh giá (test collection) 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 GVHD: Tiến sĩ Hồ Bảo Quốc Sinh viên thực hiện: 1. MSSV: 0112385 Họ và tên: Tsàn Quế Hương 2. MSSV: 0112387 Họ và tên: Võ Hồ Bảo Khanh
Tóm tắt nội dung luận văn: Đề tài gồm 2 phần : 1. Xây dựng bộ ngữ liệu để đánh giá các hệ thống tìm kiếm thông tin tiếng Việt. Việc xây dựng bộ ngữ liệu gồm ba phần : _ Xây dựng ngữ liệu mẫu tiếng Việt _ Xây dựng tập câu truy vấn mẫu tiếng Việt _ Xây dựng một bảng đánh giá bằng thủ công 2.Xây dựng một hệ thống chương trình trợ giúp việc đánh giá các hệ thống tìm kiếm thông tin với thành phần đầu vào : ngữ liệu mẫu, câu truy vấn mẫu, hệ thống tìm kiếm thông tin ; các thành phần đầu ra : kết quả truy vấn, kết quả đánh giá, nội dung tập tài liệu, câu truy vấn
Một số từ khóa chính liên quan đến nội dung đề tài: Đánh giá các hệ thống tìm kiếm thông tin (information retrieval systems evaluation)
Lĩnh vực áp dụng: Đánh giá các hệ thống tìm kiếm thông tin tiếng Việt.
Các thuật toán, phương pháp, quy trình chính được nghiên cứu, ứng dụng trong đề tài _ Tìm hiểu về tìm kiếm thông tin (information retrieval), đánh giá các hệ thống tìm kiếm thông tin (information retrieval systems evaluation) _ Tìm hiểu cấu trúc của bộ ngữ liệu, phương pháp xây dựng bộ ngữ liệu của TREC (Text REtrieval Conference) _ Tìm hiểu và sử dụng các hệ thống tìm kiếm : SMART, IOTA ,Lucene,Terrier… _ Xây dựng bộ ngữ liệu kiểm tra bằng tiếng Việt
Trang 3
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
_ Xây dựng một hệ chương trình phục vụ việc kiểm tra và đánh giá các hệ thống tìm kiếm thông tin. Chương trình phải chạy được trên hai hệ điều hành : Windows và Linux, chương trình viết bằng ngôn ngữ Java
Các công cụ, công nghệ chính được nghiên cứu, ứng dụng trong đề tài Borland Jbuider X Visual Studio . NET Microsoft Visio 2003 Rational Rose Microsoft Word, Power Point
Xác nhận của GVHD
Trang 4
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Lời cám ơn
(cid:90) (cid:88)
Chúng em xin chân thành cảm ơn các Thầy Cô Khoa Công nghệ Thông tin đã
hướng dẫn và giảng dạy rất nhiệt tình cho chúng em trong suốt bốn năm học ở
Trường Đại học Khoa học Tự nhiên. Những kiến thức mà chúng em đã học được
trên giảng đường sẽ là hành trang quý báu trên bước đường đời của chúng em.
Chúng em xin cảm ơn Thầy Hồ Bảo Quốc đã tạo cơ hội cho chúng em được
nghiên cứu học hỏi về lĩnh vực tìm kiếm thông tin bằng Tiếng Việt, một lĩnh vực
tương đối mới và hấp dẫn ở Việt Nam . Một lần nữa chúng em xin cảm ơn Thầy vì
Thầy đã tận tình hướng dẫn chúng em đề tài luận văn “Xây dựng bộ ngữ liệu dùng
để đánh giá bằng tiếng Việt và chương trình trợ giúp đánh giá các hệ thống tìm
kiếm thông tin”.
Chúng em xin cảm ơn gia đình, các anh chị, bạn bè đã động viên, giúp đỡ
chúng em để hoàn thành tốt đề tài luận văn này.
Nhóm sinh viên thực hiện
Trang 5
Tsàn Quế Hương – Võ Hồ Bảo Khanh
Luận văn : Đánh giá các hệ thống 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
Trang 6
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
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
Trang 7
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
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
Trang 8
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
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
Trang 9
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
MỞ ĐẦU
Tìm kiếm thông tin là nhu cầu thiết thực của tất cả mọi người. Đặc biệt trong
bối cảnh bùng nổ thông tin như hiện nay, gồm có sự ra đời của internet và sáng
kiến về thư viện điện tử, nhu cầu tìm kiếm thông tin lại càng phát triển. Nhưng
nhờ có sự trợ giúp của công nghệ thông tin con người có thể thỏa mãn nhu cầu này
một cách dễ dàng. Thật vậy, có rất nhiều hệ thống tìm kiếm thông tin
(Information Retrieval system hay IR system) trên máy tính đang tồn tại để trợ
giúp con người. Tuy nhiên, khả năng tìm kiếm thông tin của các hệ thống này
chắc chắn khác nhau. Do đó, việc đánh giá các hệ thống tìm kiếm thông tin
(Evaluation of Information Retrieval systems) là một nhu cầu không thể thiếu
nhằm xác định các hệ thống tìm kiếm thông tin hiệu quả. Việc đánh giá này có ý
nghĩa rất lớn đối với sự tồn tại và phát triển của các hệ thống tìm kiếm thông tin.
Nó giúp xác định khả năng tìm kiếm của các hệ thống tìm kiếm thông tin từ đó mà
các tổ chức, công ty, trường học tạo ra hệ thống này có thể phát triển, thay đổi hệ
thống để đưa ra khả năng tìm kiếm thông tin tốt nhất. Ngoài ra, việc xác định các
hệ thống tìm kiếm thông tin hiệu quả rất hữu ích đối với người dùng, họ sẽ cảm
thấy tin tưởng vào kết quả tìm kiếm mà hệ thống tìm được. Xa hơn nữa, việc đánh
giá sẽ tạo ra một cuộc cách mạng trong lĩnh vực tìm kiếm thông tin; giúp đưa tìm
kiếm thông tin vào trong thế giới thực của đời sống. Chẳng hạn, khi các hệ thống
tìm kiếm thông tin tiến bộ chuyển từ nghiên cứu sang thế giới thực của cạnh tranh
thương mại thì những nhà thiết kế, nhà phát triển, người bán hàng, và những đại
diện bán hàng của các sản phẩm thông tin mới như sách điện tử, và các phương
tiện tìm kiếm (Search engines) … muốn biết sản phẩm của họ có cung cấp cho
những người sử dụng và người mua hàng tiềm năng các lợi thế cạnh tranh hay
không, sẽ được thỏa mãn nhu cầu thông tin này một cách dễ dàng, chính xác.
Khả năng tìm kiếm của hệ thống tìm kiếm thông tin chúng tôi vừa đề cập
được nghiên cứu ở nhiều cấp độ: thứ nhất là về khả năng xử lý tức thời gian tìm
Trang 10
kiếm và không gian lưu trữ hay còn gọi là hiệu năng; thứ hai là về khả năng tìm
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
kiếm hay hiệu quả của kết quả trả về; thứ ba là khả năng về hệ thống tức hệ thống
có thỏa mãn nhu cầu thông tin của người dùng hay không.
Hiện nay, trên thế giới đã có rất nhiều hệ thống đánh giá các hệ thống tìm kiếm
thông tin nhưng chủ yếu là đánh giá các hệ thống tìm kiếm thông tin tiếng Anh,
tiếng Pháp. Đối với tiếng Việt, theo chúng tôi được biết, chưa có một hệ thống nào
được dùng để đánh giá các hệ thống tìm kiếm thông tin tiếng Việt. Nhưng theo xu
hướng phát triển của đất nước và nhu cầu tìm kiếm thông tin thì các hệ thống tìm
kiếm thông tin tiếng Việt bắt buộc phải tồn tại và phát triển. Vì vậy, Việt Nam
chúng ta rất cần các hệ thống được dùng để đánh giá hiệu năng, hiệu quả của các
hệ thống tìm kiếm thông tin tiếng Việt.
Do ý nghĩa to lớn của lĩnh vực nghiên cứu đánh giá này, chúng tôi đã quyết
định chọn đề tài đánh giá các hệ thống tìm kiếm thông tin. Chúng tôi nghĩ rằng hệ
thống đánh giá của chúng tôi sẽ là cơ sở để đánh giá tất cả các hệ thống tìm kiếm
thông tin, nhất là hệ thống tìm kiếm thông tin tiếng Việt. Chúng tôi cũng hy vọng
hệ thống của chúng tôi sẽ góp phần vào sự phát triển của các hệ thống tìm kiếm
thông tin, của tìm kiếm thông tin và của công nghệ thông tin nước ta.
Thực hiện đánh giá khả năng tìm kiếm, chúng tôi tập trung vào đánh giá hiệu
quả của kết quả tìm kiếm được trả về (cấp độ thứ hai trong khả năng tìm kiếm của
hệ thống thông tin ở trên). Hiệu quả của kết quả trả về được định nghĩa là khả
năng hệ thống tìm kiếm thông tin tìm được các tài liệu liên quan (Relevant
Documents) và loại bỏ đi những tài liệu không liên quan (Irrelevant
Documents). Đây là mô hình hướng hệ thống trong nghiên cứu tìm kiếm thông tin.
Mô hình này mô hình đánh giá được sử dụng nhiều nhất và hiệu quả nhất trên thế
giới.
Và để xây dựng hệ thống đánh giá các hệ thống tìm kiếm thông tin tiếng Việt
theo mô hình hướng hệ thống, trước hết, chúng tôi cần phải xây dựng bộ ngữ liệu
dùng để đánh giá bằng tiếng Việt (a Vietnamese Test collection). Bộ ngữ liệu
Trang 11
dùng để đánh giá gồm có kho ngữ liệu mẫu bằng tiếng Việt (a Vietnamese
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Corpus hay a set of Vietnamese documents), tập câu truy vấn mẫu bằng tiếng
Việt (a set of Vietnamese queries), và bảng đánh giá liên quan chuẩn
(Relevance Judgment). Chúng tôi tìm hiểu và thực hiện xây dựng bộ ngữ liệu
dùng để đánh giá theo tiêu chuẩn của Hội nghị về Tìm kiếm thông tin Văn bản
(Text REtrieval Conference hay TREC) của Hoa Kỳ, một trong những Hội nghị
hàng đầu trên thế giới về Tìm kiếm Thông tin.
Tiếp theo, chúng tôi xây dựng chương trình trợ giúp đánh giá các hệ thống tìm
kiếm thông tin, cho phép người dùng thao tác, thực hiện đánh giá các hệ thống một
cách dễ dàng. Kết quả trả về của chương trình đánh giá có được dựa vào bộ ngữ
liệu mẫu được dùng đánh giá. Kết quả trả về này gồm có kết quả truy vấn của hệ
thống tìm kiếm thông tin và kết quả đánh giá. Kết quả đánh giá được tính dựa trên
sự kết hợp của hai độ đo: độ bao phủ (Recall) và độ chính xác (Precision). Từ
kết quả trả về, chúng ta có thể biết được khả năng tìm kiếm của riêng từng hệ
Trang 12
thống tìm kiếm thông tin và so sánh khả năng của các hệ thống tìm kiếm với nhau.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Chương 1 : TỔNG QUAN
1.1. Tổng quan về tìm kiếm thông tin và hệ thống tìm kiếm thông tin
Tìm kiếm thông tin liên quan đến việc biểu diễn, lưu trữ, tổ chức và tiếp cận các yếu tố thông tin (một tài liệu có thể có một hoặc nhiều yếu tố thông tin) [1 ].
Theo lý thuyết, không có giới hạn về các loại yếu tố thông tin trong tìm kiếm
thông tin. Trên thực tế, các loại yếu tố thông tin ngày càng trở nên đa dạng cùng
với sự phát triển của xã hội. Ngoài ra, một tập hợp các yếu tố thông tin được gọi là
hữu dụng khi và chỉ khi nó đầy đủ và luôn được cập nhật. Đầy đủ ở đây có nghĩa
là tập hợp này phải chứa một tỉ lệ lớn các yếu tố thông tin được xem là có khả
năng liên quan đến các lĩnh vực xác định. Hơn nữa, việc biểu diễn và tổ chức các
yếu tố thông tin nên cung cấp cho người dùng cách truy cập dễ dàng nhất đến
thông tin mà người đó quan tâm. Nhưng không may là tính chất của nhu cầu thông
tin người dùng không phải đơn giản. Chúng ta xem xét một ví dụ về một nhu cầu
thông tin hiển nhiên của người sử dụng trong ngữ cảnh tìm kiếm World Wide Web
hay chỉ là Web:
Tìm tất cả các trang hay tài liệu chứa thông tin về bệnh ung thư phổi và nguyên
nhân dẫn đến ung thư phổi, các tài liệu được xem là liên quan phải vừa nói đến các
triệu chứng ung thư phổi, vừa nói đến nguyên nhân dẫn đến căn bệnh này gồm cả
tác hại của việc hút thuốc và ô nhiễm môi trường.
Từ ví dụ trên, chúng ta thấy rõ ràng là sự mô tả đầy đủ nhu cầu thông tin người
dùng không thể được sử dụng trực tiếp để tìm kiếm trên bình diện của các phương
tiện tìm kiếm Web (Web Search Engine) hay hệ thống tìm kiếm thông tin (IR
system) hiện nay. Thay vào đó, người sử dụng phải dịch nhu cầu thông tin của
mình sang một câu truy vấn có thể được xử lý bằng phương tiện tìm kiếm hay hệ
thống tìm kiếm thông tin. Điều này tạo ra một tập các từ khóa tóm tắt mô tả nhu
cầu thông tin người dùng hay còn gọi là câu truy vấn. Dựa trên câu truy vấn của
người sử dụng, mục đích chính của hệ thống tìm kiếm thông tin là tìm kiếm các
Trang 13
thông tin hữu ích hay liên quan cho người sử dụng.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Vậy có thể nói một cách tổng quát, hệ thống tìm kiếm thông tin là một hệ
thống cho phép người sử dụng tìm kiếm tài liệu để thỏa mãn nhu cầu thông tin từ
một kho ngữ liệu lớn.
Để tìm kiếm thông tin, hệ thống tìm kiếm phải thực hiện các công việc sau.
Trước hết, hệ thống tìm kiếm xử lý tài liệu thô thành những tài liệu được tách từ,
phân đoạn (tokenized documents) và sau đó lập chỉ mục (index) dựa trên vị trí
của từ. Khi người dùng đưa vào câu truy vấn, hệ thống tìm kiếm thông tin cũng sẽ
xử lý các câu truy vấn thành ngôn ngữ chỉ mục mô tả các yếu tố thông tin cần tìm
kiếm và thực hiện đối chiếu với chỉ mục tài liệu để tìm ra các tài liệu liên quan.
Cuối cùng, các tài liệu liên quan sẽ được trả về cho người dùng theo một danh
sách được sắp xếp theo độ ưu tiên chính xác giảm dần (ranked list).
1.2. Tổng quan về đánh giá các hệ thống tìm kiếm thông tin
1.2.1. Lý do để tiến hành đánh giá các hệ thống tìm kiếm thông tin
Khi nhu cầu tìm kiếm thông tin phát triển, có rất nhiều mô hình, thuật toán, hệ
thống tìm kiếm thông tin ra đời. Do đó, việc đánh giá các mô hình, thuật toán, hệ
thống tìm kiếm thông tin là điều bắt buộc phải làm.
Chúng ta so sánh một hệ thống (có thể là một hệ thống mới) với các hệ thống
khác đã tồn tại về phương diện: tính hiệu quả, chi phí, thời gian , tốc độ xử lý…
Hệ thống tìm kiếm thông tin thường thực hiện hai quá trình: quá trình lập chỉ
mục và quá trình tìm kiếm. Mỗi một quá trình sẽ có nhiều phương pháp để thực
hiện, đánh giá hệ thống cũng có thể dùng để xác định tính tối ưu của các phương
pháp trên.
Lý do khác để tiến hành đánh giá là để so sánh các thành phần của hệ thống.
Do hệ thống gồm nhiều thành phần, đánh giá hệ thống để xác định cách mỗi thành
phần của hệ thống thực thi để khi có sự thay đổi một thành phần bởi một thành
phần khác thì sự thay đổi đó ảnh hưởng đến hệ thống như thế nào, từ đó ta có thể
Trang 14
quyết định có nên thay đổi thành phần đó không.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Đánh giá để tìm kiếm thành phần nào là tốt nhất cho hàm xếp thứ tự (dot-
product, cosine…); thành phần nào là tốt nhất cho lựa chọn thuật ngữ (loại bỏ
stopword, phương pháp lấy gốc từ stemming …); thành phần nào là tốt nhất trong
lựa chọn phương pháp đánh giá thuật ngữ (term weighting) như TF, IDF … (các
thành phần này sẽ được nói rõ hơn trong chương sau).
So sánh để biết người sử dụng cần danh sách các tài liệu trả về (ranked list) dài
cỡ bao nhiêu để họ có thể nhìn dễ dàng nhất. Đánh giá để biết hệ thống nào thật sự
tốt, người dùng có thể tin tưởng kết quả trả về được.
1.2.2. Các tiêu chuẩn được dùng để đánh giá
Hiện nay, trên thế giới có ba tiêu chuẩn được dùng để đánh giá hệ thống tìm
kiếm thông tin. Thứ nhất là tiêu chuẩn về tính hiệu quả tức sự chính xác, tính đầy
đủ của kết quả trả về so với mục đích tìm kiếm của người sử dụng, và giá trị vẫn
có thể đoán được trong các tình huống khác có nghĩa là khi đưa vào các câu truy
vấn khác, tập tài liệu khác thì hệ thống vẫn có thể tìm ra kết quả chính xác. Thứ
hai là tiêu chuẩn về hiệu năng, gồm có tốc độ tìm kiếm của thuật toán, khả năng
lưu trữ, thời gian trả về cho người sử dụng, thời gian lập chỉ mục, kích thước chỉ
mục… Thứ ba là tiêu chuẩn về khả năng sử dụng hệ thống tức là có thể nghiên
cứu, học hỏi trên hệ thống tìm kiếm, người không biết tin học hay các chuyên gia
tin học đềi có thể sử dụng hệ thống.
1.2.3. Các mô hình đánh giá
Theo chúng tôi được biết, trên thế giới có tất cả bốn mô hình đánh giá các hệ
thống tìm kiếm thông tin. Chúng bao gồm : đánh giá hộp kính, đánh giá hộp đen,
Đánh giá hộp kính (glass box evaluation) : đánh giá hệ thống dựa trên
đánh giá hướng hệ thống, đánh giá hướng người dùng hay còn gọi là đánh giá nghiên cứu người dùng [ 2].
việc đánh giá tất cả mọi thành phần của hệ thống. Có nghĩa là khi biết rõ
Trang 15
các thành phần của hệ thống, chúng ta tiến hành đánh giá các thành phần đó.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Đánh giá hộp đen (black box evaluation) : đánh giá hệ thống bằng cách
xem hệ thống như là một thực thể hợp nhất, không đánh giá chính xác các
Đánh giá hướng hệ thống (system-oriented evaluation) là xu hướng
thành phần bên trong hệ thống.
đánh giá chính từ khi các hệ thống tìm kiếm và lập chỉ mục tự động được
phát triển vào những năm 1960. Một trong những mục đích chính của
hướng đánh giá này là kiểm tra các hệ thống tự động cũng như các thủ tục
thủ công thực thi như thế nào. Ngoài ra, mô hình này còn đánh giá so sánh
các cách thực hiện liên quan đến các ngôn ngữ chỉ mục, xử lý tìm kiếm của
hệ thống của các hệ thống khác nhau hay đánh giá so sánh các lược đồ chỉ
mục tự động khác nhau. Đánh giá hướng hệ thống có một điểm lợi là điều
kiện môi trường kiểm tra được quản lý chặt chẽ, sử dụng phương pháp đánh
giá theo lô hay còn gọi là đánh giá dựa trên tập câu truy vấn; có nghĩa là hệ
thống tìm kiếm thông tin lần lượt thực hiện các câu truy vấn, tìm kiếm trên
tập dữ liệu đã được xây dựng và ghi lại kết quả những tài liệu nào liên quan
đến câu truy vấn nào rồi đem so sánh với Bảng Đánh giá liên quan chuẩn
(Relevance judgment) đã được xây dựng. Với mỗi câu truy vấn tính toán
độ chính xác và độ bao phủ dựa trên kết quả trả về và bảng đánh giá liên
quan chuẩn để nhận xét hiệu quả tìm kiếm của hệ thống tìm kiếm thông tin.
Hướng đánh giá này được thực hiện rất phổ biến ở các dự án, hội nghị về
nghiên cứu hệ thống tìm kiếm thông tin như: Cranfield , MEDLARS,
SMART, STAIRS và TREC.
Đánh giá hướng người dùng (user studies evaluation): Hướng nghiên
cứu người dùng ra đời vào những năm 1970 khi mà nhiều hệ thống tìm
kiếm thông tin thương mại ra đời. Mục đích chính của hướng nghiên cứu này là nhằm xác định cách thức tìm kiếm của người sử dụng [ 3]. Hướng
đánh giá này còn cho phép xem xét hệ thống ở khía cạnh người dùng; tức là
đánh giá về mặt tương tác với người sử dụng như giao diện của hệ thống
Trang 16
tìm kiếm thông tin, thời gian hệ thống tìm kiếm đối với một câu truy vấn,
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
mức độ hài lòng của người sử dụng… Hướng nghiên cứu này cho rằng nhu
cầu của người dùng được thoả mãn tương đương với hiệu quả của hệ thống.
Chỉ khi nhu cầu thông tin người dùng được thỏa mãn, khi ấy tìm kiếm
thông tin mới được gọi là có ích. Hội nghị quốc tế về Tìm kiếm Thông tin
trong Ngữ cảnh (Information Seeking in Context) được tổ chức như là
một diễn đàn cho các nhà nghiên cứu lĩnh vực này khám phá các phương
pháp và các kết quả nghiên cứu. Một hội nghị khác mới được thành lập tên
là Nhóm Quan tâm Đặc biệt (Special Interest Group - SIG) đến tìm kiếm,
nhu cầu và sử dụng thông tin của Xã hội Hoa Kỳ về Khoa học Thông tin
(American Society of Information Science). Những hội nghị này cũng
tương tự như TREC trong việc cố gắng khuyến khích nghiên cứu hướng
người dùng, để phát triển mối liên hệ giữa các nhà nghiên cứu trong kỹ
thuật, giáo dục và chính phủ, và để xác định, cải tiến các kỹ thuật tìm kiếm
thích hợp. Nhưng các hội nghị này khác nhau ở chỗ các hội nghị mới chưa
có phương pháp luận đánh giá chuẩn nào được xúc tiến. Đánh giá hướng
người dùng có đóng góp rất lớn đến lĩnh vực tìm kiếm thông tin. Đóng góp
này gồm có việc xác định cách thức tìm kiếm thông tin của con người, nối
liền khoảng cách giữa nhu cầu thông tin giữa các cá nhân và các hệ thống
tìm kiếm thông tin, dẫn đến một thế hệ mới của các hệ thống tìm kiếm
thông tin bao gồm các giao diện đồ hoạ máy tính-người sử dụng.
Hiện nay, trong số bốn mô hình trên thì hai mô hình đánh giá hướng hệ thống
và hướng người dùng đang được sử dụng chính và rộng rãi nhất. Trong phạm vi đề
tài của chúng tôi, chúng tôi chỉ sử dụng mô hình đánh giá hướng hệ thống vì mô
hình đánh giá hướng người dùng cần có sự hợp tác của rất nhiều người dùng để
lấy thông tin phản hồi sau khi sử dụng hệ thống tìm kiếm thông tin đó hoặc cần
phải tham gia trao đổi về hiệu năng tìm kiếm tại các hội nghị. Nhưng các hội nghị
dành cho mô hình đánh giá hướng người dùng đa số chưa có một phương pháp
Trang 17
luận cụ thể nào dùng để đánh giá. Ngoài ra, với mô hình hướng hệ thống, chúng
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
tôi có thể xây dựng ứng dụng để đánh giá nhiều hệ thống tìm kiếm thông tin một
cách tự động.
1.2.4. Các độ đo dùng để đánh giá
Độ bao phủ (Recall) và độ chính xác (Precision) là 2 đơn vị đo cơ bản nhất để đánh giá chất lượng một hệ thống tìm kiếm thông tin [4 ]. Độ bao phủ là tỉ lệ
giữa các tài liệu liên quan được trả về trên tổng số các tài liệu liên quan thật sự.
Trong khi đó, độ chính xác là tỉ lệ giữa các tài liệu liên quan được trả về trên tổng
số tài liệu được trả về.
Có nhiều phương pháp sử dụng một hoặc các độ đo này để tính toán đánh giá,
chẳng hạn phương pháp Độ chính xác trung bình (Mean Average Precision –
MAP) chỉ sử dụng độ chính xác, không quan tâm đến độ bao phủ. Phương pháp đo
dựa trên giá trị đơn Swet’s E-Measure hoặc chiều dài tìm kiếm trung bình thì cũng
chỉ sử dụng một giá trị để tính toán. Phương pháp tính độ chính xác dựa trên 11
điểm chuẩn của độ bao phủ sử dụng cả hai độ đo độ bao phủ và độ chính xác.
Chúng tôi thực hiện đánh giá theo phương pháp tính độ chính xác dựa trên 11
điểm chuẩn của độ bao phủ bởi vì phương pháp này khá đơn giản, dễ thực hiện
tính toán, đo và đánh giá. Ngoài ra, phương pháp này trực quan với cách biểu diễn
đồ thị của các điểm bao phủ, chính xác từ đó dễ dàng thấy hiệu quả tìm kiếm của
riêng từng hệ thống và so sánh các hệ thống đánh giá với nhau.
1.2.5. Các phương pháp xây dựng bộ ngữ liệu dùng để đánh giá
Theo mô hình hướng hệ thống, trước hết phải xây dựng bộ ngữ liệu dùng để
đánh giá (test collection). Bộ ngữ liệu dùng để đánh giá gồm có tập các tài liệu
mẫu, tập câu truy vấn mẫu, và bảng đánh giá liên quan chuẩn.
• Tập tài liệu dùng để đánh giá được thu thập từ các nguồn khác nhau, gồm
nhiều chủ đề khác nhau. Tập tài liệu này phải là những tài liệu mẫu bao
quát càng nhiều lĩnh vực càng tốt, phản ánh được các vấn đề đa dạng khác
Trang 18
nhau, các phong cách văn chương khác nhau … Điều này có nghĩa là tập
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
tài liệu mẫu này phải có kích thước lớn, vì vậy tập tài liệu này còn được gọi
là kho ngữ liệu mẫu.
• Tập câu truy vấn mẫu là những câu hỏi được tạo ra phù hợp với tập tài liệu
mẫu. Tập câu truy vấn này sau đó sẽ được sử dụng để tìm kiếm.
• Bảng đánh giá liên quan chuẩn là bảng chứa thông tin về số thứ tự câu hỏi
và các tài liệu liên quan thật sự của câu hỏi đó. Bảng Đánh giá liên quan
chuẩn được dùng như là bảng đối chiếu để tính độ bao phủ và độ chính xác.
Có nhiều cách khác nhau để tạo bảng đánh giá liên quan chuẩn hay bảng
Relevance judgment. Các phương pháp này gồm có:
(cid:56) Phương pháp đánh giá toàn bộ, phương pháp này thường không khả
thi vì tỉ lệ tập câu hỏi*tập tài liệu là quá lớn. Phương pháp này rất tốn
chi phí.
(cid:56) Phương pháp Pooling hay còn gọi là phương pháp lấy một số tài liệu
liên quan nhất để làm bảng đánh giá liên quan chuẩn. Phương pháp này
sử dụng tốt cho đánh giá nhiều hệ thống tìm kiếm thông tin. Phương
pháp này đòi hỏi phải có một sự đa dạng các hệ thống tìm kiếm thông
tin. Bước đầu tiên của phương pháp này là tìm thấy các tài liệu liên
quan cho mỗi hệ thống. Các hệ thống khác nhau tìm thấy các tài liệu
liên quan khác nhau. Bước tiếp theo là tổng hợp các kết quả của tất cả
các hệ thống lại và lấy phần giao của các bảng đánh giá liên quan của
các hệ thống. Nhưng phần giao này có thể chỉ là một số lượng nhất định
các tài liệu gần như chính xác nhất. Việc đánh giá dựa trên phương pháp
này thật sự khách quan khi đánh giá các hệ thống không được chọn để
giao lấy bảng Đánh giá liên quan chuẩn.
(cid:56) Phương pháp đánh giá hướng dẫn chỉ tìm kiếm thỉnh thoảng cho kết
quả tốt. Phương pháp này cho phép tương tác giữa nghiên cứu truy vấn,
tìm kiếm, đánh giá. Tăng cường thêm bằng cách xem lại, điều chỉnh,
Trang 19
đánh giá lại. Nói chung, khi sử dụng phương pháp này, người đánh giá
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
phải thao tác bằng tay rất nhiều, xem các tài liệu trả về có thật sự là liên
quan hay chưa để đưa vào bảng Đánh giá liên quan chuẩn.
(cid:56) Các đánh giá dựa trên những thành phần đã biết, phương pháp này
tốn ít chi phí nhất. Phương pháp này cho phép thay đổi câu hỏi để tìm ra
một tài liệu đã biết.
1.2.6. Phương pháp xây dựng bộ ngữ liệu được chọn
Kể từ năm 1992, khi Hội nghị về Tìm kiếm thông tin Văn bản (Text REtrieval
Conference hay TREC) của Hoa Kỳ ra đời, mô hình hướng hệ thống mới thật sự
phát triển. Bởi vì hằng năm, TREC tổ chức hội nghị để kêu gọi tham gia đánh giá
các hệ thống tìm kiếm thông tin, đặc biệt kêu gọi đánh giá theo mô hình hướng hệ
thống. Nhờ đó mà mỗi năm khối lượng, kích thước bộ ngữ liệu dùng để đánh giá
tăng lên rất đáng kể cùng với sự phát triển về số lượng các tổ chức, trường Đại học
tham gia TREC. TREC được xem là Hội nghị lớn nhất thế giới về đánh giá các hệ
thống tìm kiếm thông tin và là một trong những Hội nghị có uy tín trong lĩnh vực
tìm kiếm thông tin. TREC xây dựng bảng đánh giá liên quan chuẩn theo phương
pháp Pooling. TREC còn đưa ra các tiêu chuẩn, định dạng cho ngữ liệu rất rõ ràng,
và dễ tuân theo.
Vì vậy, chúng tôi quyết định chọn phương pháp xây dựng ngữ liệu theo tiêu
chuẩn và cách làm của TREC. Chúng tôi định dạng câu hỏi và tài liệu theo tiêu
chuẩn định dạng mà TREC đưa ra, đồng thời làm bảng đánh giá liên quan chuẩn
theo phương pháp Pooling hay phương pháp lấy một số tài liệu liên quan nhất để
làm bảng Đánh giá liên quan giống TREC vì cách tạo bảng đánh giá khách quan
mà nó mang lại và không phải tốn nhiều thời gian, chi phí.
Tuy nhiên, đối với tiếng Việt, việc xây dựng bộ ngữ liệu đánh giá phức tạp hơn
là xây dựng bộ ngữ liệu tiếng Anh, tiếng Pháp trong trường hợp dùng các hệ thống
tìm kiếm phổ biến, nổi tiếng sẵn có cho tiếng Anh, Pháp để tìm kiếm thông tin
tiếng Việt. Bởi vì đặc thù loại hình ngôn ngữ khác nhau giữa tiếng Anh, Pháp và
Trang 20
tiếng Việt. Chẳng hạn, trong tiếng Anh, Pháp mỗi từ là một từ đơn, cách nhau bởi
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
một khoảng trắng nhưng tiếng Việt thì hoàn toàn khác, một từ có thể gồm từ một
từ đơn trở lên. Do đó, để những hệ thống tìm kiếm thông tin, ngữ liệu phải được
chuẩn hóa về giống với tiêu chuẩn ngữ liệu dùng để tìm kiếm của hệ thống đó.
Nhưng cũng chính điều này làm cho ngữ liệu của chúng tôi có thể được sử dụng
linh hoạt để đánh giá nhiều hệ thống tìm kiếm thông tin cho nhiều thứ tiếng khác
nhau. Điều này còn có ý nghĩa rất lớn trong tìm kiếm thông tin vì chúng ta có thể
sử dụng hệ thống tìm kiếm hiệu quả của nước ngoài để tìm kiếm thông tin tiếng
Việt.
1.2.7. Phương pháp đánh giá tầm quan trọng của kết quả trả về
Các độ đo thực hiện toàn bộ hệ thống tìm kiếm chủ yếu được lấy trung bình
trên tập câu hỏi. Vì tính chất biến đổi của các câu hỏi là rất lớn, và sự thay đổi của
các độ đo tính toán là rất cao, nên đòi hỏi một phương pháp phân tích thống kê
thích hợp để đánh giá xem sự khác biệt được đo giữa các hệ thống có phải là có ý
nghĩa thống kê đến một độ tin cậy nhất định không. Vì vậy, phương pháp đánh giá
Trang 21
tầm quan trọng của kết quả trả về được sử dụng là phương pháp thống kê.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Chương 2 : CƠ SỞ LÝ THUYẾT
2.1. Tìm kiếm thông tin và các hệ thống tìm kiếm thông tin
2.1.1. Lịch sử tìm kiếm thông tin và hệ thống tìm kiếm thông tin
Tìm kiếm thông tin có một lịch sử lâu đời gắn liền với các thư viện và trung
tâm tìm kiếm thông tin. Trước đây, khi mà máy tính và internet chưa ra đời, những
người có nhu cầu thông tin ngoài việc nhờ sự trợ giúp thông tin từ bạn bè, người
thân còn có thể tìm đến thư viện hoặc các trung tâm thông tin để tìm kiếm thông
tin cần thiết. Cách biểu diễn, lưu trữ, tổ chức và phổ biến thông tin của thư viện
được xem là cách làm truyền thống của một hệ thống tìm kiếm thông tin. Thư viện,
khi tiếp nhận các yếu tố thông tin hay tài liệu mới, trước hết là phân tích yếu tố
thông tin đó. Sau đó, những mô tả thích hợp sẽ được chọn ra để mô tả, phản ánh
nội dung của yếu tố thông tin đó. Dựa trên những mô tả này, mỗi yếu tố thông tin
sẽ được phân loại theo những thủ tục đã được thiết lập rồi sáp nhập vào tập hợp
các yếu tố thông tin đã tồn tại. Các thủ tục này được tạo ra để hệ thống hóa các
yêu cầu (các yêu cầu được thiết kế để thay thế cho một nhu cầu thông tin ) và để
so sánh những yêu cầu, truy vấn đó với mô tả của các yếu tố thông tin đã lưu trữ.
Việc so sánh này chính là cơ sở để quyết định các yếu tố thông tin thích hợp với
câu truy vấn tương ứng. Cuối cùng, một cơ chế tìm kiếm và phổ biến thông tin sẽ
được dùng để trả các yếu tố thông tin cần thiết đến người sử dụng hệ thống.
Tuy nhiên, chúng ta phải xem xét vấn đề nảy sinh về vị trí thật sự của một yếu
tố thông tin mới được thêm vào trong tập hợp tài liệu. Có nhiều cơ chế tiếp cận
khác nhau để giải quyết vấn đề này nhưng chúng đều liên quan đến cách tổ chức
vật lý hoặc luận lý các yếu tố thông tin. Trong thư viện, cách tổ chức vật lý chính
là việc lập chỉ mục cho tài liệu, tức là sự sắp xếp các con số của các quyển sách,
cách đánh số thường được quy định bởi các thư viện lớn. Những quyển sách sẽ
được đặt vào những vị trí xác định dựa vào những con số này. Ngoài ra, cách tổ
Trang 22
chức luận lý dữ liệu phải được thêm vào với cách tổ chức vật lý để giúp người sử
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
dụng tìm kiếm thông tin dễ dàng hơn. Chẳng hạn, những quyển sách ấn bản về tìm
kiếm thông tin có thể được xác định bằng cách nhìn vào danh mục các chủ đề của
thư viện với thuật ngữ cần tìm là “tìm kiếm thông tin”. Một khi ta tìm thấy thuật
ngữ thích hợp, các thẻ số kế tiếp nhau sẽ xác định những quyển sách liên quan đến
chủ đề đang tìm kiếm. Những quyển sách này phụ thuộc vào các con số và chúng
sẽ được tìm thấy tại những vị trí xác định. Bên cạnh đó, mỗi khi muốn thay đổi
thuật ngữ chủ đề của sách, chúng ta không cần thay đổi vị trí của sách trên kệ
sách; tức là, các yếu tố thông tin có thể được tổ chức luận lý lại bằng cách thay đổi
danh mục thư viện mà không cần thay đổi sắp xếp vật lý.
Xã hội ngày càng phát triển do đó thông tin rất đa dạng phong phú, bài toán đặt
ra là chúng ta phải làm sao để quản lý được số lượng thông tin khổng lồ một cách
có hiệu quả. Từ đó dẫn đến nhu cầu làm giảm một lượng các yếu tố thông tin đến
một kích thước có thể quản lý, các yếu tố thông tin còn lại được xem là có liên
quan nhiều nhất đến lĩnh vực tìm kiếm. Mặt khác, chúng ta rất khó dự đoán mẫu,
trạng thái phát triển tương lai của thông tin, hoặc nếu có thể dự đoán thì tỉ lệ rủi ro
rất cao. Khó khăn tiếp theo trong việc tổ chức thông tin hiệu quả là ước muốn giữ
những yếu tố liên quan gần nhau. Ví dụ, những chủ đề liên quan đến nhiều lĩnh
vực như phân tích hệ thống (nó liên quan đến khoa học máy tính, vận trù học, kỹ
thuật học, khoa học quản lý, giáo dục và các hệ thống thông tin) không thể để gần
nhau được mà phải để riêng ra theo từng lĩnh vực : đây là một khó khăn. Còn rất
nhiều khó khăn nữa, chẳng hạn các khó khăn trong phân loại, so sánh tài liệu, yếu
tố thông tin; lập chỉ mục, đánh số cho tài liệu. Và những khó khăn này sẽ không
được giải quyết nếu không có sự ra đời của máy tính. Quả thật, nhờ có máy tính
mà việc lưu trữ, tìm kiếm thông tin trở nên dễ dàng hơn. Máy tính có thể thao tác
trên tất cả các loại thông tin và có thể lưu trữ một cách nhanh chóng một số lượng
thông tin khổng lồ. Ngoài ra, cơ chế tìm kiếm thông tin trên máy tính có thể rất
nhanh chóng và hiệu quả tùy thuộc mô hình cài đặt, thuật toán của cơ chế đó. Cơ
chế tìm kiếm này cũng khá giống với cơ chế tìm kiếm thông tin của thư viện.
Trang 23
Trước hết, dựa trên ngôn ngữ chỉ mục và các yếu tố thông tin đại diện cho nội
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
dung của tài liệu, tập tài liệu sẽ được biểu diễn dưới dạng tập hợp các chỉ mục đại
diện cho tập tài liệu đó. Trong khi đó, nhu cầu tìm kiếm thông tin được biểu diễn
dưới dạng câu truy vấn có cấu trúc hoặc không cấu trúc mà máy có thể hiểu được.
Sau đó, máy sẽ so sánh hai dạng biểu diễn trên, biểu diễn tài liệu và biểu diễn câu
truy vấn, để biết được tài liệu nào phù hợp với truy vấn nào. Sau khi so sánh, máy
sẽ định vị được vị trí vật lý của yếu tố thông tin cần tìm kiếm và phổ biến nó đến
người sử dụng. Đây là cơ chế tìm kiếm chung cho mọi hệ thống tìm kiếm thông tin.
Tuy nhiên, cách đây không quá 20 năm, sau khi máy tính ra đời, các hệ thống
tìm kiếm thông tin chủ yếu được sử dụng trong phòng thí nghiệm để tìm kiếm một
kho ngữ liệu sách và tài liệu. Mặc dù chúng không bao hàm các phương pháp toán
phức tạp, nhưng khi Internet phát triển thì kỹ thuật tìm kiếm chủ yếu trên World
Wide Web chính là các kỹ thuật tìm kiếm thông tin. Quả thật, các hệ thống tìm
kiếm thông tin ngày càng phát triển về thuật toán, kỹ thuật tìm kiếm thông tin nhờ
có sự ra đời của Internet. Vì nhu cầu tìm kiếm thông tin của con người trên
Internet là một nhu cầu phổ biến, thiết thực, không thể thiếu nên các nhà phát triển
hệ thống tìm kiếm thông tin cũng phải nỗ lực để mang lại hiệu năng, hiệu quả cho
người sử dụng.
Chúng ta thấy rõ ràng là nghiên cứu tìm kiếm thông tin có truyền thống tập
trung vào tìm kiếm thông tin dạng văn bản (Text Retrieval) hay tài liệu văn
bản (Document Retrieval). Trong một thời gian dài, tìm kiếm thông tin gần như
đồng nghĩa với tìm kiếm tài liệu hay tìm kiếm văn bản. Trong thời gian gần đây,
các viễn cảnh ứng dụng mới như ứng dụng trả lời câu hỏi (question answering),
ứng dụng nhận dạng chủ đề (topic detection), hay ứng dụng lưu vết (tracking)
trở thành các lĩnh vực hoạt động mạnh mẽ trong nghiên cứu tìm kiếm thông tin.
Càng ngày ranh giới giữa cộng đồng tìm kiếm thông tin hay cộng đồng tìm kiếm
thông tin và các cộng đồng nghiên cứu xử lý ngôn ngữ tự nhiên, cộng đồng nghiên
Trang 24
cứu cơ sở dữ liệu trở nên mờ nhạt khi các cộng đồng này cùng nhau phát triển các
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
lĩnh vực quan tâm chung; ví dụ như trả lời câu hỏi, tóm tắt và tìm kiếm thông tin
từ các tài liệu có cấu trúc.
Một lĩnh vực phát triển khác mà các kỹ thuật tìm kiếm thông tin đang kế tục và
phát huy, đó là tìm kiếm thông tin không văn bản hay còn gọi là tìm kiếm thông
tin đa phương tiện. Loại hình tìm kiếm này sẽ dựa trên rút trích tự động các phần
văn bản hay lời nói của các tài liệu đa phương tiện, sau đó được xử lý bởi các kỹ
thuật tìm kiếm thông tin dựa văn bản (text-based IR techniques). Tuy nhiên,
người ta ngày càng quan tâm đến sự phát triển các kỹ thuật phơi bày cụ thể thông
tin phương tiện truyền thông rồi tích hợp chúng với các phương pháp tìm kiếm đã
được thiết lập tốt hơn là cách rút trích chúng tôi đã trình bày.
Trong phạm vi đề tài, chúng tôi chỉ giới hạn tìm kiếm thông tin trên văn bản.
2.1.2. Hệ thống tìm kiếm thông tin
2.1.2.1. Khái niệm về hệ thống tìm kiếm thông tin
Theo lý thuyết, hệ thống tìm kiếm thông tin là một hệ thống thông tin. Nó được
sử dụng để lưu trữ, xử lý, tra cứu, tìm kiếm, và phổ biến các yếu tố thông tin đến
người sử dụng. Hệ thống tìm kiếm thông tin thường thao tác với các dữ liệu dạng
văn bản và không có sự giới hạn về các yếu tố thông tin trong văn bản.
Hệ thống thông tin bao gồm một tập hợp các yếu tố thông tin, một tập các yêu
cầu, và một vài cơ chế tìm kiếm để quyết định yếu tố thông tin nào liên quan đến
các yêu cầu. Theo nguyên tắc, mối quan hệ giữa các câu truy vấn và tài liệu có
được từ sự so sánh trực tiếp. Nhưng trên thực tế, sự liên quan giữa các câu truy
vấn và tài liệu xác định không phải được quyết định trực tiếp; mà gián tiếp bằng
cách : các tài liệu, yếu tố thông tin phải chuyển sang ngôn ngữ chỉ mục trước khi
xác định mức độ liên quan.
2.1.2.2. Cách thức hoạt động của hệ thống tìm kiếm thông tin
Hình 1 minh họa cấu trúc, cách hoạt động cơ bản của một hệ thống tìm kiếm
Trang 25
thông tin cổ điển.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Hình 1.
Ở giai đoạn đầu tiên, giai đoạn tiền xử lý, tài liệu thô của ngữ liệu được xử
lý thành các tài liệu được tách từ, phân đoạn (tokenized documents) và
sau đó được lập chỉ mục thành một danh sách các vị trí của từ (postings
per terms).
Ở giai đoạn thứ hai, người sử dụng đưa ra một câu truy vấn (phi cấu trúc
bằng ngôn ngữ tự nhiên) mô tả nhu cầu thông tin của họ. Hệ thống tìm
kiếm thông tin sẽ biểu diễn câu truy vấn này thành những câu truy vấn có
hoặc không có cấu trúc mà máy có thể hiểu được. Hệ thống tìm kiếm thông
tin bắt đầu thực hiện chất vấn, đối chiếu để tìm ra tài liệu, các yếu tố thông
tin có thể trả lời và liên quan đến câu truy vấn. Các thủ tục được dùng để
quyết định các yếu tố thông tin có liên quan đến câu truy vấn đều dựa trên
biểu diễn của các câu truy vấn và các yếu tố thông tin có chứa các thành
phần ngôn ngữ chỉ mục.
Cuối cùng, các tài liệu, yếu tố thông tin được tìm thấy được hiển thị thành
một danh sách tài liệu và được sắp xếp theo thứ tự liên quan (ranked
Trang 26
retrieved documents). Thông thường, những tài liệu, yếu tố thông tin có
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
liên quan nhiều nhất được xếp trên những tài liệu ít liên quan hơn. Tùy vào
các hệ thống tìm kiếm thông tin khác nhau mà chúng hiển thị thông tin liên
quan theo những cách khác nhau. Chẳng hạn, có hệ thống chỉ hiển thị tên
tiêu đề và đường dẫn đến tài liệu đó, hoặc có hệ thống vừa hiển thị tên,
đường dẫn, vừa hiển thị một ít nội dung liên quan đến câu truy vấn, hoặc có
những hệ thống phục vụ tìm kiếm thông tin trên mạng thì thêm vào các liên
kết đến các trang web khác nhau.
Nhiều hệ thống thông tin còn có cả cơ chế cho phép người sử dụng cung cấp
phản hồi đến chất lượng của kết quả trả về. Sử dụng phản hồi, hệ thống cố gắng
thích ứng và nỗ lực tìm ra những kết quả tốt nhất cho câu truy vấn.
Việc lập chỉ mục trong giai đoạn tiền xử lý chúng tôi vừa đề cập về nguyên tắc
thì giống nhau đối với từng hệ thống nhưng về thuật toán, cách thức thì khác nhau.
Nguyên tắc lập chỉ mục: Tài liệu hay yếu tố thông tin phi cấu trúc khi thêm mới sẽ
được hệ thống tìm kiếm thông tin chuyển sang một thể đặc biệt, đó là ngôn ngữ
chỉ mục. Việc chuyển đổi thành phần thông tin thành ngôn ngữ chỉ mục được thực
hiện thủ công, hay tự động hoặc cả hai và nó được gọi là tiến trình lập chỉ mục.
Tiến trình lập chỉ mục này được thực hiện dựa trên các yếu tố thông tin đại diện
cho nội dung của tài liệu. Do đó, kết quả của tiến trình này là một tập chỉ mục đại
diện cho tài liệu đó.
2.1.2.3. Các phương tiện tìm kiếm thông tin (Search Engines)
Hình 2 minh họa cấu trúc cơ bản của các phương tiện tìm kiếm. Một phương
tiện tìm kiếm là một hệ thống tìm kiếm thông tin, tuy nhiên, nó không giống hoàn
toàn với hệ thống tìm kiếm thông tin cổ điển đã mô tả ở trên. Sự khác biệt giữa các
hệ thống tìm kiếm thông tin cổ điển và các phương tiện tìm kiếm bắt nguồn từ sự
khác biệt nguồn gốc dữ liệu, có nghĩa là một kho lưu trữ khép kín được định nghĩa
tốt trái ngược với World Wide Web. Vì không có cách tiếp cận trực tiếp đến các
tài liệu trên Web (như là có trong kho ngữ liệu thư viện), phương tiện tìm kiếm
Trang 27
phải cần đến thành phần crawler ( tạm gọi là đường chạy của xích). Thành phần
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
phần mềm này chịu trách nhiệm lấy các trang web về và lưu trữ chúng trong một
kho nội bộ. Cơ chế crawling (đường chạy của xích) đưa ra các thách thức công
nghệ liên quan đến hiệu năng của quá trình và đến sự liên quan của tài liệu – vì các
trang web là động, nên crawler phải giữ cho kho nội bộ luôn được cập nhật hằng
ngày.
Việc crawling các tài liệu ngoài Web thì không đủ bởi vì dữ liệu web gồm có
nhiều thông tin dư thừa. Phân tích toàn cục có trách nhiệm loại bỏ dữ liệu không
quan trọng như các trang Web giống nhau và các trang bao gồm sách báo không
lành mạnh. Ngoài ra, phân tích toàn cục cũng chịu trách nhiệm tính toán toàn cục
được dùng trong các hệ thống tìm kiếm thông tin như sắp xếp thứ tự trang (thứ tự
trang hầu hết được xác định bởi những trang có liên kết với nó và những trang nó
liên kết tới).
Trang 28
Hình 2.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
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
Bảng dưới đây biểu diễn sự khác biệt giữa các hệ thống tìm kiếm thông tin cổ
điển (IR cổ điển) và các hệ thống tìm kiếm thông tin Web (Web IR).
IR cổ điển Web IR
Lớn Khổng lồ Kích thước
Sạch, không trùng lắp Lộn xộn, trùng lắp Chất lượng dữ liệu
Hiếm Liên tục Tỉ lệ thay đổi dữ liệu
Có thể Truy cập một phần Khả năng truy cập dữ
liệu
Đồng nhất, cùng nguồn Rất đa dạng Đa dạng định dạng
gốc
Văn bản HTML Tài liệu
Nhỏ Lớn # liên quan
Dựa nội dung Dựa liên kết Kỹ thuật IR
Khối lượng dữ liệu trong một hệ thống IR cổ điển khá lớn, trong khi đó khối
lượng dữ liệu này trong hệ thống Web IR là khổng lồ. Khác biệt lớn nhất trong
khối lượng dữ liệu, chính là các thứ tự của lượng, ảnh hưởng đến phần cứng được
đòi hỏi (một máy tính thì không bao giờ đủ, bộ nhớ không thể chứa toàn bộ dữ
liệu) và các thuật toán (các định nghĩa hiệu năng của thời gian và không gian bị
thay đổi).
Một khác biệt nữa là khác biệt của dữ liệu. Trong hệ thống IR cổ điển dữ liệu
được làm sạch, trong khi đó dữ liệu trên Web IR thì phức tạp, cả hai đều do sự
trùng lắp vô ý và do các spam có dụng ý tăng thứ hạng của trang đó hoặc chỉ tạo
sự lộn xộn .
Như đã đề cập ở trên, sự thay đổi dữ liệu trong IR cổ điển là không thường
Trang 29
xuyên ,do đó nó thường được lập chỉ mục 1 lần. Ngược lại, dữ liệu trên Web thì
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
thay đổi thường xuyên nên chỉ mục cũng cần được cập nhật. Hơn nữa, tính khả
truy cập của dữ liệu là không quan trọng trong Web IR.
Tài liệu trong IR cổ điển thường đồng nhất về định dạng còn tài liệu trong Web
IR gồm nhiều loại khác nhau: bất cứ ai cũng có thể tạo một trang web trong bất kì
định dạng nào và bất kì ngôn ngữ nào.
Một điểm khác biệt quan trọng nữa là tài liệu web không thường xuyên được
viết ở dạng văn bản thô như trong tài liệu IR cổ điển. Trang Web thường được viết
bằng HTML (Hypertext Markup Language) , vừa có những lợi ích và bất lợi
đối với hệ thống tìm kiếm thông tin : một mặt, nó bao gồm dữ liệu có cấu trúc
giúp việc phân tích dễ dàng hơn ; mặt khác, nó thường không chứa nhiều văn bản
(hệ thống IR dựa trên thứ này), do đó khó phân loại hơn.
Kết quả trả về trong Web IR cũng nhiều hơn so với IR cổ điển, do đó khó để
sắp thứ tự danh sách kết quả hơn.
Và cuối cùng, IR cổ điển sử dụng kĩ thuật sắp thứ tự chỉ dựa trên nội dung
(content-based). Tuy nhiên, kĩ thuật này không thể áp dụng với Web IR. Nó đã
từng là một kĩ thuật thông dụng cho đến khi Google giới thiệu kĩ thuật sắp thứ tự
mới dựa trên liên kết (link-based) . Kĩ thuật sắp thứ tự dựa trên liên kết sử dụng
siêu liên kết (hyperlink) giữa các tài liệu web để sắp thứ tự các trang web một
cách hiệu quả và chắc chắn hơn.
2.1.4. So sánh tìm kiếm thông tin với tìm kiếm dữ liệu
Một hệ thống tìm kiếm thông tin không phải là một hệ thống tìm kiếm dữ liệu.
Bảng dưới đây trình bày một số thuộc tính khác nhau giữa hệ thống tìm kiếm
thông tin và hệ thống tìm kiếm dữ liệu.
Tìm kiếm thông tin Tìm kiếm dữ liệu
Văn bản tự do, không cấu Các bảng dữ liệu, có cấu Dữ liệu
trúc trúc
Từ khóa, ngôn ngữ tự nhiên SQL, đại số quan hệ Truy vấn
Trang 30
Liên quan tương đối, xấp xỉ Liên quan chính xác Kết quả
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Sắp xếp theo mức độ liên Không sắp xếp Kết quả
quan
Những người không phải Người sử dụng có kiến thức Truy cập
chuyên gia hoặc các tiến trình tự động
Hệ thống tìm kiếm thông tin thu thập tài liệu dựa trên yêu cầu thông tin của
người dùng. Câu truy vấn trên dữ liệu không có cấu trúc (thường là dạng văn bản
tự do), sử dụng từ khóa hoặc ngôn ngữ tự nhiên và do vậy có thể được viết bởi
người dùng không thông thạo. Vì cú pháp của câu truy vấn không được định nghĩa
chính xác nên kết quả có thể bao gồm các kết hợp không chính xác và thứ tự liên
quan hay tương quan (relevance) của chúng chỉ là gần đúng.
Hệ thống tìm kiếm dữ liệu thu thập một tập hợp các tài liệu phù hợp về mặt cú
pháp với câu truy vấn của người sử dụng. Câu truy vấn trên dữ liệu có cấu trúc
( hường là bảng trong cơ sở dữ liệu) và thường sử dụng một ngôn ngữ truy vấn
được định nghĩa hoàn chỉnh như là SQL hay đại số quan hệ. Người sử dụng phải
quen thuộc với cú pháp và hiểu được ngữ nghĩa của ngôn ngữ truy vấn. Vì vậy,
câu truy vấn thường được viết bởi người am hiểu hoặc một quá trình tự động. Kết
quả trả về bao gồm tất cả các tài liệu chính xác phù hợp với ngữ nghĩa của câu truy
vấn, thứ tự bất kì.
2.1.5. Công thức trừu tượng trong tìm kiếm thông tin
Gọi D là tập hợp các tài liệu và Q là tập hợp các câu truy vấn.
Hàm f: D × Q → R là hàm tính độ tương quan của một cặp (tài liệu, câu truy
vấn) bởi mức độ tương quan của tài liệu đối với câu truy vấn. Đối với mỗi câu truy
π trên D.
q
vấn q trong Q , f chỉ ra một thứ tự ( riêng phần)
Hoạt động của một hệ thống tìm kiếm thông tin bao gồm 2 pha chính. Trong
suốt pha đầu tiên, D được tiền xử lí và chỉ mục I được tạo ra tương ứng. Trong pha
thứ 2 , cho trước một câu truy vấn trong Q, I được dùng để xuất ra một hoán vị π
Trang 31
trên D.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Mục tiêu chính của một hệ thống tìm kiếm thông tin là xuất ra một hoán vị π
π bằng cách sử dụng một chỉ mục đặc và phản hồi trong một thời gian
q
gần với
ngắn. Chẳng hạn, chúng ta không muốn đạt độ chính xác cao bằng cách sử dụng
chỉ mục lớn trong đó bao gồm một hoán vị trên D cho mỗi câu truy vấn có thể có
hoặc bằng cách duyệt toàn bộ chỉ mục cho mỗi câu truy vấn.
Chúng ta sử dụng khái niệm tokens để biểu diễn tài liệu. Đặt T là không gian
tokens. Không gian tokens có thể bao gồm , ví dụ như là :toàn bộ từ trong tiếng
Anh, một tập hợp các cụm từ hoặc một tập hợp các URLs. Chúng ta định nghĩa
kR (k là số tokens trong không gian tokens).
một tài liệu là một vec-tơ thực d trong
d là trọng lượng của i
t trong d. Có rất nhiều cách để tính i
d ,cách dễ nhất là i
Goị
t trong d. i
tính số lần xuất hiện của
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
Nghiên cứu tìm kiếm thông tin dựa trên rất nhiều mô hình khác nhau. Ở đây,
chúng tôi xin nêu ra hai mô hình được sử dụng nhiều nhất.
2.1.6.1. Mô hình Đại số Bool
Mô hình liên quan (relevance) cơ bản nhất trong hệ thống tìm kiếm thông tin
cổ điển là mô hình Đại số Bool hay Boolean. Một tài liệu được định nghĩa là một
d =1 khi
i
d có mặt i
(trọng lượng boolean) trong đó vec-tơ boolean d trong
k}1,0{
trong d. Một câu truy vấn được định nghĩa là một công thức boolean q trên các
k}1,0{
→ {0,1} .Nghĩa là, q là một hàm mà khi cho trước một vec-tơ tokens :q:
biểu diễn một tài liệu thì sẽ trả về một giá trị boolean phụ thuộc vào trong
độ liên quan giữa tài liệu và câu truy vấn. Hàm tính độ liên quan được định nghĩa
đơn giản bằng cách áp dụng hàm này trên một tài liệu, f(d,q) = q(d). Ví dụ
như ,một câu truy vấn trong mô hình boolean có thể là “Micheal Jordan” AND
Trang 32
(Not basketball). Lợi ích chính của mô hình boolean là tính đơn giản cho người sử
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
dụng, tuy nhiên hàm tính độ liên quan của nó quá tồi khi nó chỉ trả về một giá trị
boolean.
2.1.6.2. Mô hình không gian vec-tơ
Mô hình thông dụng trong hệ thống tìm kiếm thông tin cổ điển dùng để sắp thứ
tự liên quan là mô hình không gian vectơ hay vec-tơ (VSM). Một tài liệu là một
kR (trọng lượng thực),
d được xác định dựa trên một hàm tính i
vec-tơ thực d trong
kR trong đó
toán, thường là điểm TF-IDF (sẽ được đề cập sau trong phần này). Tương tự như
q là i
một tài liệu, một câu truy vấn cũng là một vec-tơ thực trong
t trong q. Hàm tính độ liên quan là f(d,q) = sim (d,q) trong đó i
trọng lượng của
sim(d,q) là mức độ giống nhau giữa d và q. Tiếp theo chúng ta sẽ phương thức để
đo sự giống nhau của một vec-tơ tài liệu và một vec-tơ truy vấn, sau đó trình bày
điểm TF-IDF dùng để tính trọng lượng của tokens trong tài liệu.
Trực giác có thể dẫn ta đến cách định nghĩa sự giống nhau giữa một vec-tơ tài
liệu và một vec-tơ truy vấn bằng vec-tơ khác biệt của chúng (hình bên dưới)
Phương thức này sẽ gán một trọng lượng đáng kể cho các tokens xuất hiện
trong tài liệu nhưng không xuất hiện trong câu truy vấn. Vec-tơ truy vấn thường
thưa thớt hơn nhiều so với vec-tơ tài liệu, vì vậy một phương thức tốt hơn nên loại
(b) Cosin
(a) Vec-tơ khác nhau
bỏ hiệu ứng của các tokens không xuất hiện trong câu truy vấn.
Trang 33
Hình biểu diễn độ tương tự của vec-tơ tài liệu d và vec-tơ truy vấn q
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Phương thức đo sự giống nhau cosine (hình 5b) dựa trên quan sát ở trên, là
phương thức thông dụng để đo sự giống nhau giữa một vec-tơ tài liệu và một vec-
tơ truy vấn.
Chú ý là nếu góc giữa 2 vec-tơ nhỏ thì cosine gần tới 1, là giá trị lớn nhất của
sự giống nhau. Nếu 2 vec-tơ gần như vuông góc thì cosine gần tới không,nghĩa là
sự giống nhau nhỏ nhất.
TF-IDF là phương pháp thông dụng để “cân nặng” (đánh giá) các thuật ngữ
(term) trong một tài liệu. Ý tưởng cơ bản của phương pháp này là xem xét tính
phổ biến của một thuật ngữ trong một tài liệu khi so sánh với tính phổ biến của
1d có 100
thuật ngữ đó trong các tài liệu khác. Ví dụ như , xem xét một tài liệu
2d có 100000 thuật ngữ, 10
thuật ngữ, 10 trong số đó là “java” và một tài liệu
trong số đó là “java”. Vì tần số xuất hiện (tính phổ biến) của thuật ngữ “java”
1d cao hơn đáng kể so với trong
2d nên trọng lượng của thuật ngữ “java”
trong
1d phải cao hơn trong
2d .Bây giờ xem xét một sự thật là thuật ngữ
trong
1d . Vì nó là một thuật ngữ thông dụng trong
“the” ,cũng xuất hiện 10 lần trong
các tài liệu nên nó không nên có trọng lượng bằng thuật ngữ “java” mặc dù mức
độ phổ biến của chúng là như nhau.
N
)
Định nghĩa chính qui của điểm TF-IDF cho một tài liệu được định nghĩa như
i
,(∑= itdn
t ) là số lần xuất hiện của i
t trong d và i
D chỉ số tài liệu chứa
sau. Gọi n(d, là tổng số
i
t và D là tổng số tài liệu có trong tập hợp. i
tokens trong d.
t ) ,là tần số xuất hiện của i
t trong d. i
Tần số thuật ngữ ( term frequency) TF (d,
Có một vài cách để tính tần số thuật ngữ. 2 cách thông dụng nhất là chia số lần
xuất hiện của token trong tài liệu cho hoặc là tổng số token có trong tài liệu hoặc
Trang 34
là số lần xuất hiện của token xuất hiện nhiều nhất trong tài liệu:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Trong bất kì trường hợp nào, thuật ngữ xuất hiện nhiều hơn sẽ có điểm TF cao
(cao nhất là 1) và thuật ngữ ít xuất hiện sẽ có điểm TF gần bằng 0.
t ) (Inverse Document Frequency) là tần số nghịch đảo của i
t i
Ngược lại, IDF(
trong tất cả các tài liệu có trong tập hợp. Nó thường được đo bằng loga của tỉ số
t . i
giữa tổng số tài liệu có trong tập hợp và số tài liệu trong tập hợp có chứa
t ) = i
D ) i
log ( D / IDF (
Chú ý là hàm loga được áp dụng chỉ vì những lí do số học. Thuật ngữ thường
xuyên xuất hiện trong tài liệu như là “the” vì vậy sẽ có điểm IDF gần bằng 0 và
thuật ngữ hiếm gặp sẽ có IDF gần bằng 1. Điểm TF-IDF được tính bằng cách nhân
điểm TF và điểm IDF:
t ) = TF (d, i
t ) × IDF ( i
t ) i
TF-IDF (d,
Qua công thức trên, ta có thể thấy rằng TF-IDF sẽ cho điểm một thuật ngữ cao
hơn nếu nó xuất hiện thường xuyên trong một tài liệu và không xuất hiện thường
xuyên trong các tài liệu khác.
Mô hình không gian vec-tơ , thường xuyên sử dụng TF-IDF để đánh giá các thuật
ngữ và hàm cosine là hàm đo mức độ giống nhau, thể hiện là một phương thức
tính độ liên quan giữa một tài liệu và một câu truy vấn tin cậy hơn mô hình
boolean ở trên. Bên cạnh đó, VSM có những hiện thực hiệu quả và thể hiện hiệu
suất tốt trong thực tế. Nhược điểm chính của phương pháp này là nó giả định các
thuật ngữ độc lập nhau. Trong thực tế, các thuật ngữ thường có liên quan với nhau
Trang 35
và hiểu được điều này có thể dẫn đến việc tính độ liên quan tốt hơn.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
2.2. Đánh giá các hệ thống tìm kiếm thông tin
2.2.1. Nền tảng đánh giá các hệ thống tìm kiếm thông tin
Một trong những giới thiệu tốt nhất về đánh giá các hệ thống tìm kiếm thông tin có trong chương 7 của [ 5 ] . Ở đây, chúng tôi tập trung chủ yếu vào những gì
có thể được đánh giá trong tìm kiếm thông tin.
Mức độ bao phủ của bộ ngữ liệu: mở rộng đến mức hệ thống bao gồm các
thành phần liên quan. Vì vậy, mức độ bao phủ của tài liệu phải xử lý với
vấn đề chất lượng của bộ ngữ liệu. Điều này quan trọng trong tìm kiếm
thông tin dạng Web vì mỗi phương tiện tìm kiếm (Search engine) được biết
là có thể bao phủ 16% không gian Web.
Hiệu năng: Khoảng thời gian trung bình giữa thời gian một yêu cầu được
đưa ra và câu trả lời được trả về. Hiệu năng được xem như thời gian thực
hiện tìm kiếm, sử dụng bộ nhớ, v.v ..
Biểu diễn của kết quả trả về.
Kết quả liên quan đến người dùng trong việc lấy câu trả lời cho một yêu
cầu.
Độ bao phủ của hệ thống: tỉ lệ các tài liệu liên quan được trả về.
Độ chính xác của hệ thống :tỉ lệ các tài liệu trả về thật sự liên quan.
Cả độ bao phủ và độ chính xác đều liên quan đến hiệu quả tìm kiếm.
Trong đề tài luận văn của chúng tôi, chúng tôi tập trung vào hai khía cạnh cuối
cùng (độ bao phủ, độ chính xác của hệ thống) vì chúng chiếm ưu thế nhiều nhất
trong đánh giá các hệ thống tìm kiếm thông tin.
Hai khía cạnh này là một phần của mô hình đánh giá hướng hệ thống mà chúng
Trang 36
tôi đã đề cập trong phần tổng quan. Chúng tôi xin được nói rõ hơn về mô hình này.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
2.2.2. Mô hình đánh giá hướng hệ thống
Kỹ thuật của hướng đánh giá tìm kiếm hướng hệ thống và các độ đo khả năng
thực thi kết hợp của nó được phát triển trong một số lượng các dự án nghiên cứu
thời gian dài : Cranfield , MEDLARS, SMART, STAIRS và TREC.
Ý tưởng chính là để đo khả năng thực hiện của hệ thống tìm kiếm thông tin
bằng cách chạy một tập các câu hỏi trong bộ ngữ liệu dùng để đánh giá, được chỉ
mục bởi hệ thống và lưu lại kết quả. Đối với mỗi câu truy vấn, có thể tính được độ
chính xác và độ bao phủ của tập kết quả được lưu lại. Như đã được định nghĩa ở
chương 1, độ chính xác (precision) là tỉ lệ của tập tài liệu liên quan được trả về so
với tập tài liệu kết quả, độ bao phủ (recall) là tỉ lệ của tập tài liệu liên quan được
trả về trên tổng số tài liệu liên quan. Những định nghĩa chính xác hơn của phần
này và các độ đo liên quan sẽ được trình bày ở mục 2.2.3.
2.2.2.1. Từ Cranfield đến TREC
Dự án Cranfield do Cleverdon thực hiện thường được đánh giá như là mô hình
chủ lực của TREC. Cleverdon tạo ra các cuộc kiểm thử Cranfield, Cranfield chủ
yếu được dùng trong thí nghiệm với mục đích chính là xem xét, đánh giá các hàm,
chức năng lập chỉ mục khác nhau thực hiện khác nhau như thế nào. Mục đích
chính là xác định thuật toán nào là tối ưu nhất, phù hợp nhất với các tiêu chuẩn đo
lường và độ đo. Từ đó truyền thống nghiên cứu thử nghiệm hướng hệ thống ra đời.
Salton ở Hoa Kỳ là người đầu tiên mở rộng phương pháp thử nghiệm cho đánh giá các thuật toán tìm kiếm thông tin theo mô hình Không gian Vec-tơ [6] . Ông
bắt đầu nghiên cứu tìm kiếm thông tin tại Đại học Harvard năm 1961. Ông muốn
phát triển một khung làm việc (framework) cho so sánh khả năng lập chỉ mục và
các kỹ thuật tìm kiếm thông tin của hệ thống. Khung làm việc được thực hiện bởi
một loạt các thuật toán và được biết đến như là hệ thống SMART. Dự án SMART
có lẽ là nghiên cứu tìm kiếm thông tin kéo dài nhất cho đến ngày hôm nay, trong
khoảng thời gian từ 1961 đến khi Salton mất năm 1996, nhóm SMART đã thử
Trang 37
nghiệm nhiều khía cạnh của tìm kiếm thông tin: đánh giá thuật ngữ (term
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
weighting), mở rộng câu hỏ (query expansion), phản hồi tương quan (relevance
feedback), phân lớp (clustering) v.v. Tất cả các thử nghiệm đều dựa trên hệ thống
tìm kiếm thông tin SMART, chi tiết của hệ thống này sẽ được trình bày ở mục
3.1.4.1. Dự án SMART đạt được kết quả tốt nhất trong mô hình Không gian vec-tơ
trực quan và hiệu quả.
Chương trình TREC đang tiến hành hiện nay đã được thôi thúc bởi các nghiên
cứu Cranfield và SMART. TREC bắt đầu năm 1992 với hai nhiệm vụ chính:
nghiên cứu “ad-hoc” và nghiên cứu “routing”. Kể từ đó, nhiều nhiệm vụ mới được
kiểm tra trong nhiều track khác nhau. Ưu điểm chính của TREC là kích thước của
ngữ liệu dùng để đánh giá thực tế hơn những dự án khác và việc đánh giá thì mở
cho bất kỳ nhóm nghiên cứu nào. Những người tham gia vào TREC qua các năm
tăng lên một cách nhanh chóng. Số lượng có ý nghĩa các nhóm tham gia mỗi năm,
bảo đảm sự ổn định và có thể so sánh qua các năm. TREC sử dụng ủy ban đánh
giá từ Viện Quốc gia về Tiêu chuẩn và Công nghệ Hoa Kỳ (National Institute of
Standard and Technology - NIST) để thực hiện đánh giá. Nghiên cứu STAIR là
một trong những nghiên cứu đầu tiên phát triển thủ tục mới để đo độ bao phủ, bởi
vì kích thước lớn của ngữ liệu làm cho việc tạo bảng Đánh giá liên quan chuẩn quá
tốn nhiều chi phí. TREC cũng bố trí các độ đo bao phủ của nó trên việc xem xét
một tập nhỏ các tài liệu (pool - gọi là “hồ” hay tập hợp xác định) nhưng sử dụng
các phương pháp khác nhau để tạo nó. Tập hợp xác định này được tạo từ một mẫu
các việc chạy hệ thống tìm kiếm khác nhau (càng khác nhau càng tốt). Đối với mỗi
câu truy vấn, danh sách các tài liệu trả về được kết hợp với nhau bằng cách trộn
vào nhau và loại bỏ các tài liệu lặp lại. Kết quả là một danh sách các tài liệu thống
nhất. Cuối cùng, người đánh giá xem lại để đánh giá là các tài liệu trong danh sách
này (có một danh sách các câu hỏi) có thật sự liên quan đến câu hỏi tương ứng
không. Ảnh hưởng của TREC trong tìm kiếm thông tin là rất lớn và chất lượng của
bộ ngữ liệu kiểm tra là rất tốt vì có nhiều hệ thống tham gia đóng góp vào tập hợp
Trang 38
xác định các tài liệu và do tính chất tiếp tục của chương trình TREC. TREC đã tạo
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
ra một tài sản lớn bộ ngữ liệu dùng để đánh giá mà có thể được dùng trong số
lượng lớn các thử nghiệm được kiểm soát.
Ưu điểm lớn của các thử nghiệm được kiểm soát là nó có thể được lặp lại.
Trước khi TREC ra đời, có nhiều bộ ngữ liệu kiểm tra nhỏ, rất khó để so sánh các
phương pháp giữa các nhóm khác nhau. Tình trạng này ngăn cản sự phát triển của
đánh giá các hệ thống tìm kiếm thông tin. TREC có mục tiêu là xây dựng một số
lượng các bộ ngữ liệu đánh giá lớn cho tìm kiếm thông tin, chủ yếu là để thực hiện
đánh giá dưới các điều kiện được kiểm soát và cho phép thực hiện lại việc đánh
giá.
Nhìn vào những kết quả mà các nhóm tham gia TREC từ khi TREC bắt đầu,
chúng ta có thể thấy một sự tiến bộ đáng kể.
Chi tiết về TREC sẽ được giới thiệu trong mục 2.2.4 .
2.2.2.2. Thủ tục đánh giá
Phương pháp thử nghiệm hướng hệ thống được thực hiện qua các bước phân
biệt sau:
• Trước hết, xây dựng một bộ ngữ liệu dùng để đánh giá. Bộ ngữ liệu dùng
để đánh giá gồm có tập các tài liệu mẫu, tập câu truy vấn mẫu, và bảng
đánh giá liên quan chuẩn. Theo lý thuyết, mỗi kết hợp câu truy vấn-tài liệu
đều được kiểm tra liên quan. Nhưng trên thực tế, chỉ một phần tập tài liệu
được xem xét cho mỗi câu truy vấn.
• Các hệ thống tìm kiếm thực hiện tìm kiếm trên bộ ngữ dùng để đánh giá:
lập chỉ mục tập tài liệu, tạo các câu hỏi từ chủ đề (topic), tạo bảng liên quan
có thứ tự các tài liệu cho mỗi câu hỏi.
• Đánh giá các độ đo thực hiện: Các độ đo cổ điển là độ bao phủ và độ chính
xác, nhưng có một số lượng lớn các độ đo khác. Đó là độ đo trung bình
nghiêm ngặt (Mean average precision).
• Đánh giá tầm quan trọng của kết quả trả về bằng phương pháp thống kê.
Trang 39
Các độ đo thực hiện toàn bộ hệ thống tìm kiếm chủ yếu được lấy trung bình
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
trên tập câu hỏi. Vì tính chất biến đổi của các câu hỏi là rất lớn, và sự thay
đổi của các độ đo tính toán là rất cao, nên đòi hỏi một phương pháp phân
tích thống kê thích hợp để đánh giá xem sự khác biệt được đo giữa các hệ
thống có phải là có ý nghĩa thống kê đến một độ tin cậy nhất định không.
2.2.2.3. Đánh giá sự liên quan
Trong đánh giá các hệ thống tìm kiếm thông tin theo kiểu của TREC, có hai
giả định quan trọng, mà không có trong các thiết lập ở thế giới thực :
• Sự liên quan hoàn toàn theo khái niệm: một tài liệu chỉ có thể là liên
quan hoặc không liên quan.
• Sự liên quan của một tài liệu hoàn toàn độc lập với các tài liệu khác.
Các giả định này làm đơn giản việc đo các hệ thống tìm kiếm. Nhiều nhà
nghiên cứu đã thử nghiệm với nhiều tỉ lệ khác nhau của sự liên quan. Các tỉ lệ này
được trình bày rõ hơn trong mục 2.2.3.4.
Giả định về sự liên quan của một tài liệu hoàn toàn độc lập với các tài liệu khác
không thực tế trong hầu hết các trường hợp. Trong hầu hết các trường hợp tìm
kiếm thông tin cơ bản, chẳng hạn tìm kiếm thông tin trên web, những người tìm
kiếm muốn tìm một câu trả lời cho một câu hỏi xác định hay một vài tham khảo.
Giả sử rằng người sử dụng sẽ bắt đầu duyệt qua các tài liệu được tìm thấy bắt đầu
từ những tài liệu liên quan nhất, các tài liệu ít liên quan hơn thì phụ thuộc vào tài
liệu liên quan đã đọc. Xác suất có tài liệu mới giảm dần theo danh sách tài liệu. Sự
phụ thuộc này thường bị bỏ qua bởi các nhà nghiên cứu tìm kiếm thông tin.
Có nhiều mối quan tâm về tính chủ quan của thủ tục đánh giá. Con ngừơi
thường có những ý kiến khác nhau về sự liên quan. Điều này có ảnh hưởng xấu
đến sự phát triển của các đánh giá của TREC. Tuy nhiên, đã có nhiều nghiên cứu
để giải quyết vấn đề này và thấy rằng ảnh hưởng trên tập các hệ thống có kết quả
sắp thứ tự liên quan thì có thể bỏ qua. Một nghiên cứu gần đây liên quan đến bộ
ngữ liệu để đánh giá của TREC kiểm thử nhiều vấn đề khác nhau:
Trang 40
• Đánh giá bởi tác giả khác với không phải tác giả
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
• Đánh giá một bảng khác với đánh giá nhóm bảng đánh giá • Đánh giá trong cùng một môi trường khác với đánh giá nhiều môi trường
Những yếu tố này ảnh hưởng đến giá trị tuyệt đối của các độ đo khả năng thực
hiện, nhưng thứ tự liên quan của các hệ thống vẫn ổn định.
2.2.3. Thực hiện đo khả năng tìm kiếm
Các độ đo cổ điển cho khả năng tìm kiếm của các thử nghiệm hệ thống thông
tin là độ bao phủ và độ chính xác. Trong những phần tiếp theo, chúng tôi mô tả
các thủ tục để đo độ chính xác và độ bao phủ và tính độ đo cho các hệ thống tìm
kiếm có kết quả được sắp thứ tự trong tình huống không thể đánh giá tất cả các tài
liệu trong bộ ngữ liệu kiểm tra. Từ độ bao phủ và độ chính xác, chúng tôi dùng
phương pháp tính độ chính xác dựa trên 11 điểm của độ bao phủ để tính độ chính
xác. Kết quả trả về từ phương pháp này là một bảng biến thiên của độ chính xác và
độ bao phủ hay là một hàm số của độ chính xác dựa trên độ bao phủ. Có thể biểu
diễn đồ thị liên hệ giữa độ chính xác và độ bao phủ từ hàm số này để cho biết hiệu
quả trả về của hệ thống một cách trực quan, và có thể so sánh nhiều hệ thống với
nhau dựa trên đồ thị.
(cid:131) Tính liên quan của tài liệu (relevant ):
2.2.3.1. Các khái niệm về độ đo và liên quan
Một tài liệu được gọi là có liên quan khi nội dung của tài liệu đó có đề
(cid:131) Độ bao phủ (Recall - R):
cập đến vấn đề mà câu truy vấn của người dùng quan tâm.
Cho biết khả năng của hệ thống tìm kiếm được những tài liệu có liên
(cid:131) Độ chính xác (Precision - P):
quan.
(cid:131) Khả năng loại bỏ: (Fall out - F):
Cho biết khả năng của hệ thống tìm được những tài liệu chính xác
Trang 41
Cho biết khả năng của hệ thống loại bỏ những tài liệu không liên quan
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Tập dữ liệu về tài liệu
A ∩ B
B
A
Tập tài liệu có liên quan
Tập tài liệu trả về
Tập tài liệu trả về có liên quan
Có liên quan Không liên quan (Relevant) (non- relevant)
A
B
A ∩ B
∩ B
A ∩
∩
Tìm thấy (retrieved) Không tìm thấy (not retrieved)
(cid:131) Độ bao phủ (R):
A ∩ B
2.2.3.2. Cách tính độ bao phủ (R) và độ chính xác (P)
( 1 )
R =
B
(cid:131) Độ chính xác (P):
( 2 )
A ∩ B
P =
A
(cid:131) Khả năng loại bỏ: (Fall out - F):
∩B
( 3 )
Trang 42
F =
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
R * G
(cid:153) Mối liên hệ giữa R, P, F:
( 4 )
R * G + F* (1-G)
F =
G : là nhân tố tổng quát đo độ dày đặc của tài liệu liên quan trong tập dữ
A
liệu (cid:217) G cho biết độ liên quan của tài liệu so với câu truy vấn là cao hay thấp
( 5 )
Với S là tập tài liệu
G =
S
(cid:153) Vấn đề đo độ bao phủ:
Tính độ bao phủ là một vấn đề khó khăn trong việc đánh giá hệ thống tìm
kiếm thông tin bởi vì nó liên quan đến việc định giá thủ công tổng số tài liệu
liên quan trong tập tài liệu đối với mỗi câu truy vấn (vấn đề tạo bảng liên quan
lý thuyết) , việc định giá như vậy rất tốn kém nếu tập dữ liệu lớn. Để giải quyết
vấn đề này người ta đưa ra phương pháp “pooling”.Ý tưởng của phương pháp
“pooling” là trong danh sách tài liệu trả về chỉ lấy n tài liệu đầu, n được gọi là
chiều dài của “pool”.
Việc tạo bảng liên quan lý thuyết áp dụng phương pháp “pooling” được tiến
hành như sau: tiến hành tìm kiếm trên nhiều hệ thống áp dụng phương pháp
“pooling”, có thể tài liệu liên quan được trả về của một hệ thống là cao, ta tiến
hành giao các tập tài liệu liên quan trả về của các hệ thống đó và chỉ lấy n tài
liệu đầu.
Bởi vì tập kết quả trả về được sắp xếp theo thứ tự nên độ chính xác và độ
bao phủ có thể tính được tại các ngưỡng vị trí thứ tự thứ i tài liệu.
(cid:153) Vấn đề bảng liên quan thực tế
Đối với cách tính trên ta phải quan niệm về độ liên quan của tài liệu trên 2
Trang 43
mức độ : hoặc là tài liệu có liên quan hoặc là tài liệu không liên quan. Cách
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
quy ước như vậy nhằm làm đơn giản hoá cách đánh giá. Trên thực tế , độ liên
quan của tài liệu không chỉ là 2 mức độ mà có thể có nhiều mức độ.
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ủ
2.2.3.3.1. Đồ thị biểu diễn hiệu suất thực thi hệ thống tìm kiếm
(cid:131) Ứng với 1 câu truy vấn được thực hiện bởi hệ thống sẽ có 1 độ bao
phủ (Ri) , độ chính xác (Pi) cụ thể .
(cid:131) Với 1 cặp (Ri,Pi) biểu diễn trên hệ trục toạ độ ROP tương ứng với 1
điểm.
(cid:131) Biểu diễn kết quả của tập câu truy vấn trên ROP ta sẽ có 2 đường
cong mô tả hiệu suất thực thi của hệ thống. Đường cong có dạng:
(cid:131) Từ đồ thị ta có thể rút ra kết luận: độ bao phủ vả độ chính xác có
mối quan hệ gần như tỷ lệ nghịch, khi R tăng thì P có thể sẽ giảm và
ngược lại.
(cid:131) Khi ta cố gắng làm tăng R bằng cách tăng số tài liệu trả về (N), theo
công thức (1) :
N tăng nên cơ may số tài liệu có liên quan sẽ tăng trên tổng số tài
liệu có liên quan so với câu truy vấn trong bảng liên quan chuẩn là
Trang 44
không đổi
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:214) R sẽ có thể tăng
(cid:131) Mặt khác theo công thức (2) do N tăng có nghĩa là số tài liệu trả về
tăng mặc dù số tài liệu có liên quan tăng nhưng không đáng kể so
với số tài liệu trả về (lúc này cũng tăng) nên P sẽ giảm.
Nói cách khác, khi cho hệ thống thực thi 1 câu truy vấn mà ta tăng số tài
liệu trả về thì kết quả sẽ có được nhiều tài liệu có ích nhiều hơn nhưng số tài
liệu không liên quan (tài liệu rác) cũng sẽ tăng.
2.2.3.3.2. Đường cong độ bao phủ và độ chính xác RP
Cơ sở tính bảng giá trị cho đường cong RP dựa vào bảng liên quan lý
thuyết và danh sách tài liệu liên quan đã được sắp thứ tự do hệ thống tìm kiếm
thông tin trả về(còn gọi là bảng liên quan thực tế).
Xét ví dụ sau:
Thực hiện kiểm tra hệ thống tìm kiếm thông tin với tập câu hỏi.
Xét câu hỏi thứ k, cách tính như sau:
Tài liệu liên quan được trả về là phần giao của danh sách tài liệu liên
quan theo lý thuyết và theo thực tế => Tổng số tài liệu liên quan được trả
về : 5
Bảng giá trị R,P tính với n tài liệu được trả về
Số tài liệu n Doc Liên quan Độ bao Độ chính Số tài
liệu liên ID theo lý phủ (R) xác (P) liệu trả
quan được thuyết ? về
trả về
1 588 1 1 1/5=0.2 1/1=1.00 true
2 589 2 2 2/5=0.4 2/2=1.00 true
3 576 false 2 3 2/5=0.4 2/3=0.67
4 590 3 4 3/5=0.6 3/4=0.75 true
5 986 false 3 5 3/5=0.6 3/5=0.60
Trang 45
6 592 4 6 4/5=0.8 4/6=0.67 true
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
7 984 false 4 4/5=0.8 4/7=0.57 7
8 988 false 4 4/5=0.8 4/8=0.50 8
9 578 false 4 4/5=0.8 4/9=0.44 9
10 985 false 4 4/5=0.8 4/10=0.40 10
11 103 false 4 4/5=0.8 4/11=0.36 11
12 591 false 4 4/5=0.8 4/12=0.33 12
13 772 5 5/5=1.0 5/13=0.38 13 true
14 990 false 5 5/5=1.0 5/14=0.36 14
Nhìn bảng giá trị trên, ta thấy tại giá trị R=0.6 có 2 giá trị P (P=0.75 và
P=0.6) và ngược lại tại giá trị P=1.0 có 2 giá trị R (R=0.2, R=0.4)
Để xây dựng đường cong cho một câu truy vấn ta dùng phương pháp tính
nội suy độ chính xác dựa trên 11 điểm chuẩn của độ bao phủ:
Xét các giá trị R tại các điểm chuẩn 0.0, 0.1, 0.2, 0.3, 0.4,0.5,0.6,0.7,0.8,0.9,
P = max P với j ≥ i
R( i )
R( j )
1.0, tại các vị trí tính giá trị P theo công thức sau:
Ta có bảng nội suy các giá trị P cho câu hỏi thứ k như sau:
N Doc Độ bao Độ chính Độ chính Độ bao
ID phủ (R) xác đã nội xác (P) phủ chuẩn
suy hoá
1 588 1/5=0.2 1/1=1.00 1.00 0.0
2 589 2/5=0.4 2/2=1.00 1.00 0.1
3 576 2/5=0.4 2/3=0.67 1.00 0.2
4 590 3/5=0.6 3/4=0.75 1.00 0.3
5 986 3/5=0.6 3/5=0.60 1.00 0.4
6 592 4/5=0.8 4/6=0.67 0.75 0.5
Trang 46
7 984 4/5=0.8 4/7=0.57 0.75 0.6
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
8 988 4/5=0.8 4/8=0.50 0.7 0.67
9 578 4/5=0.8 4/9=0.44 0.8 0.67
10 985 4/5=0.8 4/10=0.40 0.9 0.38
11 103 4/5=0.8 4/11=0.36 1.0 0.38
12 591 4/5=0.8 4/12=0.33
13 772 5/5=1.0 5/13=0.38
14 990 5/5=1.0 5/14=0.36
0 . 1
8 . 0
i
i
n o s c e r
6 . 0
P
4 . 0
2 . 0
Đồ thị RP cho câu hỏi thứ k:
2.2.3.3.3. Đường cong RP cho tập truy vấn
Xét tập câu truy vần gổm N câu truy vấn
- Lần lượt tính bảng giá trị RP nội suy như trên (tính P dựa trên 11 điểm
chuẩn của R)
Trang 47
- Tính giá trị trung bình P tại các điểm chuẩn của R như sau:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Nhận xét:
Phương pháp đánh giá hệ thống dựa vào bảng giá trị RP nội suy không
đánh giá một cách chính xác hiệu suất tìm kiếm thông tin của hệ thống tìm
kiếm thông tin bởi vì các giá trị của R,P là các giá trị nội suy.
2.2.3.3.4. Đánh giá hệ thống tìm kiếm thông tin dựa vào đồ thị
Ta tiến hành kiểm tra 2 hệ thống với cùng 1 tập tài liệu mẫu và tập câu
truy vấn mẫu. Giả sử đồ thị diễn của 2 hệ thống như sau:
Nhìn trên đồ thị :
Đường cong A biểu diễn hiệu suất thực thi của hệ thống A
Đường cong B biểu diễn hiệu suất thực thi của hệ thống B
Do đường A nằm trên đường B nên hiệu suất của hệ thống A lớn hơn hệ
thống B
(cid:214) Một cách tổng quát : đường cong nào càng gần về phía góc trên bên
phải của hệ trục toạ độ (có nghĩa là độ chính xác và độ bao phủ là lớn nhất)
thì đó chính là đường cong biểu diễn hiệu suất thực thi tốt nhất.
Với cách biểu diễn trên đồ thị như vậy ta có thể đánh giá nhiều hệ thống
Trang 48
hoặc đánh giá 1 hệ thống trong những điều kiện thực thi khác nhau.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
2.2.3.4. Sự liên quan giữa câu hỏi và tài liệu
2.2.3.4.1. Các độ liên quan
(cid:131) Độ liên quan nhị phân (binary relevance): là độ liên quan chỉ có 2
Các độ liên quan được nói đến rất rõ trong [ 7 ].
giá trị : hoặc là có liên quan (relevant _ 1), hoặc không liên quan
(cid:131) Độ liên quan nhiều mức độ (độ liên quan đa cấp độ) : (multiple
(not relevant _ 0).
degree relevance, multiple level relevance): độ liên quan được xét ở
nhiều mức độ ,có nhiều giá trị . Ví dụ độ liên quan 3 mức độ :
- Mức độ có liên quan (relevant): 2
- Mức độ liên quan bộ phận (partically relevant): 1
- Không liên quan (not relevant) : 0
2.2.3.4.2. Các vấn đề về độ liên quan
(cid:131) một tập tài liệu (document) đại diện
(cid:131) một tập chủ đề (topic) đại diện
(cid:131) một vài câu truy vấn cho mỗi chủ đề
(cid:131) bảng đánh giá độ liên quan của mỗi tài liệu với mỗi chủ đề
Cơ sở đánh giá hệ thống tìm kiếm thông tin:
Do đó vấn đề cơ bản của việc đánh giá là phải thống nhất quan điểm
về mức độ liên quan.
Độ liên quan là một khái niệm đa khía cạnh (multifaceted), đa chiều
(multidimensional). Khái niệm về độ liên quan đến nay vẫn là một vấn đề khó
khăn trong lĩnh vực khoa học thông tin.Những cuộc nghiên cứu gần đây đã tập
trung vào nhân tố ảnh hưởng lên việc đánh giá độ liên quan và chiều (hoặc tiêu
chuấn) của độ liên quan. Có nhiều loại độ liên quan: độ liên quan thuật toán, độ
liên quan chủ đề, độ liên quan nhận thức, độ liên quan tình huống, độ liên quan
Trang 49
động cơ.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Độ liên quan vốn mang tính chủ quan, đánh giá độ liên quan thường không
thống nhất do tính cá nhân và nhân tố thời gian :
- Một tài liệu được đánh giá là có liên quan với tỉ lệ nào đó nhưng đồi
với người khác tỉ lệ này sẽ khác => độ liên quan phủ thuộc tính cá
nhân
- Một tài liệu được đánh giá là có liên quan với tỉ lệ nào đó tại thời
điểm t , nhưng tại thời điểm t’ tỉ lệ đó sẽ thay đổi => độ liên quan
phụ thuộc nhân tố thời gian . Tuy nhiên sự thay đổi này có thể chấp
nhận được do nó tương đối thấp
Trong hầu hết các thử nghiệm đánh giá hệ thống tìm kiếm thông tin (bao gồm
cả những thử nghiệm của TREC) người ta thường quan tâm độ liên quan nhị phân
(có nghĩa là tài liệu hoặc là được đánh giá là có liên quan (1) hoặc không có liên
quan (0)). Ưu điểm của dộ liên quan nhị phân là việc tính toán R, P đơn giản ;
khuyết điểm là không thể phản ánh được khả năng liên quan của tài liệu ở nhiều
mức độ đúng với thực tế.
Trong cách đánh giá tìm kiếm thông tin của TREC, khái niệm “liên quan” là
một khái niệm tuyệt đối: một tài liệu hoặc là liên quan hoặc là không liên quan.
Điều giả sử này nhằm làm đơn giản hóa việc tính toán các độ đo. Nhiều cuộc kiềm
tra khác đã tiến hành đánh giá với tỷ lệ độ liên quan nhiều mức độ.
Độ liên quan 3 cấp độ đã được thực hiện ở Hội nghị NTCIR 1999 (NII-
NACSIS Test Collection for IR systems), WEB track của TREC-9.
Độ liên quan 4 cấp được dùng trong NTCIR 2000.
Tỷ lệ độ liên quan của một tài liệu tại vị trí thứ N sẽ được trừ hao, điều này
phản ánh một tình trạng là tài liệu trả về càng phía dưới danh sách càng có ít giá trị
hơn đối với người sử dụng : mặc dù do mức độ tương quan không giảm nhưng sự
trùng lắp thống tin với những tài liệu phía trên cũng làm cho tài liệu phìa dưới kém
phần giá trị hơn.
Giả sử rằng sự liên quan của một tài liệu là độc lập với các tài liệu khác là
Trang 50
không thực tế trong hầu hết các trường hợp. Trong hầu hết các nhiệm vụ tìm kiếm
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
thông tin cơ bản giống như tìm kiếm trên mạng, tìm kiếm câu trả lời cho một câu
hỏi đặc biệt nào đó hoặc cho một vài sự tham khảo nào đó, giả sử rắng một người
dùng đọc lướt qua các tài liệu được trả về sẽ bắt đầu với tài liệu dễ thấy nhất ,nổi
bật nhất (ở phía trên danh sách) do đó độ liên quan của tài liệu phía dưới danh
sách sẽ phụ thuộc vào những tài liệu đã được đọc. Khả năng một tài liệu chứa
những thông tin mới sẽ giảm xuống đến cuối danh sách tài liệu. Sự phụ thuộc này
thường được bỏ qua trong những lần nghiên cứu tìm kiếm thông tin.
Ngoài ra việc định giá độ liên quan này mang tính chủ quan. Chúng ta
thường có nhiều ý kiến khác nhau về mức độ liên quan. Do đó mức độ liên
quan của tài liệu được phân biệt:
(cid:131) bảng liên quan đươc định giá do tác giả của tài liệu hay không
phải tác giả
(cid:131) bảng liên quan được định giá bởi một nhóm đánh giá
(cid:131) bảng liên quan được định giá trong cùng điều kiện hay được định
giá trong các điều kiện khác nhau
2.2.3.4.3. Đánh giá với độ liên quan nhiều cấp độ
(Multiple degree relevance or non-binary relevance)
Trong một vài thử nghiệm về đánh giá độ liên quan nhiều cấp độ chỉ có một
vài thí nghiệm thực sự cho thấy lợi ích của việc đánh giá độ liên quan ở nhiều
cấp độ khác nhau.
Độ bao phủ (R) , độ chính xác (P) là phương pháp cổ điển để đánh giá khả
năng thực thi của IR và thường được tính dựa trên việc đánh giá độ liên quan
nhị phân. Do đó việc đánh giá độ liên quan nhiều cấp độ chỉ được tiến hành ở
bước đầu , sau đó những giá trị mức độ sẽ được qui về 2 giá trị 0,1 để đánh giá
o có liên quan (relevant) => ký hiệu A
o
Ví dụ : đánh giá độ liên quan được tiến hành 3 mức độ:
o không liên quan (not relevant) => ký hiệu C
Trang 51
liên quan một phần (partically relevant ) => ký hiệu B
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Mức độ liên quan sẽ được qui về 2 giá trị để tính R , P. Có 2 cách tính:
A, B mang giá trị 1 (có liên quan)
C mang giá trị 0 (không liên quan)
hoặc
A mang giá giá trị 1 (có liên quan)
B,C mang giá trị 0 (không liên quan)
Với cách tiến hành như vậy để duy trì mức độ liên quan của tài liệu,
định dạng một tập tin đánh giá độ liên quan (relevant judgement) như sau:
topic-ID dumy doc-ID relevant assessment
Trong đó :
topic-ID : chỉ số của chủ đề (topic)
dumy : là trường cho biết tài liệu đó có mức độ liên quan là bao
nhiêu (A,hoặc B ,hoặc C)
doc-ID : chỉ số tài liệu
relevant assessment: mang giá trị 0 hoặc 1 , giá trị đánh giá độ liên
quan sau khi được qui về độ liên quan nhị phân.
o độ liên quan cao (highly relevant)
o độ liên quan vừa (fairly relevant)
o độ liên quan trung bình (marginally relevant)
o không liên quan (irrelevant)
Một ví dụ khác về đo độ liên quan của tài liệu ở 4 mức độ:
Tuy nhiên trong các Hội nghị về Đánh giá các hệ thống thông tin gần đây,
độ liên quan nhị phân vẫn còn được xem là một cách đánh giá chuẩn, thậm chí
nhiều trường hợp đánh giá độ liên quan ở nhiều cấp độ nhưng cũng được qui
về đánh giá nhị phân để tính độ bao phủ và độ chính xác. Cách tiến hành này
có khuyết điểm là nó không kiểm tra được từng mức độ cụ thể của độ liên quan.
Một số người có quan điểm là cách đo độ R và P dựa vào việc đánh giá nhị
Trang 52
phân là nên tránh vì cách tính như vậy không quan tâm đến sự thay đổi và độ
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
phức tạp của mức độ liên quan, làm sai lệch tính tự nhiên và thực tế của độ liên
quan. Một giải pháp để giải quyết vấn đề này là tổng quát hoá độ R và P.
Dựa vào lý thuyết, thực nghiệm, nghiên cứu, mức độ liên quan của tài liệu
thay đổi một cách rõ ràng, một vài tài liệu thì liên quan nhiều hơn, một số khác
thì ít hơn. Thật là khó để xác định mức độ liên quan khi tiến hành đánh giá.
Điều này còn tuỳ thuộc vào tình huống đánh giá hệ thống của chúng ta.
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 độ
Phương pháp đo dựa vào độ bao phủ (R ) và độ chính xác (P) là một
phương pháp truyền thống nhưng độ đo R,P chỉ được tính dựa vào độ liên quan
nhị phân
Đối với trường hợp độ liên quan nhiều cấp độ ta có 2 cách giải quyết sau:
- qui tất cả mức độ liên quan về 2 giá trị 0,1 (giống như đưa về dộ liên
quan nhị phân ) => cách này theo Schamber là nên tránh
- tổng quát hoá R và P
(cid:153) Độ bao phủ tổng quát và độ chính xác tổng quát:
(generalized , non-binary recall and precision)
Gọi R là tập n tài liệu được phục hồi từ cơ sở dữ liệu tài liệu
D= { d1, d2, …, dN } với một câu truy vấn thuộc về một chủ đề nào
đó , R ≤ D
Gọi tài liệu di trong cơ sở dữ liệ tài liệu có tỉ lệ độ liên quan là r(di)
Độ bao phủ tổng quát gR và độ chính xác tổng quát gP được tính
theo công thức như sau:
∑r(d) d є R ∑r(d) d є D
Trang 53
gP = gR= ∑ r(d) d є R n
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Cách tính này cũng tương tự tính R, P nhị phân truyền thống , nó cũng cho
phép tính R trung bình và P trung bình của tập câu truy vấn, tính P dựa trên R,
hoặc tính dựa trên ngưỡng giới hạn số tài liệu trả về và cũng cho phép biểu diễn
đường cong PR
Ghi chú : r(d) là một con số thực có giá trị trong khoảng (0.0, 1.0)
Ví dụ với mức độ liên quan là 4. Tính r(d)
o Mức độ liên quan cao : 3 => r(d)=3/4
o Mức độ liên quan vừa : 2 => r(d)=2/4
o Mức độ liên quan trung bình : 1 => r(d)=1/4
Không liên quan :0 => r(d)=0
2.2.4. TREC và đánh giá theo chuẩn TREC
2.2.4.1. TREC là gì?
TREC là viết tắt của Text REtrieval Conference, có nghĩa là Hội nghị về Tìm
kiếm Thông tin Văn bản, được tổ chức hằng năm tại Viện Quốc gia về Tiêu chuẩn và Công nghệ Hoa Kỳ (NIST _ National Institute Standard and Technology) [ 8].
TREC là một loạt Hội nghị chuyên cung cấp cơ sở hạ tầng cho việc kiểm tra, đánh
giá quy mô lớn về công nghệ tìm kiếm (chủ yếu là tìm kiếm văn bản). Hội nghị
TREC được tạo ra để thúc đẩy nghiên cứu về các công nghệ tìm kiếm thông tin.
Các mục tiêu chính của TREC là :
• Khuyến khích các nghiên cứu trong tìm kiếm thông tin dựa trên ngữ liệu
đánh giá qui mô lớn.
• Phát triển giao tiếp, liên lạc giữa các ngành công nghiệp, giáo dục và chính
phủ bằng cách cung cấp một diễn đàn mở để trao đổi các ý kiến nghiên cứu. • Hỗ trợ trao đổi công nghệ từ những phòng thí nghiệm nghiên cứu thành
những sản phẩm thương mại.
• Cải thiện vượt bật các phương pháp luận tìm kiếm trên các vấn đề thế giới
Trang 54
thực và các độ đo cho tìm kiếm thông tin.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
• Tạo ra một loạt ngữ liệu đánh giá liên quan các khía cạnh khác nhau của
tìm kiếm thông tin.
• Phát triển các công nghệ đánh giá thích hợp sẵn có mà được sử dụng bởi
ngành công nghệp và giáo dục, bao gồm cả việc phát triển các công nghệ
đánh giá mới thích hợp hơn với các hệ thống hiện tại.
Kêu gọi tham gia
Tiến hành công bố
Xác định công việc
Hội nghị TREC
Kiếm được tài liệu
Phân tích kết quả
Phát triển chủ đề
Đánh giá kết quả
Thử nghiệm tìm kiếm thông tin
Đánh giá độ liên quan
Chu trình Hội nghị hằng năm của TREC :
TREC gồm các lĩnh vực tập trung khác nhau gọi là TRACK. Nhiệm vụ của các
TRACK chủ yếu là tập trung vào vấn đề con của tìm kiếm thông tin văn bản.
Chính những TRACK này tiếp thêm sinh lực, và làm cho TREC tiếp tục phát
triển vì những TRACK này thực hiện :
+ Ngữ liệu chuyên môn hóa hỗ trợ nghiên cứu trong các lĩnh vực mới.
+ Những thí nghiệm qui mô lớn gỡ những lỗi mà công việc gặp phải.
Trang 55
+ Cung cấp những dấu hiệu về sự phát triển của công nghệ đánh giá.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Tuy nhiên, sự phát triển tập hợp TRACK trong một TREC cụ thể phụ thuộc
vào :
+ Sự hưởng ứng của những người tham gia.
+ Các công việc mà TREC đưa ra có thích hợp hay không
+ Nhu cầu về tài trợ
+ Sự ràng buộc về nguồn ngữ liệu…
Đánh giá theo tiêu chuẩn của TREC chính là xây dựng bộ ngữ lịêu dùng để
đánh giá theo chuẩn của TREC và phương pháp đánh giá theo độ liên quan theo
chuẩn TREC, thêm vào đó là phương pháp đánh giá kết quả theo chuẩn 11 điểm
của độ bao phủ.
Vì phương pháp đánh giá theo độ liên quan, phương pháp đánh giá kết quả
theo chuẩn 11 điểm của độ bao phủ đã được trình bày đến trong các phần trên nên
chúng tôi chủ yếu sẽ trình bày trong phần tiếp theo về cách xây dựng ngữ liệu của
TREC.
2.2.4.2. Cách xây dựng ngữ liệu của TREC
Như chúng tôi đã đề cập, TREC đánh giá các hệ thống tìm kiếm thông tin theo
mô hình hướng hệ thống. Theo mô hình này, bắt buộc hệ thống đánh giá phải thực
hiện các công việc đã đề cập trong phần 2.2.2. Trong đó, phần xây dựng bộ ngữ
liệu đánh giá là phần quan trọng nhất và TREC làm rất tốt công việc này do kích
thước của bộ ngữ liệu rất lớn và thực tế. Ngoài ra, việc đánh giá thì mở cho rất
nhiều nhóm nghiên cứu, số người tham gia vào TREC qua các năm tăng lên một
cách nhanh chóng. Số lượng có ý nghĩa các nhóm tham gia mỗi năm, bảo đảm sự
ổn định và có thể so sánh qua các năm. TREC cũng xây dựng bộ ngữ liệu dùng để
đánh giá gồm ba phần : tập tài liệu hay kho ngữ mẫu, tập câu truy vấn, và bảng
đánh giá liên quan chuẩn. Đối với từng phần, TREC đều đưa ra các chuẩn xây
Trang 56
dựng và định dạng khá tốt. Vì vậy, chúng tôi cũng thực hiện định dạng bộ ngữ liệu theo chuẩn TREC. Sau đây là cách xây dựng ngữ liệu của TREC [ 9].
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
2.2.4.2.1. Xây dựng tập hợp các tài liệu
Tùy thuộc vào mục đích, nhu cầu của người thực hiện đánh giá, họ sẽ chọn
tập các tài liệu xác định để xây dựng. Tập tài liệu này phải là mẫu của các loại
văn bản mà họ chọn. Tuy nhiên, tập các tài liệu này phải được xem xét các
điều kiện về thể loại, số lượng, là văn bản đầy đủ hoặc là bản tóm tắt. Ngoài ra,
việc lựa chọn tập tài liệu mà phản ánh được tính đa dạng của vấn đề, của việc
lựa chọn từ ngữ, văn phong, hình thức… cũng rất quan trọng. Tập hợp tài liệu
thường phải rất lớn.
Ngữ liệu chính của TREC chứa 3 gigabytes văn bản (trên 1,000,000 tài
liệu). Các tài liệu được sử dụng ở các TRACK khác nhau là nhỏ hoặc lớn phụ
thuộc vào nhu cầu của TRACK đó và dữ liệu có sẵn.
Các tập tài liệu chính của TREC chủ yếu bao gồm những bài báo giấy và
những bài báo điện tử, ngoài ra còn có một số tài liệu khác nhưng số lượng tài
liệu này rất ít. Những cấu trúc cấp cao trong mỗi tài liệu được gán nhãn bằng
SGML, và mỗi tài liệu được gán bởi một thẻ xác định duy nhất được gọi là
DOCNO (số thứ tự của tài liệu). Để giữ tính thật của tài liệu, văn bản sẽ được
giữ gần giống với văn bản gốc có thể. Tuy nhiên, ngữ liệu của TREC không
được xác định, sửa các lỗi chính tả, tách câu, tách những bảng cấu trúc lạ và
những lỗi tương tự như vậy.
2.2.4.2.2. Xây dựng các chủ đề
TREC phân biệt một lời yêu cầu thông tin (topic - chủ đề ) với cấu trúc dữ
liệu mà được thật sự đưa vào trong một hệ thống tìm kiếm thông tin (query -
câu truy vấn). Bộ ngữ liệu của TREC cung cấp các chủ đề cho phép một phạm
vi lớn các phương pháp tạo câu truy vấn được đánh giá và cũng bao gồm một
sự trình bày rõ ràng rằng tiêu chuẩn gì làm cho tài liệu liên quan đến chủ đề.
Mỗi cách trình bày chủ đề thường gồm bốn phần : một thẻ định danh
(number), một tiêu đề (title), một đoạn mô tả (description) và một đoạn
Trang 57
tường thuật (narrative).
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Trong đó thẻ định danh được dùng để phân biệt các chủ đề với nhau. Còn
đoạn mô tả được dùng để mô tả rõ ràng hơn nội dung tiêu đề của chủ đề. Đoạn
tường thuật được tạo ra để làm chuẩn cho biết tài liệu nào thật sự liên quan đến
chủ đề đang đề cập.
Ngoài ra, những phần khác nhau của các chủ đề của TREC cho phép người
nghiên cứu kiểm tra hiệu quả chiều dài những câu truy vấn khác nhau với biểu
diễn tìm kiếm.
Từ một chủ đề có thể tạo ra nhiều câu truy vấn khác nhau. Khi tìm kiếm,
các câu truy vấn sẽ được sử dụng để tìm kiếm. Thông thường, mỗi năm TREC
lại tạo 50 chủ đề mới.
Chủ đề được tạo ra bởi những người đánh giá. Họ tạo ra các chủ đề ứng
viên và gởi đến NIST. Các chủ đề ứng viên này liên quan đến những vấn đề bất
kỳ mà họ quan tâm. Sau đó, NIST sẽ tìm kiếm thông tin với các chủ đề ứng
viên này bằng hệ thống tìm kiếm TREC PRISE. Cuối cùng, NIST sẽ chọn ra
những chủ đề nào có số lượng kết quả trả về gần với ngưỡng các tài liệu liên
quan đã được đặt ra và số lượng các chủ để được chọn phải chia đều cho những
người đánh giá
2.2.4.2.3. Xây dựng bảng đánh giá liên quan chuẩn
Bảng đánh giá liên quan chuẩn là bảng chứa các chủ đề và các tài liệu liên
quan thật sự của các chủ đề đó. Dựa trên bảng đánh giá liên quan chuẩn này,
người đánh giá xác định các tài liệu nào là thật sự liên quan đến chủ đề nào sau
khi chạy các hệ thống tìm kiếm. TREC hầu như sử dụng bảng đánh giá liên
quan theo độ liên quan nhị phân (hoặc tài liệu liên quan đến chủ đề hoặc
không). Để biết là tài liệu đó có liên quan thật sự hay không thì người đánh giá
sẽ xem trong phần tường thuật của chủ đề. Phần này ghi rất chi tiết về những
tài liệu như thế nào là liên quan. Sau đó, người đánh giá sẽ đánh dấu tài liệu
Trang 58
nào là liên quan và tài liệu nào không liên quan.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Ví dụ : Chủ đề về “kinh tế tri thức”, nó có tường thuật là : “Các tài liệu
được gọi là liên quan là những tài liệu nói về nền kinh tế tri thức, thế nào là
nền kinh tế tri thức, ảnh hưởng của nền kinh tế tri thức của các nước trên thế
giới”.
Nhưng cách đánh giá bằng thủ công của người không thể thực hiện được
với số lượng tài liệu quá lớn, đặc biệt là tài liệu của TREC. Vì vậy, TREC áp
dụng phương pháp Pooling để làm bảng đánh giá liên quan chuẩn. Phương
pháp này chúng tôi đã trình bày ở trên. Tại NIST, khi những người tham gia
đăng ký hệ thống tìm kiếm của họ tại NIST, họ phải thực hiện tìm kiếm với các
chủ đề của NIST bằng hệ thống tìm kiếm của họ. Sau đó, kết quả được sắp xếp
theo thứ tự các tài liệu trong bộ ngữ liệu kiểm tra đối với từng chủ đề. NIST sẽ
chọn một số các kết quả và trộn lại với nhau, nếu chọn càng nhiều hệ thống thì
bảng đánh giá liên quan chuẩn càng chính xác. Sau mỗi lần chạy, X tài liệu
đúng nhất (thường X =100) được thêm vào trong Pool hay còn gọi là danh sách
các tài liệu chính xác của từng chủ đề. Nhiều tài lịêu được tìm thấy trong trong
X có trong nhiều hơn một lần chạy để tìm kiếm, vì vậy Pool thường nhỏ hơn
con số lý thuyết X*số_lượng _các_bảng_kết_quả_được_chọn.
Bộ ngữ liệu dùng để đánh giá theo phương pháp Pooling mặc dù không công
bằng lắm trong trường hợp đánh giá các hệ thống chưa tham gia vào tìm kiếm
để lấy bảng đánh giá liên quan chuẩn nhưng phương pháp này cho ra kết quả
có thể tin cậy được. Và sự khác biệt khi tính độ bao phủ, độ chính xác không
chênh lệch nhiều so với đánh giá bằng thủ công.
2.3. Ngữ liệu tiếng Việt
Chúng tôi xây dựng bộ ngữ liệu dùng để đánh giá bằng tiếng Việt và chương
trình đánh giá các hệ thống tìm kíêm thông tin, đặc biệt là các hệ thống tìm kiếm
Trang 59
thông tin tiếng Việt nên việc nói đến ngữ liệu tiếng Việt 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
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
Trang 60
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
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ừ
Trang 61
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
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ú
Trang 62
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
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ể
Trang 63
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
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.
(cid:153) 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
Trang 64
đá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
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
Trang 65
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
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
Trang 66
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
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
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
độ tương tự. Quá trình này , hệ thống SMART dùng mô hình vec-tơ.
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
….
Trang 67
DOC3 TERM31 TERM32 … TERM3t
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
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
(cid:131) Biểu diễn hình học của tập vec-tơ 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
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
(TERMik * TERMjk)
sau:
COS (DOCi, DOCj)=
t ∑ k=1 t
(TERMik)^2
(TERMjk)^2
t √ ∑ √ ∑ k=1
k=1
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 (cid:217) tài liệu DOCi và DOCj có cùng chủ đề
Trang 68
Để thể hiện ý nghĩa trên ta có khái niệm độ tương tự
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:214) Độ 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
(cid:214) Đâ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
t COS (DOCi, Qj) = ∑ k=1 t
t
(QTERMjk)^2
(TERMik * QTERMjk) √ ∑ √ ∑ (TERMik)^2 k=1
k=1
bởi 2 vector Qj và DOCi .
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
• Mục đích của việc phân tài liệu:
liệu, những tài liệu có độ tương tự gần nhau sẽ xếp vào 1 lớp
Là để tạo ra 1 tập tin cluster document. Dưới đây là ví dụ của tập tin
Trang 69
cluster:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
x
x
o
x
x
x
x
x
o
x
o x
x
o
o
x
x
x
x
x
o
x
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
• Cách tính vector centroid
trên hình vẽ là ‘o’.
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
m
1 CTERMpk = ∑ TERMik m i=1
Trong đó :
• Mục đích của việc đưa ra vector centroid:
với TERMik là trọng số của term k của tài liệu i trong lớp p
Đầ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ả
Trang 70
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
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
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
(cid:214) 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 n
x + ≥ 2√ n
x n
Dấu “=” xảy ra khi x = (cid:217) 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
Trang 71
các superclass
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
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à
• Một ví dụ về cấu trúc của tập tin cluster:
vector centroid thoả ở bước 2
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
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
……
Trang 72
những cluster vừa mới có thêm tài liệu mới
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
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
Trang 73
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
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
Trang 74
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
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 hệ thống tìm
kiếm chủ yếu là việc lập chỉ mục câu hỏi, tài liệu để cho người đánh giá thấy
một cách trực quan cách lập chỉ mục của hệ thống tìm kiếm và so sánh cách lập
chỉ mục của các hệ thống với nhau. Nhưng phần quan trọng nhất mà chương
trình phải hỗ trợ đó là tính hiệu suất thực thi của các hệ thống tìm kiếm thông
tin để biết được hệ thống tìm kiếm có tốt hay không. Hiệu suất thực thi được
tính dựa trên độ đo độ bao phủ và độ chính xác của kết quả mà hệ thống tìm
kiếm trả về. Hiệu suất thực thi của từng hệ thống và so sánh hiệu suất của các
hệ thống được biểu diễn bằng đồ thị trực quan cho phép người đánh giá có thể
dễ dàng xác định khả năng tìm kiếm của một hệ thống và so sánh nhiều hệ
thống tìm kiếm với nhau.
3.2.1.3. Phạm vi
Phạm vi của hệ thống đánh giá là chỉ trợ giúp các hệ thống IR có:
- các file kết quả và file chỉ mục là dạng XML
- tập dữ liệu kiểm thử (tập tài liệu và tập câu hỏi) có thể ở dạng XML hay
dạng text file
3.2.1.4. Chức năng
- Định dạng tập tài liệu và tập câu hỏi của chương trình phù hợp với cấu
Trang 75
trúc hệ thống IR
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- cho phép thực thi một hệ thống IR (với điều kiện hệ thống IR phải có
file thực thi)
- Cho phép xem cách thức hoạt động của hệ thống IR (ví dụ như cách lập
chỉ mục bộ ngữ liệu dùng để đánh giá).
- Hiểu thông tin kết quả trả về của hệ thống IR và tính toán ,đánh giá hệ
thống IR đó
- cho phép xem kết quả đánh giá của một hệ thống cụ thể
- so sánh các hệ thống IR
cho phép xem đồ thị biểu diễn đường cong RP chuẩn hóa
3.2.1.5. Tính khả dụng
- Tương thích, chạy được trên hai môi trường Windows và Linux
- Giao diện người dùng dễ sử dụng, cho phép định dạng, xem hệ thống tìm
kiếm thực thi và đánh giá trực quan bằng đồ thị.
3.2.1.6. Hiệu suất
- có khả năng định dạng bộ ngữ liệu dùng để đánh giá kích thước lớn một
cách nhanh chóng.
3.2.1.7. Tính bảo mật
(không có)
3.2.2. Phân tích hệ thống đánh giá
3.2.2.1. Chức năng của hệ thống
(cid:131) Đánh giá kết quả truy vấn của một hệ thống IR
(cid:131) So sánh hiệu suất thực thi của nhiều hệ thống IR
Trang 76
Hệ thống trợ giúp đánh giá có các chức năng chính sau:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.2.2.2. Chức năng yêu cầu
3.2.2.2.1. Chức năng đánh giá một hệ thống IR
3.2.2.2.2. Chức năng so sánh nhiều hệ thống IR
Trang 77
3.2.2.2.3. Sơ đồ use case
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
So sanh nhieu he thong IR
Thuc thi he thong IR
(from Use Cases)
(from Use Cases)
Dinh dang tai lieu
He thong IR
(from Use Cases)
(from Actors)
NguoiSuDung
Dinh dang index file
Tap du lieu kiem tra
(from Actors)
(from Use Cases)
(from Actors)
Dinh dang cau hoi
(from Use Cases)
Dinh dang ket qua
(from Use Cases)
Xem ket qua danh gia
(from Use Cases)
(cid:153) Mô tả usecase:
Dinh dang tai lieu
Usecase này cho phép người sử dụng chuyển đổi cấu trúc tập tài liệu
của chương trình thành cấu trúc tài liệu của hệ thống IR
Dinh dang cau hoi:
Usecase này cho phép người sử dụng chuyển đổi cấu trúc tập câu hỏi
của chương trình thành cấu trúc câu hỏi của hệ thống IR
Thuc thi he thong IR:
Usecase này cho phép thực thi một hệ thống IR bên ngoài
Dinh dang ket qua:
Usecase này cho phép người sử dụng chuyển đổi cấu trúc tập tin kết quả
của hệ thống IR thành cấu trúc tập tin kết quả do chương trình định
nghĩa và xử lý các thông tin kết quả này để đánh giá hệ thống IR
Dinh dang index file:
Usecase này cho phép người sử dụng chuyển đổi cấu trúc tập tin index
của hệ thống IR thành cấu trúc tập tin index do chương trình định nghĩa
Trang 78
Xem ket qua danh gia
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Usecase này cho phép người sử dụng xem kết quả đánh giá hệ thống IR
So sanh nhieu he thong IR
Usecase này cho phép so sánh nhiều hệ thống IR với nhau
3.2.2.2.4. Sơ đồ tuần tự hoạt động usecase
TH_DDTaiLieu
XL_Doc
XL_XML
XL_Text
LT_XML
LT_Text
: NguoiSuDung
Mo man hinh
Nhap thong tin dinh dang
Yeu cau chuyen sang XML
Dinh dang tai lieu
Chuyen doi XML
Ghi file XML
Yeu cau chuyen sang text
Chuyen doi text
Ghi file text
Yeu cau dinh dang text
Trang 79
Dinh dang tai lieu:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
XL_Topic
TH_DDCauHoi
XL_XML
XL_Text
LT_XML
LT_Text
: NguoiSuDung
Mo man hinh
Nhap thong tin dinh dang
Yeu cau chuyen sang XML
Dinh dang cau hoi
Chuyen doi XML
Ghi file XML
Yeu cau chuyen doi sang text
Dinh dang cau hoi text
Chuyen doi sang Text
Ghi file text
Trang 80
Dinh dang cau hoi:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
TH_ThucThiHT
TH_DKThucThi
XL_HeThongIR
: NguoiSuDung
: He thong IR
Mo man hinh
Yeu cau thuc thi he thong IR
Xet tap du lieu kiem tra da san sang ?
Chua san sang Yeu cau nhap vi tri luu tru tap du lieu
Nhap vi tri luu tap du lieu
Sao chep tap du lieu den vi tri yeu cau
Thuc thi he thong
hien thi he thong IR
Da san sang
Thuc thi he thong
Hien thi he thong IR
Trang 81
Thuc thi he thong IR:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
TH_DDKetQua
XL_KetQua
XL_XML
LT_XML
: NguoiSuDung
Mo man hinh
Nhap thong tin dinh dang
Yeu cau dinh dangDinh dang ket qua IR Lay du lieu file kq
doc file ket qua
Thong tin ve ket qua
Tao file ket qua co cau truc cua chuong trinh
Ghi file XML
Trang 82
Dinh dang ket qua
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
TH_DDIndex
XL_XML
LT_XML
: NguoiSuDung
XL_Index
Mo man hinh
Nhap thong tin dinh dang
Yeu cau chuyen doi
Chuyen doi file index tai lieu
Lay thong tin file index tai lieu
Thong tin file index tai lieu
Tao file index tai lieu theo cau truc cua chuong trinh
Ghi file XML
Chuyen doi file index cau hoi
Lay thong tin file index cau hoi
Thong tin file index cau hoi
Ghi file XML
Dinh dang index file:
Trang 83
Xem ket qua danh gia
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
XL_Topic
TH_Kq_DanhGia
TH_XemChiTietTH_DoThi_HeThong
XL_KetQua
XL_Doc
XL_Index
XL_HeThongIR
XL_XML XL_DoThi LT_XML
: NguoiSuDung
Mo nam hinh
Yeu cau thong tin ve cac he thong da danh gia
Lay noi dung cua cac the theo yeu cau cua file xml
Doc file he thong
danh sach he thong
Hien thi danh sach he thong Chon he thong can xem
Lay noi dung cua cac the theo yeu cau cua file xml
Doc file danh gia
Lay danh sach cac cau hoi duoc kiem tra Danh sach cau hoi
xem thong tin lien quan cua mot cau hoi
Lay cac tai lieu lien quan den cau hoi do va ket qua danh gia
Lay noi dung cua cac the theo yeu cau cua file xml
Doc file danh gia
Cac tai lieu lien quan va thong tin danh gia
Hien thi ket qua danh gia
Yeu cau xem thong tin chi tiet
Mo man hinh xem chi tiet
Lay noi dung cua cau hoi
Doc file cau hoi tuong ung
Lay noi dung cua cac the theo yeu cau Noi dung theo yeu cau
Noi dung cau hoi
Lay noi dung tai lieu lien quan va do tuong quan
Lay noi dung cua cac the theo yeu cau
Doc file tai lieu tuong ung
Noi dung theo yeu cau
Noi dung tai lieu lien quan va do tuong quan
Lay thong tin chi muc cua tai lieu va cau hoi
Lay noi dung cua cac the theo yeu cau
Doc file index cua tai lieu va cau hoi
Noi dung theo yeu cau
Noi dung index
hien thi thong tin lien quan cua cau voi voi 1 tai lieu
Yeu cau xem do thi he thong
Lay thong tin ve do chinh xac o 11 diem chuan cua do bao phu
Lay noi dung cua the theo yeu cau Doc file he thong
Ve do thi he thong
Hien thi duong cong RP len do thi
Trang 84
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
TH_SoSanhHT
XL_HeThongIR
XL_DoThi
XL_XML
LT_XML
: NguoiSuDung
Mo man hinh
Lay danh sach cac he thong
Lay thong tin cac the theo yeu cau
Doc file he thong
Thong tin theo yeu cau
Danh sach he thong IR
Hien thi cac he thong IR
Chon cac he thong IR can so s anh
Lay gia tri R,P chuan cua cac he thong
Lay thong tin cac the theo yeu cau
Doc file he thong
thong tin theo yeu cau
Thong tin R,P o 11 diem chuan
Yeu cau ve do thi
Hien thi cac duong cong RP len do thi
Trang 85
So sanh nhieu he thong IR
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3. Thiết kế hệ thống đánh giá
Đánh giá nhiều hệ thống IR
Đánh giá một hệ thống IR
Thực thi hệ thống IR
Xử lý kết quả trả về
3.3.1. Các chức năng của chương trình
Định dạng cơ sở dữ liệu kiểm tra Định dạng tập kết quả Định dạng index file
3.3.1.1. Chức năng “Định dạng cơ sở dữ liệu tài liệu”
Chương trình phải xây dựng tập cơ sở dữ liệu dùng cho việc kiểm tra
các hệ thống IR . Tập cơ sở dữ liệu bao gồm : các tài liệu , tâp câu truy vấn .
(Ngoài ra còn có bảng kết quả đánh giá chuẩn để so sánh hệ thống IR với
các hệ thống IR chuẩn). Với chức năng này, chương trình sẽ cho phép
người dùng khai báo định dạng dữ liệu (bao gồm tài liệu và câu truy vấn)
mà hệ thống IR của họ cần. Dựa vào định dạng này , chương trình sẽ tạo
tập dữ liệu có nội dung là tập dữ liệu của mình nhưng có cấu trúc của hệ
thống IR
3.3.1.2. Chức năng “Định dạng kết quả trả về”
Hệ thống IR sau khi thực hiện tất cả các câu truy vấn trong tập cơ sở dữ
liệu tài liệu , sẽ gửi kết quả thực thi về cho chương trình.
Mỗi hệ thống IR sẽ định dạng kết quả trả về khác nhau, và kết quả trả về
mà chương trình quan tâm là tập tin kết quả ghi nhận sự liên quan của mỗi
Trang 86
câu hỏi với tập tài liệu
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Chức năng này ghi nhận các thông tin định dạng kết quả tạo file kết quả
có cấu trúc của chương trình và ghi nhận thông tin kết quả của hệ thống IR
(cid:206) tạo bảng liên quan thực tế (do chương trình IR cần đánh giá cung cấp)
3.3.1.3. Chức năng “Định dạng file index”
Hệ thống IR có lưu trữ thông tin lập chỉ mục cho tài liệu và cho câu
hỏi Để hỗ trợ người dùng đánh giá chức năng lập chỉ mục của hệ thống IR,
chương trình hiện thị thông tin chỉ mục của hệ thống IR. Do đó chức năng
này cho phép người dùng khai báo cấu trúc file index để chương trinh lấy
thông tin
3.3.1.4. Chức năng “Thực thi hệ thống IR”
Gọi thực thi hệ thống IR
3.3.1.5. Chức năng “Xử lý kết quả trả về”
Dựa vào bảng đánh giá chuẩn (bảng liên quan theo lý thuyết) và bảng
liên quan tính độ bao phủ,độ chính xác và các giá trị độ chính xác tại 11
điểm chuẩn của độ bao phủ, tính giá trị độ bao phủ trung bình, độ chính xác
trung bình
3.3.1.6. Chức năng ”Đánh giá một hệ thống IR”
Dựa vào tập kết quả trả về đã được cấu hình theo định dạng của chương
trình, chuương trình sẽ tính hiệu suất thực thi của hệ thống dựa vào độ bao
phủ và độ chính xác
3.3.1.7. Chức năng “Đánh giá nhiều hệ thống IR”
Dựa vào tập tin lưu trữ kết quả trả về của từng hệ thống mà nó đã đánh
Trang 87
giá, chương trình sẽ so sánh các hệ thống
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2. Thiết kế hệ thống
TH_Main
TH_DDTaiLieu TH_DDCauHoi
TH_DKThucThi
TH_ThucThiHT
TH_TTTaiLieu TH_TTCauHoi
TH_DDIndex
TH_DDKetQua
Tầng thể hiện
TH_DoThi_HeThong
TH_SoSanhHT
TH_XemChiTiet
CHeThongIR
CKetQua
CIndex
CFormat
CTopic
CRelevant
CDocument
Tầng xử lý
XL_Index
XL_KetQua
XL_HeThongIR
XL_Doc
XL_Topic
XL_XML
XL_Text
XL_DoThi
LT_XML
LT_Text
Tầng lưu trữ
TH_KqDanhGia
3.3.2.1. Sơ đồ kiến trúc tổng thể
3.3.2.1.1. Danh sách các lớp đối tượng
STT Tên
3.3.2.1.2. Lớp đối tượng thể hiện
Ý nghĩa Ghi chú
1 TH_Main Màn hình chính Từ màn hình chính, chúng ta
của chương trình có thể thực thi tất cả các
chức năng của chương trình
2 TH_DDTaiLieu Định dạng tài liệu Tất cả tài liệu của chương
Trang 88
trình được lưu bằng file
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
XML, chức năng này của
chương trình cho phép
chuyển đổi các tài liệu XML
thành các tài liệu XML khác
(có định dạng khác) hoặc tài
liệu dạng text (phù hớp với
định dạng của file tài liệu
của hệ thống IR bên ngoài)
3 TH_TTTaiLieu Định dạng thuộc Khi chuyển các file XML tài
tính cho các thẻ liệu của chương trình (F1)
tài liệu nếu có sang file XML khác (F2) :
các thẻ của F1 tương ứng với
các thẻ của F2 mà các thẻ
của F2 có thuộc tính là các
thẻ của F1 hoặc thẻ mới thì
chương trình sẽ hiện thị màn
hình TH_TTTaiLieu cho
phép người dùng định nghĩa
các thuộc tính đó
Chú ý : với chức năng
chuyển từ file XML (file tài
liệu của chương trình) sang
file text (file tài liệu phù hợp
với hệ thống IR) sẽ không
cần màn hình này
4 TH_DDCauHoi Định dạng câu (tương tự TH_DDTaiLieu)
hỏi
Trang 89
5 TH_TTCauHoi Định dạng thuộc (tương tự TH_TTTaiLieu )
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
tính cho các thẻ
câu hỏi nếu có
Màn hình này chỉ dùng khi 6 TH_DKThucThi Màn hình nhập
người dùng không định dạng điều kiện cần
tài liệu và câu hỏi và muốn thiết trước khi
thực thi hệ thống IR. Nhiệm thực thi hệ thống
vụ của màn hình này là yêu
cầu người dùng cung cấp nơi
lưu trữ tập tài liệu và tập câu
hỏi của hệ thống IR
7 TH_ThucThiHT Thực thi hệ thống Tại màn hình này sẽ gọi các
IR bên ngoài hệ thống IR cần thực thi sau
khi đã chuyển đối tập dữ liếu
kiểm tra (gồm tập tài liệu và
tập câu hỏi)phù hợp với hệ
thống IR đó.
8 TH_DDKetQua Định dạng kết Sau khi thực thi hệ thống IR
quả xong, chúng ta cần lấy thông
tin về định dạng các file kết
quả của hệ thống IR trả về để
chương trình có thể đánh giá
dựa trên các file kết quả này
Chức năng định dạng tập tin 9 TH_DDIndex Màn hình định
chỉ mục không bắt buộc dạng các tập tin
chỉ mục của tập
tài liệu và tập câu
hỏi
Trang 90
10 TH_Kq_DanhGia Hiện thị kết quả Màn hình này chỉ thể hiện
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
đánh giá của một đánh giá dưới góc độ hệ
hệ thống IR thống
Tại màn hình xem kết quả 11 TH_XemChiTiet Màn hình cho
đánh giá (TH_Kq_DanhGia), phép xem thông
khi muốn xem chi tiết sự liên tin cụ thẻ của một
quan của một tài liệu cụ thể tài liệu liên quan
với một câu truy vấn nào đó đến 1 câu truy
chương trình sẽ gọi màn vấn
hình này
12 TH_DoThi_HeThon Màn hình biểu
g diễn đường cong
RP của một câu
hỏi
13 TH_SoSanhHT So sánh các hệ
thống IR
STT Tên
3.3.2.1.3. Lớp đối tượng xử lý
Ý nghĩa Ghi chú
Cấu trúc định dạng như sau: 1 CFormat Cho phép khai
- oldId: thứ tự của thẻ trong tài báo cấu trúc của
liệu cũ các dạng định
- newId: thứ tự của thẻ trong tài dạng của tài
liệu mới liệu và câu hỏi
- oldTag: tên thẻ (section) cũ
- newTag: tên thẻ (section) mới
- haveAttr : đánh dấu nếu thẻ đó
có thuộc tính
Trang 91
- attrArray: mảng lưu trữ giá trị
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
thuộc tính (có kiểu CFormat)
(Ghi chú: các trường
haveAttr,attrArray chỉ dùng đối
với file XML không dùng cho file
text)
Thông tin định dạng của các thẻ ,
thuộc tính của thẻ(nếu là file
XML) và thông tin định dạng của
các section (nếu là file text) sẽ
được ghi nhận thông qua lớp
Cformat. Thông tin này sẽ được
chuyển xuống cho lớp XL_Doc để
thực hiện việc chuyển đổi
Cấu trúc của một tài liệu như sau: 2 CDocument Cho phép khai
- DocID: để phân biệt các tài liệu báo cấu trúc của
- Title: chủ đề của câu hỏi đó tài liệu để lưu
- Author: tác giả của tài liệu đó trữ các giá trị
- Date: ngày tạo tài liệu nội dung của
- News: tài liệu được lấy từ đâu các thẻ (hoặc
- Content: nội dung tài liệu section) của tài
Nội dung của các thẻ hay các liệu
section của tài liệu sẽ được trả về
cho chương trình thông qua lớp
CDocument khi cần
Chương trình thông qua lớp 3 XL_Doc Xử lý các họat
XL_Doc để thực hiện các chức động , các chức
năng như: năng của tài
Trang 92
- chuyển tài liệu theo định dạng liệu
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
của hệ thống IR bất kỳ
- lấy các danh sách các tài liệu
- lấy thông tin một tài liệu bất kỳ
dựa vào chỉ số của nó (DocID), …
(chú ý: thông tin hệ thống sẽ được
trả về dưới cấu trúc của lớp
CDocument)
Cấu trúc của một câu hỏi (topic) 4 CTopic Cho phép khai
gồm: báo cấu trúc của
- TopID : để phân biệt các câu hỏi câu hỏi để lưu
- Title : nội dung của câu hỏi trữ các giá trị
- Description: giải thích câu hỏi nội dung của
- Narrative: yêu cầu mức độ tương các thẻ (hoặc
quan của một tài liệu được cho là section) của câu
có liên quan đến câu hỏi đó hỏi
Nội dung của các thẻ hay các
section của câu hỏi sẽ được trả về
cho chương trình thông qua lớp
CTopic khi cần
Chương trình thông qua lớp 5 XL_Topic Xử lý các họat
XL_Topic để thực hiện các chức động , các chức
năng như: năng của câu
- chuyển file câu hỏi theo định hỏi
dạng của hệ thống IR bất kỳ
- lấy các danh sách các câu hỏi
- lấy thông tin một câu hỏi bất kỳ
dựa vào chỉ số của nó (TopID), …
Trang 93
(chú ý: thông tin hệ thống sẽ được
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
trả về dưới cấu trúc của lớp
CTopic)
Cấu trúc một hệ thống IR như sau: 6 CHeThongIR Cho phép khai
- TenHT: tên hệ thống báo cấu trúc của
- ID: chỉ số của hệ thống để phân hệ thống IR để
biệt các hệ thống lưu trữ các giá
- Ngày kiểm tra: ngày giờ tiến trị nội dung của
hành kiểm tra hệ thống IR đó các thẻ (hoặc
- R trung bình: độ bao phủ trung section) của hệ
thống IR bình của hệ thống IR đó (tính trên
tổng số câu hỏi thực thi)
- P trung bình: độ chính xác trung
bình của hệ thống IR đó (tính trên
tổng số câu hỏi thực thi)
Các chức năng liên quan đến hệ 7 XL_HeThongIR Xử lý các họat
thống IR : động chức năng
- Thực thi hệ thống IR liên quan đến
- Lấy danh sách các hệ thống IR hệ thống IR
đã được đánh giá
- Lấy thông tin một hệ thống IR
bất kỳ dựa vào chỉ số của nó (ID)
…
(chú ý: thông tin hệ thống sẽ được
trả về dưới cấu trúc của lớp
CHeThongIR)
File kết quả là một file lưu trữ mối 8 CKetQua Cho phép khai
liên hệ giữa các câu hỏi với các tài báo cấu trúc
Trang 94
liệu và mức độ liên quan của nó định dạng các
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
file kết quả trả (độ tương quan) . Cấu trúc của kết
quả CKetQua: về của hệ thống
- TopicID: tên thẻ tương ứng với
TopicID trong file kết quả trả về
của hệ thống IR
- DocID: tên thẻ tương ứng với
DocID trong file kết quả
- ThuocTinh_TopicID: tên thuộc
tính tương ứng với thẻ TopicID
( nếu thẻ tương ứng với TopicID
có thuộc tính )
- ThuocTinh_DocID:thẻ thuộc
tính tương ứng với thẻ DocID
( nếu thẻ tương ứng với DocID có
thuộc tính )
- TagSim: thẻ tương ứng với thẻ
định nghĩa độ tương quan
- ThuocTinh_Sim:thẻ thuộc tính
tương ứng với thẻ TagSim (nếu
thẻ TagSim có thuộc tính)
Chương trình dùng lớp CketQua
để định nghĩa định dạng của file
kết quả trả về của một hệ thống IR
bất kỳ
Cấu trúc mô tả sự liên quan như 9 CRelevant Cho phép khai
sau: báo cấu trúc sự
- DocID: tài liệu tại vị trí thứ tự n liên quan của
Trang 95
của danh sách các tài liệu trả về đã tài liệu tại vị trí
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
thứ tự n của sắp xếp.
danh sách các - Relevant : tài liệu trả về đó có
tài liệu trả về liên quan hay không
- Precision: độ chính xác của tài của một câu hỏi
liệu ở vị trí thứ tự n
- Recall: độ bao phủ của tài liệu ở
vị trí thứ n
(cid:131) Chức năng xử lý kết quả trả về 10 XL_KetQua Xử lý các chức
của hệ thống IR: năng liên quan
- Chuyển đổi định dạng của file đến kết quả trả
kết quả từ hệ thống IR bên ngoài về của hệ thống
sang định dạng mà chương trình IR và xử lý
chức năng đánh định nghĩa để chương trình hiểu
giá hệ thống IR và sử dụng
đó (cid:131) Chức năng xử lý đánh giá hệ
thống IR:
- Tính độ bao phủ, độ chính xác
cho từng câu hỏi và độ chính xác
tại 11 điểm chuẩn của độ bao phủ
- Ghi nhận kết quả đánh giá
- Phát sinh tự động chỉ số Id
cho các hệ thống thực hiên kiểm
tra
- Tính độ bao phủ trung bình
và độ bao phủ chính xác cho hệ
thống IR đó
- Tính độ chính xác dựa trên 10
Trang 96
điểm chuẩn của độ bao phủ
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Lấy thông tin đánh giá trả về
cho chương trình ….
Chương trình sẽ hỗ trợ hiện thị 11 CIndex Cho phép khai
thông số lập chỉ mục của hệ thống báo cấu trúc
IR, cho phép người dùng có thể định dạng các
dựa vào kết quả đó để đánh giá file index trả về
phương pháp lập chỉ mục của hệ của hệ thống IR
thống IR đó.
Cấu trúc của CIndex:
- ID : thẻ trong file chỉ mục mô tả
chỉ số của câu truy vấn hay tài liệu
được lập chỉ mục
- ThuocTinh_ID: thuộc tính của
thẻ ID nếu ID có thuộc tính (tức là
nếu trong thẻ ID không chứa nội
dung của chỉ số tài liệu hay câu
hỏi mà nội dung đó được lưu
trong thuộc tính của thẻ ID)
- Term: thẻ mô tả từ có nghĩa
trong tài liệu hay câu hỏi được lập
chỉ mục
- ThuocTinh_Term: thuộc tính của
thẻ Term (nếu nội dung của từ lưu
trong thuộc tính của thẻ Term)
- Weigh: thẻ mô tả trọng số của từ
(term) trên
- ThuocTinh_Weigh: thuộc tính
Trang 97
của thẻ Weigh nếu nội dung trọng
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
số lưu trong thuộc tính của thẻ
Weigh
Người dùng cung cấp các thông số
về tên thẻ trong tập tin chỉ mục
tương ứng cấu trúc các thẻ trong
CIndex của chương trình đã được
định nghĩa như trên để chương
trình thực hiện việc ánh xạ lấy
thông tin lập chỉ mục của hệ thống
IR
Các chức năng của lớp 12 XL_Index Xử lý các chức
XL_Index : năng liên quan
- chuyển đổi định dạng của file đến file index
Index của hê thống IR trả về của hệ
- lấy thông tin về file index sau thống IR
khi đã định dạng trả về cho
chương trình ứng với một câu hỏi
(hay tài liệu )bất kỳ
13 XL_DoThi Xử lý việc liên
quan đến vẽ đồ
thị
14 XL_XML Thực hiện các
chức năng tạo
file XML ,
chuyển đổi một
file XML bất kỳ
sang một file
Trang 98
XML có định
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
dạng khác
15 XL_Text Thực hiện các
chức năng tạo
file text ,
chuyển đổi một
file XML bất kỳ
sang một file
text có định
dạng khác
3.3.2.1.4. Lớp đối tượng lưu trữ
STT Tên Ý nghĩa Ghi chú
1 LT_XML Thực hiện việc đoc ghi các file XML,
thao tác trực tiếp với file XML
2 LT_Text Thực hiện việc đoc ghi các file text,
thao tác trực tiếp với file text
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
3.3.2.2.1. Chức năng “Định dạng tài liệu”
Qui trình thực hiện
Để định dạng tài liệu, chúng ta cần thực hiện các bước sau:
Thông qua TH_DDTaiLieu:
- Chọn loại file mà tài liệu cần kết xuất (là file xml hay text)
- Nếu là file text : chương trình yêu cầu người dùng ánh xạ các thẻ
của tài liệu với các section tương ứng do hệ thống IR quy định,
Trang 99
trong trường hợp không tồn tại section tương ứng với thẻ tài liệu
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
của chương trình , chương trình sẽ cho phép người dùng tự định
nghĩa thêm section mới
- Nếu là file xml: chương trình yêu cầu người dùng ánh xạ các thẻ
của tài liệu với các thẻ tương ứng do hệ thống IR quy định.
Tương tự như trên người dùng cũng được phép định nghĩa thẻ
mới
Thông qua TH_TTTaiLieu: (chỉ dùng trong trường hợp file kết xuất
là file xml)nếu các thẻ tương ứng của hệ thống IR có thẻ có thuộc
tính ứng với thẻ tài liệu của chương trình hoặc là thẻ mới cũng được
thực hiện
TH_DDTaiLieu
TH_TTTaiLieu
CFormat
CDocument
XL_Doc
XL_XML
XL_Text
LT_XML
LT_Text
Sơ đồ:
3.3.2.2.2. Chức năng “Định dạng câu hỏi”
Qui trình thực hiện:
Để định dạng câu hỏi, chúng ta cần thực hiện các bước sau:
Thông qua TH_DDCauHoi:
- Chọn loại file mà câu hỏi cần kết xuất (là file xml hay text)
- Nếu là file text : chương trình yêu cầu người dùng ánh xạ các thẻ
của câu hỏi với các section tương ứng do hệ thống IR quy định,
Trang 100
trong trường hợp không tồn tại section tương ứng với thẻ câu hỏi
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
của chương trình , chương trình sẽ cho phép người dùng tự định
nghĩa thêm section mới
- Nếu là file xml: chương trình yêu cầu người dùng ánh xạ các thẻ
của câu hỏi với các thẻ tương ứng do hệ thống IR quy định.
Tương tự như trên người dùng cũng được phép định nghĩa thẻ
mới
Thông qua TH_TTCauHoi: (chỉ dùng trong trường hợp file kết xuất
là file xml)nếu các thẻ tương ứng của hệ thống IR có thẻ có thuộc
tính ứng với thẻ câu hỏi của chương trình hoặc là thẻ mới cũng được
thực hiện
TH_DDCauHoi
TH_TTCauHoi
CFormat
CTopic
XL_Topic
XL_XML
XL_Text
LT_XML
LT_Text
Sơ đồ:
(cid:153) (chú ý: các section hoặc thẻ mới có thể có thứ tự khác với thứ tự của các
thẻ tài liệu hay thẻ câu hỏi)
3.3.2.2.3. Chức năng “Thực thi hệ thống”
Qui trình thực hiện:
Chương trình gọi hệ thống IR bên ngoài thực hiện chức năng tìm
Trang 101
kiếm trên kho dữ liệu đã được định dạng
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
TH_ThucThiHT
XL_HeThongIR
Sơ đồ
3.3.2.2.4. Chức năng “Định dạng kết quả”
Qui trình thực hiện:
Sau khi hệ thống IR thực hiện tim kiếm xong trên kho dữ liệu do chương
trình cung cấp, chương trình yêu cầu hệ thống IR cung cấp thông tin định
dạng của file kết quả. Để định dạng file kết quả ta tiến hành các bước sau:
Chương trình chỉ chấp nhận file kết quả trả về của hệ thống IR là dạng file
xml
- Người dùng thực hiện ánh xạ các thẻ tương ứng của file kết quả của hệ
thống IR với các thẻ theo quy ước của chương trinh. Nếu nội dung kết
quả được định nghĩa trong thuộc tính của thẻ thì người dùng phải khai
báo thẻ đó và thuộc tính của thẻ đó
- Chương trình tiến hành đọc các giá trị kết quả dựa vào thông tin định
dạng mà người dùng cung cấp, ghi lại các giá trị đó vào file theo cấu
trúc của chương trình định nghĩa
TH_DDKetQua
CKetQua
XL_KetQua
XL_XML
LT_XML
Trang 102
Sơ đồ:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.2.5. Chức năng “Định dạng file index”
Qui trình thực hiện:
Người sử dụng có thể khai báo định nghĩa các thẻ tương ứng của file
lập chỉ mục (chương trình không bắt buộc, nếu không được khai báo
chương trình không thể hiện thông tin lập chỉ mục cho người dùng
xem).Để định dạng file index ta tiến hành các bước sau:
Chương trình chỉ chấp nhận file index của hệ thống IR là dạng file
xml
- Người dùng thực hiện ánh xạ các thẻ tương ứng của file index
của hệ thống IR với các thẻ theo quy ước của chương trinh. Nếu
nội dung index được định nghĩa trong thuộc tính của thẻ thì
người dùng phải khai báo thẻ đó và thuộc tính của thẻ đó
- Chương trình tiến hành đọc các giá trị index dựa vào thông tin
định dạng mà người dùng cung cấp, ghi lại các giá trị đó vào file
theo cấu trúc của chương trình định nghĩa
TH_DDIndex
CIndex
XL_Index
XL_XML
LT_XML
Sơ đồ:
3.3.2.2.6. Chức năng “Đánh giá và hiện thi kết quả đánh giá”
Qui trình thực hiện:
- Chọn hệ thống cần xem kết quả đánh giá
Trang 103
- Chương trình hiện thi kết quả đánh giá của hệ thống đó
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Chương trình cho phép người dùng xem chi tiết thông tin về từng
câu hỏi , tài liệu liên quan (nội dung, thông tin lập chỉ mục)
TH_ChiTietCauHoi
TH_KqDanhGia
TH_ChiTietTaiLieu
XL_Topic
XL_HeThongIR
XL_KetQua
XL_Topic
XL_XML
LT_XML
Sơ đồ:
3.3.2.2.7. Chức năng ”So sánh các hệ thống IR đã được thực thi”
Qui trình thực hiện::
Các hệ thống IR đã được thực thi và đánh giá sẽ được ghi nhận lại,
chương trình cho phép người dùng chọn các hệ thống trong số hệ thống
trên để thực hiện so sánh.
- Chọn các hệ thống cần so sánh
- Thực hiện so sánh
TH_KqDanhGia
XL_HeThongIR
XL_KetQua
XL_XML
LT_XML
Trang 104
Sơ đồ:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:153) Qui trình tổng quát để đánh giá một hệ thống IR:
- Định dạng tập dữ liệu kiểm tra bao gồm tập tài liệu và tập câu hỏi
- Thực thi hệ thống IR trên tập dữ liệu đã định dạng: hệ thống IR sẽ chạy các
câu hỉ trong tập câu hỏi , tìm kiếm trên tập tài liệu đó , sau đó sẽ phải trả
về cho chương trình file kết quả mô tả sự liên quan của các câu hỏi với các
tài liệu và độ tương quan của chúng
- Định dạng file kết quả trả về của hệ thống IR để chương trình có thể hiểu
được các thông tin kết quả. Thông tin kết quả bao gồm: chỉ số của các câu
hỏi, chỉ số của các tài liệu liên quan đến mỗi câu hỏi đó, và độ tương quan
của chúng .
- Định dạng tập tin chỉ mục nếu thông tin về chỉ mục của tập tài liệu và câu
hỏi được ghi nhận dưới file xml.
- Xem thông tin đánh giá về hệ thống IR trên. Thông tin đánh giá gồm: câu
hỏi được thực thi, tập tài liên được hệ thống IR trả về, tập tài liệu có liên
quan theo lý thuyết (dựa vào bảng liên quan của chương trình đã xây dựng
sẵn trước), độ chính xác , độ bao phủ của hệ thống khi thực thi tìm kiếm
câu hỏi đó, và thông tin về độ chính xác tính trên 11 điểm chuẩn của độ bao
phủ, thông tin về đường cong RP
Sau khi đánh giá được nhiều hệ thống, chương trình còn cho phép người dùng
so sánh dựa các hệ thống dựa trên đường cong chuẩn RP
3.3.2.3. Thiết kế dữ liệu – tổ chức lưu trữ
3.3.2.3.1. Mô hình dữ liệu
Trang 105
a) Mô hình ER:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
b) Giải thích :
Chương trình lưu giữ các giá trị đánh giá của một hệ thống IR được tiến
hành kiểm tra.Hệ thống IR là một thực thể (System)
Mỗi một hệ thống sau khi thực hiện việc tìm kiếm dựa trên tập dữ liệu (gồm
tập tài liệu và tập câu hỏi) được chương trình cung cấp, sẽ thông báo cho
chương trình biết thông tin về sự liên quan của các câu hỏi với tập tài liệu và
mức độ liên quan của nó. Chương trình sẽ ghi nhận lại thông tin liên quan đó
gọi là bảng liên quan thực tế (relevant_TT).
Để thực hiện việc kiểm tra chương trình có sẵn bảng liên quan của tập dữ
liệu, gọi là bảng liên quan theo lý thuyết (relevant_LT)
Mỗi một hệ thống sau khi thực thi tập câu hỏi trên tập tài liệu kiểm tra đó sẽ
có một bảng đánh giá theo từng câu hỏi (evaluation). Bảng đánh giá gồm các
thông tin sau:các câu hỏi được thực thi, về số tài liệu liên quan thực sự trả về(là
phần giao của các tài liệu trong bảng liên quan lý thuyết và bảng liên quan thực
tế của hệ thống IR), số tài liệu liên quan theo lý thuyết , số tài liệu trả về (do hệ
thống IR), độ bao phủ ,độ chính xác của hệ thống khi thực hiện câu hỏi đó và
độ chính xác tại 11 điểm chuẩn của độ bao phủ.Các thông tin này có được do
chương trình tính toán dựa vào bảng liên quan thực tế của một hệ thống IR xác
Trang 106
định và bảng liên quan lý thuyết.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Mỗi một câu hỏi hay một tài liệu đều được lập chỉ mục theo một phương
pháp nào đó của một hệ thống IR cụ thể (Index_Topic) (Index_Doc). Thông tin
về index này sẽ được thông báo cho chương trình biết được để hỗ trợ hiện thị
cho người dùng có thể đánh giá phương pháp index đó có thật sự tốt hay không
3.3.2.3.2. Sơ đồ logic dữ liệu
Trang 107
Sơ đồ logic :
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Giải thích:
(cid:131) System: sysID,Name,Date,AvgRecall, AvgPrecision,
R00,R01,R02,R03,R04,R05,R06,R07,R08,R09,R10
- Mỗi hệ thống được phân biệt với các hệ thống khác dựa vào sysID của
nó. Thông tin đánh giá ở mức độ hệ thống bao gồm : (tên, ngày thực
hiện kiểm tra, Độ bao phủ trung bình, độ chính xác trung bình , độ chính
xác trung bình được tính ở 11 điểm chuẩn của độ bao phủ : R00… R10)
sẽ được lưu lại
(cid:131) Terms: termID, Term
- Danh sách các từ có nghĩa.
(cid:131) Topic: TopID , Title, Des, Narr
- Tập câu hỏi (topic) sẽ được lưu và được phân biệt bởi TopID.Thông tin
mà chương trình quan tâm đến câu hỏi là nội dung của nó (title), các thông
tin phụ như chú giải (description) , ràng buộc liên quan (narrative) chỉ có ý
nghĩa đối với người dùng để đánh giá khi nào một tài liệu được gọi là có
liên quan đến câu hỏi này, phần thông tin này không có ý nghĩa đối với
chương trình
(cid:131) Index_topic : topID, sysID,size
- Mỗi câu hỏi sẽ được lập 1 chỉ mục theo phương pháp lập chỉ mục của
hệ thống IR cụ thể (có sysID), thông tin chỉ mục của từng câu hỏi chỉ
thuộc về 1 câu hỏi đó,thông tin chỉ mục bao gồm : kích thước của chỉ
mục (tổng số từ trong câu hỏi được lập chỉ mục), các từ được lập chỉ
mục và trọng số của mỗi từ đó
(cid:131) Topic_term : termID,topID,sysID,weigh
- Mỗi index_topic sẽ được lập chỉ mục dựa trên bảng từ có nghĩa (term)
và đánh trọng số (weigh) cho mỗi từ.
Trang 108
(cid:131) Document: DocID, Title, Author, Date,News, Content
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Tập tài liệu (document) sẽ được lưu và được phân biệt bởi DocID.Thông
tin mà chương trình quan tâm đến tài liệu là nội dung của nó (content), chủ
đề (title), tác giả của tài liệu đó (author), ngày tạo (date), nguồn gốc của tài
liệu (news)…
(cid:131) Index_Doc : docID,sysID, size
- Mỗi tài liệu sẽ được lập 1 chỉ mục theo phương pháp lập chỉ mục của hệ
thống IR cụ thể (có sysID), thông tin chỉ mục của từng tài liệu chỉ thuộc
về 1 tài liệu đó,thông tin chỉ mục bao gồm : kích thước của chỉ mục
(tổng số từ trong tài liệu được lập chỉ mục), các từ lập chỉ mục và trọng
số của mỗi từ đó
(cid:131) Doc_term : termID,docID,sysID,weigh
- Mỗi index_doc sẽ được lập chỉ mục dựa trên bảng từ có nghĩa (term) và
đánh trọng số (weigh) cho mỗi từ.
(cid:131) relevant_TT: topID,DocID,sysID, similarity
- Mối liên hệ giữa câu hỏi và tài liệu được hệ thống IR cụ thể (có một sysID
cụ thể)bên ngoài trả về, chương trình sẽ ghi nhận để đánh giá
(cid:131) relevant_LT : topID,DocID
- Sự liên quan đến tài liệu của một câu hỏi với tài liệu theo lý thuyết.Sự liên
quan theo lý thuết này được tạo ra từ bên ngoài qua việc kiểm tra nhiều hệ
thống
(cid:131) evaluation: sysID,TopID, Ret_Rel, Ret,Rel,R,P,
R00,R01,R02,R03,R04,R05,R06,R07,R08,R09,R10
- Mỗi một topic được thực thi trên một hệ thống (có sysId cụ thể) sẽ được
chương trình đánh giá và lưu trữ các thông tin như: số tài liệu có liên quan
được trả về (RET_REL), số tài liệu liên quan theo lý thyết (REL), số tài
liệu trả về thực sự(RET,tính độ bao phủ ,độ chính xác và các độ chính xác
Trang 109
tại 11 điểm chuẩn của độ bao phủ (R00.. R10)….
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.4. Tố chức lưu trữ dữ liệu
Tất cả dữ liệu được lưu trữ dưới file XML
3.3.2.4.1. System
- Các hệ thống IR sau khi được tiến hành kiểm tra sẽ được lưu trữ trong file
system.xml.
- Ngoài ra để đưa ra bảng giá trị thực hiện việc vẽ đường cong RP , chương
trình sẽ tính giá trị độ chính xác được tính ở các điểm chuẩn của độ bao
phủ .Tất cả các giá trị này sẽ được lưu trữ .
Cấu trúc DTD của file system.xml như sau:
AVGPRECISION, R00, R01, R02, R03, R04, R05, R06, R07, R08, R09,
R10)>
Trang 110
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:131) Diễn giải:
sysID
Trang 111
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.4.2. Topic
Các câu hỏi dùng để kiểm tra hệ thống IR được lưu trữ thành các file có cấu
trúc như sau:
Cấu trúc DTD:
(cid:131) Diễn giải:
(Thông tin DES, NARR chỉ có ý nghĩa cho việc nghiên cứu sự liên quan
Trang 112
của câu hỏi với tài liệu)
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.4.3. Index_topic
Mỗi một câu hỏi được lập chỉ mục theo phương pháp lập chỉ mục của hệ
thống IR bên ngoài. Chương trình tổ chức việc lưu các file chỉ mục của các
topic thuộc về một hệ thống là một file xml, có nghĩa là hệ thống IR có
sysID1 được tiến hành kiểm tra có thông tin về chỉ mục của tập câu hỏi của
chương trình , các thông tin đó sẽ được lưu thanh một file xml, thông tin lập
chỉ mục của hệ thống khác sysID2 sẽ được lưu thành file xml khác. Cách
đặt tên của file chỉ mục sẽ được đặt theo nguyên tắc sau: (để có thể dễ tiến
hành việc đọc file)
Tên file chỉ mục câu hỏi của hệ thống IR có sysID1 = “idx_topic_”+
sysID1+ “.xml”
Cấu trúc DTD của file như sau:
SIZE CDATA #REQUIRE>
WEIGH CDATA #REQUIRE>
Cấu trúc của file như sau:
(cid:131) Diễn giải:
Trang 113
-
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
-
tổng số từ trong một câu hỏi được lập chỉ mục
-
được lập chỉ mục, weigh là trọng số của nó
3.3.2.4.4. Document
Các tài liệu dùng để kiểm tra hệ thống IR được lưu trữ thành các file có cấu
Cấu trúc DTD :
trúc như sau:
DOC(DOCID,TITLE,AUTHOR,DATE,NEWS,CONTENT)>
Trang 114
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:131) Diễn giải:
3.3.2.4.5. Index_Doc
Tương tự cách lưu trữ của Index_Topic, các file lập chỉ mục tài liệu của hệ
thống sysID cụ thể sẽ được lưu thành một file xml riêng biệt.Cách tổ chức
cấu trúc ý nghĩa của file xml đó cũng tương tự như file lưu trữ index của
topic, nhưng cách đặt tên của file chỉ mục tài liệu của một hệ thống cụ thể
như sau:
Tên file = “idx_doc_”+ sysID + “.xml”
3.3.2.4.6. relevant_TT
Mỗi hệ thống sau khi đã tìm kiếm trên kho dữ liệu của chương trình sẽ trả
về cho chương trình file biểu diễn mối liên quan của các câu hỏi với các tài
liệu.Chương trình ghi nhận lại các thông tin sự liên quan đó của một hệ
thống IR cụ thể (có sysID) bằng một file xml, có nghĩa là sự liên quan thực
tế của các câu hỏi với tài liệu do một hệ thống IR cụ thể sysID1 sẽ được lưu
thành một file, con sự liên hệ topic-doc của hệ thống khác sysID2 sẽ được
lưu thành file khác. Do đó chương trình quy định cách đặt tên cho file như
sau:
(cid:131) Cấu trúc của file được tổ chức như sau:
Tên file = “rel_”+sysID + “.xml”
Trang 115
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:131) Diễn giải:
3.3.2.4.7. relevant_LT
Chương trình đã tạo sẵn bảng liên quan giữa câu hỏi với tài liệu (bảng liên
quan theo lý thuyết). File lưu trữ thông tin liên quan có cấu trúc sau:
(cid:131) Diễn giải: (tương tự như trên)
Trang 116
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.4.8. evaluation
Với 1 câu hỏi được thực thi bởi 1 hệ thống IR bất kỳ, chương trình sẽ tính
tóan các thông tin về : số tài liệu liên quan, số tài liệu trả về, số tài liệu liên
quan được trả về,độ bao phủ, độ chính xác. Các thông tin này sẽ được lưu
trữ vào file evaluation.xml. Cấu trúc file này như sau:
DTD :
R01, R02, R03, R04, R05, R06, R07, R08, R09, R10)>
Trang 117
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:131) Diễn giải:
Trang 118
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
bao phủ
3.3.2.5. Thiết kế giao diện
3.3.2.5.1. Sơ đồ liên hệ giữa các màn hình
Qui trình 1:
Từ màn hình chính chọn:
Bước 1: Định dạng tài liệu
Bước 2: định dạng kết quả
Bước 3: Thực thi hệ thống IR
Bước 4: Định dạng kết quả trả về của hệ thống
Bước 5: Định dạng file index
Bước 6: Xem kết quả định dạng
Bước 7: xem đồ thị hệ thống
Bước 8: xem chi tiết
Nếu kho dữ liệu của chương trình có cấu trúc giống với cấu trúc định dạng của
hệ thống IR thì bước định dạng dữ liệu (bước 1 và 2) có thể bỏ qua.
Có thể hệ thống IR được thực hiện bên ngoài, bước 3 được bỏ qua, người dùng
chỉ thông báo cho chương trình các file kết quả và file index để thực hiện việc
fraTTTaiLieu
fraDDTaiLieu
fraDDCauHoi
fraTTCauHoi
fraThucThiHT
fraDDKetQua
fraDDIndex
fraKqDanhGia
fraSoSanhHT
fraXemChiTiet
fraDoThi_HeThong
Trang 119
đánh giá.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Qui trình 2:
Từ màn hình chính chọn:
(cid:131) Gọi màn hình thông báo cho chương trình biết vị trí các kho dữ liệu cần
- Thực thi hệ thống IR:
(cid:131) Gọi màn hình thực thi hệ thống IR =>fraThucThiHT
(cid:131) Xử lý kết quả trả về
(cid:131) Định dạng tập tin chỉ mục (có thể không có)
(cid:131) Xem thông tin kết qua đánh giá
(cid:131) Xem chi tiết
(cid:131) Xem đồ thị hệ thống
fraDKThucThi
fraThucThiHT
fraDDKetQua
fraDDIndex
fraKqDanhGia
fraXemChiTiet
fraDoThi_HeThong
để =>fraDKThucThi
Qui trình 3:
Từ màn hình chính chọn:
(cid:131) Gọi màn hình xử lý kết quả trả về, yêu cầu nhập thông tin về tên hệ thống
(cid:131) Định dạng tập tin chỉ mục (có thể không có)
(cid:131) Xem thông tin kết quả đánh giá
(cid:131) Xem chi tiết
Trang 120
- Xử lý kết quả trả về:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:131) Xem đồ thị hệ thống
fraDDKetQua
fraDDIndex
fraKqDanhGia
fraXemChiTiet
fraDoThi_HeThong
Nhập tên hệ thống
Qui trình 4:
Từ màn hình chính chọn:
(cid:131) Gọi màn hình xem thông tin kết quả đánh giá, yêu cầu chọn hệ thống cần
- Xem thông tin kết quả đánh giá:
(cid:131) Xem chi tiết
(cid:131) Xem đồ thị hệ thống
Chọn hệ thống cần xem
fraKqDanhGia
fraXemChiTiet
fraDoThi_HeThong
xem
Qui trình 5:
Từ màn hình chính chọn:
Trang 121
- so sánh nhiều hệ thống => gọi màn hình fraSoSanhHT
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.6. Thiết kế màn hình
3.3.2.6.1. Màn hình chính (TH_Main)
Ký hiệu: fraMain
Cho phép liên kết các chức năng của chương trình.Chương trình gồm các
chức năng sau:
- Chuyển đổi định dạng của kho dữ liệu (để phù hợp với định dạng dữ
liệu của hệ thống IR cần kiểm tra).Kho dữ liệu bao gồm: tập tài liệu và
tập câu hỏi
- Thực thi hệ thống IR bên ngoài
- Chuyển đổi định dạng các file kết quả và file index của hệ thống IR để
tạo file kết quả và index cho chương trình
- Đánh giá hệ thống IR
- So sánh các hệ thống IR đã được đánh giá
3.3.2.6.2. Màn hình định dạng tài liệu (TH_DDTaiLieu)
1
2
3
4
5
6
8
7
Trang 122
Ký hiệu: fraDDTaiLieu
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
(cid:131) Diễn giải:
STT Tên Loại kiểu Ý nghĩa
1 txtViTri Textbox Cho phép người dùng nhập vị trí cần
lưu của tập tài liệu mới sau khi đã được
định dạng
2 bntChonViTri button hỗ trợ người dùng tìm vị trí thích hợp
để lưu tập tài liệu mới đã định dạng
xong
3 cboLoaiFile comboBox chọn loại file cần kết xuất : là file xml
hay file text
4 tblTaiLieu table Cho phép người dùng ánh xạ các thẻ tài
liệu của chương trình với các thẻ tài
liệu của hệ thống IR, đồng thời cho
phép định nghĩa mới các thẻ nếu thẻ đó
không tương ứng với bất kỳ thẻ nào
trong thẻ tài liệu của chương trình
5 btnThem Button Thêm một dòng của bảng tblTaiLieu
6 btnXoa Button Xoá một dòng của bảng tblTaiLieu
7 btnTiepTuc Button Nếu là file text không có khái niệm
thuộc tính nên chương trình sẽ thực
hiện việc tạo các file tài liệu phù hợp
với định dạng mà người dùng cung cấp
và tiếp tục cho phép địng dạng tập câu
hỏi
Nếu là file xml không có thuộc tính ,
tương tự như trên
Nếu là file xml có thuộc tính, tiếp tục
Trang 123
cho phép người dùng định nghĩa các
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
thẻ tương ứng với thuộc tính của thẻ tài
liệu trong tập tài liệu của hệ thống IR
8 btnHuyBo Button huỷ bỏ thao tác định dạng các tài liệu
3.3.2.6.3. Màn hình tạo thuộc tính cho tài liệu (TH_TTTaiLieu)
Ký hiệu: fraTTTaiLieu
Tạo thuộc tính cho thẻ tài liệu
Định nghĩa thuộc tính của thẻ tài liệu
Thẻ hệ thống IR Tên thuộc tính
Thẻ tương ứng
DOCMENT
1
Thêm
Xoá
3
Đóng màn hình
Tiếp tục
Trở lại
2
4
5
6
(cid:131) Diễn giải:
STT Tên Loại kiểu Ý nghĩa
1 tblThuocTinh Table Cho phép người dùng định nghĩa
thuộc tính của các thẻ mới đã
được định nghĩa ở màn hình
fraDDTaiLieu, thuộc tính của thẻ
mới có thẻ tương ứng với thẻ tài
liệu của chương trình hoặc là thẻ
mới
Trang 124
2 btnThem Button Thêm một dòng của bảng
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
tblThuocTinh
3 btnXoa Button Xoá một dòng của bảng
tblThuocTinh
4 btnTroLai Button trở lại màn hình fraDDTaiLieu
5 btnTiepTuc Button thực hiện việc tạo các file tài liệu
phù hợp với định dạng mà người
dùng đã cung cấp và tiếp tục cho
người dùng định dạng tập câu hỏi
6 btnDong Button Đóng màn hình
3.3.2.6.4. Màn hình định dạng câu hỏi (TH_DDCauHoi)
1
2
3
4
5
6
7
8
(cid:131) Diễn giải:
Ký hiệu: fraDDCauHoi
STT Tên Loại kiểu Ý nghĩa
Trang 125
1 txtViTri Textbox Cho phép người dùng nhập vị trí cần
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
lưu của tập câu hỏi sau khi đã được
định dạng
2 bntChonViTri button hỗ trợ người dùng tìm vị trí thích hợp
để lưu tập câu hỏi mới đã định dạng
xong
3 cboLoaiFile comboBox chọn loại file cần kết xuất : là file xml
hay file text
4 tblCauHoi table Cho phép người dùng ánh xạ các thẻ
câu hỏi của chương trình với các thẻ
câu hỏi của hệ thống IR, đồng thời cho
phép định nghĩa mới các thẻ nếu thẻ đó
không tương ứng với bất kỳ thẻ nào
trong thẻ câu hỏi của chương trình
5 btnThem Button Thêm một dòng của bảng tblCauHoi
6 btnXoa Button Xoá một dòng của bảng tblCauHoi
7 btnTiepTuc Button Nếu là file text không có khái niệm
thuộc tính nên chương trình sẽ thực
hiện việc tạo các file câu hỏi phù hợp
với định dạng mà người dùng cung cấp
và tiếp tục cho phép thực thi hệ thống
IR cần thực hiện
Nếu là file xml không có thuộc tính ,
tương tự như trên
Nếu là file xml có thuộc tính, tiếp tục
cho phép người dùng định nghĩa các thẻ
tương ứng với thuộc tính của thẻ câu
hỏi trong tập câu hỏi của hệ thống IR
Trang 126
8 btnHuyBo Button huỷ bỏ thao tác định dạng các câu hỏi
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.6.5. Màn hình tạo thuộc tính cho câu hỏi (TH_TTCauHoi)
Ký hiệu: fraTTCauHoi
Tạo thuộc tính cho thẻ câu hỏi
Định nghĩa thuộc tính của thẻ câu hỏi
Thẻ hệ thống IR
Tên thuộc tính
Thẻ tương ứng
TOPID
1
Thêm
Xoá
2
Huỷ bỏ
Trở lai
Tiếp tục
3
6
5
4
(cid:131) Diễn giải:
STT Tên Loại kiểu Ý nghĩa
1 tblThuocTinh Table Cho phép người dùng định nghĩa thuộc
tính của các thẻ mới đã được định nghĩa ở
màn hình fraDDCauHoi, thuộc tính của thẻ
mới có thẻ tương ứng với thẻ câu hỏi của
chương trình hoặc là thẻ mới
2 btnThem Button Thêm một dòng của bảng tblThuocTinh
3 btnXoa Button Xoá một dòng của bảng tblThuocTinh
4 btnTroLai Button trở lại màn hình fraDDCauHoi
5 btnTiepTuc Button thực hiện việc tạo các file câu hỏi phù hợp
với định dạng mà người dùng đã cung cấp
và tiếp tục cho phép gọi thực thi hệ thống
Trang 127
IR
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
6 btnDong Button Đóng màn hình
3.3.2.6.6. Màn hình xử lý điều kiện để thực thi hệ thống IR
Ký hiệu:fraDKThucThi
Chú ý: Hệ thống IR bất kỳ nào được tiến hành đều phải thực thi trên kho dữ
liệu kiểm tra của chương trình. Nếu khi thực hiện hệ thống này , người dùng bỏ
qua bước định dạng kho dữ liệu (do kho dữ liệu của chương trình có cấu trúc
giống kho dữ liệu của hệ thống IR) thì phải cho chương trình biết là kho dữ
1
2
4
5
3
6
(cid:131) Diễn giải:
liệu của chương trình nên để ở vị trí nào để hệ thống IR có thể thực thi được.
STT Tên Loại kiểu Ý nghĩa
1 txtTaiLieu Textbox Cho phép người dùng nhập vị trí của các
file tài liêu
2 btnVTTaiLieu Button hỗ trợ người dùng mở thư mục lưu các
file tài liệu
3 txtCauHoi Textbox Cho phép người dùng nhập vị trí của các
file câu hỏi.
4 btnVTCauHoi button hỗ trợ người dùng mở thư mục lưu các
file câu hỏi
Trang 128
5 btnGhiNhan Button Ghi nhận vi trí để lưu tài liệu và câu hỏi,
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
sao chép tất cả tài liệu và câu hòi của
chương trình vào vị trí mới , và gọi màn
hình thực hiện của hệ thống IR
6 btnHuyBo button huỷ bỏ thao tác thực thi hệ thống IR
3.3.2.6.7. Màn hình thực thi hệ thống (TH_ThucThiHT)
1
2
6
3
4
5
(cid:131) Diễn giải:
Ký hiệu: fraThucThiHT
STT Tên Loại kiểu Ý nghĩa
txtDuongDan Textbox Cho phép người dùng nhập vị trí file 1
thực thi hệ thống IR bên ngoài
btnMoFile Button hỗ trợ người dùng mở file thực thi 2
txtTenHT Textbox Cho phép nhập tên hệ thống. Mặc định 3
chương trình sẽ xem tên file thực thi hệ
thống IR là tên hệ thống đó
btnThucHien button thực hiện gọi hệ thống IR thực thi 4
btnXLyKQ Button Gọi màn hình thực hiện việc định dạng 5
và xử lý kết quả trả về của hệ thống IR
Trang 129
btnHuyBo button huỷ bỏ thao tác thực thi hệ thống IR 6
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.6.8. Màn hình định dạng kết quả (TH_DDKetQua)
1
2
3
4
6
5
(cid:131) Diễn giải:
Ky hiệu: fraDDKetQua
STT Tên Loại kiểu Ý nghĩa
1 txtTenHT Textbox Cho phép nhập tên hệ thống, nếu chưa
nhập tên hệ thống từ màn hình thực thi
hệ thống (nếu người dùng thực thi hệ
thống IR ở bên ngoài), nếu đã thực thi
hệ thống IR rồi thì txtTenHT sẽ hiện
thị tên hệ thống (không cần nhập lần
nữa)
2 txtViTri Textbox Cho phép người dùng nhập vị trí file
kết quả của hệ thống IR bên ngoài
3 bntChonViTri Button Hỗ trợ người dùng chọn file kết quả
4 tblKetQua Table Ghi nhận giá trị thẻ tương ứng. Ví dụ :
Trang 130
nếu TopicID là một thẻ trong file kết
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
quả thì không cần định nghĩa thuộc
tính chỉ cần định nghĩa thẻ tương ứng
với TopicID , nếu TopicID là một
thuộc tính thì cần định nghĩa thẻ chứa
thuộc tính đó và định nghĩa thẻ tương
ứng với thuộc tính đó
btnThucHien Button thực hiện ghi file kết quả cho chương 5
trình
btnHuyBo Button huỷ bỏ thao tác định dạng file kết quả 6
3.3.2.6.9. Màn hình định dạng thông tin index (TH_DDIndex)
Ký hiệu: fraDDIndex
2
1
3
4
6
5
Trang 131
(cid:131) Định dạng file index của câu hỏi:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
7
8
9
10
(cid:131) Diễn giải:
(cid:131) Định dạng file index của tài liệu:
STT Tên Loại kiểu Ý nghĩa
1 tabCauHoi Tab định nghĩa file index của câu
control hỏi
2 txtViTri_idxTopic Textbox Cho phép người dùng nhập vị
trí file index của câu hỏi của
hệ thống IR bên ngoài
3 bntChonViTri_idxTopic Button hỗ trợ người dùng chọn file
index của câu hỏi
4 tblIdx_Topic Table Ghi nhận giá trị thẻ tương ứng.
Ví dụ : nếu TopicID là một thẻ
trong file kết quả thì không
cần định nghĩa thuộc tính chỉ
cần định nghĩa thẻ tương ứng
Trang 132
với TopicID , nếu TopicID là
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
một thuộc tính thì cần định
nghĩa thẻ chứa thuộc tính đó
và định nghĩa thẻ tương ứng
với thuộc tính đó
5 btnThucHien Button thực hiện ghi file index của
câu hỏi và của tài liệu cho
chương trình
6 btnHuyBo Button huỷ bỏ thao tác định dạng file
index
7 tabTaiLieu Tab định nghĩa file index của tài
control liệu
8 txtViTri_idxDoc Textbox Cho phép người dùng nhập vị
trí file index của tài liệu của hệ
thống IR bên ngoài
9 bntChonViTri_idxDoc Button hỗ trợ người dùng chọn file
index của tài liệu
10 tblIdx_Doc Table Ghi nhận giá trị thẻ tương ứng.
3.3.2.6.10. Màn hình đánh giá hệ thống (TH_KqDanhGia)
Trang 133
Ký hiệu: fraKq_DanhGia
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
4
1
2
3
6
5
8
9
7
11
10
12
14
15
13
17
16
(cid:131) Diễn giải:
STT Tên Loại kiểu Ý nghĩa
1 cboHeThong comboBox Cho phép chọn hệ thống cần xem
(txtHeThong) (textbox) kết quả đánh giá nếu người sử dụng
gọi màn hình này từ màn hình chính,
nếu màn hình này được gọi từ màn
hình xử lý kết quả ,txtxHeThong sẽ
Trang 134
hiện thị đúng tên của hệ thống đang
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
được thực thi
2 txtsysID Textbox Sau khi chọn hệ thống cần xem
chương trình tự động hiện thi system
ID của hệ thống
3 txtNgay Textbox Chương trình tự động hiện thị thông
tin về ngày giờ thực hiện kiểm tra hệ
thống IR đó
4 txtRtb Textbox thể hiện thông tin về độ bao phủ
trung bình của hệ thống khi thực thi
tập câu hỏi
5 txtPtb Textbox thể hiện thông tin về độ chính xác
trung bình của hệ thống IR
6 lblTongSoCauHoi Lable thể hiện thông tin về tổng số câu hỏi
đã được hệ thống IR thực hiện kiểm
tra
7 lstCauHoi Listbox thể hiện tập câu hỏi đã được thực
hện bởi hệ thống IR
8 txtNoiDungCH Textbox Nội dung của một câu hỏi mỗi khi
người dùng chọn câu hỏi cần xem ở
lstCauHoi
9 lblSoTLTraVe Số tài liệu trả về ứng với 1 câu hỏi Label
10 tblCauHoi Thông tin câu hỏi gồm có: số thứ tự Table
n, tài liệu được trả về,có liên quan
theo lý thuyết hay không, độ bao
phủ và độ chính xác tại vị trí thứ n
11 tblRPChuanHoa Table Bảng RP chuẩn hóa (tính độ chính
xác tại 11 điểm chuẩn của độ bao
Trang 135
phủ ứng với 1 câu hỏi)
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
txtR 12 Textbox Độ bao phủ của 1 câu hỏi
txtP 13 Textbox Độ chính xác của 1 câu hỏi
14 lblSoTLLienQuan Label Số tài liệu liên quan ứng với 1 câu
hỏi
15 lblSoTLRel_Ret Label Số tài liệu liên quan được trả về ứng
với 1 câu hỏi
16 btnVeDoThi Button Vẽ đồ thị của hệ thống khi thực thi
tập câu hỏi
17 btnDong Button Đóng màn hình
3.3.2.6.11. Màn hình xem đồ thị của hệ thống
Ký hiệu: fraDoThi_HeThong
Màn hình này sẽ vẽ đồ thị của hệ thống được đánh giá trên tập câu hỏi kiểm tra
3.3.2.6.12. Màn hình xem chi tiết (TH_XemChiTiet)
Ký hiệu: fraXemChiTiet
Màn hình này được gọi khi người dùng muốn xem thông tin chi tiết về sự liên
quan của một câu hỏi với 1 tài liệu cụ thể.
Đứng tại màn hình xem kết quả đánh giá (fraKq_DanhGia) , nhấn vào DocID
của tài liệu muốn xem (bởi vì trên màn hình fraKq_DanhGia,
tblTaiLieuPhucHoi chi thể hiện các DocID của tài liệu được trả về), chương
trình sẽ hiện thị màn hình xem chi tiết này.Thông tin chi tiết gồm có : nội dung
của câu hỏi,nội dung của tài liệu liên quan đến câu hỏi đó, độ tương quan của
Trang 136
câu hỏi với tài liệu và thông tin tài liệu và câu hỏi đó được lập chỉ mục
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Chi tiết tài liệu Chi tiết tài liệu
1
2
4
Thông tin chi tiết 3
Độ tương quan :…...
Từ Trọng số
Câu hỏi: ….
5
Tài liệu: DocID= ... 6
Từ
Trọng số
7
Đóng màn hình
8
(cid:131) Diễn giải:
STT Tên Loại kiểu Ý nghĩa
lblSim Lable Độ tương quan giữa câu hỏi và tài 1
liệu
lblTopID Lable Chỉ số (topicID) của tài liệu 2
txtCauHoi textbox thể hiện nội dung của câu hỏi đó 3
tblIndex_CauHoi table Thể hiện nội dung chỉ mục của câu 4
hỏi
lblDocID Lable Chỉ số ID của tài liệu 5
txtTaiLieu textbox Nội dung tài liệu 6
tblIndex_TaiLieu table Nội dung chỉ mục của tài liệu 7
Trang 137
btnDong Button Đóng màn hình 8
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.6.13. Màn hình so sánh hệ thống (TH_SoSanhHT)
2
4
1
3
5
6
(cid:131) Diễn giải:
Ký hiệu: fraSoSanhHT
STT Tên Loại kiểu Ý nghĩa
lstHT ListBox Danh sách hệ thống IR 1
btnChon Button chọn một hệ thống bên danh sách hệ 2
thống
btnBo Button bỏ một hệ thống bên danh sách hệ thống 3
đã chọn
lstHTChon ListBox Danh sách hệ thống đã được chọn 4
Đồ thị hiện thị đồ thị của các hệ thống đã chọn 5
Trang 138
btnDong Button Đóng màn hình 6
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
3.3.2.7. Thiết kế hệ thống lớp đối tượng
3.3.2.7.1. Các lớp đối tượng xử lý
a) CFormat:
Ý nghĩa :
Định nghĩa cấu trúc các thông số cần thiết để định dạng tài liệu và câu hỏi
Mô tả:
Cấu trúc thông số định dạng:
STT Tên Loại kiểu Ý nghĩa
1 oldTag Kiểu chuỗi Thẻ cũ cần chuyển đổi
2 newTag Kiểu chuỗi Thẻ mới (từ thẻ cũ đổi sang thẻ mới)
3 Content Kiểu chuỗi Nội dung của thẻ cũ
4 oldId Kiểu chuỗi Thứ tự của thẻ cũ trong file xml cũ
5 newId Kiểu chuỗi Thứ tự của thẻ mới trong file xml mới
6 haveAttr Kiểu logic Thẻ mới đó có thuộc tính hay không?
7 attrArray Mảng Nếu thẻ mới có thuộc tính thì attrArray sẽ
CFormat lưu danh sách các thuộc tính (Thuộc tính
có cấu trúc dạng thẻ: tên thuộc tính
(tương ứng với tên thẻ mới- newTag)),
thẻ tương ứng với thuộc tính trên
(oldTag)
b) CDocument:
Ý nghĩa
Định nghĩa cấu trúc của tài liệu để lưu trữ các giá trị nội dung của các thẻ
(hoặc section) của tài liệu
Trang 139
Mô tả:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
STT Tên Loại kiểu Ý nghĩa
DocID Kiểu chuỗi docID của tài liệu 1
Title Kiểu chuỗi tiêu đề của tài liệu 2
Content Kiểu chuỗi Nội dung của tài liệu 3
Date Kiểu chuỗi Ngày tạo tài liệu 4
Author Kiểu chuỗi Tác giả của tài liệu 5
News Kiểu logic Nguồn gốc của tài liệu 6
c) CTopic:
Ý nghĩa:
Định nghĩa cấu trúc của tài liệu để lưu trữ các giá trị nội dung của các thẻ
(hoặc section) của câu hỏi
Mô tả:
STT Tên Loại kiểu Ý nghĩa
TopID Kiểu chuỗi docID của câu hỏi 1
Title Kiểu chuỗi Nội dung của câu hỏi 2
Description Kiểu chuỗi Chú thích của câu hỏi 3
Narrative Kiểu chuỗi Nội dung yêu cầu liên quan của câu hỏi 4
d) CHeThongIR:
Ý nghĩa:
Định nghĩa cấu trúc hệ thống IR
Mô tả:
STT Tên Loại kiểu Ý nghĩa
strTenHT Kiểu chuỗi Tên hệ thống IR 1
strID Kiểu chuỗi ID của hệ thống IR 2
NgayKiemTra Kiểu chuỗi Ngày tiến hành kiểm tra hệ thống IR 3
Trang 140
Rtrungbinh Kiểu chuỗi Độ bao phủ trung bình 4
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Ptrungbinh Kiểu chuỗi Độ chính xác trung bình 5
fP Mảng số Độ chính xác trung bình tại 11 điểm 6
thực chuẩn của độ bao phủ
e) CKetQua:
Ý nghĩa:
Định nghĩa cấu trúc định dạng của file kết quả trả vế của hệ thống IR (file
kết quả tar3 về của hệ thống IR chính là bảng liên quan thực tế)
Mô tả:
STT Tên Loại kiểu Ý nghĩa
1 TopicID Thẻ tương ứng với TopicID Kiểu
chuỗi
Kiểu 2 DocID Thẻ tương ứng với DocID
chuỗi
3 ThuocTinh_TopicID Kiểu Tên thuộc tính tương ứng với
chuỗi TopicID nếu thẻ tương ứng với
TopicID có thuộc tính
4 ThuocTinh_DocID Kiểu Tên thuộc tính tương ứng với
chuỗi DocID nếu thẻ tương ứng với
DocID có thuộc tính
Kiểu 5 TagSim Thẻ tương ứng với similarity (thẻ
chuỗi Similarity)
Kiểu 6 ThuocTinh_Sim Tên thuộc tính tương ứng với
chuỗi Similarity nếu thẻ tương ứng với
Trang 141
Similarity có thuộc tính
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
f) CRelevant:
Ý nghĩa
Định nghĩa cấu trúc sự liên quan của tài liệu tại vị trí thứ tự n của danh sách
các tài liệu trả về của một câu hỏi
(cid:214) Thông tin về độ chính xác và độ bao phủ tại vị trí thứ n sẽ được lưu
trong mảng cấu trúc CRelevant để thực hiện nội suy tính độ chính xác
tại 11 điểm chuẩn của độ bao phủ (tính P (r) , với r có giá trị là 0.0,
0.1 ,0.2 ,0.3 ,0.4, 0.5 , 0.6 , 0.7, 0.8, 0.9, 1.0)
Mô tả:
STT Tên Loại kiểu Ý nghĩa
DocID Kiểu chuỗi docID của câu hỏi tại vị trí thứ tự n 1
bRelevant Kiểu logic Tài liệu tại vị trí n có liên quan hay 2
không?
3 fPrecision Kiểu số Độ chính xác của tài liệu tại vị trí n
thực
4 fRecall Kiểu số Độ bao phủ của tài liệu tại vị trí n
thực
g) CIndex:
Ý nghĩa:
Định nghĩa cấu trúc định dạng các file index trả về của hệ thống IR
Mô tả:
STT Tên Loại kiểu Ý nghĩa
1 ID Kiểu chuỗi ID của câu hỏi hoặc tài liệu được lập
chỉ mục
2 word Kiểu chuỗi Từ có nghĩa xuất hiện trong câu hỏi
hoặc tài liệu
Trang 142
3 weigh Kiểu số Trọng số của từ đó
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
nguyên
h) XL_XML :
XL_XML
TranslateXML
Sơ đồ lớp:
Mô tả:
Phương thức: TranslateXML
o Ý nghĩa: chuyển đổi cấu trúc của một file xml sang cấu trúc file xml
khác
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 Format Kiểu mảng mảng Cformat lưu trữ cấu trúc định dạng
CFormat mới mà file xml mới cần chuyển đổi sang
cấu trúc đó
newFile Kiểu chuỗi file xml mới bao gồm cả đường dẫn 2
oldPathFile Kiểu chuỗi đường dẫn file xml cũ 3
oldFile Kiểu chuỗi tên file xml cũ 4
Ghi chú:
Tham số format có kiểu mảng CFormat với:
newTag : là tên thẻ trong file xml mới tương ứng với oldTag
oldTag là các thẻ trong file xml cũ
newId: là thứ tự của thẻ mới trong file xml mới
oldTag: là thứ tự của thẻ cũ
haveAttr: thẻ mới cần tạo có thuộc tinh hay không?, nếu có lưu thuộc
Trang 143
tính vào mảng attrArray
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Ví dụ : có file xml như sau:
Đổi sang file xml có cấu trúc như sau:
Định nghĩa mảng format như sau:
CFormat[] f=new CFormat[3];
f[0]=new CFormat();
f[0].oldId=f[0].newId=0;
f[0].newTag="TAILIEU";
f[0].oldTag="DOCUMENT";
f[0].haveAttr=false;
f[1]=new CFormat();
f[1].newId=f[1].oldId=1;
f[1].newTag="TL";
f[1].oldTag="DOC";
f[1].haveAttr=true;
f[1].attrArray=new CFormat[1];
f[1].attrArray[0]=new CFormat();
Trang 144
f[1].attrArray[0].oldTag="DOCID";
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
f[1].attrArray[0].newTag="ID";
f[2]=new CFormat();
f[2].newId=f[2].oldId=2;
f[2].newTag="CHUDE";
f[2].oldTag="TITLE";
o Kết quả trả về:
STT Tên Loại kiểu Ý nghĩa
1 kq Kiểu số Kết quả trả về để xác nhận chuyển đổi
nguyên thành công hay thất bại
o Mô tả thuật toán:
- Tìm newTag của nút gốc trong mảng format (nút gốc là nút có thứ tự
newId=0) , dựa vào khai báo của mảng format (newTag) tạo nút gốc cho
file xml mới
- Đọc file xml cũ dựa vào oldPathFile và oldFile: gọi phương thức
ReadXML của lớp LT_XML
- Tìm vị trí của nút kế gốc trong mảng format(nút kế gốc là nút có oldId=1)
=>idxroot
- Lấy danh sách các nút kế gốc ( thẻ oldTag) =>Nodes
- Gọi nodelen là chiều dài của danh sách Nodes
- Lặp i=0 -> i=nodelen
- Bắt đấu lặp i
Kiềm tra xem format[idxroot] có thuộc tính hay không:
(format[idxroot].haveAttr ?)
Nếu có thuộc tính
(duyệt tất cả các thuộc tính của nút kế gốc để gán nội dung cho nó)
Trang 145
- Với mỗi thuộc tính:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- xem thuộc tính của nút kế gốc có oldTag là gì, nếu có oldTag =””
có nghĩa là tạo mới thuộc tính, nếu oldTag !=”” : đọc nội dung của oldTag
gán váo format[idxroot].Content
Ngược lại không có thuộc tính
- Tạo nội dung cho các phần tử format[k] (k!=idxroot)
(chú ý: nút kế gốc format[idxroot] không chứa nội dung)
- kiểm tra xem từng phần tử trong mảng format khác với
format[idxroot] có thuộc tính hay không
- Nếu phần tử format[k] có thuộc tính : đọc nội dung thẻ tương
ứng với thuộc tính đó (oldTag) và ghi nhận nội dung vào
format[k].attrArray[j].Content
Sau khi gán nội dung cho các thẻ mới trong mảng format :
- Sắp xếp thứ tự mảng format theo thứ tự tăng dần của newId
- Tạo node cho file xml mới
- Cuối lặp i (cid:206) đã ánh xạ xong các node của file xml cũ sang file xml mới
k) XL_Text:
XL_XML
TranslateText
Sơ đồ lớp:
Mô tả:
Phương thức : TranslateText
o Ý nghĩa:
đổi cấu trúc của một file xml sang cấu trúc file text khác với các thẻ của file
xml tương ứng với các section của file text
o Tham số đầu vào:
Trang 146
STT Tên Loại kiểu Ý nghĩa
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
1 format Kiểu mảng mảng Cformat lưu trữ cấu trúc định dạng
CFormat mới mà file xml mới cần chuyển đổi sang
cấu trúc đó
newFile Kiểu chuỗi file xml mới bao gồm cả đường dẫn 2
oldPathFile Kiểu chuỗi đường dẫn file xml cũ 3
oldFile Kiểu chuỗi tên file xml cũ 4
o Kết quả trả về:
STT Tên Loại kiểu Ý nghĩa
1 kq Kiểu số Kết quả trả về để xác nhận chuyển đổi
nguyên thành công hay thất bại
o Thuật toán:
- Tìm newTag của nút gốc trong mảng format (nút gốc là nút có thứ tự
newId=0) , dựa vào khai báo của mảng format (newTag) tạo nút gốc cho
file xml mới
- Đọc file xml cũ dựa vào oldPathFile và oldFile: gọi phương thức
ReadXML của lớp LT_XML
- Do file text mới không có khái niệm thẻ gốc chỉ cần những thẻ chứa dữ liệu
- Lấy danh sách các nút có thẻ là format[0].oldTag =>Nodes (format[0] là
nút kế gốc trong file xml cũ (không kể nút gốc))
- Gọi strNoiDung lưu giữ nội dung của file text
- Gọi nodelen là chiều dài của danh sách Nodes
- Lặp k=0 ->k=nodelen
Bắt đấu lặp i
Với mỗi phần tử format[i]:
- kiểm tra xem format[i].oldTag =”” hay không ?
o Nếu bằng rỗng: tạo section mới cho file text mà nộ dung của
Trang 147
section đó là rỗng :
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
strNoiDung = strNoiDung + format[i].newTag + “ký tự xuống dòng”
o Nếu khác rỗng :
- lấy nội dung của thẻ có tên là format[i].oldTag gán vào nội dung
của section mới : format[i].Content
strNoiDung = strNoiDung + format[i].newTag + “ký tự xuống dòng”
+ format[i].Content + “ký tự xuống dòng”
Cuối lặp i
- Ghi lên file text : gọi phương thức WriteText(strNoiDung,newFile) của lớp
LT_Text
- Gửi kết quả thực hiện thành công hay thất bại cho chương trình
l) XL_Doc
XL_Doc
Static String Doc_Path="coll"; Static int SO_DOC=50; DinhDangTaiLieu DinhDangTaiLieuText LayDSTaiLieu LayTaiLieu
Sơ đồ lớp:
Mô tả:
Thuộc tính:
STT Tên Loại kiểu Ý nghĩa
1 Doc_Path Kiểu chuỗi Đường dẫn của tập tài liệu của chương
trình , mặc định là tất cả các tập dữ liệu
sẽ được lưu tại thư mục “coll” của
chương trình
2 SO_DOC Kiểu số Số tài liệu trong một file tài liệu , mặc
nguyên định là có 50 tài liệu trong một file tài
Trang 148
liệu
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Phương thức :DinhDangTaiLieu
o Ý nghĩa:chuyển đổi định dạng của tập tài liệu , chuyển sang file xml
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 format Kiểu mảng mảng Cformat lưu trữ cấu trúc định dạng
CFormat mới mà file xml mới cần chuyển đổi sang
cấu trúc đó
2 Path Kiểu chuỗi Đường dẫn đến thư mục chứa tập tài liệu đã
chuyển đổi
o Kết quả trả về:(không có)
o Mô tả thuật toán:
- Từ biến Doc_Path : duyệt tất cả các file xml nằm trong thư mục đó
- Nếu Path=”” : có nghĩa là người sử dụng không nhập vị trí file tài
liệu mới đã được chuyển đổi => lưu tất cả các file đã chuyển đổi mới
vào thư mục mặc định của chương trình
- Nếu Path != “”: lưu các file đã chuyển đổi vào thư mục Path
- Với mỗi file tài liệu xml của chương trình : gọi phương thức
TranslateXML của lớp XL_XML thực hiện chuyển đổi và tạo file
xml mới cho từng file xml tài liệu cũ
Phương thức: DinhDangTaiLieuText
o Ý nghĩa:chuyển đổi định dạng của tập tài liệu , chuyển sang file text
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 format Kiểu mảng mảng Cformat lưu trữ cấu trúc định dạng mới
CFormat mà file xml mới cần chuyển đổi sang cấu trúc
Trang 149
đó
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
2 Path Kiểu chuỗi Đường dẫn đến thư mục chứa tập tài liệu đã
chuyển đổi
o Kết quả trả về (không có)
o Mô tả thuật toán:
- Từ biến Doc_Path : duyệt tất cả các file xml nằm trong thư mục đó
- Nếu Path=”” : có nghĩa là người sử dụng không nhập vị trí file tài
liệu mới đã được chuyển đổi => lưu tất cả các file đã chuyển đổi mới
vào thư mục mặc định của chương trình
- Nếu Path != “”: lưu các file đã chuyển đổi vào thư mục Path
Với mỗi file tài liệu xml của chương trình : gọi phương thức
TranslateText của lớp XL_Text thực hiện chuyển đổi và tạo file text
mới cho từng file xml tài liệu cũ
LayDSTaiLieu:
o Ý nghĩa:lấy danh sách tài liệu của file tài liệu bất kỳ dựa vào tên file
của nó
o Tham số đầu vào:
fn (kiểu chuỗi ): là tên file tài liệu cần lấy
o Kết quả trả về:
dsDoc(Kiểu mảng CDocument) : lưu thông tin của danh sách tài liệu
nằm trong file tài liệu có tên là fn
o Mô tả thuật toán:
- Đọc file xml có tên là fn
- Lấy danh sách các node trong file xml có tên thẻ là “DOC” =>
lstNode
- Gọi n là chiều dài của lstNode
- Khai báo dsDoc là mảng CDocument với n phần tử
- Duyệt danh sách lstNode:
Trang 150
Lặp i=0 đến n
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Đầu lặp i:
Lấy danh sách node con của lstNode[i] => childList
Lặp j=0 cho đến cuối childList
Đầu lặp j
tìm các thẻ “DOCID”,”TITLE”,”CONTENT”... lấy nội
dung tương ứng với các thẻ đó gán vào dsDoc[i]
Cuối lặp j
Cuối lặp i
LayTaiLieu
o Ý nghĩa:lấy tài liệu của một tài liệu bất kỳ dựa vào DocID của nó
o Tham số đầu vào:
DocID (kiểu chuỗi ): là chỉ số của tài liệu cần lấy
o Kết quả trả về:
Kq (Kiểu CDocument) : lưu thông tin của tài liệu có chỉ số là DocID
o Mô tả thuật toán:
- Tìm tên file tài liệu chứa tài liệu có chỉ số là DocID:
Do mỗi file chứa SO_DOC tài liệu và mỗi file tài liệu được đặt tên
theo quy tắc “vn_” + n số 0 + số thứ tự : ví dụ file “vn_000001”
chứa SO_DOC tài liệu, mỗi tài liệu trong file “vn_000001” được
đánh chỉ số DocID từ 1 đến 50, và file “vn_000002” chứa SO_DOC
tài liệu , các tài liệu được đánh số tiếp tục từ 51 đến 100
nên ta có thể từ DocID tính được tên file chứa DocID đó như sau:
int tenfile =DocID / SO_DOC;
int m = DocID % SO_DOC;
if (m != 0) tenfile += 1;
tên file= “vn_” + n số 0 + tenfile
- Gọi phương thức LayDSTaiLieu với đầu vào là fn : kết quả được
danh sách tài liệu CDocument dsdoc
Trang 151
- Tìm trong dsdoc tài liệu có docID=DocID => Kq
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Trả về cho chương trình tài liệu thích hợp Kq
m) XL_Topic
XL_Topic
Static String Topic_Path="topic" DinhDangCauHoi DinhDangCauHoiText LayDSTopicID LayDSCauHoi LayTongSoCauHoi NoiDungTopic
Sơ đồ lớp:
Mô tả:
Thuộc tính:
Topic_Path:(kiểu chuỗi ) lưu giữ thư mục chứa tập câu hỏi, mặc định
tập câu hỏi sẽ được lưu trong thư mục “topic” của chương trình
Phương thức DinhDangCauHoi
o Ý nghĩa: chuyển đổi định dạng của tập tài liệu , chuyển sang file
xml
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 format Kiểu mảng mảng CFormat lưu trữ cấu trúc định dạng
CFormat mới mà file xml mới cần chuyển đổi sang cấu
trúc đó
2 Path Kiểu chuỗi Đường dẫn đến thư mục chứa tập câu hỏi đã
chuyển đổi
o Kết quả trả về (không có)
o Mô tả thuật toán:
Trang 152
- Từ biến Topic_Path: duyệt tất cả các file xml nằm trong thư mục đó
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Nếu Path=”” : có nghĩa là người sử dụng không nhập vị trí file tài
liệu mới đã được chuyển đổi => lưu tất cả các file đã chuyển đổi mới
vào thư mục mặc định của chương trình
- Nếu Path != “”: lưu các file đã chuyển đổi vào thư mục Path
- Với mỗi file tài liệu xml của chương trình : gọi phương thức
TranslateXML của lớp XL_XML thực hiện chuyển đổi và tạo file
xml mới cho từng file xml tài liệu cũ
Phương thức DinhDangCauHoiText
o Ý nghĩa: chuyển đổi định dạng của tập tài liệu , chuyển sang file text
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 format Kiểu mảng mảng CFormat lưu trữ cấu trúc định dạng
CFormat mới mà file xml mới cần chuyển đổi sang
cấu trúc đó
2 Path Kiểu chuỗi Đường dẫn đến thư mục chứa tập câu hỏi
đã chuyển đổi
o Kết quả trả về (không có)
o Mô tả thuật toán:
- Từ biến Topic_Path : duyệt tất cả các file xml nằm trong thư mục đó
- Nếu Path=”” : có nghĩa là người sử dụng không nhập vị trí file tài
liệu mới đã được chuyển đổi => lưu tất cả các file đã chuyển đổi mới
vào thư mục mặc định của chương trình
- Nếu Path != “”: lưu các file đã chuyển đổi vào thư mục Path
Với mỗi file tài liệu xml của chương trình : gọi phương thức
TranslateText của lớp XL_Text thực hiện chuyển đổi và tạo file text
mới cho từng file xml tài liệu cũ
Phương thức LayDSTopicID
Trang 153
o Ý nghĩa :lấy tất cả topicID của file câu hỏi
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
o Tham số đầu vào : (không có)
o Kết quả trả về:
Mảng chuỗi topicID : lưu thông tin của tất cả topicID của câu hỏi
o Mô tả thuật toán:
- Duyệt thư mục có đường dẫn là Topic_Path
- Đọc từng file xml câu hỏi trong thư mục Topic_Path
- Lấy danh sách các node trong file xml có tên thẻ là “TOP” =>
lstNode
- Gọi n là chiều dài của lstNode
- Khai báo topicID là mảng chuỗi với n phần tử
- Duyệt danh sách lstNode:
Lặp i=0 đến n
Đầu lặp i:
Lấy danh sách node con của lstNode[i] => childList
Lặp j=0 cho đến cuối childList
Đầu lặp j
tìm thẻ “TOPID và lấy nội dung của thẻ đó gán vào
topicID[i]
Cuối lặp j
Cuối lặp i
Phương thức LayDSCauHoi
o Ý nghĩa :lấy tất cả thông tin câu hỏi của file câu hỏi
o Tham số đầu vào : (không có)
o Kết quả trả về:
Mảng CTopic dsTopic: lưu thông tin của tất cả câu hỏi
o Mô tả thuật toán:
- Duyệt thư mục có đường dẫn là Topic_Path
Trang 154
- Đọc từng file xml câu hỏi trong thư mục Topic_Path
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Lấy danh sách các node trong file xml có tên thẻ là “TOP” =>
lstNode
- Gọi n là chiều dài của lstNode
- Khai báo dsTopic là mảng CTopic với n phần tử
- Duyệt danh sách lstNode:
Lặp i=0 đến n
Đầu lặp i:
Lấy danh sách node con của lstNode[i] => childList
Lặp j=0 cho đến cuối childList
Đầu lặp j
tìm thẻ “TOPID”, “TITLE” và lấy nội dung của các thẻ đó
gán vào dsTopic[i]
Cuối lặp j
Cuối lặp i
Phương thức LayTongSoCauHoi
o Ý nghĩa :lấy tổng số câu hỏi thực hiện có trong kho dữ liệu
o Tham số đầu vào : (không có)
o Kết quả trả về:
Kq : kiểu số nguyên
o Mô tả thuật toán:
- Gọi phương thức LayDSTopicID =>dsTopic
- Kq= chiều dài của mảng dsTopic
Phương thức NoiDungTopic
o Ý nghĩa:lấy nội dung của một câu hỏi bất kỳ dựa vào TopIDcủa nó
o Tham số đầu vào:
TopID(kiểu chuỗi ): là chỉ số của câu hỏi cần lấy
o Kết quả trả về:
Kq (Kiểu chuỗi) : lưu thông tin của nội dung của câu hỏi có chỉ số là
Trang 155
TopID
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
o Mô tả thuật toán:
- Gọi phương thức LayDSCauHoi => ds
- Tìm trong ds câu hỏi có topID=TopID => Kq
- Trả về cho chương trình tài liệu thích hợp Kq
n) XL_KetQua
XL_KetQua
static String result_Path="result" static String eval_File="evaluation.xml" static String system_File="system.xml" static String rel_File="relevant.xml" static String relevant_Path="result/relevant" float RTrungBinh=0; float PTrungBinh=0; int TongSoTopic=0 String systemID DinhDangKqIR CapNhat_evaluation TinhDoChinhXac_Chuan TaoSysID ThemSystem
Sơ đồ lớp:
Mô tả:
Phương thức DinhDangKqIR:
o Ý nghĩa:định dạng file kết quả trả về của hệ thống IR
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 fn Kiểu chuỗi Tên file kết quả trả về của hệ thống IR
2 sysID Kiểu chuỗi System ID của hệ thống IR
3 kq CKetQua Định dạng của file kết quả
o Kết quả trả về:
Kq: kiểu số nguyên ; cho biết kết quả định dạng thành công hay thất bại
Trang 156
o Mô tả thuật toán:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Ghi chú: file kết quả của hệ thống sẽ được chuyển đổi sang file mới có
cấu trúc đo chương trình đưa ra như sau: (xem phần “Tổ chức lưu trữ dữ
liệu” (relevant_TT ))
Mỗi bảng liên quan thực tế của hệ thống sẽ được lưu thành 1 file riêng
biệt có tên là “rel_” + sysID + “.xml”
- Tao file xml mới , tạo nút gốc RELEVANT
- Đọc file xml fn, lấy các nút có tên là kq.TopicID
• Kiểm tra xem nút TopicID có thuộc tính hay không
- Duyệt tất cả các nút trên
• Nếu có thuộc tính : lấy giá trị của thuộc tính gán vào biến
(kq.ThuocTinh_TopicID==”” ?)
• Nếu không có thuộc tính: lấy giá trị của nút TopicID
• Tạo nút REL và tạo thuộc tính TOPID có giá trị là nội dung
tạm temp
• Lấy các nút con của nút TopicID
• Duyệt tất cả các nút con:
của biến temp
- Xem nút nào là kq.DocID :
- Kiểm tra xem nút DocID có thuộc tính hay không
(kq.ThuocTinh_DocID=”” ?)
- Nếu có thuộc tính : lấy giá trị thuộc tính gán váo biến
strChild
- Nếu không lấy giá trị của nút DocID gán váo biến strChild
Trang 157
- Tạo nút “DOCID” với nội dung là strChild
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Xét xem có nút con nào có tên là kq.TagSim
- Kiểm tra xem nút TagSim có thuộc tính hay không
(kq.ThuocTinh_Sim =”” ?)
- Nếu có thuộc tính : lấy giá trị thuộc tính gán váo biến
strChild
- Nếu không lấy giá trị của nút TagSim gán váo biến
strChild
- Tạo thuộc tính “SIMILARITY” cho nút “DOCID” với nội
dung là strChild
- Ghi lên file xml mới với tên theo công thức sau: “rel_” + sysID +
“.xml” => gọi phương thức WriteXML của lớp LT_XML
Phương thức CapNhat_evaluation
o Ý nghĩa: cập nhật file evaluation.xml : thêm thông tin topic được
đánh giá do hệ thống IR thực hiện
o Tham số đầu vào:
sysID (kiểu chuỗi): system ID của hệ thống thực thi đánh giá
o Kết quả trả về: (không có)
o Mô tả thuật toán:
- Đọc file evaluation.xml để chuẩn bị thêm thông tin danh sách câu
hỏi do hệ thống IR (sysID) thực hiện được đánh giá
- Tạo node “SYSTEM” với thuộc tính “SYSID” =sysID
- Đọc file relevant.xml là file lưu thông tin bảng liên quan lý thuyết để
lấy thông tin liên quan lý thuyết
- Lấy thông tin bảng liên quan thực tế . Thông tin này phụ thuộc hệ
thống IR cần kiểm tra. Do mỗi hệ thống IR trả về bảng liên quan
thực tế đều được lưu thành một file cho hệ thống đó, với cách đặt tên
file là : “rel_” + sysID. Nên tên file lưu bảng liên quan thực tế của
một hệ thống IR sysID là:
Trang 158
retfn=relevant_Path+"/rel_"+sysID+".xml"
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Lấy danh sách topicID (=> gọi phương thức LayDSTopicID của lớp
XL_Topic)
- Duyệt danh sách topicID: Với mỗi topicID:
o Lấy các tài liệu liên quan lý thuyết đối với topicID đó kết quả được
mảng chuỗi lưu DocID liên quan relArr=> tính được số tài liệu liên
quan
o Lấy các tài liệu liên quan thực tế đối với topicID đó kết quả được
mảng chuỗi lưu DocID trả về retArr => tính được số tài liệu trả về
o Lấy phần giao của 2 mảng relArr và retArr => tính được số tài liệu
liên quan được trả về
o Tính độ bao phủ
o Tính độ chính xác
o Tính độ chính xác tại 11 điểm chuẩn của độ bao phủ => gọi
phương thức TinhDoChinhXac_Chuan => kết quả được mảng gồm
11 phần tử lưu 11 giá trị độ chính xác tại 11 điểm chuẩn độ bao
phủ (strPrecision)
o Tính R trung bình và P trung bình
o Ghi nhận topicID này vào file evaluation.xml
Phương thức TinhDoChinhXac_Chuan
o Ý nghĩa: tính độ chính xác tại 11 điểm chuẩn của độ bao phủ của
một topic
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 retArr Kiểu chuỗi mảng docID liên quan tực tế do hệ thống
IR trả về của một topicID
2 relArr Kiểu chuỗi mảng docID liên quan theo lý thuyết của
Trang 159
một topicID
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
o Kết quả trả về:
strPrecision (kiểu mảng chuỗi) giá trị độ chính xác tại 11 điểm chuẩn
của độ bao phủ
o Mô tả thuật toán:
- // ở đây ta dùng lớp CRelevant để tính độ chính xác và độ bao phủ
atị vị trí // thứ n của tài liệu trong dãy tài liệu liên quan trả về
- Khai báo arrRelTT là mảng CRelevant .Khởi tạo giá trị mặc định
cho mảng arrReTT:
o Khởi tạo giá trị DocID : gán các DocID liên quan vào mảng
arrRelTT
o Khởi tại giá trị bRelevant: với các DocID có liên quan lý thuyết
(dựa vào mảng relArr) thì đánh dấu bRelevant tại vị trí đó bằng
true
- Tính tổng số tài liệu liên quan trong mảng CRelevant arrRelTT :
đếm số bRelevant bằng true => sumRelLT
- Tính R và P cho từng vị trí:
Gọi soRel_Rel là số tài liệu liên quan trong mảng arrRelTT tại vị trí thứ i
o Lặp i=0 cho tới cuối mảng arrRelTT
- Nếu ( arrRelTT[i].bRelevant==true ) soRel_Rel tăng lên 1
- arrRelTT[i].fPrecision= soRel_Rel/(i+1);
- arrRelTT[i].fRecall=soRel_Rel/sumRelLT;
Cuối lặp i
- Nội suy với các giá trị R,P tại các thứ tự từ 1 đến hết mảng
arrRelTT :
Gọi Recall=0
Gọi arrP là mảng số thực lưu giá trị độ chính xác tại 11 điểm chuẩn đó
Trang 160
o Lặp i=0 cho tới 11
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
• Tìm chỉ số idx của mảng arrRelTT có arrRelTT[i].fRecall =
Recall hoặc ( arrRelTT[i].fRecall < Recall + 0.1 và
• Nếu tìm không thấy idx=-1 gán arrP[i]=-1;
• Ngược lại tim thấy (idx!=-1) :tìm giá trị max từ vị trí idx cho
arrRelTT[i].fRecall > Recall)
đến cuối của mảng arrRelTT . Gán giá trị max này cho
arrP[i]. =>Đây chính là giá trị độ chính xác tại độ recall
chuẩn
Cuối lặp i
- Sau khi nội suy ta được mảng số thực arrP lưu giá trị 11 độ chính
xác => đổi từ số thực sang chuỗi để thuận lợi việc ghi lên file =>
strPrecision
- Trả về cho chương trình mảng strPrecision
Phương thức TaoSysID
o Ý nghĩa: định dạng file kết quả trả vể của hệ thống IR
o Tham số đầu vào (không có)
o Kết quả trả về;
systemID: kiểu chuỗi
o Mô tả thuật toán:
- Đọc file system.xml
- Lấy số node “SYSTEM” => sysID
- sysID=sysID +1
- đổi sysID sang chuỗi => systemID
- trả về cho chương trình systemID
Phương thức ThemSystem
o Ý nghĩa: định dạng file kết quả trả vể của hệ thống IR
Trang 161
o Tham số đầu vào:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
STT Tên Loại kiểu Ý nghĩa
sysID Kiểu chuỗi System ID của hệ thống cần thêm 1
name Kiểu chuỗi Tên hệ thống cần thêm 2
o Kết quả trả về: (không có)
o Mô tả thuật toán:
- Đọc file system.xml (file system.xml là file lưu tất cả các hệ thống
đã tiến hành đánh giá)
- Tạo node “SYSTEM” và thuộc tính của nó “SYSID” có giá trị là
sysID
- Tạo các node “NAME” “DATE” “AVGPRECISON”
“AVGRECALL”, với giá trị lần lượt là name, ngày giờ hệ thống,
PtrungBinh, RtrungBinh.
- Ghi lên file xml (gọi phương thức WriteXML của lớp LT_XML)
o) XL_HeThongIR
XL_HeThongIR
Static String path_system="result/system.xml" ThucThiHTIR LayDSThongTinHeThong LayHeThong
Sơ đồ lớp:
Mô tả:
Phương thức ThucThiHTIR:
o Ý nghĩa: gọi hệ thống IR thực thi
o Tham số đầu vào: (không có)
o Kết quả trả về: (không có)
Trang 162
o Mô tả thuật toán:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Gọi hệ thống IR hiện thị để cho phép người dùng thực hiện hệ thống IR
đó
Phương thức LayDSThongTinHeThong:
o Ý nghĩa: gọi hệ thống IR thực thi
o Tham số đầu vào: (không có)
o Kết quả trả về:
ht mảng CheThongIR lưu thông tin giá trị của danh sách hệ thống IR bao
gồm sysID, tên, ngày kiểm tra , R trung bình , P trung bình
o Mô tả thuật toán:
- Đọc file system.xml
- Lấy nội dung các thẻ “SYSTEM” (“SYSID”) ,
“NAME” , ”DATE” , ”AVGRECALL” , “AVGPRECISION” gán
vào ht[i]
- Trả về cho chương trình danh sách ht
Phương thức LayHeThong:
o Ý nghĩa: lấy hệ thống bất kỳ dựa vào sysid nhập vào
o Tham số đầu vào:
sysID: (kiểu chuỗi) : systemID của hệ thống cần lấy
o Kết quả trả về:
kq (kiểu CHeThongIR) : hệ thống IR
o Mô tả thuật toán:
- gọi phương thức LayDSThongTinHeThong =>ht
- Duyệt hệ thống ht , xem ht[i] nào có systemID =sysID =>kq
Trang 163
- Trả về cho chương trình kq
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
p) XL_Index
XL_Index
String index_Path="result/index" DinhDangIndex DinhDangIndex_topic DinhDangIndex_document LayNoiDungIndex LayNoiDungIdx_Doc LayNoiDungIdx_Topic
Sơ đồ lớp:
Mô tả:
Phương thức “DinhDangIndex”
o Ý nghĩa: do cấu trúc của file index tài liệi và index câu hỏi tương tự
nhau nên phương thức “DinhDangIndex” sẽ định dạng cùng một kiểu
file cấu trúc
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 fn Kiểu chuỗi Tên file index của hệ thống IR
2 newfn Kiểu chuỗi Tên file xml mới
3 idx CIndex Định dạng của file index
o Kết quả trả về:
- Kq: lỗi chương trình : thành công hay thất bại
o Mô tả thuật toán:
(tương tự định dạng file kết quả)
Ghi chú: file index của hệ thống sẽ được chuyển đổi sang file mới có
cấu trúc đo chương trình đưa ra như sau: (xem phần “Tổ chức lưu trữ dữ
Trang 164
liệu” (index ))
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Mỗi bảng liên quan thực tế của hệ thống sẽ được lưu thành 1 file riêng
biệt có tên là “rel_” + sysID + “.xml”
- Đọc file xml fn, lấy các nút có tên là idx.ID => Nodes
- Tao file xml mới , tạo nút gốc MATRIX, với thuộc tính SIZE là số
nút của Nodes
• Kiểm
- Duyệt tất cả các nút trong Nodes
tra xem nút ID có thuộc tính hay không
• Nếu có thuộc tính : lấy giá trị của thuộc tính gán vào biến
(idx.ThuocTinh_ID==”” ?)
• Nếu không có thuộc tính: lấy giá trị của nút ID
• Tạo nút “INDEX” và tạo thuộc tính ID có giá trị là nội dung
tạm temp
• Lấy các nút con của nút ID =>child
• Tạo thuộc tính “SIZE” của nút “INDEX” có giá trị là số nút
của biến temp
• Duyệt tất cả các nút con child:
của child
- Xem nút nào là idx.Term :
- Kiểm tra xem nút Term có thuộc tính hay không
(idx.ThuocTinh_Term =”” ?)
- Nếu có thuộc tính : lấy giá trị thuộc tính gán váo biến
strChild
Trang 165
- Nếu không lấy giá trị của nút DocID gán váo biến strChild
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
- Tạo nút “TERM” và thuộc tính WORD“” với nội dung là
strChild
- Xét xem có nút con nào có tên là idx.Weigh
- Kiểm tra xem nút Weigh có thuộc tính hay không
(idx.ThuocTinh_Weigh =”” ?)
- Nếu có thuộc tính : lấy giá trị thuộc tính gán váo biến
strChild
- Nếu không lấy giá trị của nút Weigh gán váo biến strChild
- Tạo thuộc tính “WEIGH” cho nút “TERMM” với nội
dung là strChild
- Ghi lên file xml mới với tên là newfn => gọi phương thức
WriteXML của lớp LT_XML
Phương thức “DinhDangIndex_topic”
o Ý nghĩa: định dạng file index của câu hỏi
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 fn Kiểu chuỗi Tên file index của hệ thống IR
2 sysId Kiểu chuỗi systemID của hệ thống IR
3 idx CIndex Định dạng của file index
o Kết quả trả về:
- Kq: lỗi chương trình : thành công hay thất bại
o Mô tả thuật toán:
- file index của câu hỏi được đặt tên theo công thức sau:
“idxTopic_" + sysId + ".xml" => newfn
- Gọi phương thức “DinhDangIndex” với các tham số đầu vào là fn,
newfn , idx
Phương thức “DinhDangIndex_document”
o Ý nghĩa: định dạng file index của tài liệu
Trang 166
o Tham số đầu vào:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
STT Tên Loại kiểu Ý nghĩa
1 fn Kiểu chuỗi Tên file index của hệ thống IR
2 sysId Kiểu chuỗi systemID của hệ thống IR
3 idx CIndex Định dạng của file index
o Kết quả trả về:
- Kq: lỗi chương trình : thành công hay thất bại
o Mô tả thuật toán:
- file index của câu hỏi được đặt tên theo công thức sau:
“idxDocument_" + sysId + ".xml" => newfn
- Gọi phương thức “DinhDangIndex” với các tham số đầu vào là fn,
newfn , idx
Phương thức “LayNoiDungIndex”
o Ý nghĩa: do cấu trúc của các tập tin index của tài liệu và câu hỏi
tương tự nhau, nên phương thức “LayNoiDungIndex” là dùng chung
cho 2 phương thức lấy nội dung riêng cho từng file index tài liệu và
câu hỏi
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 fn Kiểu chuỗi Tên file index của hệ thống IR
2 ID Kiểu chuỗi ID của tài liệu hay câu hỏi
o Kết quả trả về:
- strNoiDung: mảng 2 chiều: ghi nhận nội dung của index gồm 2 trường
“WORD” và “TERM”
o Mô tả thuật toán:
- Đọc file xml fn , lấy các nút có tên là “INDEX” => lst
• Lấy thuộc tính “ID” của nút “INDEX” => strId
• Kiểm tra xem strId có là ID cần tìm hay không?
Trang 167
- Duyệt các nút trong lst:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
• Nếu phải tìm lấy các nút con của nút “INDEX” đó =>
• Duyệt các nút trong childList
childList
- Lấy giá trị của thuộc tính ”WORD” nút con gán vào
strNoiDung[k][0]
- Lấy giá trị của thuộc tính ”WEIGH” nút con gán vào
strNoiDung[k][1]
- k=k+1;
Phương thức “LayNoiDungIdx_Doc”
o Ý nghĩa: lấy nội dung của file index tài liệu
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
sysID Kiểu chuỗi systemID của hệ thống IR 1
DocId Kiểu chuỗi ID của tài liệu 2
o Kết quả trả về:
- strNoiDung: mảng 2 chiều: ghi nhận nội dung của index gồm 2 trường
“WORD” và “TERM”
o Mô tả thuật toán:
- Gọi fn=”idxDocument_" + sysID + ".xml"
- Gọi phương thức LayNoiDungIndex với tham số đầu vào là fn,
DocId
Phương thức LayNoiDungIdx_Topic”
o Ý nghĩa: lấy nội dung của file index câu hỏi
o Tham số đầu vào:
STT Tên Loại kiểu Ý nghĩa
1 sysID Kiểu chuỗi systemID của hệ thống IR
Trang 168
2 TopId Kiểu chuỗi ID của tài liệu
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
o Kết quả trả về:
- strNoiDung: mảng 2 chiều: ghi nhận nội dung của index gồm 2 trường
“WORD” và “TERM”
o Mô tả thuật toán:
- Gọi fn=”idxDocument_" + sysID + ".xml"
- Gọi phương thức LayNoiDungIndex với tham số đầu vào là fn,
DTopId
q) XL_DoThi
(vẽ đồ thi đường cong RP)
3.3.2.7.2. Các lớp đối tượng lưu trữ
a) LT_XML:
LT_XML
ReadXML WriteXML
Sơ đồ lớp:
Mô tả:
Phuơng thức ReadXML:
o Ý nghĩa: đọc một file XML bất kỳ
o Tham số đầu vào
fileName : kiểu chuỗi ; tên file xml cần đọc
o Kết quả trả về:
Kq: kiểu số nguyên cho biết đọc file thành công hay thất bại
o Mô tả thuật toán
- Đọc file xml có tên là fileName
- Trả kết quả đọc về cho chương trình
Phương thức WriteXML:
Trang 169
o Ý nghĩa: ghi lên file xml bất kỳ
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
o Tham số đầu vào
fn : kiểu chuỗi ; tên file cần ghi
Doc : Document ; nội dung các node của file xml mới cần tạo
o Kết quả trả về:
Kq: kiểu số nguyên cho biết ghi file thành công hay thất bại
o Mô tả thuật toán
- ghi nội dung các node của file xml mới
- trả kết quả về cho chương trình
b ) LT_Text:
LT_Text
WriteText
Sơ đồ lớp:
Mô tả:
Phương thức WriteText:
o Ý nghĩa: cho phép ghi một chuỗi lên file dạng text => dùng để tạo
file text khi chuyển định dạng từ file xml sang file text
o Tham số đầu vào:
fn: kiểu chuỗi ; là tên file text cần tạo
strNoiDung: kiểu chuỗi; là nội dung cần ghi lên file
o Kết quả trả về:
Kq : kiểu số nguyên : thông báo cho chương trình biết là tạo file
thành công hay thất bại
o Mô tả thuật toán:
- Ghi strNoiDung vào file mới tạo.
Trang 170
- Tạo mới file với tên file là fn
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Chương 4 : KẾT QUẢ ĐÁNH GIÁ
4.1. Ngưỡng đánh giá
Để thực hiện đánh giá hệ thống tìm kiếm thông tin chương trình xây dựng bảng
đánh giá chuẩn. Bảng đánh giá chuẩn này được thực hiện dựa trên phương pháp
pooling với chiều dài pool là 50 tài liệu liên quan đầu.
Chương trình thực hiện đánh giá hai hệ thống search4VN và Lucene lần lượt
tại các ngưỡng đánh giá là 50,100,1000. Sau đó tiến hành so sánh hai hệ thống
trên.
Để đánh giá độ tin cậy và khả năng tìm kiếm thông tin của hệ thống ta tiến
hành tính độ bao phủ và độ chính xác cho từng câu truy vấn, và tính độ bao phủ và
độ chính xác của hệ thống (chính là độ bao phủ và độ chính xác trung bình). Sau
đó tiến hành đánh giá dựa trên đường cong chuẩn RP .
4.2. Đánh giá hệ thống tìm kiếm thông tin search4VN
Đánh giá hệ thống search4VN ở các ngưỡng 50, 100 , 1000
STT Ngưỡng c=50 Ngưỡng c=100 Ngưỡng c=1000
Câu Recall Precision Recall Precision Recall Precision
truy (Ri) P(i) (Ri) P(i) (Ri) P(i)
vấn
1 0.66 0.66 0.82 0.41 0.86 0.043
2 0.56 0.56 0.7 0.35 0.88 0.06128
3 0.46 0.46 0.64 0.32 0.82 0.041
4 0.58 0.58 0.76 0.38 0.88 0.044
5 0.56 0.56 0.82 0.41 0.9 0.045
6 0.62 0.62 0.76 0.38 0.88 0.184874
7 0.28 0.28 0.42 0.21 0.8 0.04
Trang 171
8 0.46 0.46 0.48 0.24 0.86 0.06636
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
9 0.56 0.56 0.78 0.39 0.84 0.042
10 0.36 0.36 0.46 0.23 0.8 0.04
11 0.18 0.18 0.36 0.18 0.7 0.035
12 0.48 0.48 0.64 0.32 0.88 0.044
13 0.36 0.36 0.48 0.24 0.82 0.041
14 0.52 0.52 0.7 0.35 0.82 0.041
15 0.42 0.42 0.6 0.3 0.84 0.042
16 0.34 0.34 0.62 0.31 0.84 0.042
0.09224 17 0.44 0.44 0.68 0.34 0.88
0.487804 0.341463
9 42 0.80488 0.196429 0.2 0.28 18
19 0.34 0.34 0.38 0.19 0.8 0.04
20 0.6 0.6 0.84 0.42 0.86 0.043
21 0.4 0.4 0.62 0.31 0.82 0.041
22 0.52 0.52 0.68 0.34 0.88 0.044
23 0.42 0.42 0.74 0.37 0.92 0.055355
24 0.34 0.34 0.4 0.2 0.82 0.041
25 0.56 0.56 0.6 0.3 0.86 0.043
26 0.5 0.5 0.6 0.3 0.84 0.042
27 0.54 0.54 0.68 0.34 0.84 0.042
28 0.18 0.18 0.22 0.11 0.72 0.036
29 0.56 0.56 0.7 0.35 0.86 0.043
30 0.54 0.54 0.74 0.37 1.0 0.05
31 0.36 0.36 0.58 0.29 0.76 0.038
32 0.5 0.5 0.64 0.32 0.82 0.041
33 0.38 0.38 0.74 0.37 0.78 0.039
34 0.54 0.54 0.7 0.35 0.82 0.041
Trang 172
35 0.5 0.5 0.64 0.32 0.84 0.042
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
36 0.2 0.2 0.28 0.14 0.88 0.044
37 0.62 0.62 0.74 0.37 0.86 0.043
38 0.48 0.48 0.62 0.31 0.86 0.064
39 0.34 0.34 0.46 0.23 0.8 0.04
40 0.32 0.32 0.48 0.24 0.76 0.038
41 0.46 0.46 0.72 0.36 0.82 0.051638
42 0.3 0.3 0.74 0.37 0.8 0.09195
43 0.68 0.68 0.8 0.4 0.82 0.041
44 0.36 0.36 0.46 0.23 0.74 0.037
45 0.46 0.46 0.76 0.38 0.82 0.041
46 0.5 0.5 0.6 0.3 0.84 0.042
47 0.28 0.28 0.42 0.21 0.74 0.037
48 0.48 0.48 0.8 0.4 0.86 0.043
49 0.22 0.22 0.24 0.12 0.76 0.038
50 0.48 0.48 0.66 0.33 0.78 0.039
51 0.48 0.48 0.66 0.33 0.84 0.042
52 0.6 0.6 0.66 0.33 0.86 0.043
53 0.52 0.52 0.74 0.37 0.88 0.044
54 0.64 0.64 0.7 0.35 0.88 0.079855
55 0.72 0.72 0.82 0.41 0.9 0.045
56 0.38 0.38 0.58 0.29 0.86 0.043
57 0.46 0.46 0.66 0.33 0.86 0.043
58 0.2 0.2 0.34 0.17 0.88 0.0538
59 0.5 0.5 0.74 0.37 0.88 0.044
60 0.22 0.22 0.38 0.19 0.78 0.039
61 0.6 0.6 0.72 0.36 0.88 0.044
62 0.2 0.2 0.36 0.18 0.58 0.029
Trang 173
63 0.5 0.5 0.72 0.36 0.9 0.045
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
N
N
N
N
N
N
i∑ R
i∑ P
i∑ R
i∑ P
i∑ R
i∑ P
i
i
i
i
i
i
64 0.7 0.7 0.78 0.39 0.86 0.043
=1 N
=1 N
=1 N
=1 N
=1 N
=1 N
R= P= R= P= R= P=
=0.45096 =0.44999 =0.61480 =0.306718 =0.83320 =0.049851
034 996 95 77 14 24
Nhận xét:
(cid:153) Với ngưỡng đánh giá là 50
Do chiều dài pool là 50 bằng với ngưỡng đánh giá nên độ bao phủ và độ
chính xác bằng nhau .
Xét câu hỏi thứ 18: do số tài liệu liên quan thực sự khi lấy phần giao 2
hệ thống nhỏ hơn chiều dài pool 50 nên khi dùng phương pháp pooling với
chiều dài pool l12 50 thì số tài liệu liên quan theo lý thuyết sẽ nhỏ hơn
chiều dài pool (50) và thực tế là chỉ có 41 tài liệu liên quan theo lý thuyết
trong khi đó số tài liệu trả về là 50 vì ngưỡng đánh giá là 50 nên độ chính
xác nhỏ hơn độ bao phủ.
(cid:153) Với ngưỡng đánh giá là 100
Do ngưỡng đánh giá (số tài liệu trả về ) gấp đôi chiều dài pool (số tài
liệu liên quan theo lý thuyết) nên độ bao phủ gần như lớn gấp đôi độ chính
xác.
(cid:153) Với ngưỡng đánh giá là 1000:
Do ngưỡng đánh giá lớn tức là số tài liệu hệ thống search4VN trả về lớn
(1000) tài liệu nên độ chính xác so với độ chính xác khác ở ngưỡng 50 và
100.
(cid:153) Với cùng câu hỏi:
Cùng một câu hỏi nếu ngưỡng đánh giá càng cao (có nghĩa là số tài trả
về của hệ thống tìm kiếm bên ngoài tăng), nên số tài liệu liên quan được trả
về có thể sẽ tăng nên độ bao phủ của ngưỡng đánh giá cao sẽ cao hơn độ
Trang 174
chính xác.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Tính toán độ chính xác tại 11 điểm chuẩn của độ bao phủ:
R P (c=50) P (c=100) P (c=1000)
0.0 0.92311794 0.9234109 0.9234109
0.1 0.7882654 0.78855836 0.78855836
0.2 0.69403636 0.6889597 0.6889597
0.3 0.63090414 0.6179958 0.6106299
0.4 0.5820023 0.55077547 0.53635085
0.5 0.5450672 0.49265072 0.46107948
0.6 0.5310865 0.4223546 0.3832133
0.7 0.5289436 0.39856696 0.29289013
0.8 0.5289436 0.39096713 0.1897545
0.9 0.5289436 0.39096713 0.18582451
1.0 0.5289436 0.39096713 0.18582451
Nhận xét :
Nếu càng tăng ngưỡng đánh giá độ chính xác giảm do số tài liệu trả về tăng
mà số tài liệu liên quan được trả về tăng không đáng kể.
Trang 175
Đường cong RP của hệ thống search4VN như sau:
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
c= 50
Trang 176
c=100
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
c=1000
4.3. So sánh hệ thống tìm kiếm search4VN và hệ thống Lucene
So sánh hệ thống search4VN và Lucene ở các ngưỡng 50, 1000
c=50 c=1000
R P (searchVN) P (Lucene) P (searchVN) P (Lucene)
0.0 0.92311794 0.9883535 0.9234109 0.9883535
0.1 0.7882654 0.9370161 0.78855836 0.9370161
0.2 0.69403636 0.8891043 0.6889597 0.88669646
0.3 0.63090414 0.8682885 0.6106299 0.86513025
0.4 0.5820023 0.8526954 0.53635085 0.8495781
0.5 0.5450672 0.8452069 0.46107948 0.84239674
0.6 0.5310865 0.8401279 0.3832133 0.83736676
0.7 0.5289436 0.83058465 0.29289013 0.828869
Trang 177
0.8 0.5289436 0.8242704 0.1897545 0.77039164
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
0.5289436 0.8242704 0.18582451 0.29168567 0.9
0.5289436 0.8242704 0.18582451 0.29168567 1.0
c=50
c=1000
Nhận xét : ta thấy đồ thị của search4VN nằm dưới đồ thị Lucene nên hệ
Trang 178
thống search4VN có hiệu suất thực thi thấp hơn so với hệ thống Lucene
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
4.4. Nhận xét chương trình hỗ trợ đánh giá hệ thống tìm kiếm thông
tin
4.4.1. Ưu điểm
• Có thể đánh giá được các hệ thống tiếng Anh và Tiếng Việt • Không phụ thuộc vào cấu trúc định dạng của bộ ngữ liệu dùng để đánh
giá
• So sánh được các hệ thống tìm kiếm • Đánh giá các hệ thống tìm kiếm dựa trên đường cong RP trực quan dễ
hiểu
• Mặc dù hạn chế về đặc thù của ngôn ngữ tiếng Việt với các ngôn ngữ
khác. Ví dụ tiếng Việt là loại hình đơn lập phi hình thái, còn tiếng Anh
là loại hình biến cách hay còn gọi là loại hình khuất chiết trong đó xác
định ranh giới từ không phải dựa vào khoảng trắng như các thứ tiếng
biến hình khác, nhưng chúng tôi đã giải quyết được vấn đề này bằng
cách chuẩn hóa lại từ tiếng Việt để các hệ thống tìm kiếm tiếng Anh có
thể hiểu được ranh giới từ tiếng Việt và tìm kiếm được với tiếng Việt.
4.4.2. Khuyết điểm
Hệ thống trợ giúp đánh giá thật sự cho kết quả đáng tin cậy khi bảng đánh
giá liên quan chuẩn chính xác và khách quan. Do đó đánh giá hệ thống trợ giúp
đánh giá phụ thuộc vào bảng đánh giá liên quan chuẩn
Tiếng Việt là một ngôn ngữ có dấu nên việc mã hoá Tiếng Việt cũng gây
nhiều khó khăn trong việc lập chỉ mục của các hệ thống tim kiếm tiếng Anh
với kho ngữ liệu là tiếng Việt.
Do đó việc chạy các hệ thống tìm kiếm thông tin vốn chỉ dành cho tiếng
Anh không thể tiến hành cho Tiếng Việt. Trong luận văn này, chúng tôi đã
nghiên cứu các hệ thống tìm kiếm thông tin tiếng Anh như SMART, IOTA,
Trang 179
TERRIER, LUCENE và đã gặp rất nhiều khó khăn với việc lập chỉ mục cho
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
kho ngữ liệu Tiếng Việt mặc dù chúng tôi đã cố gắng hết sức chỉnh sửa mã
nguồn cho tất cả các hệ thống này. Nhưng cuối cùng, chỉ có hệ thống LUCENE
có thể tìm kiếm được với Tiếng Việt. Bảng đánh giá liên quan chuẩn được trích
ra từ phần giao của hai hệ thống LUCENE và Search4VN. Vì vậy bảng đánh
giá liên quan chuẩn lúc đầu có một số chỗ chưa chính xác do có ít hệ thống tìm
kiếm thông tin tiếng Việt. Chúng tôi đã cố gắng khắc phục vấn đề này bằng
cách xem lại bảng liên quan chuẩn bằng thủ công và lấy ra những tài liệu nào
thật sự liên quan đến câu hỏi nhất để hoàn thiện bảng này. Cách làm này chỉ là
giải pháp tạm thời cho bộ ngữ liệu dùng để đánh giá hiện tại của chúng tôi.
Nếu có nhu cầu phát triển thêm bộ ngữ liệu dùng để đánh giá, các bạn nên xây
dựng thêm bảng đánh giá này bằng cách chạy nhiều hệ thống tìm kiếm thông
Trang 180
tin tiếng Việt hơn mà không cần thay đổi gì về mô hình của hệ thống.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Chương 5 : KẾT LUẬN
Công tác đánh giá (evaluation) một mô hình, một hệ thống nói chung cũng
quan trọng không kém so với việc xây dựng một mô hình hay một hệ thống.
Đề tài của chúng tôi nhằm tự động hoá công tác đánh giá các hệ thống tìm
kiếm thông tin (IR systems). Với việc tự động hoá đó, chúng ta có thể đánh giá
một cách nhanh chóng, chính xác và quan trọng là khách quan khả năng và
hiệu suất tìm kiếm của các hệ thống tìm kiếm thông tin.Nhờ sự đánh giá đó,
những người xây dựng hệ thống IR có được sự phản hồi (feedback) nhanh
chóng kịp thời, để họ kịp điều chỉnh (setting) lại mô hình, phương pháp mà
họ vừa cài đặt, thử nghiệm cho một hệ thống IR. Chính nhờ sự điều chỉnh kịp
thời và phù hợp các thông số của mô hình trên chính hệ thống IR đó, từ đó họ
mới có thể đưa đến một hệ thống IR tối ưu (optimal IR system).
Nhờ có sự đánh giá kịp thời và nhanh chóng như vậy mà các nhà xây dựng hệ
thống IR sẽ được khích lệ về mặt tinh thần, tiết kiệm về mặt thời gian, công
sức, thay vì phải đợi một thời gian dài chờ đợi sự đánh giá bằng phương pháp
thủ công như trước đây (phải để cho nhiều người sử dụng trong thời gian dài
rồi mới nhận được ý kiến phản hồi từ phía người sử dụng, các ý kiến này có thể
chính xác mà cũng có thể là chủ quan). Từ đó, họ càng có tinh thần, thời gian
và công sức để đầu tư vào việc cải thiện mô hình/phương pháp của mình được
nhiều hơn.
Việc đánh giá này là để biết được điểm mạnh, điểm yếu của từng hệ thống IR
mà từ đó ta chọn ra được hệ thống IR tối ưu phục vụ cho nhu cầu tìm kiếm
thông tin một cách có hiệu quả.
Chúng tôi hy vọng đề tài này sẽ là một đóng góp nhỏ có ý nghĩa cho việc
Trang 181
nghiên cứu về lĩnh vực tìm kiếm thông tin.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Chương 6 : HƯỚNG PHÁT TRIỂN
Việc nghiên cứu đánh giá các hệ thống tìm kiếm thông tin rất đa dạng với
nhiều phương pháp, mô hình đánh giá khác nhau. Những mô hình, phương pháp
này đang được tiếp tục nghiên cứu, bàn luận trên thế giới.
Trên cơ sở những phần đã nghiên cứu và thực hiện, đề tài của chúng tôi có các
hướng phát triển sau :
Hướng phát triển về mô hình đánh giá tổng quát: mô hình đánh giá
hướng người dùng.
Hướng phát triển về phương pháp xây dựng bộ ngữ liệu dùng để đánh
giá, đặc biệt trong phương pháp xây dựng bảng đánh giá liên quan
chuẩn nhằm tạo ra bảng đánh giá khách quan và chính xác.
Hướng phát triển về phương pháp đánh giá: Ngoài cách đánh giá dựa
vào 11 điểm chuẩn của độ bao phủ, đề tài có thể phát triển thêm các
phương pháp đánh giá khác như phương pháp đánh giá dựa trên độ
chính xác trung bình nghiêm ngặt (Mean Average Precision – MAP), đo
dựa trên giá trị đơn Swet’s E-Measure (Single-valued Measure) hoặc
Trang 182
chiều dài tìm kiếm trung bình.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
PHỤ LỤC
1. Câu hỏi mẫu:
hình xây dựng nền kinh tế tri thức?
kinh tế tri thức,các yếu tố hình thành nền kinh tế tri thức, nhu cầu
xây dựng nền kinh tế tri thức tại Việt Nam, tình hình nền kinh tế tri
thức tại Việt Nam
tham nhũng lớn,các tội danh liên quan như nhận hối lộ, biển thủ
công quỹ, nguyên nhân và hậu quả của tham nhũng, ý kiến của nhân
dân và báo chí, các biện pháp chống tham nhũng trong bộ máy công
quyền
Trang 183
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
thông tại Việt Nam gồm có các chính sách của chính phủ về an toàn
giao thông, tình trạng vi phạm trật tự an toàn giao thông, ùn tắc giao thông ,tai nạn giao thông
2. Tài liệu mẫu
nhìn mới
Số báo : 155/2000
Thể loại :
Trang : trang 1, 14
tầm nhìn mới.
(TT-Hà Nội) - Tại lễ khai mạc Diễn đàn thanh niên (TN) VN với chủ
đề “Sẵn sàng cho thế kỷ 21” sáng 30-11 tại Hà Nội (do Hội Liên
hiệp TN VN phối hợp với các cơ quan LHQ tại VN tổ chức), ông
Edouard Wattez, điều phối viên thường trú LHQ tại VN, đã nhấn
mạnh: “Với 60% dân số ở độ tuổi dưới 30, VN thật sự là một đất
nước trẻ. Đây là một thời điểm khá đặc biệt trong lịch sử đất nước
các bạn - thời điểm của hòa bình và đổi mới, thời điểm của VN đã
bắt đầu mở cửa với thế giới và tiến hành hiện đại hóa, thời điểm của
Trang 184
VN có vai trò to lớn trong các hội nghị toàn cầu, trong các tổ chức
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
quốc tế và vai trò của VN ngày càng trở nên quan trọng hơn. TN VN
có vai trò quan trọng trong quá trình mở cửa với thế giới....
Đ. Bình
3. Bảng đánh giá liên quan chuẩn
Bảng đánh giá liên quan chuẩn gồm hai thành phần chính: câu hỏi và các tài
liệu liên quan thật sự của câu hỏi đó.
Cấu trúc DTD của file chứa bảng đánh giá liên quan chuẩn được tổ chức như
sau:
Diễn giải:
Ví dụ một phần bảng đánh giá liên quan chuẩn:
Trang 185
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
Tài liệu tham khảo
[ 1 ] Ricardo Beaza-Yates & Berthier Ribeiro-Neto, Modern Information
Retrieval, Addison Press, Anh, 1999. [ 2 ] Wessel Kraaij, Variations on Language Modeling for Information Retrieval,
Thesis Enschede, Print Partners Ipskamp, Enschede, 2004. [ 3 ] Mei-Mei Wu & Danie H. SonnenWald, Reflections on Information Retrieval
Evaluation, Hội nghị TREC, 2004. [ 4 ] F C Johnson, J R Griffiths, R J Hartley, A framework for the evaluation of
Internet search engines, The Council of Museums, Archives and Libraries, Anh,
2001. [ 5 ] Van Rijsbergen C.J., Information Retrieval, Tái bản lần 2, ButterWorths,
Luân Đôn, 1979, Chương 7 có tại
[ 6 ] Gerard Salton, Micheal J. McGrill, Introduction to Modern Information
http://www.dcs.gla.ac.uk/Keith/Chapter.7/Ch7.html
Retrieval, International Student Edition, New York, 1983. [ 7 ] Pia Borlund , The IIR evaluation model: a framework for evaluation of
interactive information retrieval systems, Information Research, 2003. [ 8 ] Hội nghị TREC : http://trec.nist.gov [9 ] Ellen M. Voorhees, Overview of TREC 2003, National Institute of Standards
and Technology, 2003. [ 10 ] Đinh Điền, giáo trình Xử lý Ngôn ngữ Tự nhiên, Đại học Khoa học Tự nhiên
Tp. Hồ Chí Minh, 2004. [ 11 ] Nguyễn Văn Tu, Từ và vốn từ tiếng Việt hiện đại, NXB Đại học & THCN,
Hà Nội , 1978. [ 12 ] Địa chỉ ftp của SMART : ftp://ftp.cs.cornell.edu/pub/smart/ [ 13 ] Jean-Pierre Chevallet, XIOTA: An open XML framework for IR
[ 14 ] Địa chỉ trang Web của Terrier : http://ir.dcs.gla.ac.uk/terrier/
Trang 186
Experimentation, Hội nghị CLEF, 2004.
Luận văn : Đánh giá các hệ thống tìm kiếm thông tin
[ 15 ] Địa chỉ trang Web của Lucene : http://lucene.apache.org/java/docs/index.html
Trang 187

