4 Tạo nhãn cụm tài liệu
3.8 Ví dụ xác định trọng số cục bộ p(α(γ))
CHƯƠNG 3. XẾP HẠNG TRONG MÁY TÌM KIẾM THỰC THỂ 33 3.3.1 Công cụ sử dụng
Các chương trình phần mềm mã mở đã được sử dụng trong thực nghiệm này:
SV Mmap† là công cụ (tool) học giám sát với tối ưu MAP để học xếp hạng tài liệu. Trong thực nghiệm tôi sử dụng công cụ này áp dụng vào học mô hình xếp hạng thực thể.
Lucene‡ là một máy tìm kiếm văn bản (text) mã mở được lựa chọn để tiến hành cài đặt các modul:
• Rút trích thực thể thuốc • Đánh chỉ mục (index) thực thể • Xếp hạng thực thể thuốc
3.3.2 Dữ liệu
Dữ liệu tìm kiếm
Tiến hành thu thập (crawl) các trang web về y tế tiếng Việt, từ nguồn của 10 web site (phụ lục A.1)
• Tổng số trang web tiếng Việt được crawl và index: 6217 trang (không index những trang web có nội dung quá ngắn- dưới 20 từ, và các trang web chỉ chứa liên kết)
• Kích thước dữ liệu: sấp xỉ 180MB
• Số thể hiện của thực thể thuốc được index: 14794
†http://projects.yisongyue.com/svmmap/ ‡http://lucene.apache.org
CHƯƠNG 3. XẾP HẠNG TRONG MÁY TÌM KIẾM THỰC THỂ 34
Các mẫu truy vấn được sử dụng
1. q=(context #drug): Tìm thực thể thuốc với ngữ cảnhcontext mà
truy vấn xác định.
2. q=(context #drug=[Thuoc] #drug): Tìm thực thể thuốc có
quan hệ với thực thể thuốc Thuoc trong ngữ cảnh context được xác định trong truy vấn.
Xây dựng tập dữ liệu học đưa vào mô-dul học hàm tính hạng
Tạo 5 truy vấn cho mỗi mẫu truy vấn trên, với mỗi truy vấn xác định 10 thực thể trả về đầu tiên tương ứng và sắp xếp theo độ phù hợp giảm dần. Khi tìm kiếm người dùng quan tâm tới các kết quả trả về đầu tiên, việc xếp hạng đúng các thực thể vào 10 kết quả đầu tiên quan trọng hơn việc các xếp hạng sau đó. Do giới hạn thời gian làm thực nghiệm, nên tôi chỉ xây dựng tập dữ liệu học với 10 thực thể xếp hạng đầu tiên cho mỗi truy vấn. Cách xác định 10 thực thể đầu tiên:
• Tìm kiếm thực thể với mô hình xếp hạng Impression (Cài đặt Impres- sion với hàm p(s|γ) = 1s) để tìm các thực thể với các trang chứa thực thể tương ứng
• Tìm kiếm thuốc với máy tìm kiếm thông thường (cài đặt Lucene với hàm xếp hạng BM25[59]) có được các trang tốt nhất theo đánh giá BM25.
• Từ 2 kết quả trên, lựa chọn 10 thực thể tốt nhất và sắp xếp để được kết quả trả về "đúng" cần có.
CHƯƠNG 3. XẾP HẠNG TRONG MÁY TÌM KIẾM THỰC THỂ 35 Bảng 3.2: So sánh MRR, MAP của BM25, Impression, LTR
Phương pháp BM25 Impression LTR MRR 0.283 0.767 0.800 MAP 0.275 0.651 0.705 3.3.3 Kết quả và đánh giá Kết quả có hàm tính hạng: rf(t) = 0.0010×N + 0.0011×G+ 0.0120×L+ + 0.3305×SL+ 0.2953×GL+ 0.3601×M
Từ hàm tính hạng trên, cho ta thấy vai trò quan trọng của trọng số: M, SL và GL. Trọng số N, G ít quan trọng nhất, có thể bỏ qua - do giá trị N, G thường rất nhỏ, mà hệ số lại nhỏ nên thành phần đó không có ảnh hưởng lớn tới kết quả xếp hạng. Và trọng số L (cực đại trọng số cục bộ) có ít giá trị hơn trọng số SL (tổng trọng số cục bộ)
Áp dụng hàm tính hạng vào mô-dul xếp hạng thực thể trong máy tìm kiếm, thực hiện tìm kiếm trên 5 query khác nhau để đánh giá. Bảng 3.2 so sánh MRR và MAP của ba phương pháp sử dụng Okapi BM25 để xếp hạng, với mô hình Impression của EntityRank trong phần trước và với mô hình học xếp hạng (gọi tắt LTR: Learn To Rank).
Các nhận xét:
• LTR và Impression có có MRR, MAP hơn hẳn BM25, cho thấy việc tìm kiếm thực thể trả lại kết quả tốt hơn cho người dùng.
• MRR của LTR là 0.8 cao hơn của mô hình Impression bằng 0.767 (+0.023) chứng tỏ kết quả đúng đầu tiên của LTR trả về xuất hiện ở thứ hạng tốt hơn (thấp hơn) của Impression.
CHƯƠNG 3. XẾP HẠNG TRONG MÁY TÌM KIẾM THỰC THỂ 36 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 2 3 4 5 A v e ra ge P re ce si o n Query BM25 ER LTR