CHỈ MỤC VÀ TÌM KIẾM VĂN BẢN
Bài 4
PGS.TS. Đặng Văn Đức
Hà Nội - 2005/14
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Nội dung
Hệ thống DBMS và IR
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
Độ đo hiệu năng
Môtơ tìm kiếm WWW
Kết luận
2/37
Nhắ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
Document Index Image Index Audio Index Video Index
Query
Answer
dvduc-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
DBMS
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
dvduc-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
Xử lý Xử lý
Đá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
dvduc-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.
Phản hồi thích 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
dvduc-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.
Các toán tử Bool hay sử dụng: AND, OR và NOT
Ví dụ sử dụng toán tử:
Term1 OR Term2
Term1 AND Term2
Term1 AND NOT Term2
7/37
dvduc-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
dvduc-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
dvduc-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.
Thao tác với thuật ngữ
Loại bỏ từ dừng (stop)
Xác định gốc từ (stem)
retriev: retrieval, retrieving, retrieve
Từ đồng nghĩa - từ điển
study: study – learning - schoolwork
10/37
dvduc-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
dvduc-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ữ W
ij
của khái niệm i trong tài liệu j theo công thức tf.idf:
Nhận xét:
Nếu N=df
j
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).
W
ij
= tf
ij
* log (N/df
j
)
trong đó, tf
ij
- tần số thuật ngữ
df
j
- 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
dvduc-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.
Loại bỏ từ dừng.
Nhận biết các từ đồng nghĩa.
Tìm gốc từ.
Đế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.
Tạo tệp mục lục.
13/37
dvduc-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
Hạn chế của mô hình Bool:
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
dvduc-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ơ
Vector Space Model
Terms: {t
1
, , t
m
} ∈ R
n
Documents: {d
1
, , d
m
} ∈ R
n
Ma trận Term X Document: A
T
ij
– độ đ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 D
j
và truy vấn Q
j
được biểu diễn như các véctơ n-chiều của các trọng số.
θ
D
i
Q
j
Term1
Term2
Term3
Doc1
Doc2
Query
T
11
T
1n
T
m1
T
mn
15/37
[ ]
[ ]
jNjkjjj
iNikiii
QQQQQ
TTTTD
, ,, ,,
, ,, ,,
21
21
=
=
dvduc-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 D
i
với câu truy vấn Q
j
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ơ.
Ví dụ:
Trọng số khái niệm
Query 0.0 0.2 0.0
Doc1 0.3 0.1 0.4
Doc2 0.8 0.5 0.6
16/37
∑∑
∑
==
=
===
N
k
jk
N
k
ik
N
k
jkik
ji
ji
ji
QT
QT
QD
QD
QDS
1
2
1
2
1
.
.
||||
.
cos),(
θ
∑
=
=
N
k
jkikji
QTQDS
1
.),(
dvduc-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ơ
Ví dụ:
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:
Hãy tính toán similarity với câu truy vấn: Dog = (0, 0, 0, 1, 0).
a and cat dog frog
2 1 1 1 0
a and cat dog frog
1 0 0 0 1
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
Nhậ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
Độ phức tạp: O(NxM)
M - tài liệu
N - Thuật ngữ
Thông thường NxM là rất lớn
Giải pháp cải tiến:
Mô hình xác suất
LSI - Latent Sematic Indexing
Các kỹ thuật khác
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản 18/37
dvduc-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 d
i
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 d
i
liên quan.
Xác suất điều kiện
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,
R
t
– tài liệu liên quan chứa khái niệm t,
f
t
– tổng tài liệu có t xuất hiện
Number of documents
Relevant Nonrelevant Total
Term t present R
t
f
t
– R
t
f
t
Term t absent R – R
t
N-f
t
-(R-R
t
) N-f
t
Total R N-R N
19/37
dvduc-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] = R
t
/f
t
Pr[irrelevant | term t is present] = (f
t
-R
t
)/f
t
Pr[term t is present| relevant] = R
t
/R
Pr[term t is present| irrelevant] = (f
t
-R
t
)/(N-R)
Tính trọng số w
t
của khái niệm t (theo Bayes)
Nếu w
t
> 1 - khái niệm t xuất hiện trong tài liệu liên quan
Nếu w
t
< 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 D
d
Nếu giá trị âm- tài liệu không liên quan đến khái niệm t
20/37
( )
( ) ( )( )
tttt
tt
t
RRfNRf
RRR
w
−−−−
−
=
/
/
( )
( ) ( )( )
tttt
tt
DtDt
t
RRfNRf
RRR
w
dd
−−−−
−
=
∑∑
∈∈
/
/
loglog
dvduc-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
dvduc-2005/14 Bài 4: Chỉ mục và tìm kiếm văn bản
Truy vấn tương tác
Relevance feedback là tiến trình điều chỉnh câu truy vấn hay điều chỉnh tài liệu để nâng cao hiệu
quả cho việc tìm kiếm tiếp theo.
Điều chỉnh câu truy vấn
Giả sử D
d
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
Q
0
– 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
22/37
∑∑
∈∈
+
+++=
Id
d
Rd
dii
DDQQQ
βαωπ
01
6. Độ đo hiệu năng
Các tham số đ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, Precision phải được xem xét đồng thời
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
dvduc-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á
Độ trung thực (Recall):
Độ chính xác (Precision):
Pert – Tập con tài liệu phù hợp trong thực tế
Retr - Tập con tài liệu mà hệ thống tìm ra
(0,0) 1
1
Recall
Precision
Tập tài liệu
Các tài liệu phù hợp
(đối với users)
Các tài liệu tìm thấy
(của hệ thống)
24/37
[ ]
1,0∈
∩
P
RP
[ ]
1,0∈
∩
R
RP
dvduc-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
1 1/10 1/1
2 2/10 2/2
3 2/10 2/3
4 2/10 1/2
5 3/10 3/5
… … …
15 8/10 8/15
25/37