Để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 .
187 trang |
Chia sẻ: haianh_nguyen | Lượt xem: 1196 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Đề tài Xây dựng bộ ngữ liệu để đánh giá bằng tiếng Việt và chương trình trợ giúp đánh giá các hệ tìm kiếm thông tin, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
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
1 TopID Kiểu chuỗi docID của câu hỏi
2 Title Kiểu chuỗi Nội dung của câu hỏi
3 Description Kiểu chuỗi Chú thích của câu hỏi
4 Narrative Kiểu chuỗi Nội dung yêu cầu liên quan của câu hỏi
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
1 strTenHT Kiểu chuỗi Tên hệ thống IR
2 strID Kiểu chuỗi ID của hệ thống IR
3 NgayKiemTra Kiểu chuỗi Ngày tiến hành kiểm tra hệ thống IR
4 Rtrungbinh Kiểu chuỗi Độ bao phủ trung bình
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 141
5 Ptrungbinh Kiểu chuỗi Độ chính xác trung bình
6 fP Mảng số
thực
Độ chính xác trung bình tại 11 điểm
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 Kiểu
chuỗi
Thẻ tương ứng với TopicID
2 DocID Kiểu
chuỗi
Thẻ tương ứng với DocID
3 ThuocTinh_TopicID Kiểu
chuỗi
Tên thuộc tính tương ứng với
TopicID nếu thẻ tương ứng với
TopicID cĩ thuộc tính
4 ThuocTinh_DocID Kiểu
chuỗi
Tên thuộc tính tương ứng với
DocID nếu thẻ tương ứng với
DocID cĩ thuộc tính
5 TagSim Kiểu
chuỗi
Thẻ tương ứng với similarity (thẻ
Similarity)
6 ThuocTinh_Sim Kiểu
chuỗi
Tên thuộc tính tương ứng với
Similarity nếu thẻ tương ứng với
Similarity cĩ thuộc tính
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 142
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
Ư 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
1 DocID Kiểu chuỗi docID của câu hỏi tại vị trí thứ tự n
2 bRelevant Kiểu logic Tài liệu tại vị trí n cĩ liên quan hay
khơng?
3 fPrecision Kiểu số
thực
Độ chính xác của tài liệu tại vị trí n
4 fRecall Kiểu số
thực
Độ bao phủ của tài liệu tại vị trí n
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
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
Trang 143
nguyên
h) XL_XML :
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
CFormat
mảng Cformat lưu trữ cấu trúc định dạng
mới mà file xml mới cần chuyển đổi sang
cấu trúc đĩ
2 newFile Kiểu chuỗi file xml mới bao gồm cả đường dẫn
3 oldPathFile Kiểu chuỗi đường dẫn file xml cũ
4 oldFile Kiểu chuỗi tên file xml cũ
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
tính vào mảng attrArray
XL_XML
TranslateXML
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 144
Ví dụ : cĩ file xml như sau:
Ỵ nút gốc (cĩ thứ tự =0)
Ỵ nút kế gốc (cĩ thứ tực bằng 1)
“ 1 “
“Thanh niên Việt Nam”
Đổi sang file xml cĩ cấu trúc như sau:
“Thanh niên Việt Nam”
Đị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();
f[1].attrArray[0].oldTag="DOCID";
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 145
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ố
nguyên
Kết quả trả về để xác nhận chuyển đổi
thành cơng hay thất bại
o Mơ tả thuật tố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ĩ)
- 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
Trang 146
- 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 Ỵ đã ánh xạ xong các node của file xml cũ sang file xml mới
k) XL_Text:
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:
STT Tên Loại kiểu Ý nghĩa
XL_XML
TranslateText
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 147
1 format Kiểu mảng
CFormat
mảng Cformat lưu trữ cấu trúc định dạng
mới mà file xml mới cần chuyển đổi sang
cấu trúc đĩ
2 newFile Kiểu chuỗi file xml mới bao gồm cả đường dẫn
3 oldPathFile Kiểu chuỗi đường dẫn file xml cũ
4 oldFile Kiểu chuỗi tên file xml cũ
o Kết quả trả về:
STT Tên Loại kiểu Ý nghĩa
1 kq Kiểu số
nguyên
Kết quả trả về để xác nhận chuyển đổi
thành cơng hay thất bại
o Thuật tố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
section đĩ là rỗng :
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 148
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
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ố
nguyên
Số tài liệu trong một file tài liệu , mặc
định là cĩ 50 tài liệu trong một file tài
liệu
XL_Doc
Static String Doc_Path="coll";
Static int SO_DOC=50;
DinhDangTaiLieu
DinhDangTaiLieuText
LayDSTaiLieu
LayTaiLieu
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 149
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
CFormat
mảng Cformat lưu trữ cấu trúc định dạng
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 tố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
CFormat
mảng Cformat lưu trữ cấu trúc định dạng mới
mà file xml mới cần chuyển đổi sang cấu trúc
đĩ
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 150
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 tố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 tố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:
Lặp i=0 đến n
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 151
Đầ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 tố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
- 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
Trang 152
- Trả về cho chương trình tài liệu thích hợp Kq
m) XL_Topic
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
CFormat
mảng CFormat lưu trữ cấu trúc định dạng
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 tốn:
- Từ biến Topic_Path: duyệt tất cả các file xml nằm trong thư mục đĩ
XL_Topic
Static String Topic_Path="topic"
DinhDangCauHoi
DinhDangCauHoiText
LayDSTopicID
LayDSCauHoi
LayTongSoCauHoi
NoiDungTopic
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 153
- 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
CFormat
mảng CFormat lưu trữ cấu trúc định dạng
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 tố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
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
Trang 154
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 tố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 tố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
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 155
- 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 tố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à
TopID
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 156
o Mơ tả thuật tố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
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
o Mơ tả thuật tốn:
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
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 157
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
- Duyệt tất cả các nút trên
• Kiểm tra xem nút TopicID cĩ thuộc tính hay khơng
(kq.ThuocTinh_TopicID==”” ?)
• Nếu cĩ thuộc tính : lấy giá trị của thuộc tính gán vào biến
tạm temp
• 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
của biến temp
• Lấy các nút con của nút TopicID
• Duyệt tất cả các nút con:
- 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
- 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
Trang 158
- 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 tố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à:
retfn=relevant_Path+"/rel_"+sysID+".xml"
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 159
- 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
một topicID
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 160
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 tố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 đĩ
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
Trang 161
• Tìm chỉ số idx của mảng arrRelTT cĩ arrRelTT[i].fRecall =
Recall hoặc ( arrRelTT[i].fRecall < Recall + 0.1 và
arrRelTT[i].fRecall > Recall)
• 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
đế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 tố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
o Tham số đầu vào:
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 162
STT Tên Loại kiểu Ý nghĩa
1 sysID Kiểu chuỗi System ID của hệ thống cần thêm
2 name Kiểu chuỗi Tên hệ thống cần thêm
o Kết quả trả về: (khơng cĩ)
o Mơ tả thuật tố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
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ĩ)
o Mơ tả thuật tốn:
XL_HeThongIR
Static String path_system="result/system.xml"
ThucThiHTIR
LayDSThongTinHeThong
LayHeThong
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 163
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 tố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 tốn:
- gọi phương thức LayDSThongTinHeThong =>ht
- Duyệt hệ thống ht , xem ht[i] nào cĩ systemID =sysID =>kq
- 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
Trang 164
p) XL_Index
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 tố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ữ
liệu” (index ))
XL_Index
String index_Path="result/index"
DinhDangIndex
DinhDangIndex_topic
DinhDangIndex_document
LayNoiDungIndex
LayNoiDungIdx_Doc
LayNoiDungIdx_Topic
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 165
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
- Duyệt tất cả các nút trong Nodes
• Kiểm tra xem nút ID cĩ thuộc tính hay khơng
(idx.ThuocTinh_ID==”” ?)
• Nếu cĩ thuộc tính : lấy giá trị của thuộc tính gán vào biến
tạm temp
• 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
của biến 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 child
• Duyệt tất cả các nút con 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
- 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
Trang 166
- 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 tố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
o Tham số đầu vào:
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 167
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 tố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 tốn:
- Đọc file xml fn , lấy các nút cĩ tên là “INDEX” => lst
- Duyệt các nút trong 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?
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 168
• Nếu phải tìm lấy các nút con của nút “INDEX” đĩ =>
childList
• Duyệt các nút trong 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
1 sysID Kiểu chuỗi systemID của hệ thống IR
2 DocId Kiểu chuỗi ID của tài liệu
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 tố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
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
Trang 169
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 tố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:
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 tố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:
o Ý nghĩa: ghi lên file xml bất kỳ
LT_XML
ReadXML
WriteXML
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 170
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 tố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:
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 tốn:
- Tạo mới file với tên file là fn
- Ghi strNoiDung vào file mới tạo.
LT_Text
WriteText
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 171
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
Ngưỡng c=50 Ngưỡng c=100 Ngưỡng c=1000 STT
Câu
truy
vấn
Recall
(Ri)
Precision
P(i)
Recall
(Ri)
Precision
P(i)
Recall
(Ri)
Precision
P(i)
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
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
Trang 172
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
17 0.44 0.44 0.68 0.34 0.88 0.09224
18
0.341463
42 0.28
0.487804
9 0.2 0.80488 0.196429
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
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
Trang 173
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
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
Trang 174
64 0.7 0.7 0.78 0.39 0.86 0.043
R=
N
R
N
i
i∑
=1
=0.45096
034
P=
N
P
N
i
i∑
=1
=0.44999
996
R=
N
R
N
i
i∑
=1
=0.61480
95
P=
N
P
N
i
i∑
=1
=0.306718
77
R=
N
R
N
i
i∑
=1
=0.83320
14
P=
N
P
N
i
i∑
=1
=0.049851
24
Nhận xét:
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ủ.
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.
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.
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 ngồ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 độ
chính xác.
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 175
Tính tố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ể.
Đườ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
Trang 176
c= 50
c=100
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 177
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
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
Trang 178
0.9 0.5289436 0.8242704 0.18582451 0.29168567
1.0 0.5289436 0.8242704 0.18582451 0.29168567
c=50
c=1000
Nhận xét : ta thấy đồ thị của search4VN nằm dưới đồ thị Lucene nên hệ
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
Trang 179
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ã hố 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,
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
Trang 180
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 để hồ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
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
Trang 181
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 hố 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 hố đĩ, 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
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
Trang 182
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á: Ngồ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
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
Trang 183
PHỤ LỤC
1. Câu hỏi mẫu:
1
kinh tế tri thức
nền kinh tế tri thức là gì, ý nghĩa của nền kinh tế tri thức, tình
hình xây dựng nền kinh tế tri thức?
Các tài liệu liên quan phải cĩ định nghĩa và ý nghĩa của
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
2
vụ án tham nhũng lớn
thơng tin về các vụ án tham nhũng lớn
Các tài liệu liên quan phải chứa thơng tin về các vụ án
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
3
an tồn giao thơng tại Việt Nam
vấn đề an tồn giao thơng tại Việt Nam
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 184
Các tài liệu liên quan phải nĩi về tình hình an tồn giao
thơng tại Việt Nam gồm cĩ các chính sách của chính phủ về an tồn
giao thơng, tình trạng vi phạm trật tự an tồn giao thơng, ùn tắc giao
thơng ,tai nạn giao thơng
2. Tài liệu mẫu
1
Thanh niên VN: động lực cho những ý tưởng mới, tầm
nhìn mới
Tác giả :Đ.Bình
Ngày :01/12/2000
Tên tờ báo : Tuổi trẻ
Số báo : 155/2000
Thể loại :
Trang : trang 1, 14
Thanh niên VN: động lực cho những ý tưởng mới,
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
VN cĩ vai trị to lớn trong các hội nghị tồ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
Trang 185
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:
: chỉ số của topic
: chỉ số của tài liệu cĩ liên quan với câu hỏi cĩ chỉ số là TOPID
Ví dụ một phần bảng đánh giá liên quan chuẩn:
10456
3407
2476
6689
1582
12854
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 186
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
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 :
[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
Experimentation, Hội nghị CLEF, 2004.
[ 14 ] Địa chỉ trang Web của Terrier :
Luận văn : Đánh giá các hệ thống tìm kiếm thơng tin
Trang 187
[ 15 ] Địa chỉ trang Web của Lucene :
Các file đính kèm theo tài liệu này:
- CNTT1004.pdf