Hệ thống DBMS và hệ thống IR Bản ghi có cấu trúc đồng nhất Mỗi bản ghi được đặc trưng bởi tập thuộc tính Tìm kiếm trên cơ sở đối sánh chính xác giữa câu truy vấn và các giá trị th
Trang 1C HỈ MỤC VÀ TÌM KIẾM VĂN BẢN
Bài 4
PGS.TS Đặng Văn Đức dvduc@ioit.ac.vn
Hà Nội - 2005/14
Trang 2dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Nội dung
Mô hình tìm kiếm thông tin Bool
Mô hình tìm kiếm thông tin không gian véctơ
Mô hình tìm kiếm thông tin theo xác suất
2/37
Trang 3Nhắc lại kiến trúc MMDBMS
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản 3/37
Multimedia Query Engine
Trang 4dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
1 Hệ thống DBMS và hệ thống IR
Bản ghi có cấu trúc đồng nhất
Mỗi bản ghi được đặc trưng bởi tập thuộc tính
Tìm kiếm trên cơ sở đối sánh chính xác giữa câu truy vấn và các giá trị thuộc tính của bản ghi
Mọi kết quả truy vấn là liên quan đến câu truy vấn và có ích đối với người sử dụng
Hệ thống IR (Information Retrieval System)
Các bản ghi không có cấu trúc, chỉ là tệp văn bản thông thường
Không chứa các thuộc tính cố định
Tài liệu được chỉ mục bởi từ khóa hay khái niệm chỉ mục
Truy vấn trên cơ sở đối sánh tương tự
Các Items được xem như phù hợp với hệ thống có thể không phù hợp với người sử dụng
4/37
Trang 5dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Tiến trình tìm kiếm tài liệu
Off-line
Tài liệu văn bản
Đại diện query
Đại diện tài liệu
Đánh giá mức độ thích hợp và
phản hồi Tài liệu truy vấn
Query
On-line
Đối sánh (tính toán mức độ tương đồng)
5/37
Trang 6dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Tiến trình tìm kiếm tài liệu
Xử lý off-line:
Xử lý tài liệu để có đại diện (mô tả, đặc trưng)
Các đại diện này được lưu trữ cùng với các tài liệu.
Quá trình truy vấn (on-line)
Đưa ra câu truy vấn, xử lý để có đại diện
Đối sánh đại diện truy vấn với đại diện tài liệu
Các tài liệu tương đồng là kết quả truy vấn
Đánh giá tài liệu:
Quyết định tài liệu nào là phù hợp
Sử dụng thông tin này để điều chỉnh truy vấn, đại diện truy vấn, hoặc/và đại diện tài liệu
Tiến trình phản hồi truy tìm có thể được thực hiện lặp vài lần
6/37
Trang 7dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
2 Mô hình Bool cơ sở
Mô hình Bool hình thành trên cơ sở lý thuyết tập hợp và đại số Bool
Các tài liệu (documents /records) là tập các từ khóa/thuật ngữ đại diện (gọi là index terms).
Các câu truy vấn là biểu thức Bool hình thành trên các khái niệm
Ví dụ sử dụng toán tử:
Term1 OR Term2
Term1 AND Term2
Term1 AND NOT Term2
7/37
Trang 8dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Cấu trúc tệp chỉ mục
Cấu trúc tệp sử dụng trong CSDL đa phương tiện
Cấu trúc tệp phẳng: Không chỉ mục, tìm kiếm trên cơ sở text-pattern.
Tệp chữ ký: các mẫu bit làm đại diện tài liệu.
Tệp chỉ mục: Hay được sử dụng nhất.
Cấu trúc tệp chỉ mục (còn gọi là inverted file)
Mỗi đầu vào chứa keyword/term và chỉ danh tài liệu/bản ghi
Ví dụ:
Qui tắc truy vấn
(Term i AND Term j)
(Term i OR Term j)
(Term i AND NOT Term j)
Term1: Record1, Record3 Term2: Record1, Record2 Term3: Record2, Record3, Record4 Term4: Record1, Record2, Record3, Record4
(Term1 AND NOT Term4)=? (Term1 OR Term2)=?
(Term1 AND Term3)=?
8/37
Trang 9dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Mở rộng tệp chỉ mục
Cần quan tâm đến các yếu tố quan trọng của tài liệu
Vị trí (gần kề) và trọng số của các terms (vd tần số xuất hiện).
Mở rộng thao tác trên tệp chỉ mục (inverted file)
Bổ sung hai tham số “within sentence” và “adjacency”
Ví dụ:
(Term i within sentence Term j) – Term i và j ở trong cùng một câu.
(Term i adjacency Term j) – Term i và j ở gần kề nhau trong tài liệu.
Dạng tổng quát của tệp chỉ mục (sau khi bổ sung thông tin vị trí) sẽ như sau:
Ví dụ tìm kiếm trên tệp chỉ mục:
Hãy tìm kết quả truy vấn (information within sentence retrieval) trong tệp chỉ mục:
Termi: Record no., Paragraph no., Sentence no., Word no.
information: R99, 10, 8, 3; R15, 15, 3, 6; R166, 2, 3, 1 retrieval: R77, 9, 7, 2; R99, 10, 8, 4; R166, 10, 2, 5
9/37
Trang 10dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Chỉ mục tự động tài liệu
Nhận xét tiếp theo về tài liệu:
Không phải mọi từ trong các tài liệu đều là quan trọng
Trang 11dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Chỉ mục tự động tài liệu
Gán trọng số thuật ngữ:
Các thuật ngữ có tần số xuất hiện và tầm quan trọng khác nhau
Ví dụ:
Các Terms có trọng số cao hơn trong các bản ghi được xem như kết quả
Ví dụ đánh giá câu truy vấn OR: (Term2 OR Term3)
Từ tệp chỉ mục trên có R1=0.8, R2=0.7, R3=0.6, R7=0.5, R9=0.7 Vậy thứ tự kết quả đầu ra sẽ là R1, R2, R9, R3 và R7.
Các ví dụ khác:
Sử dụng trọng số để xếp hạng danh sách kết quả truy vấn
Term1: R1, 0.3; R3, 0.5; R6, 0.8; R7, 0.2; R11, 1 Term2: R2, 0.7; R3, 0.6; R7, 0.5; R9, 0.5 Term3: R1, 0.8; R2, 0.4; R9, 0.7
(Term2 OR Term3) = ?, (Term2 AND NOT Term3)=?
11/37
Trang 12dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Chỉ mục tự động tài liệu
Tính trọng số thuật ngữ Wij của khái niệm i trong tài liệu j theo công thức tf.idf:
Nếu N=dfj thì thuật ngữ j không nên sử dụng làm chỉ mục vì trọng số của thuật ngữ j bằng 0 theo công thức trên.
Các khái niệm làm chỉ mục tốt là khái niệm chỉ xuất hiện trong vài tài liệu (trọng số của nó cao hơn)
Wij = tfij * log (N/dfj) trong đó, tfij - tần số thuật ngữ dfj - tần số tài liệu (số tài liệu chứa thuật ngữ j)
N - tổng số tài liệu
12/37
Trang 13dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Tóm tắt tiến trình chỉ mục tài liệu
Nhận biết các từ trong tiêu đề, trong bảng tóm tắt, hoặc/và tài liệu.
Nhận biết các từ đồng nghĩa.
Đếm (tìm tần số) từ gốc trong mỗi tài liệu.
Tính toán trọng số các thuật ngữ hay từ gốc.
13/37
Trang 14dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Nhận xét mô hình Bool
Ưu điểm của mô hình tìm kiếm Bool
Là mô hình rất đơn giản trên cơ sở lý thuyết tập hợp
Dễ hiểu và dễ cài đặt
Được sử dụng trong hầu hết các hệ thống thương mại
Tập là dễ xử lý, nhưng khó hình thành biểu thức Bool phức hợp dành cho câu truy vấn
Ví dụ: ‘cats and dogs’ hay (cats AND dogs)
Kết quả truy vấn rất phụ thuộc (nhạy cảm) vào biểu thức truy vấn
Một số mô hình tìm kiếm khác được đề xuất
Mô hình không gian vector
Mô hình xác suất, phân cụm dữ liệu,
14/37
Trang 15dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
3 Mô hình tìm kiếm không gian véctơ
Terms: {t1, , tm} ∈ Rn
Documents: {d1, , dm} ∈ Rn
Ma trận Term X Document: A
Tij – độ đo mức độ quan trọng
(trọng số) của khái niệm i trong tài liệu j
Có thể là nhị nguyên, tf.idf hay loại khác.
Tài liệu Dj và truy vấn Qj được biểu diễn như các véctơ n-chiều của các trọng số.
i i i
Q Q
Q Q Q
T T
T T D
, , , ,
,
, , , ,
,
21
21
=
=
Trang 16dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Mô hình tìm kiếm không gian véctơ
Mô hình không gian véctơ đánh giá mức độ tương tự tài liệu Di với câu truy vấn Qj như tính tương
quan giữa hai véctơ
Chuẩn hóa kích thước Di và Qj: Mức độ tương tự xác định bởi cosine góc giữa hai véctơ.
jk N
k ik
N k
jk ik
j i
j i j
i
Q T
Q T Q
D
Q
D Q
D S
1
21
) ,
, (
Trang 17dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Mô hình tìm kiếm không gian véctơ
Document A: “A dog and a cat”
Document B: “A frog”
Từ vựng sau khi sắp xếp: a, and, cat, dog, frog
Các véctơ của tài liệu A và B:
a and cat dog frog
a and cat dog frog
Véctơ tài liệu A: (2,1, 1, 1, 0)
Véctơ tài liệu B: (1,0, 0, 0, 1)
17/37
Trang 18Nhận xét mô hình tìm kiếm không gian véctơ
Mô hình không gian véctơ xem các thuật ngữ không có quan hệ với nhau
Làm việc tốt với câu truy vấn ngắn
Trang 19dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
4 Mô hình tìm kiếm theo xác suất
Cho trước câu truy vấn q và tài liệu di trong tập tài liệu, mô hình tìm kiếm xác suất ước lượng xác
suất mà người sử dụng tìm ra tài liệu di liên quan.
Sau lần truy vấn (sử dụng phương pháp nào đó, ví dụ cosine) với tập tài liệu huấn luyện ta có:
N – tổng số tài liệu,
R – tổng số tài liệu liên quan,
Rt – tài liệu liên quan chứa khái niệm t,
ft – tổng tài liệu có t xuất hiện
Number of documents Relevant Nonrelevant Total
Term t absent R – Rt N-ft-(R-Rt) N-ft
19/37
Trang 20dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Mô hình tìm kiếm theo xác suất
Ước lượng xác suất điều kiện
Pr[relevant | term t is present] = Rt/ft
Pr[irrelevant | term t is present] = (ft-Rt)/ft
Pr[term t is present| relevant] = Rt/R
Pr[term t is present| irrelevant] = (ft-Rt)/(N-R)
Tính trọng số wt của khái niệm t (theo Bayes)
Nếu wt > 1 - khái niệm t xuất hiện trong tài liệu liên quan Nếu wt < 1 - khái niệm t xuất hiện trong tài liệu không liên quan
Trọng số của tài liệu Dd
Nếu giá trị âm- tài liệu không liên quan đến khái niệm t
20/37
t t
t
R R f
N R
f
R R R w
( t t ) ( t ( t) )
t t
D t D
t
t
R R f
N R
f
R R R
log
Trang 21dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
5 Truy vấn tương tác
Text Database
Database Manager Indexing
Index
Query Operations
Searching
Ranking
Ranked Docs
User Feedback
Text Operations User Interface
Retrieved Docs
User Need
Text
Query
Logical View
Inverted file
21/37
Trang 22dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Truy vấn tương tác
quả cho việc tìm kiếm tiếp theo.
Điều chỉnh câu truy vấn
Giả sử Dd và Q là hai véctơ trọng số n chiều, n - tổng số terms.
Biểu thức phản hồi tổng quát
Q0 – Query khởi đầu, π , ω , α và β là các trọng số, β≤0
R – tập con tài liệu liên quan, I – tập con tài liệu không liên quan
Điều chỉnh tài liệu
d R
d
d i
Trang 236 Độ đo hiệu năng
Tốc độ: Tốc độ càng cao, hiệu năng càng cao
Độ trung thực (Recall):
Đo công suất tìm kiếm các mục thông tin liên quan từ CSDL
Xác định bởi tỷ lệ giữa tổng số mục liên quan được tìm ra và toàn bộ số các mục liên quan trong CSDL
Recall càng cao thì hiệu năng càng cao
Độ chính xác (Precision):
Đo độ chính xác truy tìm
Xác định bởi tỷ lệ giữa số mục được chỉ ra mà nó liên quan với tổng số mục được tìm thấy
Precision càng cao hiệu năng hệ thống càng cao
Recall cao và Precision thấp: Cho lại danh sách dài, trong đó có những mục không liên quan
Ngược lại, nhiều mục liên quan không được tìm ra.
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản 23/37
Trang 24dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Độ đo hiệu năng
Hai tiêu chuẩn đánh giá
Các tài liệu tìm thấy (của hệ thống)
[ ] 0 , 1
∈
∩
R R P
Trang 25dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Độ đo hiệu năng: Ví dụ
CSDL có 1000 tài liệu, trong đó có 10 tài liệu liên quan đến câu truy vấn.
Giả sử câu truy vấn cho lại danh sách như sau:
R, R, I, I, R, R, I, I, R, I, R, R, I, I, R (user quyết đinh I hay R)
Hãy tính toán độ trung thực và độ chính xác của hệ thống.
Tổng số item cho lại Recall Precision
Trang 26dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
7 Môtơ tìm kiếm WWW
Tìm kiếm thông tin trên Internet
26/37
Trang 27Đặc trưng trang Web
Là mở rộng về mặt địa lý của hypermedia
Anchors hay node các liên kết có thể ở bất kỳ đâu trên mạng.
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản 27/37
Trang 28Đặc trưng trang Web
Trọng số các khái niệm và trang web
Tần xuất xuất hiện các terms
Các node và links (đến/đi)
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản 28/37
Trang 29dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Môtơ tìm kiếm WWW
Khác biệt giữa hệ thống IR và môtơ tìm kiếm WWW
Tài liệu phân tán
Tổng số tài liệu rất lớn
Tài liệu động và không đồng nhất
Tài liệu có cấu trúc
Kiến trúc tổng quát của môtơ tìm kiếm: 3 thành phần
Spider (Crawler, Robot)
Duyệt các trang Web, đọc nó, lần theo các Link đến trang khác trong Site.
Duyệt theo chu ký thời gian (hàng tháng) để cập nhật thông tin.
Chỉ mục (Index, Catalog)
Như sách khổng lồ chứa bản sao của các trang Web mà Spider tìm thấy
Phần mềm tìm kiếm (Searcher)
Phần mềm tìm kiếm trong Catalog Đối sánh, xếp hạng những trang Web liên quan.
Các phần mềm tìm kiếm đều sử dụng tần suất , vị trí khái niệm để tính toán
29/37
Trang 30dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Môtơ tìm kiếm WWW: Google
Document Information
Links URL Resolver
Pagerank
Searcher
URL Server
Indexer Anchor
Forward index file
Repository
Inverted file
Compression Crawlers
Web server
Sorter
Internet
30/37
Trang 31dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Môtơ tìm kiếm WWW: Google
Thăm viếng Web (nạp các trang Web), lập chỉ mục
Tìm kiếm tài liệu
URL server gửi danh sách URL sẽ thu nhận đến Crawlers
Crawler thu nhận tài liệu (trang Web) và chuyển đến Compression server để nén và lưu trữ vào kho
(Repository)
Bộ chỉ mục (Indexer) đọc tài liệu nén để giải nén và phân tích cú pháp Sinh tệp chỉ số thuận (Forward index
file) trên cơ sở hiện diện, vị trí các từ và các thuộc tính khác như kích thước font chữ, chữ in (sắp xếp theo DocID)
Indexer phân tích các liên kết trong từng trang Web và lưu trữ các thông tin quan trọng như nguồn và đích liên
kết, text liên kết vào tệp anchor
31/37
Trang 32dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Môtơ tìm kiếm WWW: Google
Pha thăm viếng Web và lập chỉ mục (tt)
URL Resolver đọc các URL từ Anchor file và chuyển đổi URL tương đối sang URL tuyệt đối Gửi các Anchor
text vào Forward index Đồng thời sinh CSDL chứa các Links
Xếp hạng trang (PageRank) của tài liệu được tính toán trên cơ sở CSDL liên kết.
Sorter phát sinh tệp chỉ số ngược (Inverted index) từ tệp chỉ số thuận (Forward index) Chỉ số ngược được sắp
xếp theo WordID
Pha tìm kiếm tài liệu
User nhập câu truy vấn (các từ khóa) từ trình duyệt Web
Chuyển câu truy vấn Google Web server, rồi chuyển đến Google searcher
Bộ tìm kiếm (Searcher) tìm các thông tin liên quan trong chỉ số thuận, tệp chỉ mục, tệp thông tin tài liệu và tệp
xếp hạng trang
Xếp hạng các tài liệu theo mức độ tương đồng với câu truy vấn.
32/37
Trang 33dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Một vài đặc trưng của môtơ tìm kiếm Google
Chạy nhiều Crawlers (3) đồng thời
Tốc độ thăm viếng: 100 trang Web/s
Trang quan trọng:
Nhiều trang khác liên kết (trỏ) đến nó
Một hay nhiều trang quan trọng trỏ đến nó
Xếp hạng trang của trang A:
Trang 34dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
8 Kết luận
Các nhiệm vụ thiết kế chính của CSDL văn bản
Trình diễn và truy vấn tài liệu bằng cách nào
So sánh độ tương tự giữa câu truy vấn và tài liệu như thế nào
Một vài mô hình tìm kiếm văn bản
Mô hình Bool
Mô hình không gian véctơ
Mô hình xác suất
Cần có các nghiên cứu tiếp theo để nâng cao hiệu năng tìm kiếm của IR
34/37
Trang 35Câu hỏi ôn tập
Mô hình tìm kiếm thông tin là gì? Liệt kê 4 mô hình tìm kiếm tổng quát.
Chỉ mục là gì? Tại sao chỉ mục làm tăng hiệu năng tìm kiếm thông tin trong hệ thống?
Trong mô hình Bool, tài liệu nào được tìm ra với câu truy vấn “keyword1 AND keyword2”,
“keyword1 OR keyword2”, “keyword1 AND NOT keyword2”?
Tại sao thông tin vị trí thuật ngữ có thể được sử dụng để tăng cường độ chính xác tìm kiếm.
Từ dừng, gốc từ và từ đồng nghĩa là gì? Tại sao nó được sử dụng trong tiến trình chỉ mục tài
liệu?
Xác định trọng số thuật ngữ bằng cách nào?
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản 35/37
Trang 36Câu hỏi ôn tập
Tính toán mức độ tương đồng giữa tài liệu và câu truy vấn trong mô hình không gian vector như
thế nào?
Trong mô hình không gian véctơ, giả sử tài liệu được đại diện bởi D=[0.6, 0.8, 0, 0.2] và đại diện
câu truy vấn là Q=[0.4, 0.6, 0.1] Hãy tính toán tính tương đồng giữa tài liệu và câu truy vấn nhờ công thức hệ số cosin.
Đo hiệu năng của hệ thống tìm kiếm thông tin đa phương tiện theo những tham số nào?
Giải thích các thuật ngữ recall (độ trung thực) và precision (độ chính xác) Sử dụng chúng như
thế nào?
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản 36/37