Tải bản đầy đủ (.pdf) (55 trang)

Nghiên cứu phương pháp xếp hạng kết quả tìm kiếm trên cơ sở dữ liệu bệnh viện

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (585.4 KB, 55 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

TRẦN VĂN HIỆP

NGHIÊN CỨU PHƯƠNG PHÁP XẾP HẠNG KẾT QUẢ TÌM
KIẾM TRÊN CƠ SỞ DỮ LIỆU BỆNH VIỆN

Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60480104

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS. Nguyễn Trí Thành

Hà Nội - 2015


1

LỜI CAM ĐOAN
Tôi xin cam đoan luận văn “Nghiên cứu phương pháp xếp hạng kết quả tìm
kiếm trên cơ sở dữ liệu bệnh viện” là công trình nghiên cứu của tôi. Những kiến thức
trình bày trong luận văn là do tôi tìm hiểu, nghiên cứu và trình bày lại theo cách hiểu.
Trong quá trình làm luận văn, tôi có tham khảo các tài liệu có liên quan và đã ghi rõ
nguồn tài liệu tham khảo.
Hà Nội, ngày tháng năm 2015
Học viên

Trần Văn Hiệp




2

LỜI CẢM ƠN
Lời đầu tiên, em xin trân trọng gửi lời cảm ơn sâu sắc đến thầy giáo PGS.TS.
Nguyễn Trí Thành - Trường Đại Học Công Nghệ, Đại Học Quốc Gia Hà Nội đã trực
tiếp hướng dẫn và tận tình giúp đỡ em trong suốt thời gian thực hiện luận văn.
Em xin gửi lời cảm ơn chân thành tới toàn thể các thầy cô giáo trong Trường
Đại Học Công Nghệ, Đại Học Quốc Gia Hà Nội đã dạy dỗ, giúp đỡ và chỉ bảo cho em
trong suốt quá trình học tập.
Cuối cùng, em xin gửi lời cảm ơn sâu sắc tới gia đình, bạn bè, đồng nghiệp,
những người đã luôn bên cạnh em để động viên, giúp đỡ và tạo điều kiện tốt nhất để
em có thể hoàn thành luận văn.
Hà Nội, ngày tháng năm 2015
Học viên

Trần Văn Hiệp


3

MỤC LỤC
LỜI CAM ĐOAN ........................................................................................................ 1
LỜI CẢM ƠN ............................................................................................................. 2
MỤC LỤC ................................................................................................................... 3
DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT................................................ 5
DANH MỤC CÁC HÌNH VẼ...................................................................................... 6
DANH MỤC CÁC BẢNG BIẾU ................................................................................ 7
MỞ ĐẦU..................................................................................................................... 8

CHƯƠNG 1:TỔNG QUAN VỀ BÀI TOÁN TÌM KIẾM TRÊN CƠ SỞ DỮ LIỆU
BỆNH VIỆN ............................................................................................................... 9
1.1

Tổng quan ...................................................................................................... 9

1.1.1

Giới thiệu ................................................................................................. 9

1.1.2

Ý nghĩa khoa học và thực tiễn ................................................................ 10

1.1.3

Tầm quan trọng...................................................................................... 10

1.1.4

Mục đích ................................................................................................ 10

1.2

Truy tìm thông tin......................................................................................... 11

1.2.1

Hệ thống tìm kiếm thông tin ................................................................... 11


1.2.2

Các hệ thống thông tin khác ................................................................... 12

1.2.3

Các mô hình tìm kiếm thông tin .............................................................. 13

1.2.4

Xếp hạng tài liệu .................................................................................... 14

1.3

Kết luận ........................................................................................................ 14

CHƯƠNG 2: MỘT SỐ PHƯƠNG PHÁP XẾP HẠNG.............................................. 15
2.1

Một số phương pháp tìm kiếm ...................................................................... 15

2.1.1

Mô hình tìm kiếm Boolean...................................................................... 15

2.1.2

Tìm kiếm tương tự .................................................................................. 17

2.1.3


Độ đo tương tự Cosine ........................................................................... 18

2.2

Một số phương pháp xếp hạng ...................................................................... 19

2.2.1

Phương pháp xếp hạng dựa trên cấu trúc............................................... 19

2.2.2

Phương pháp dựa trên nội dung ............................................................. 20

2.2.2.1 Phương pháp xếp hạng Cosine ............................................................. 22
2.2.2.2 Phương pháp xếp hạng Cosine Short Segments .................................... 27


4

2.2.2.3 Phương pháp xếp hạng Dice................................................................. 27
2.2.2.4 Phương pháp xếp hạng Jaccard ............................................................ 27
2.2.2.5 Phương pháp xếp hạng Matching ......................................................... 28
2.2.2.6 Phương pháp Overlap .......................................................................... 28
2.3

Kết luận ........................................................................................................ 28

CHƯƠNG 3: ĐỀ XUẤT CẢI TIẾN PHƯƠNG PHÁP XẾP HẠNG ............................... 29

3.1

Bài toán ứng dụng ........................................................................................ 29

3.1.1

Giới thiệu bài toán ................................................................................. 29

3.1.2

Mô tả chi tiết .......................................................................................... 31

3.1.3

Chức năng tìm kiếm chẩn đoán .............................................................. 35

3.1.4

Mô hình hệ thống tìm kiếm ..................................................................... 37

3.2

Phương pháp đề xuất .................................................................................... 38

3.3

N-gram và áp dụng ....................................................................................... 38

3.4


Kết luận ........................................................................................................ 41

CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ ....................................................... 42
4.1

Dữ liệu thực nghiệm và phương pháp đánh giá ............................................. 42

4.1.1

Chuẩn bị dữ liệu thực nghiệm ................................................................ 42

4.1.2

Phương pháp đánh giá kết quả tìm kiếm ................................................ 42

4.2

Một số kết quả khi chạy chương trình ........................................................... 44

4.2.1 Kết quả khi chạy các phương pháp xếp hạng khác nhau cho cùng một truy
vấn trên tập dữ liệu các loại bệnh ...................................................................... 44
4.2.1.1 Kết quả tìm kiếm.................................................................................. 44
4.2.1.2 Kết quả các phương pháp xếp hạng ...................................................... 45
4.2.2
4.3

Kết quả khi đánh giá các phương pháp với các truy vấn khác nhau ....... 51

Kết luận ........................................................................................................ 52


KẾT LUẬN ............................................................................................................... 53
TÀI LIỆU THAM KHẢO ......................................................................................... 54


5

DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT
STT

Từ viết
tắt/thuật ngữ

Từ tiếng Anh

Ý nghĩa

1

CSDL

Database

Cơ sở dữ liệu

2

IDF

Inverse Document Frequency


Nghịch đảo tần số văn bản

3

TF

Term Frequency

Tần số thuật ngữ

4

IR

Information Retrieval

Truy tìm thông tin


6

DANH MỤC CÁC HÌNH VẼ
Hình 2.1. Mô hình của một chỉ mục ngược ..................................................... 17
Hình 2.2. Minh họa sự tương tự cosine ........................................................... 25
Hình 3.1. Biểu đồ hoạt động chức năng tìm kiếm chẩn đoán bệnh................... 36
Hình 3.2. Mô hình hệ thống tìm kiếm.............................................................. 37


7


DANH MỤC CÁC BẢNG BIỂU
Bảng 2.1. Giá trị TF-Document 1. ................................................................... 23
Bảng 2.2. Giá trị TF-Document 2. ................................................................... 23
Bảng 2.3. Giá trị TF-Document 3 .................................................................... 23
Bảng 2.4. Giá trị Normalized TF- Document 1................................................ 23
Bảng 2.5. Giá trị Normalized TF- Document 2................................................ 23
Bảng 2.6. Giá trị Normalized TF- Document 3................................................ 23
Bảng 2.7. Giá trị IDF Document. .................................................................... 24
Bảng 2.8. Giá trị TF  IDF Query..................................................................... 26
Bảng 2.9. Giá trị TF  IDF Document. ............................................................. 26
Bảng 2.10. Cosine Similarity. ......................................................................... 27
Bảng 3.1. Danh sách các n-gram ..................................................................... 39
Bảng 3.2. Kết quả tìm kiếm truy vấn “bệnh lậu”. ............................................ 39
Bảng 3.3. Kết quả xếp hạng Jaccard truy vấn “bệnh lậu”. ............................... 40
Bảng 3.4. Kết quả xếp hạng Jaccard n-gram truy vấn “bệnh lậu”. ................... 41
Bảng 4.1. Thiết kế bảng danh mục ICD........................................................... 42
Bảng 4.2. Dữ liệu danh mục ICD. ................................................................... 42
Bảng 4.3. Kết quả tìm kiếm truy vấn “viêm họng”. ......................................... 45
Bảng 4.4. Kết quả xếp hạng Cosine truy vấn “viêm họng”. ............................. 46
Bảng 4.5. Kết quả xếp hạng Cosine Short Segments truy vấn “viêm họng”. .... 47
Bảng 4.6. Kết quả xếp hạng Dice truy vấn “viêm họng”.................................. 47
Bảng 4.7. Kết quả xếp hạng Jaccard truy vấn “viêm họng”. ............................ 48
Bảng 4.8. Kết quả xếp hạng Matching truy vấn “viêm họng”. ......................... 49
Bảng 4.9. Kết quả xếp hạng Overlap truy vấn “viêm họng”. ........................... 50
Bảng 4.10. Kết quả đánh giá xếp hạng MAP. .................................................. 51
Bảng 4.11. Kết quả so sánh các phương pháp xếp hạng................................... 52
Bảng 4.12. Kết quả đánh giá xếp hạng áp dụng n-gram MAP. ........................ 52


8


MỞ ĐẦU
Tin học ngày càng phát triển, thay vì việc hàng ngày phải viết thông tin hồ sơ
lên giấy, thông tin đó dần dần được số hóa và lưu trữ trên máy tính dưới dạng cơ sở dữ
liệu thông qua ứng dụng tin học. Lợi ích của việc số hóa là dữ liệu được lưu trữ và
quản lý tốt hơn, tra cứu, trích xuất thông tin dễ dàng hơn. Thông tin hồ sơ được số hóa
ngày càng nhiều vấn đề đặt ra để tìm kiếm thông tin trong tập hồ sơ hàng nghìn thậm
trí đến hàng triệu triệu một cách nhanh nhất, hiệu quả nhất đòi hỏi ứng dụng tin học
cần phải xây dựng các giải thuật tìm kiếm tối ưu nhất đảm bảo tốc độ tìm kiếm và giá
trị người dùng cần.
Đối với lĩnh vực tìm kiếm thông tin, mỗi khi người dùng tìm kiếm sẽ thu được
kết quả phù hợp hoặc không có kết quả, nếu kết quả trả về là một lượng lớn giá trị phù
hợp, người dùng khó có thể dò tìm từng kết quả để tìm ra nhanh nhất kết quả mình
muốn tìm. Theo tâm lý thông thường người dùng chỉ xem qua vài chục bản ghi đầu
tiên và không đủ thời gian để xem tất cả các kết quả trả về. Do đó xếp hạng là kỹ thuật
đánh giá giá trị từng kết quả trong tập dữ liệu trả về, xếp hạng độ quan trọng để người
dùng dễ dàng nhìn thấy giá trị phù hợp mong muốn.
Có rất nhiều hệ thống tìm kiếm cần đến kỹ thuật xếp hạng để cung cấp cho người
dùng có thể tìm thấy các tài liệu của mình nhanh nhất và xếp nó ở ngay đầu tiên và nhu
cầu hệ thống tìm kiếm trên cơ sở dữ liệu bệnh viện cũng cần tới nó. Đề tài nghiên cứu
hướng tới các phương pháp xếp hạng. Trên cơ sở tìm hiểu nắm vững các phương pháp
xếp hạng và vận dụng vào việc tìm kiếm xếp hạng trên cơ sở dữ liệu bệnh viện.
Bố cục của luận văn gồm 4 chương:
Chương 1. Tổng quan về bài toán tìm kiếm trên cơ sở dữ liệu bệnh viện trình
bày tổng quan về bài toán tìm kiếm trên cơ sở dữ liệu bệnh viện.
Chương 2. Một số phương pháp xếp hạng trình bày về các phương pháp xếp hạng,
áp dụng công thức cũng như ví dụ minh họa thực nghiệm cho các phương pháp đó.
Chương 3. Đề xuất cải tiến phương pháp xếp hạng trình bày về bài toán ứng
dụng áp dụng phương pháp xếp hạng, cách thức cải tiến phương pháp xếp hạng để đạt
được kết quả xếp hạng tốt hơn.

Chương 4. Thực nghiệm và đánh giá thực thi chương trình tìm kiếm áp
dụng các phương pháp xếp hạng với số liệu thu thập được, so sánh kết quả từng
phương pháp. Đánh giá kết quả các phương pháp để chọn ra được phương pháp xếp
hạng tốt nhất.


9

CHƯƠNG 1: TỔNG QUAN VỀ BÀI TOÁN TÌM KIẾM TRÊN CƠ SỞ DỮ
LIỆU BỆNH VIỆN
1.1 Tổng quan
1.1.1 Giới thiệu
Hiện nay, việc tạo ra những sản phẩm Tin Học mang tính đặc thù của Việt Nam là
một điều cần phải được quan tâm, đặc biệt là các phần mềm mang lại hiệu quả làm
việc trong các hoạt động mang tính hành chính. Việc quản lý số lượng lớn bệnh nhân
thông qua hồ sơ bệnh án, theo dõi tiến trình luân chuyển hồ sơ, cũng như việc thống kê
y tế là một trong những công việc hành chính sự vụ đó. Một số bệnh viện có khối
lượng bệnh nhân lớn là những nơi đang rất cần những công cụ hỗ trợ của Tin học một
phần trong những công cụ đó là ứng dụng tìm kiếm dữ liệu.
Mỗi khi người dùng tìm kiếm sẽ thu được kết quả phù hợp hoặc không có kết quả,
nếu kết quả trả về là một lượng lớn giá trị phù hợp, người dùng khó có thể dò tìm từng
kết quả để tìm ra nhanh nhất kết quả mình muốn tìm. Theo tâm lý thông thường người
dùng chỉ xem qua vài chục bản ghi đầu tiên và không đủ thời gian để xem tất cả các
kết quả trả về. Do đó xếp hạng là kỹ thuật đánh giá giá trị từng kết quả trong tập dữ
liệu trả về, xếp hạng độ quan trọng để người dùng dễ dàng nhìn thấy giá trị phù hợp
mong muốn. Vì vậy đề tài nghiên cứu hướng tới các phương pháp xếp hạng, đánh giá
chọn ra phương pháp nào thực sự tốt nhất. Trên cơ sở tìm hiểu nắm vững các phương
pháp xếp hạng và vận dụng vào việc tìm kiếm trên cơ sở dữ liệu bệnh viện, điển hình
là bài toán xếp hạng chẩn đoán theo danh mục bệnh tật quốc tế.
Thông thường việc ghi chẩn đoán đúng có tầm quan trọng như sau:

 Quan trọng cho chính thầy thuốc. Giúp thầy thuốc phát triển tư duy, tích
cực suy nghĩ lựa chọn chẩn đoán theo logic (Ví dụ: chẩn đoán tử vong một
cách lười biếng “Sốc không hồi phục”. Phải suy nghĩ tìm nguyên nhân).
Tăng trình độ biện luận lâm sàng và trình độ chuyên môn.
 Trong tương quan giữa thầy thuốc và người bệnh. Giúp thầy thuốc lưu tâm
tìm hiểu người bệnh nhiều hơn và có thêm cơ hội suy nghĩ đến người bệnh,
nhất là người bệnh tử vong trong tay mình. Thể hiện y đức vì người bệnh
hơn là vì bệnh.
 Trong tương quan giữa thầy thuốc và khoa học. Thầy thuốc ghi chẩn đoán
đúng - thống nhất theo danh mục và mã số bệnh tật quốc tế sẽ là đóng góp
lớn cho khoa học, vì: ghi chẩn đoán đúng sẽ là những dữ liệu có giá trị trong
nghiên cứu khoa học. Rất quan trọng trong thời đại Công Nghệ Thông Tin.


10

 Trong tương quan giữa thầy thuốc và ngành y tế. Đóng góp lớn cho công
tác lưu trữ, báo cáo, thống kê một cách chính xác giúp ngành y tế: Nắm
đúng mô hình bệnh tật và tử vong của địa phương. Nắm đúng và kịp thời
những vấn đề liên quan đến sức khỏe mà xã hội đang quan tâm. Từ đó xây
dựng được tốt hơn những chương trình, dự án phòng bệnh, chống bệnh và
chăm sóc sức khỏe.
Nhận thấy vấn đề chẩn đoán đúng bệnh và tầm quan trọng trong việc ghi chẩn
đoán đúng là rất quan trọng. Đề tài nghiên cứu, cài đặt, đánh giá các phương pháp xếp
hạng dựa trên dữ liệu chẩn đoán theo danh mục bệnh tật quốc tế lựa chọn phương pháp
xếp hạng tốt nhất vận dụng cho việc tìm kiếm chẩn đoán đúng bệnh.
Xét trên dữ liệu chẩn đoán với dữ liệu là các bản ghi danh mục bệnh tật quốc tế
là những câu hay đoạn (ngắn), đề tài lựa chọn phương pháp xếp hạng để xác định
độ tương đồng giữa các câu hay đoạn, sau đó chọn ra câu hay đoạn có độ liên quan
lớn nhất.

1.1.2 Ý nghĩa khoa học và thực tiễn
Ý nghĩa khoa học:
Đề tài nghiên cứu các phương pháp xếp hạng, đánh giá kết quả tìm kiếm trên cơ sở
dữ liệu bệnh viện.
Ý nghĩa thực tiễn:
Ứng dụng nhằm trợ giúp đáp ứng được nhu cầu tìm kiếm cho người sử dụng tìm
kiếm thông tin dễ dàng nhìn thấy giá trị phù hợp mong muốn.
1.1.3 Tầm quan trọng
Kết quả xếp hạng giảm dần thứ tự độ quan trọng của chẩn đoán để người dùng dễ
dàng nhìn thấy chẩn đoán phù hợp, nâng cao chất lượng khám chữa bệnh, có thể kết
luận được ngay từ thời kì đầu của quá trình bệnh rất có lợi cho điều trị và phòng bệnh.
Đưa ra những hướng điều trị, đặt ra những giai đoạn điều trị và có thể đưa ra thêm
những thông tin về bệnh.
1.1.4 Mục đích
Mục đích của đề tài là tìm hiểu các phương pháp xếp hạng, cài đặt, đánh giá, thực
nghiệm các phương pháp xếp hạng lựa chọn phương pháp xếp hạng phù hợp vận dụng
tốt nhất trong bài toán tìm kiếm trên cơ sở dữ liệu bệnh viện. Để đạt được mục đích đề
ra đề tài cần nghiên cứu:


11

Về mặt lý thuyết: Tìm hiểu kiến thức về tìm kiếm thông tin, xếp hạng trong hệ
thống tìm kiếm thông tin, các phương pháp xếp hạng tài liệu, tiêu chí đánh giá kết quả
xếp hạng.
Về mặt thực nghiệm: Cài đặt, đánh giá các phương pháp xếp hạng và chọn lựa thực
nghiệm được phương pháp xếp hạng tốt nhất.
1.2 Truy tìm thông tin
1.2.1 Hệ thống tìm kiếm thông tin
Từ những năm 1940, vấn đề lưu trữ và truy tìm thông tin [1] đã thu hút sự chú ý

của các nhà nghiên cứu. Hệ thống tìm kiếm đang trở nên cần thiết, vấn đề đó là: chúng
ta có một lượng thông tin rất lớn, yêu cầu truy tìm thông tin một cách chính xác và
nhanh chóng.
“Sự phù hợp”, đó là khái niệm trung tâm của truy tìm thông tin. Mục đích của
một chiến lược truy tìm tự động là truy tìm tất cả các tài liệu phù hợp ở cùng thời
điểm truy tìm, có thể bao gồm một vài tài liệu không thỏa mãn. Tìm ra các đặc
trưng của tài liệu để khi tài liệu phù hợp với truy vấn, nó cho phép tài liệu được
truy tìm để trả lời truy vấn.
Mục đích của hệ thống tìm kiếm thông tin là trả về các thông tin liên quan nhất
đến nhu cầu thông tin của người dùng. Nhu cầu thông tin của người dùng ở đây có thể
xem như một câu truy vấn. Thông tin liên quan ở đây có thể là một câu, một đoạn mà
ta gọi chung là tài liệu.
Hệ thống tìm kiếm thông tin thường gặp phải vấn đề sự khác biệt giữa câu truy
vấn và tài liệu. Một ví dụ là câu truy vấn thì ngắn (có thể là hai từ và thậm chí các từ
này là những từ không thông dụng) trong khi tài liệu thì rất nhiều. Để khắc phục vấn
đề này các hệ thống tìm kiếm thông tin thường tạo ra các hàm biểu diễn để xử lý câu
truy vấn và dữ liệu khác nhau sau đó áp dụng phương pháp xếp hạng để xếp hạng kết
quả trả về.
Hệ thống tìm kiếm thông tin gồm có 3 bộ phận chính: bộ phận phân tích văn bản,
bộ phận lập chỉ mục, bộ phận so khớp và sắp xếp các tài liệu trả về.
 Bộ phận phân tích văn bản. bộ phận này có nhiệm vụ phân tích các văn bản
thu thập được thành các từ riêng biệt. Tương tự, khi người dùng nhập câu
truy vấn thì câu truy vấn cũng được phân tích thành các từ riêng biệt.
 Bộ phận lập chỉ mục: các từ trích được từ các văn bản thu thập được sẽ được
bộ phận này lựa chọn để làm các từ chỉ mục. Các từ chỉ mục phải là các từ


12

thể hiện được nội dung của văn bản. Hai bộ phận phân tích văn bản và lập

chỉ mục thường đi liền với nhau và thường chỉ gọi là bộ phận lập chỉ mục.
 Bộ phận so khớp và sắp xếp các tài liệu trả về: Các từ trích được từ câu truy
vấn và các từ chỉ mục của văn bản sẽ được so khớp với nhau để tìm ra các
tài liệu liên quan đến câu truy vấn. Mỗi tài liệu có một độ tương quan với
câu truy vấn. Các tài liệu này sẽ được sắp xếp theo độ tương quan giảm dần
và trả về cho người sử dụng.
1.2.2 Các hệ thống thông tin khác
Hiện nay các hệ thống thông tin quan trọng nhất là: hệ quản trị cơ sở dữ liệu
(DBMS), hệ quản lý thông tin (MIS), hệ hỗ trợ ra quyết định (DSS), hệ trả lời câu hỏi
(QAS) và hệ tìm kiếm thông tin (IR). Việc hiểu biết sự khác nhau giữa hệ thống tìm
kiếm thông tin và các hệ thống thông tin khác giúp ta hiểu rõ các kỹ thuật tìm kiếm
văn bản.
 Hệ quản trị cơ sở dữ liệu (DBMS). DBMS đơn giản là một hệ thống được
thiết kế nhằm thao tác và duy trì điều khiển cơ sở dữ liệu. DBMS tổ chức
các dữ liệu của mình dưới dạng các bảng. Mỗi một cơ sở dữ liệu được lưu
trữ thành nhiều bảng khác nhau. Mỗi một cột trong bảng là một thuộc
tính, mỗi một dòng là một bộ dữ liệu cụ thể. Trong mỗi một bảng có một
thuộc tính duy nhất đại diện cho bảng, nó không được trùng lặp và ta gọi
đó là khóa chính. Các bảng có mối liên hệ với nhau thông qua các khóa
ngoại. DBMS có một tập các lệnh để hỗ trợ cho người sử dụng truy vấn
đến dữ liệu của mình. Vì vậy muốn truy vấn đến cơ sở dữ liệu trong hệ
quản trị cơ sở dữ liệu ta phải học hết các tập lệnh này. Nhưng ngược lại
nó sẽ cung cấp cho ta các dữ liệu đầy đủ và hoàn toàn chính xác. Hiện
nay DBMS được sử dụng rộng rãi trên thế giới. Một số DBMS thông
dụng như: Access, SQL Server, Oracle.
 Hệ quản lý thông tin (IMS): IMS là DBMS nhưng có thêm nhiều chức năng
về việc quản lý. Những chức năng này phụ thuộc vào giá trị của nhiều kiểu
dữ liệu khác nhau. Nói chung bất kỳ hệ thống nào có mục đích đặc biệt phục
vụ cho việc quản lý thì ta gọi là IMS.
 Hệ hỗ trợ ra quyết định (DSS): DSS sẽ dựa vào các tập luật được học, từ

những luật đã học rút ra những luật mới, sau khi gặp một vấn đề nó sẽ
căn cứ vào tập các luật để đưa ra những quyết định thay cho con người.
Hệ thống này đang được áp dụng nhiều cho công việc nhận dạng và chẩn
đoán bệnh.


13

 Hệ trả lời câu hỏi (QAS): QAS cung cấp việc truy cập đến các thông tin
bằng ngôn ngữ tự nhiên. Việc lưu trữ cơ sở dữ liệu thường bao gồm một số
lượng lớn các vấn đề liên quan đến lĩnh vực riêng biệt và các kiến thức tổng
quát. Câu hỏi của người dùng có thể ở dạng ngôn ngữ tự nhiên. Công việc
của QAS là phân tích câu truy vấn của người dùng, so sánh với các tri thức
được lưu trữ, và tập hợp các vấn đề có liên quan lại để đưa ra câu trả lời
thích hợp. Tuy nhiên, QAS chỉ đang thử nghiệm. Việc xác định ý nghĩa của
ngôn ngữ tự nhiên dường như vẫn là chướng ngại lớn để có thể sử dụng
rộng rãi hệ thống này.
So sánh hệ thống tìm kiếm thông tin với các hệ thống thông tin khác:
Chức năng

IR

DBMS

QAS

IMS

Tìm kiếm


Nội dung trong Các phần tử có Các sự kiện
các tài liệu
kiểu dữ liệu đã rõ ràng
được định nghĩa

Lưu trữ

Các văn bản Các phần tử dữ Các sự kiện rõ thêm những
thủ tục
ngôn ngữ tự liệu ở dạng bảng ràng và các
nhiên
kiến thức tổng (Tính tổng,
tính trung
quát

Xử lý

Các câu truy Các câu truy

Các câu truy

bình, phép

vấn không

vấn không

chiếu…)

vấn có cấu trúc


chính xác

Giống
DBMS
nhưng hỗ trợ

giới hạn

1.2.3 Các mô hình tìm kiếm thông tin
 Mô hình nhị phân (Boolean model) các tài liệu chỉ có 2 trạng thái hoặc liên
quan hoặc không liên quan đối với truy vấn yêu cầu.
Ưu điểm của mô hình Boolean:
o Đơn giản và dễ sử dụng
Nhược điểm của mô hình Boolean:
o Vì dựa trên phép toán logic nhị phân nên một tài liệu được tìm kiếm chỉ xác
định hai trạng thái: liên quan hoặc không với câu truy vấn
 Mô hình xác suất đối với mô hình xác suất, việc đầu tiên sẽ là tính toán xác
suất liên quan và không liên quan của tài liệu so với câu truy vấn. Sau đó, sẽ


14

tiến hành sắp xếp các tài liệu giảm dần theo mức độ liên quan của tài liệu
với câu truy vấn.
Ưu điểm của mô hình xác suất:
o Tài liệu được sắp xếp dựa vào xác suất liên quan đến câu truy vấn
Nhược điểm của mô hình xác suất:
o Mô hình không quan tâm đến số lần xuất hiện của từ chỉ mục trong tài liệu
o Việc tính toán xác suất khá phức tạp và tốn nhiều chi phí

 Mô hình không gian vector cả các truy vấn và tài liệu được mô hình hóa
như các vector trong không gian nhiều chiều. Sự liên quan giữa một câu
truy vấn và tài liệu được tính toán bởi một số đo khoảng cách vector
giữa các vector này.
Ưu điểm của mô hình không gian vector:
o Đơn giản và dễ hiểu
o Cài đặt đơn giản
o Khắc phục các hạn chế trên mô hình Boolean
Nhược điểm của mô hình không gian vector:
o Số chiều biểu diễn cho tập tài liệu có thể rất lớn nên tốn nhiều không gian
lưu trữ
1.2.4 Xếp hạng tài liệu
Một máy tìm kiếm có thể cho lại tới hàng nghìn tài liệu phù hợp, nhưng một người
sử dụng thông thường sẽ chỉ có thể xem xét được một số lượng nhỏ các tài liệu tìm
được đó. Vì thế, xếp hạng các tài liệu phù hợp theo mức độ tương thích với người
dùng là một vấn đề quan trọng, cũng là tiêu điểm trong việc đánh giá một phương
pháp truy tìm.
Chỉ qua một phần thông tin của người sử dụng được trích lọc biểu thị qua truy vấn,
hệ thống sẽ tìm kiếm và trả lời bằng một tập các tài liệu phù hợp. Yêu cầu đó không có
thuật toán cụ thể, nhưng được đảm bảo chiến lược xếp hạng luôn ưu tiên cho những tài
liệu hữu ích, tài liệu được coi là “gần” với truy vấn hơn sẽ được xếp lên trên tài liệu
khác trong danh sách kết quả trả về.
1.3 Kết luận
Chương này đã trình bày giới thiệu về bài toán tìm kiếm trên cơ sở dữ liệu bệnh
viện, mục tiêu cần thực hiện và nêu khái quát về truy tìm thông tin, xếp hạng tài liệu.


15

CHƯƠNG 2: MỘT SỐ PHƯƠNG PHÁP XẾP HẠNG

2.1 Một số phương pháp tìm kiếm
2.1.1 Mô hình tìm kiếm Boolean
Ý nghĩa của việc truy tìm thông tin có thể rất lớn [7]. Bạn chỉ cần nhận được một
thẻ tín dụng từ ví của bạn để bạn có thể gõ vào số thẻ như một hình thức của truy tìm
thông tin. Tuy nhiên, như một nghiên cứu của một trường đại học, tìm kiếm thông tin
có thể được định nghĩa như sau:
Truy tìm là tìm kiếm thông tin (thường là các tài liệu) ở một dạng không có cấu
trúc (thông thường là văn bản), thỏa mãn nhu cầu thông tin từ trong những nguồn
thông tin lớn (được lưu trữ trên các máy tính).
Theo định nghĩa này, truy tìm thông tin sử dụng để là một hoạt động mà chỉ có
một số ít người tham gia vào: thư viện tham khảo, trợ lý, và những người tìm kiếm
chuyên nghiệp. Bây giờ thế giới đã thay đổi, và hàng trăm triệu người tham gia vào
truy tìm thông tin hàng ngày khi họ sử dụng một công cụ tìm kiếm web hoặc tìm kiếm
thông tin email của họ. Truy tìm thông tin nhanh chóng trở thành hình thức chi phối
của tiếp cận thông tin, và đã vượt qua cách tìm kiếm cơ sở dữ liệu truyền thống (các
loại đó đang xảy ra khi một nhân viên bán hàng nói với bạn: "tôi xin lỗi, tôi chỉ có thể
tìm thấy đơn đặt hàng của bạn nếu bạn có thể cho tôi ID đơn đặt hàng của bạn").
Một hệ thống tìm kiếm thông tin có 2 chức năng chính là lập chỉ mục cho tài liệu
và tra cứu. Quá trình lập chỉ mục là quá trình thống kê biểu diễn nội dung của từng tài
liệu trong kho dữ liệu lớn và được đưa vào lưu trữ trong cấu trúc được thiết kế sẵn từ
trước gọi là cấu trúc chỉ mục, quá trình này giống như việc phân loại các đầu sách vào
các ngăn sách của các nhân viên thư viện. Một cách khác để lập chỉ mục là trích rút
nội dung từ các tài liệu để lập chỉ mục, cuối cùng của quá trình lập chỉ mục là nội dung
của các tài liệu trong kho dữ liệu sẽ được biểu diễn trong chỉ mục, chỉ mục sẽ được hệ
thống lưu trữ, quản lý và quá trình tìm kiếm sẽ diễn ra trên nội dung của chỉ mục mà
không cần tác động đến các tài liệu trong kho tài liệu. Sau quá trình lập chỉ mục thì nội
dung của chỉ mục sẽ biểu diễn nội dung của kho tài liệu ở một dạng (sơ đồ) nào đó. Sơ
đồ chỉ mục cơ bản nhất là chỉ mục ngược. Một sơ đồ chỉ mục ngược được xây dựng để
biểu diễn cho tất cả các từ ngữ có trong những tài liệu trong kho dữ liệu. Để minh họa
cho quá trình xây dựng chỉ mục ngược hãy lấy ví dụ sau, tìm kiếm tên các nhân vật



16

trong các tác phẩm của nhà văn Shakespeare. Sau quá trình thu thập các tác phẩm văn
học của Shakespeare và thống kê các từ ngữ ta xây dựng bảng thống kê gồm tên nhân
vật và tên các vở kịch:
Antory
and
Cleopatra

Julius

The

Caesar

Tempest

Hamlet

Othello

Macbeth

Antory

1

1


0

0

0

1

Brutus

1

1

0

1

0

0

Caesar

1

1

0


1

1

1

Calpurnia

0

1

0

0

0

0

Cleopatra

1

0

0

0


0

0

Mercy

1

0

1

1

1

1

Worser

1

0

1

1

1


0





Đặt là bit 1 nếu vở kịch chứa từ ngữ và bit 0 nếu không chứa từ ngữ. Chúng ta
có các vector bits cho mỗi nhóm từ ngữ biểu diễn trong kho tài liệu. Ví dụ từ “Antony”
là 110001. Giả sử yêu cầu tìm kiếm là các vở kịch có chứa từ Brutus và Caesar nhưng
không có Calpurnia. Biểu diễn dạng logic sẽ là: Brutus AND Caesar BUT NOT
Calpurnia, việc tìm kiếm sẽ tiến hành phép tính: 110100 AND 110111 AND 101111 =
100100. Như vậy quá trình tìm kiếm sẽ tìm vở kịch thỏa mãn có biểu diễn là 100100.
Quá trình thống kê và sử dụng phép so sánh logic như trên được gọi là mô hình
tìm kiếm Boolean. Mô hình này xem mỗi tài liệu là biểu diễn của các từ ngữ, như vậy
thông qua mô hình này có thể xác định được một từ ngữ có xuất hiện trong một tài liệu
hay không? Kết quả của mô hình này là tài liệu sẽ đúng hoặc không đúng đối với một
câu hỏi tìm kiếm. Bên cạnh đó mô hình tìm kiếm Boolean sẽ xây dựng một ma trận
nhị phân để làm chỉ mục tìm kiếm cho mô hình, việc xây dựng ma trận này là khá “tốn
kém”. Giả sử chúng ta có 1 triệu tài liệu, và mỗi tài liệu có khoảng 1000 từ, giả định
rằng mỗi từ có kích thước trung bình 6 bytes cho cả khoảng trống và dấu chấm câu.
Như vậy bằng cách xây dựng ma trận như trên thì chúng ta sẽ có khoảng 6GB dữ liệu,


17

đây là một số kích thước lớn vì vậy chúng ta cần phải tìm cách biểu diễn dữ liệu khác.
Mô hình này xem mỗi tài liệu là thể hiện của các từ ngữ.
Dựa vào nguyên tắc của mô hình tìm kiếm Boolean là xem mỗi tài liệu là thể
hiện của các từ ngữ tạo nên tài liệu, công việc tiếp theo là đánh chỉ mục cho các tài

liệu, việc đánh chỉ số cho tài liệu nhằm mục đích để giảm thiểu không gian lưu trữ
định danh các tài liệu, sử dụng một số nguyên thay vì lặp lại nhiều lần tên của tài liệu.
Các từ ngữ trong câu hỏi tìm kiếm sẽ được tách ra và biểu diễn thành một từ điển theo
mô hình sau gọi là chỉ mục ngược:

Hình 2.1. Mô hình của một chỉ mục ngược
Danh sách các từ ngữ trong tài liệu được biểu diễn thành một từ điển
(Dictionary) và mỗi từ ngữ sẽ có con trỏ trỏ để trỏ tới danh sách (Posting) là các định
danh tài liệu tương ứng có chứa từ này, danh sách các tài liệu chứa từ này cũng sẽ
được sắp xếp theo thứ tự. Tóm lại, quá trình xây dựng một chỉ mục ngược sẽ trải qua
các bước:
 Thu thập tất cả các tài liệu cần lập chỉ mục trong kho dữ liệu.
 Từ ngữ hóa các từ ngữ bằng cách chuyển mỗi tài liệu thành danh sách
các từ ngữ.
 Tạo bộ tiền xử lý ngôn ngữ, lập một danh sách từ ngữ để lập chỉ mục.
 Tạo ra danh sách từ điển để lưu trữ các từ ngữ và các danh sách để lưu trữ
các tài liệu tương ứng.
2.1.2 Tìm kiếm tương tự
Chúng ta đã khẳng định rằng các nhu cầu thông tin của người sử dụng trang web
thường được trình bày bởi những truy vấn từ khóa, và vì thế sự chính xác về tài liệu
được định nghĩa về mặt một truy vấn tới những tài liệu được tìm ra bởi công cụ tìm
kiếm gần như thế nào. Bởi vì các truy vấn tìm kiếm web thường xuyên không đầy đủ


18

và không rõ ràng, nhiều tài liệu đưa ra có thể không phù hợp với truy vấn. Tuy nhiên,
khi một tài liệu liên quan được tìm ra, một bộ sưu tập lớn về các tài liệu có thể liên
quan, có thể được tìm ra bằng việc lấy lại các tài liệu tương tự với các tài liệu liên
quan. Quá trình này được gọi là tìm kiếm tương tự [2] được thực hiện ở một vài công

cụ tìm kiếm (ví dụ, Google) là một lựa chọn để tìm trang tương tự hoặc liên quan đến
một trang đã được đưa ra. Nói một cách khác tìm kiếm tương tự chính là một dạng của
phương pháp sử dụng mô hình không gian vector.
2.1.3 Độ đo tương tự Cosine
Độ đo tương tự truy vấn tới tài liệu, điều mà chúng ta đã khám phá cho đến nay
được dựa trên mô hình khoảng cách vector, cả hai truy vấn và các tài liệu được trình
bày bởi vector TFIDF, và độ đo tương tự được tính bằng cách sử dụng các thuộc tính
số liệu của khoảng cách vector. Nó cũng có mục đích tính toán độ đo tương tự giữa
các tài liệu. Ngoài ra, chúng ta có thể hi vọng rằng độ đo tương tự tài liệu với tài liệu
sẽ chính xác hơn độ đo tương tự giữa truy vấn với tài liệu bởi vì truy vấn thường quá
ngắn, vì vậy vector của chúng ta rất thưa thớt trong khoảng cách vector rất rộng lớn.
Trong tìm kiếm tương tự, chúng ta không quan tâm đến một vector truy vấn nhỏ,
vì vậy chúng ta thoải mái sử dụng nhiều hơn (hoặc tất cả) chiều dài của khoảng cách
vector để diễn đạt các tài liệu của chúng ta. Trong lĩnh vực này sự rất hấp dẫn để đo
chiều dài của khoảng cách vector ảnh hưởng đến kết quả tìm kiếm tương tự như thế
nào. Vấn đề này liên quan đến sự lựa chọn đặc điểm, một vài sự lựa chọn có thể được
thử nghiệm như sau:
 Sử dụng tất cả các thuật ngữ từ corpus. Đây là sự lựa chọn dễ nhất nhưng
có thể gây ra vấn đề nếu corpus quá lớn (ví dụ như công cụ tìm kiếm kho
lưu trữ tài liệu của một trang web).
 Lựa chọn thuật ngữ với điểm số TF cao. Cách tiếp cận này phản ánh điều
kiện rằng sự xuất hiện thuật ngữ thường xuyên trong nhiều tài liệu và vì thế
làm cho các tài liệu trở nên tương tự hơn. Tuy nhiên, sự tương tự này không
ám chỉ nội dung của tài liệu.
 Lựa chọn thuật ngữ với điểm số IDF cao. Cách tiếp cận này phản ánh nhiều
hơn các thuật ngữ chuyên biệt của tài liệu và vì thế sẽ tạo ra sự khác nhau
giữa các tài liệu trong khoảng cách vector. Hơn nữa, điều này dẫn đến
vector tài liệu cực kỳ thưa thớt, vì vậy tìm kiếm tương tự rất hạn chế với các
tài liệu liên quan chặt chẽ.



19

 Kết hợp tiêu chí TF và IDF. Đây là một loại biện pháp được sử dụng trong
tọa độ vector (sự khác nhau là điểm số TF trong vector được lấy ra từ tài
liệu cụ thể), vector sẽ được phổ biến hơn với tọa độ khác không.
2.2 Một số phương pháp xếp hạng
Ngày nay có rất nhiều phương pháp xếp hạng được nghiên cứu và đưa ra dựa
trên nội dung và cấu trúc của dữ liệu. Đề tài nghiên cứu và lựa chọn phương pháp xếp
hạng dựa trên nội dung áp dụng vào bài toán tìm kiếm trên cơ sở dữ liệu bệnh viện.
Dưới đây đề tài trình bày phương pháp xếp hạng PageRank điển hình dựa trên cấu trúc
và các phương pháp xếp hạng dựa trên nội dung.
2.2.1 Phương pháp xếp hạng dựa trên cấu trúc
Một số lượng lớn các tài liệu trên mạng internet là các trang web. Ngoài việc xử
lý các trang tìm thấy theo yêu cầu của một từ khóa trong kho dữ liệu cập nhật, các hệ
thống tìm kiếm còn phải tìm cách chống lại sự nhiễu loạn của các trang không có nội
dung phù hợp với yêu cầu nhưng vẫn lọt vào danh sách tuyển chọn của máy truy tìm.
Nguyên nhân của các nhiễu loạn này là việc các trang chuyên về quảng cáo hay tiếp
thị luôn luôn tìm cách để lọt vào hàng đầu trong danh sách tuyển chọn của hệ thống
tìm kiếm. Qua đó họ có thể giới thiệu sản phẩm của họ đến người dùng. Ngược lại,
người dùng, trong đa số các trường hợp, không muốn tìm các quảng cáo tiếp thị mà chỉ
muốn tìm các dữ liệu khác theo ý đã ghi trong từ khóa.
Do đặc điểm phức tạp trên, việc phân hạng các trang web tìm được bởi một bộ
từ khóa cho trước của máy tìm kiếm sẽ dựa vào việc áp dụng thêm các thuật toán hay
biện pháp xử lý đặc biệt. Các tiêu chí chủ yếu mà các thuật toán của các hệ thống tìm
kiếm Web sử dụng để phân hạng các trang web: tần số phát sinh, thẻ meta và câu lệnh
title, ngôn ngữ, số liên kết ngoài.
PageRank là thuật toán phân tích các liên kết được dùng trong Google Search
để xếp hạng các trang web.
Thuật toán này chỉ định giá trị nhất định cho mỗi thành phần của một tập hợp

các văn bản liên kết với nhau, ví dụ như World Wide Web.
Mục đích “đo” tầm quan trọng tương đối của các liên kết trong tập hợp đó.
Áp dụng cho bất kỳ tập hợp văn bản nào có trích dẫn đối ứng và liên kết cụ thể.
Giá trị PageRank hình thành từ thuật toán toán học dựa trên webgraph: các
trang World Wide Web được coi như các đỉnh và các đường link là các cạnh. Khi hình
thành webgraph người ta có tính đến những trang của các cơ quan có thẩm quyền như
cnn.com hay usa.gov. Giá trị xếp hạng cho thấy tầm quan trọng của từng trang cụ thể.


20

Mỗi đường link tới trang web sẽ được tính như 1 sự hỗ trợ làm tăng thêm giá trị
Pagerank. Giá trị Pagerank của trang được định nghĩa đệ quy và phụ thuộc vào số
lượng và giá trị của các trang mà có link dẫn đến trang đó. Một trang web có chứa
nhiều link liên kết từ các trang web có giá trị PageRank cao thì giá trị PageRank của
trang đó cũng sẽ cao. Có rất nhiều bài viết đã được xuất bản ra công chúng dựa trên
nghiên cứu gốc của Page và Brin. Trên thực tế khái niệm PageRank rất khó để thao
tác. Đã có nhiều nghiên cứu tiến hành xác định những ảnh hưởng sai tới PageRank
ranking. Mục đích là tìm một cách loại bỏ hiệu quả những link từ các văn bản với
những ảnh hưởng sai tới PageRank.
2.2.2 Phương pháp dựa trên nội dung
Trong các loại dữ liệu hiện nay thì văn bản là loại phổ biến nhất, do vậy các bài
toán xử lý văn bản đã được đặt ra từ rất sớm và hiện nay nó vẫn là vấn đề rất được
nhiều nhà nghiên cứu quan tâm, một trong những bài toán đó là tìm kiếm, trích xuất
văn bản, biểu diễn và phân loại văn bản,…
Cơ sở dữ liệu văn bản có thể chia làm hai loại chính:
 Dạng không có cấu trúc: Đây là những tài liệu văn bản thông thường mà
ta đọc thường ngay trên các sách, báo, internet,… đây là dạng dữ liệu của
ngôn ngữ tự nhiên của con người và nó không theo một khuân mẫu định
sẵn nào cả.

 Dạng nửa cấu trúc: Đây là những văn bản được tổ chức dưới dạng cấu trúc
lỏng, nhưng vẫn thể hiện nội dung chính của văn bản, như văn bản HTML,
Email,…
Trong các bài toán xử lý văn bản, ta thấy rằng vai trò của biểu diễn văn bản rất
lớn, đặc biệt trong các bài toán tìm kiếm, phân cụm,...
Theo các nghiên cứu về cách biểu diễn khác nhau trong xử lý văn bản thì cách
biểu diễn tốt nhất là bằng các từ riêng biệt được rút ra từ tài liệu gốc và cách biểu diễn
này ảnh hưởng tương đối nhỏ đối với kết quả.
Các cách tiếp cận khác nhau sử dụng mô hình toán học khác nhau để tính toán,
dưới đây là các phương pháp xếp hạng để tính toán độ đo tương tự giữa câu truy vấn
và tài liệu trong bài toán tìm kiếm.
 Tương tự Cosine dùng số lần lặp lại của từ xuất hiện trong tài liệu để gán
điểm. Ví dụ: từ “game” xuất hiện 2 lần trong tài liệu “The game of life is a
game of everlasting learning” thì điểm (trọng số) của nó là 2. Một hình thái
từ được gán điểm là 0 trong bất kỳ tài liệu nào thì nó bị xem là không xuất


21

hiện. Để tính giá trị tương tự bằng cosine cho câu truy vấn và tài liệu người
ta thường dùng cách tính tích vô hướng của vector dựa trên phép chia tỉ lệ
của hai vector tần suất đặc trưng của câu truy vấn và tài liệu.
N

QD
Công thức: C (Q, D) 

QD

T


ik

.Q jk

k 1

N

 Tik2 .
k 1

N

(CT1)

 Q 2jk
k 1

Trong đó:
Tik là trọng số của thuật ngữ k trong tài liệu i; Q jk là trọng

số của thuật ngữ k trong câu truy vấn j.
 Tương tự Cosine Short Segments được tính toán chính xác theo cùng cách
với sự tương tự cosine thông thường ngoại trừ các hình thái từ trong tài liệu
và câu truy vấn được đánh điểm là 1 khi nó xuất hiện và là 0 khi nó không
xuất hiện chứ không dùng số lần lặp của từ xuất hiện. Tính sự tương tự
cosine short segments như sau:
Công thức: CS (Q, D) 


QD
QD

(CT2)

Trong đó:
Q là tập hợp các từ trong câu truy vấn
D là tập hợp các từ trong tài liệu
|.| là phép toán lấy lực lượng của một tập hợp
 Tương tự Dice giá trị Dice bằng 0 cho biết câu truy vấn và tài liệu hoàn toàn
khác nhau, ngược lại khi giá trị Dice bằng 1 cho biết câu truy vấn và tài liệu
giống nhau.
Công thức: DS (Q, D) 

2Q  D
(Q  D)

(CT3)

Trong đó:
Q là tập hợp các từ trong câu truy vấn
D là tập hợp các từ trong tài liệu
|.| là phép toán lấy lực lượng của một tập hợp
 Tương tự Jaccard được tính toán là kích thước của giao chia cho kích thước
hợp của câu truy vấn và tài liệu.


22

Công thức: JS (Q, D) 


QD
QD

(CT4)

Trong đó:
Q là tập hợp các từ trong câu truy vấn
D là tập hợp các từ trong tài liệu
|.| là phép toán lấy lực lượng của một tập hợp
 Tương tự Matching dựa trên sự kết hợp giao của câu truy vấn và tài liệu.
Công thức: MS (Q, D)  Q  D

(CT5)

Trong đó:
Q là tập hợp các từ trong câu truy vấn
D là tập hợp các từ trong tài liệu
|.| là phép toán lấy lực lượng của một tập hợp
 Tương tự Overlap tính sự chồng chéo giữa câu truy vấn và tài liệu.
Công thức: OS 

QD
min( Q , D )

(CT6)

Trong đó:
Q là tập hợp các từ trong câu truy vấn
D là tập hợp các từ trong tài liệu

|.| là phép toán lấy lực lượng của một tập hợp
min(. , .) là hàm lấy giá trị nhỏ nhất của 2 tham số truyền
vào
Minh họa cho các phương pháp ta sử dụng 3 tài liệu sau:
Document 1: The game of life is a game of everlasting learning.
Document 2: The unexamined life is not worth living.
Document 3: Never stop learning.
2.2.2.1 Phương pháp xếp hạng Cosine
Áp dụng công thức (CT1) với câu truy vấn: life learning.
Các bước để có được độ đo tương tự cosine [8] như sau:
Bước 1. Tính tần suất xuất hiện (TF)
Tần suất xuất hiện (TF): số lần một từ xuất hiện trong tài liệu.
Ta có các bảng tần suất xuất hiện như sau:


23

Document 1

the

game

of

life

is

a


everlasting

learning

TF

1

2

2

1

1

1

1

1

Bảng 2.1. Giá trị TF-Document 1.
Document 2

the

unexamined


life

is

not

worth

living

TF

1

1

1

1

1

1

1

Bảng 2.2. Giá trị TF-Document 2.
Document 3

never


stop

learning

TF

1

1

1

Bảng 2.3. Giá trị TF-Document 3
Trong thực tế mỗi tài liệu sẽ có các kích thước khác nhau, với một tài liệu lớn
thì tần suất của từ là tương đối lớn, do vậy để đơn giản người ta phải chuẩn hóa tần
suất dựa vào kích thước của tài liệu. Để chuẩn hóa ta sử dụng cách là chia tần suất xuất
hiện của từ cho tổng số từ trong một tài liệu.
Ví dụ từ the xuất hiện 1 lần trong Document 1 có tổng số từ là 10 ta có chuẩn
hóa tần suất xuất hiện: Normal_TF (the) =1/10=0.1
Ta có các bảng chuẩn hóa tần suất xuất hiện như sau:
Document 1

the

game

of

life


Normal_TF

0.1

0.2

0.2 0.1

is

a

everlasting

learning

0.1 0.1 0.1

0.1

Bảng 2.4. Giá trị Normalized TF- Document 1.
Document 2

the

unexamined

life


is

not

worth

living

Normal_TF

0.142857

0.142857

0.142857

0.142857

0.142857

0.142857

0.142857

Bảng 2.5. Giá trị Normalized TF- Document 2.
Document 3

never

stop


learning

Normal_TF

0.333333

0.333333

0.333333

Bảng 2.6. Giá trị Normalized TF- Document 3.
Đối với tần suất xuất hiện của từ, thì những từ càng xuất hiện nhiều thì có điểm
xếp hạng càng cao, còn những từ hiếm thì điểm xếp hạng lại thấp hơn.
Tuy nhiên suy luận trên không phải khi nào cũng đúng, nhiều từ xuất hiện với
tần suất cao nhưng lại không mang nhiều ý nghĩa trong văn bản (từ “và”.v.v.) hoặc
một số từ không xuất hiện trong văn bản này nhưng lại xuất hiện trong văn bản khác.


24

Để khắc phục nhược điểm của TF, phương pháp nghịch đảo tần số văn bản
được xây dựng.
Bước 2. Tính nghịch đảo tần số văn bản (IDF)
IDF được tính như sau:
 n
  Di

IDF  1  log e  ki
  D j

 j








(1)

Trong đó: e = 2.7182818284…; Di tổng số tài liệu; D j tổng số tài liệu chứa
thuật ngữ. Ví dụ: IDF (game) = 1 + loge (3 / 1) = 1 + 1.098726209 = 2.098726209
Với 3 tài liệu trên, áp dụng (1) ta có bảng kết quả:
Terms

IDF

the

1.405507153

game

2.098726209

of

2.098726209


life

1.405507153

is

1.405507153

a

2.098726209

everlasting

2.098726209

learning

1.405507153

unexamined

2.098726209

not

2.098726209

worth


2.098726209

living

2.098726209

never

2.098726209

stop

2.098726209

Bảng 2.7. Giá trị IDF Document.
Kết quả trên cho ta thấy với các từ the, life, is, learning xuất hiện 2 tới 3 lần
nhưng có IDF thấp hơn so với các từ khác chỉ xuất hiện 1 lần trong tài liệu.


×