Tải bản đầy đủ (.doc) (116 trang)

hệ thống tìm kiếm thông tin trên kho tài liệu tiếng Việt

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 (919.46 KB, 116 trang )

Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
LỜI CẢM ƠN
Chúng em xin gởi lời cảm ơn chân thành nhất đến thầy Hồ Bảo Quốc, người
đã tận tình hướng dẫn, giúp đỡ chúng em trong suốt thời gian thực hiện luận văn này.
Chúng con cảm ơn Cha, Mẹ và gia đình, những người đã dạy dỗ, khuyến
khích, động viên chúng con trong những lúc khó khăn, tạo mọi điều kiện cho chúng
con nghiên cứu học tập.
Chúng em cảm ơn các thầy, cô trong khoa Công Nghệ Thông Tin đã dìu dắt,
giảng dạy chúng em, giúp chúng em có những kiến thức quý báu trong những năm
học qua.
Cảm ơn chị Lê Thúy Ngọc và các bạn đã tận tình đóng góp ý kiến cho luận
văn của chúng tôi.
Mặc dù rất cố gắng nhưng luận văn của chúng em không tránh khỏi sai sót,
mong nhận được sự thông cảm và góp ý của thầy cô và các bạn.
Tháng 7 năm 2005
Sinh viên
Nguyễn Thị Thanh Hà – Nguyễn Trung Hiếu
Nguyễn Thị Thanh Hà - 0112215 1 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................


..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
Ngày…… tháng……năm 2005
Ký tên
Nguyễn Thị Thanh Hà - 0112215 2 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
Ngày…… tháng……năm 2005
Ký tên

Nguyễn Thị Thanh Hà - 0112215 3 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
MỤC LỤC
DANH SÁCH CÁC BẢNG.................................................................................7
DANH SÁCH CÁC HÌNH VẼ............................................................................7
Phần 1 : TÌM HIỂU LÝ THUYẾT.....................................................................11
Chương 1: TỔNG QUAN VỀ TÌM KIẾM THÔNG TIN...............................11
1. Giới thiệu về tìm kiếm thông tin......................................................................11
1.1 Khái niệm về tìm kiếm thông tin...............................................................11
1.2 Một số vấn đề trong việc tìm kiếm thông tin:...........................................11
2. Hệ tìm kiếm thông tin – IRS............................................................................12
3. Các thành phần của một hệ tìm kiếm thông tin [1.1].......................................13
4. So sánh IRS với các hệ thống thông tin khác .................................................14
4.1 Hệ quản trị cơ sở dữ liệu (DBMS)............................................................15
4.2 Hệ quản lý thông tin (IMS).......................................................................15
4.3 Hệ hỗ trợ ra quyết định (DSS)..................................................................15
4.4 Hệ trả lời câu hỏi (QAS)...........................................................................16
4.5 So sánh IRS với các hệ thống thông tin khác............................................16
Chương 2: XÂY DỰNG MỘT HỆ THỐNG TÌM KIẾM THÔNG TIN.......17
1. Kiến trúc của hệ tìm kiếm thông tin. [1.3].......................................................17
2. Một số mô hình để xây dựng một hệ tìm kiếm thông tin [1.2]........................19
2.1 Mô hình không gian vector.......................................................................19
2.2 Tìm kiếm Boolean.....................................................................................21
2.3 Tìm kiếm Boolean mở rộng......................................................................21
2.4 Mở rộng trong việc thêm vào trọng số của câu hỏi...................................22
2.4.1 Mở rộng cho số từ tuỳ ý......................................................................23
2.4.2 Thêm toán tử tự động..........................................................................23
2.5 Mô hình xác suất.......................................................................................24
2.6 Đánh giá chung về các mô hình................................................................24
3. Các bước để xây dựng một hệ tìm kiếm thông tin. [3.2].................................24

3.1 Tách từ tự động cho tập các tài liệu..........................................................24
3.2 Lập chỉ mục cho tài liệu............................................................................25
3.3 Tìm kiếm...................................................................................................25
3.4 Sắp xếp các tài liệu trả về (Ranking)........................................................25
4. Những khó khăn trong việc xây dựng một hệ thống tìm kiếm thông tin tiếng
Việt......................................................................................................................26
4.1 Khó khăn trong việc tách từ tiếng Việt.....................................................26
4.2 Vấn đề bảng mã tiếng Việt........................................................................27
4.3 Các khó khăn khác....................................................................................27
Chương 3: TÁCH TỪ TỰ ĐỘNG....................................................................28
Nguyễn Thị Thanh Hà - 0112215 4 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
1. Tách từ trong Tiếng Anh.................................................................................28
2. Tách từ trong Tiếng Việt.................................................................................28
2.1 Một số đặc điểm chính về từ tiếng Việt [2.2]...........................................28
2.1.1 Tiếng...................................................................................................28
2.1.2 Từ........................................................................................................29
2.2 Tách từ tự động tiếng Việt........................................................................29
3. Các phương pháp tách từ tiếng Việt................................................................29
3.1 fnTBL (Fast Transformation-based learning) [3.1]..................................29
3.1.1 Mô tả ..................................................................................................29
3.1.2 Áp dụng tách từ tiếng Việt..................................................................30
3.2 Longest Matching [1.4].............................................................................36
3.3 Kết hợp giữa fnTBL và Longest Matching...............................................36
Chương 4: LẬP CHỈ MỤC...............................................................................37
1. Khái quát về hệ thống lập chỉ mục..................................................................37
2. Phương pháp lập chỉ mục [1.1]........................................................................37
2.1 Xác định các từ chỉ mục ...........................................................................37
2.2 Các phương pháp tính trọng số của từ......................................................39
2.2.1 Tần số tài liệu nghịch đảo...................................................................39

2.2.2 Độ nhiễu tín hiệu (The Signal – Noise Ratio).....................................39
2.2.3 Giá trị phân biệt từ (The Term Discrimination Value)........................41
2.3 Lập chỉ mục tự động cho tài liệu tiếng Anh..............................................42
3. Lập chỉ mục cho tài liệu tiếng Việt..................................................................44
4. Tập tin nghịch đảo tài liệu...............................................................................45
4.1 Phân biệt giữa tập tin nghịch đảo và tập tin trực tiếp................................45
4.2 Tại sao sử dụng tập tin nghịch đảo để lập chỉ mục...................................46
Phần 2 : PHÂN TÍCH VÀ THIẾT KẾ...............................................................48
Chương 1: PHÂN TÍCH....................................................................................48
1. Sơ đồ UseCase hệ thống..................................................................................48
2. Sơ đồ Lớp........................................................................................................50
2.1 Sơ đồ các lớp thể hiện...............................................................................50
2.2 Sơ đồ các lớp xử lý...................................................................................51
3. Tách từ.............................................................................................................52
3.1 Sơ đồ UseCase..........................................................................................52
3.2 Sơ đồ Tuần tự............................................................................................52
3.3 Sơ đồ Cộng tác..........................................................................................53
3.4 Sơ đồ Lớp..................................................................................................53
4. Lập chỉ mục.....................................................................................................54
4.1 Sơ đồ UseCase..........................................................................................54
4.2 Sơ đồ Tuần tự............................................................................................55
4.2.1 Tạo mới chỉ mục.................................................................................55
4.2.2 Cập nhật chỉ mục.................................................................................56
Nguyễn Thị Thanh Hà - 0112215 5 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
4.3 Sơ đồ Cộng tác..........................................................................................57
4.3.1 Tạo mới chỉ mục.................................................................................57
4.3.2 Cập nhật chỉ mục.................................................................................57
4.4 Sơ đồ Lớp..................................................................................................58
5. Tìm kiếm..........................................................................................................59

5.1 Sơ đồ UseCase..........................................................................................59
5.2 Sơ đồ Tuần tự............................................................................................60
5.3 Sơ đồ Cộng tác..........................................................................................61
5.4 Sơ đồ Lớp..................................................................................................62
Chương 2: THIẾT KẾ VÀ CÀI ĐẶT...............................................................63
1. Cấu trúc lưu trữ dữ liệu....................................................................................63
1.1 Tập tin lưu nội dung tài liệu......................................................................63
1.1.1 Cấu trúc DTD / XSD...........................................................................63
1.1.2 Tài liệu XML.......................................................................................65
1.2 Tập tin sau khi tách từ tài liệu...................................................................66
1.2.1 Cấu trúc DTD / XSD...........................................................................66
1.2.2 Tài liệu XML.......................................................................................67
1.3 Tập tin chứa các từ không thể hiện nội dung của văn bản (stop list)........69
1.3.1 Cấu trúc DTD / XSD...........................................................................69
1.3.2 Tài liệu XML.......................................................................................70
1.4 Tập tin chỉ mục đảo ( Inverted )................................................................70
1.4.1 Cấu trúc DTD / XSD...........................................................................70
1.4.2 Tài liệu XML.......................................................................................72
1.5 Tập tin sau khi tách từ câu hỏi..................................................................73
1.5.1 Cấu trúc DTD / XSD...........................................................................73
1.5.2 Tài liệu XML.......................................................................................74
1.6 Tập tin chứa các từ của câu hỏi sau khi loại bỏ các từ trong danh sách
StopList............................................................................................................75
1.6.1 Cấu trúc DTD / XSD...........................................................................75
1.6.2 Tài liệu XML.......................................................................................76
1.7 Tập tin chứa các từ trong câu hỏi và các tài liệu liên quan.......................76
1.7.1 Cấu trúc DTD / XSD...........................................................................76
1.7.2 Tài liệu XML.......................................................................................78
1.8 Tập tin chứa độ tương quan giữa câu hỏi và các tài liệu...........................79
1.8.1 Cấu trúc DTD / XSD...........................................................................79

1.8.2 Tài liệu XML.......................................................................................80
2. Chi tiết các lớp đối tượng................................................................................81
2.1 Các lớp trong quá trình tách từ..................................................................81
2.1.1 Sơ đồ các lớp......................................................................................81
2.1.2 Lớp tách từ ghép..................................................................................82
2.1.3 Lớp tách từ..........................................................................................85
2.1.4 Lớp giao diện tách từ...........................................................................87
2.2 Các lớp trong quá trình lập chỉ mục..........................................................89
Nguyễn Thị Thanh Hà - 0112215 6 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
2.2.1 Sơ đồ các lớp.......................................................................................89
2.2.2 Lớp lập chỉ mục...................................................................................90
2.2.3 Lớp giao diện tạo mới chỉ mục...........................................................93
2.2.4 Lớp giao diện cập nhật chỉ mục..........................................................95
2.3 Các lớp trong quá trình tìm kiếm..............................................................97
2.3.1 Sơ đồ các lớp.......................................................................................97
2.3.2 Lớp tìm kiếm.......................................................................................97
2.3.3 Lớp giao diện tìm kiếm.....................................................................103
3. Một số màn hình giao diện khác....................................................................108
3.1 Màn hình chính của chương trình...........................................................108
3.2 Màn hình tìm kiếm nhiều câu hỏi...........................................................109
3.3 Màn hình tìm kiếm chính ( giao diện Web)............................................111
3.4 Màn hình trả về các tài liệu tìm được ( giao diện Web)..........................112
3.5 Màn hình chi tiết của một tài liệu ( giao diện Web)................................113
Phần 3 : TỔNG KẾT.........................................................................................114
1. Chương trình thử nghiệm...............................................................................114
2. Đánh giá kết quả đạt được.............................................................................114
3. Hướng phát triển............................................................................................115
TÀI LIỆU THAM KHẢO................................................................................116
1. Sách................................................................................................................116

2. Luận văn........................................................................................................116
3. Website..........................................................................................................116
DANH SÁCH CÁC BẢNG
Bảng 1-1 So sánh IRS với các hệ thống thông tin khác......................................17
Bảng 4-2 Cách tập tin nghịch đảo lưu trữ...........................................................46
Bảng 4-3 Cách tập tin trực tiếp lưu trữ .............................................................46
Bảng 4-4 Thêm một tài liệu mới vào tập tin nghịch đảo....................................47
Bảng 5-5 Danh sách các Actor.............................................................................49
Bảng 5-6 Danh sách các UseCase.........................................................................49
DANH SÁCH CÁC HÌNH VẼ
Hình 1-1 Môi trường của hệ tìm kiếm thông tin.................................................13
Nguyễn Thị Thanh Hà - 0112215 7 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
Hình 1-2 Tổng quan về chức năng của một hệ tìm kiếm thông tin....................14
Hình 2-3 Hệ tìm kiếm thông tin tiêu biểu............................................................18
Hình 3-4 Quá trình học ......................................................................................34
Hình 3-5 Giai đoạn xác định từ cho tài liệu mới.................................................35
Hình 4-6 Các từ được sắp theo thứ tự.................................................................38
Hình 4-7 Quá trình chọn từ làm chỉ mục............................................................44
Hình 5-8 Sơ đồ Use-case của hệ thống.................................................................48
Hình 5-9 Sơ đồ các lớp thể hiện............................................................................50
Hình 5-10 Sơ đồ các lớp xử lý...............................................................................51
Hình 5-11 Sơ đồ Use-case tách từ.........................................................................52
Hình 5-12 Sơ đồ tuần tự tách từ...........................................................................52
Hình 5-13 Sơ đồ cộng tác tách từ.........................................................................53
Hình 5-14 Sơ đồ lớp tách từ..................................................................................53
Hình 5-15 Sơ đồ use-case lập chỉ mục..................................................................54
Hình 5-16 Sơ đồ tuần tự tạo mới chỉ mục............................................................55
Hình 5-17 Sơ đồ tuần tự cập nhật chỉ mục.........................................................56
Hình 5-18 Sơ đồ cộng tác tạo mới chỉ mục..........................................................57

Hình 5-19 Sơ đồ cộng tác cập nhật chỉ mục........................................................58
Hình 5-20 Sơ đồ lớp lập chỉ mục..........................................................................59
Hình 5-21 Sơ đồ use-case tìm kiếm......................................................................59
Hình 5-22 Sơ đồ tuần tự tìm kiếm........................................................................60
Hình 5-23 Sơ đồ cộng tác tìm kiếm......................................................................61
Hình 5-24 Sơ đồ lớp tìm kiếm..............................................................................62
Hình 6-25 Sơ đồ lớp tách từ..................................................................................82
Nguyễn Thị Thanh Hà - 0112215 8 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
Hình 6-26 Lớp tách từ ghép.................................................................................82
Hình 6-27 Lớp tách từ...........................................................................................85
Hình 6-28 Lớp giao diện tách từ..........................................................................87
Hình 6-29 Màn hình tách từ.................................................................................88
Hình 6-30 Màn hình chi tiết tách từ.....................................................................89
Hình 6-31 Sơ đồ lớp lập chỉ mục..........................................................................90
Hình 6-32 Lớp lập chỉ mục...................................................................................91
Hình 6-33 Lớp giao diện tạo mới chỉ mục...........................................................93
Hình 6-34 Màn hình tạo mới chỉ mục..................................................................94
Hình 6-35 Lớp Màn hình cập nhật chỉ mục........................................................95
Hình 6-36 Màn hình cập nhật chỉ mục................................................................96
Hình 6-37 Sơ đồ lớp tìm kiếm..............................................................................97
Hình 6-38 Lớp xử lý tìm kiếm..............................................................................98
Hình 6-39 Lớp giao diện tìm kiếm.....................................................................104
Hình 6-40 Màn hình tìm kiếm............................................................................105
Hình 6-41 Xem từ khóa câu hỏi.........................................................................105
Hình 6-42 Xem từ khóa tài liệu..........................................................................106
Hình 6-43 Màn hình chính.................................................................................108
Hình 6-44 Màn hình tìm kiếm nhiều câu hỏi....................................................109
Hình 6-45 Giao diện tìm kiếm trên Web...........................................................111
Hình 6-46 Giao diện các tài liệu trả về sau khi tìm kiếm.................................112

Hình 6-47 Giao diện chi tiết nội dung của tài liệu.............................................113
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Nguyễn Thị Thanh Hà - 0112215 9 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
MỞ ĐẦU
Trong thời đại bùng nổ thông tin như hiện nay, thông tin được lưu trữ trên
máy tính ngày càng nhiều do đó việc tìm kiếm thông tin chính xác là nhu cầu thiết
yếu đối với mọi người trong mọi lĩnh vực. Internet hiện nay đă trở thành một kho tư
liệu khổng lồ mà việc tìm kiếm thông tin trên kho tư liệu này cần phải được hỗ trợ
bởi các công cụ tìm kiếm (search engine) tốt. Các hệ thống tìm kiếm thông tin thông
dụng như Google, Yahoo Search đã đáp ứng được phần nào nhu cầu đó của mọi
người. Tuy nhiên, các hệ thống này được xây dựng để xử lý và tìm kíếm các văn bản
tiếng Châu Âu, chúng chưa thật sự phù hợp cho các văn bản tiếng Việt. Do đó nhu
cầu phải có một công cụ tìm kiếm “hiểu” và xử lý tốt các văn bản tíếng Việt.
Các hệ tìm kiếm thông tin đều phải thực hiện giai đoạn lập chỉ mục (indexing)
cho văn bản để trích các từ chỉ mục (index term) biểu diễn tốt nhất nội dung của văn
bản. Giai đoạn này phụ thuộc vào ngôn ngữ của văn bản và phương pháp xử lý tự
động ngôn ngữ đó. Hiện nay chưa có nhiều hệ thống tìm kiếm thông tin trên kho tài
liệu tiếng Việt có khai thác các đặc trưng của tiếng Việt cho việc lập chỉ mục.
Vì vậy mục tiêu của luận văn này nhằm xây dựng một hệ thống tìm kiếm
thông tin bằng tiếng Việt có sử dụng các kết quả của xử lý ngôn ngữ tự nhiên tự động
để xác định được các chỉ mục là các từ (word) hay từ ghép (compound word) của
tiếng Việt.
Nguyễn Thị Thanh Hà - 0112215 10 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
Phần 1 : TÌM HIỂU LÝ THUYẾT
Chương 1: TỔNG QUAN VỀ TÌM KIẾM THÔNG TIN

1. Giới thiệu về tìm kiếm thông tin
1.1 Khái niệm về tìm kiếm thông tin
Tìm kiếm thông tin là tìm kiếm trong một tập tài liệu để lấy ra các thông tin mà
người tìm kiếm quan tâm.
1.2 Một số vấn đề trong việc tìm kiếm thông tin:
Kể từ những năm 40, các vấn đề trong việc lưu trữ thông tin và tìm kiếm thông
tin đã thu hút sự chú ý rất lớn. Với một lượng thông tin khổng lồ thì việc tìm kiếm chính
xác và nhanh chóng càng trở nên khó khăn hơn. Với sự ra đời của máy tính, rất nhiều ý
tưởng lớn được đưa ra nhằm cung cấp một hệ thống tìm kiếm thông minh và chính xác.
Tuy nhiên, vấn đề tìm kiếm sao cho hiệu quả vẫn chưa được giải quyết.
Về nguyên tắc, việc lưu trữ thông tin và tìm kiếm thông tin thì đơn giản. Giả sử
có một kho chứa các tài liệu và một người muốn tìm các tài liệu liên quan đến yêu cầu
của mình. Người đó có thể đọc tất cả các tài liệu trong kho, giữ lại các tài liệu liên quan
và bỏ đi các tài liệu không liên quan. Rõ ràng giải pháp này không thực tế bởi vì tốn rất
nhiều thời gian.
Với sự ra đời của máy vi tính tốc độ cao, máy tính có thể “đọc” thay cho con
người để trích ra các tài liệu có liên quan trong toàn bộ tập dữ liệu. Tuy nhiên vấn đề lúc
Nguyễn Thị Thanh Hà - 0112215 11 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
này là làm sao để xác định được tài liệu nào liên quan đến câu hỏi. Mục đích của một hệ
thống tìm kiếm thông tin tự động là truy lục được tất cả các tài liệu có liên quan đến yêu
cầu.
2. Hệ tìm kiếm thông tin – IRS
Sau đây là định nghĩa về hệ thống tìm kiếm thông tin của một số tác giả: [2.1]
Salton (1989):
“Hệ thống tìm kiếm thông tin xử lý các tập tin lưu trữ và những yêu cầu về thông
tin, xác định và tìm từ các tập tin những thông tin phù hợp với những yêu cầu về thông
tin. Việc truy tìm những thông tin đặc thù phụ thuộc vào sự tương tự giữa các thông tin
được lưu trữ và các yêu cầu, được đánh giá bằng cách so sánh các giá trị của các thuộc
tính đối với thông tin được lưu trữ và các yêu cầu về thông tin.”

Kowalski (1997) :
“Hệ thống truy tìm thông tin là một hệ thống có khả năng lưu trữ, truy tìm và duy
trì thông tin. Thông tin trong những trường hợp này có thể bao gồm văn bản, hình ảnh,
âm thanh, video và những đối tượng đa phương tiện khác.”
Hiểu đơn giản hệ thống tìm kiếm thông tin là một hệ thống hỗ trợ cho người
sử dụng tìm kiếm thông tin một cách nhanh chóng và dễ dàng. Người sử dụng có
thể đưa vào những câu hỏi, những yêu cầu (dạng ngôn ngữ tự nhiên) và hệ thống sẽ tìm
kiếm trong tập các tài liệu (dạng ngôn ngữ tự nhiên) đã được lưu trữ để tìm ra những tài
liệu có liên quan, sau đó sẽ sắp xếp các tài liệu theo mức độ liên quan giảm dần và trả về
cho người sử dụng.
Nguyễn Thị Thanh Hà - 0112215 12 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
3. Các thành phần của một hệ tìm kiếm thông tin [1.1]
Gồm: tập các tài liệu (DOCS) đã được lưu trữ trong kho dữ liệu, tập các yêu cầu
(REQS) của người dùng, và một số phương pháp tính độ tương quan (SIMILAR) để xác
định các tài liệu đáp ứng cho các yêu cầu.
Hình 1-1 Môi trường của hệ tìm kiếm thông tin
Theo lý thuyết thì mối liên hệ giữa các câu hỏi và các tài liệu có thể so sánh một
cách trực tiếp. Nhưng trên thực tế thì điều này không thể được vì các câu hỏi và các tập
tài liệu đều ở dạng văn bản, chỉ có con người đọc vào thì thấy ngay được mối liên hệ
giữa chúng, nhưng ở đây chỉ là một hệ thống máy móc không thể suy luận như con
người được. Chính vì thế để xác định được mối liên hệ giữa các câu hỏi và các tập tài
liệu phải qua một bước trung gian.
Nguyễn Thị Thanh Hà - 0112215 13 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
Hình 1-2 Tổng quan về chức năng của một hệ tìm kiếm thông tin
Trước hết chuyển đổi các câu hỏi thành các từ riêng biệt đủ để biểu hiện cho nội
dung của câu hỏi gọi là ngôn ngữ chỉ mục (Indexing language - LANG). Tách từ trong
các tập tài liệu và lập chỉ mục cho tài liệu. Lúc này có thể so sánh trực tiếp giữa các từ
của câu hỏi và các từ chỉ mục của tập tài liệu. Và từ đó ta sẽ dễ dàng hơn để xác định độ

tương quan giữa các câu hỏi và tập tài liệu.
4. So sánh IRS với các hệ thống thông tin khác
Hệ thống tìm kiếm thông tin cũng tương tự như nhiều hệ thống xử lý 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).
Nguyễn Thị Thanh Hà - 0112215 14 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
4.1 Hệ quản trị cơ sở dữ liệu (DBMS)
Bất cứ hệ thống thông tin tự động nào cũng dựa trên một tập các mục được lưu
trữ (gọi là cơ sở dữ liệu) cần thiết cho việc truy cập. Do đó hệ quản trị cơ sở dữ liệu đơ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 lưu trữ 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, và 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à khoá chính. Các
bảng có mối liên hệ với nhau thông qua các khoá 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
CSDL trong DBMS 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 : Access, SQL Server, Oracle.
4.2 Hệ quản lý thông tin (IMS)
Hệ quản lý thông tin là hệ quản trị cơ sở dữ liệu nhưng có thêm nhiều chức nhưng
về việc quản lý. Những chức năng quản lý 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 nó là hệ quản lý thông tin.
4.3 Hệ hỗ trợ ra quyết định (DSS)
Hệ hỗ trợ ra quyết định 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 vào tập các luật để đưa ra
những quyết định thay cho con người.

Nguyễn Thị Thanh Hà - 0112215 15 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
Hệ thống này đang được áp dụng nhiều cho công việc nhận dạng và chuẩn đoán
bệnh.
4.4 Hệ trả lời câu hỏi (QAS)
Hệ trả lời câu hỏi 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 các 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 hệ trả lời câu hỏi 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, hệ trả lời câu hỏi chỉ còn đ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.
4.5 So sánh IRS với các hệ thống thông tin khác
IRS DBMS QAS MIS
Tìm kiếm Nội dung
trong các tài
liệu.
Các phần tử
có kiểu dữ
liệu đã được
Các sự kiện rõ
ràng.
Giống DBMS
nhưng hỗ trợ
thêm những
Nguyễn Thị Thanh Hà - 0112215 16 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
định nghĩa.

thủ tục( Tính
tổng, tính
trung bình,
phép chiếu…)
Lưu trữ
Các văn bản
ngôn ngữ tự
nhiên.
Các phần tử
dữ liệu ở dạng
bảng.
Các sự kiện rõ
ràng và các
kiến thức tổng
quát.
Xử lý
Các câu truy
vấn không
chính xác.
Các câu truy
vấn có cấu
trúc.
Các câu truy
vấn không
giới hạn.
Bảng 1-1 So sánh IRS với các hệ thống thông tin khác
Chương 2: XÂY DỰNG MỘT HỆ THỐNG TÌM KIẾM
THÔNG TIN
1. Kiến trúc của hệ tìm kiếm thông tin. [1.3]
Một hệ thống thông tin tiêu biểu như sau:

Nguyễn Thị Thanh Hà - 0112215 17 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
Hình 2-3 Hệ tìm kiếm thông tin tiêu biểu
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ề.
(1) 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.
(2) 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ừ thể hiện
được nội dung của văn bản.
(3) 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
Nguyễn Thị Thanh Hà - 0112215 18 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
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 hỏi. 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.
2. Một số mô hình để xây dựng một hệ tìm kiếm thông tin [1.2]
Mục tiêu của các hệ thống tìm kiếm thông tin là trả về các tài liệu càng liên quan
đến câu hỏi càng tốt. Vì thế người ta đã đưa ra rất nhiều mô hình tìm kiếm nhằm tính
toán một cách chính xác độ tương quan này. Sau đây là một số mô hình tìm kiếm cơ bản:
2.1 Mô hình không gian vector
Mô hình không gian vector tính toán độ tương quan giữa câu hỏi và tài liệu bằng
cách định nghĩa một vector biễu diễn cho mỗi tài liệu, và một vector biểu diễn cho câu
hỏi [ Salton, 1875]. Mô hình dựa trên ý tưởng chính là ý nghĩa của một tài liệu thì phụ
thuộc vào các từ được sử dụng bên trong nó. Vector tài liệu và vector câu hỏi sau đó sẽ
được tính toán để xác định độ tương quan giữa chúng. Độ tương quan càng lớn chứng tỏ
tài liệu đó càng liên quan đến câu hỏi.
Giả sử một tập tài liệu chỉ gồm có hai từ là t
1

và t
2
. Vector xây dựng được sẽ gồm
có 2 thành phần: thành phần thứ nhất biểu diễn sự xuất hiện của t
1
, và thành phần thứ hai
biểu diễn cho sự xuất hiện của t
2
. Cách đơn giản nhất để xây dựng vector là đánh 1 vào
thành phần tương ứng nếu từ đó xuất hiện, và đánh 0 nếu từ đó không xuất hiện. Giả sử
tài liệu chỉ gồm có 2 từ t
1
. Ta biểu diễn cho tài liệu này bởi vector nhị phân như sau:
<1,0> Tuy nhiên, biểu diễn như vậy không cho thấy được tần số xuất hiện của mỗi từ
trong tài liệu. Trong trường hợp này, vector nên được biễu diễn như sau: <2,0>
Đối với một câu hỏi đã cho, thay vì chỉ căn cứ so sánh các từ trong tài liệu với
tập các từ trong câu hỏi, ta nên xem xét đến tầm quan trọng của mỗi từ. Ý tưởng chính là
một từ xuất hiện tập trung trong một số tài liệu thì có trọng số cao hơn so với một từ
Nguyễn Thị Thanh Hà - 0112215 19 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
phân bố trong nhiều tài liệu. Trọng số được tính dựa trên tần số tài liệu nghịch đảo
(Inverse Document Frequency) liên quan đến các từ được cho:
n: số từ phân biệt trong tập tài liệu
tf
ij
: số lần xuất hiện của từ t
j
trong tài liệu D
i
(tần số)

df
j
: số tài liệu có chứa từ t
j

idf
j
=
10
log
j
d
df
trong đó d là tổng số tài liệu
Vector được xây dựng cho mỗi tài liệu gồm có n thành phần, mỗi thành phần là
giá trị trọng số đã được tính toán cho mỗi từ trong tập tài liệu. Các từ trong tài liệu được
gán trọng số tự động dựa vào tần số xuất hiện của chúng trong tập tài liệu và sự xuất
hiện của mỗi từ trong một tài liệu riêng biệt. Trọng số của một từ tăng nếu từ đó xuất
hiện thường xuyên trong một tài liệu và giảm nếu từ đó xuất hiện thường xuyên trong tất
cả các tài liệu. Để tính trọng số của từ thứ t
j
trong tài liệu D
i
, dựa vào công thức:
d
ij
= tf
ij
* idf
j

d
ij
: là trọng số của từ t
j
trong tài liệu D
i
Đối với hệ thống tìm kiếm thông tin theo mô hình vector, mỗi tài liệu là một
vector có dạng : D
i
(d
i1
, d
i2
, …, d
in
) . Tương tự, câu truy vấn Q cũng là một vector có
dạng : Q(w
q1
, w
q2
, …, w
qn
)
w
qj
: là trọng số của từ t
j
trong câu truy vấn Q.
Độ tương quan (SC: similarity coeficient) giữa câu truy vấn Q và tài liệu D
i

được
tính như sau:
Nguyễn Thị Thanh Hà - 0112215 20 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
SC(Q,D
i
) =
ij
1
w *
n
qj
j
d
=

2.2 Tìm kiếm Boolean
Mô hình tìm kiếm Boolean khá đơn giản. Câu hỏi đưa vào phải ở dạng biểu thức
Boolean. Nghĩa là phải thỏa:
 Ngữ nghĩa rõ ràng
 Hình thức ngắn gọn
Do các từ hoặc xuất hiện hoặc là không xuất hiện, nên trọng số w
ij
ε {0,1}
Giả sử đưa vào một câu hỏi dạng biểu thức Boolean như sau: t
1
and t
2
. Sau khi tìm kiếm
ta xác định được các tài liệu liên quan đến t

1
là { d
1
, d
3
, d
5
} và các tài liệu liên quan đến
t
2
là {d
3
, d
5
, d
7
}. Như vậy với phép and, các tài liệu thỏa yêu cầu của người dùng là {d
3
,
d
5
}. Phương pháp này có một số khuyết điểm như sau:
 Các tài liệu trả về không được sắp xếp (ranking)
 Câu hỏi tìm kiếm đòi hỏi phải đúng định dạng của biểu thức Boolean gây
khó khăn cho người dùng
 Kết quả trả về có thể là quá ít hoặc quá nhiều tài liệu
2.3 Tìm kiếm Boolean mở rộng
Mô hình tìm kiếm Boolean không hỗ trợ việc sắp xếp kết quả trả về bởi vì các tài
liệu hoặc thỏa hoặc không thỏa yêu cầu Boolean. Tất cả các tài liệu thỏa mãn đều được
trả về, nhưng không có sự ước lượng nào được tính toán cho sự liên quan của chúng đối

với câu hỏi.
Nguyễn Thị Thanh Hà - 0112215 21 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
Mô hình tìm kiếm Boolean mở rộng ra đời nhằm hỗ trợ việc sắp xếp (ranking) kết
quả trả về dựa trên ý tưởng cơ bản là đánh trọng số cho mỗi từ trong câu hỏi và trong tài
liệu. Giả sử một câu hỏi yêu cầu (t
1
OR t
2
) và một tài liệu D có chứa t
1
với trọng số w
1

t
2
với trọng số w
2
. Nếu w
1
và w
2
đều bằng 1 thì tài liệu nào có chứa cả hai từ này sẽ có
thứ tự sắp xếp cao nhất. Tài liệu nào không chứa một trong hai từ này sẽ có thứ tự sắp
xếp thấp nhất. Ý tưởng đơn giản là tính khoảng cách Eclide từ điểm (w
1
, w
2
) tới gốc:
SC(Q,D

i
) =
2 2
1 2
(w ) (w )+
Với trọng số 0.5 và 0.5, SC(Q,D
i
) =
2 2
(0.5) (0.5)+
=0.707
SC cao nhất nếu w
1
và w
2
đều bằng 1. Khi đó:
SC(Q,D
i
) =
2
= 1.414
Để đưa SC vào khoảng [0,1], SC được tính như sau:
SC( Q
t1 v t2
, d
i
) =
2 2
1 2
(w ) (w )

2
+
Công thức này giả sử là câu hỏi chỉ có toán tử OR . Đối với toán tử AND, thay vì
tính khoảng cách tới gốc, ta sẽ tính khoảng cách đến điểm (1,1). Câu hỏi nào càng gần
đến điểm (1,1) thì nó càng thoả yêu cầu của toán tử AND:
SC(Q
t1 ^ t2
, d
i
) = 1-
2 2
1 2
(1-w ) (1 w )
2
+ −
2.4 Mở rộng trong việc thêm vào trọng số của câu hỏi
Nếu câu hỏi có trọng số là q
1
và q
2
thì độ tương quan sẽ được tính như sau:
Nguyễn Thị Thanh Hà - 0112215 22 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
SC(Q
q1 v q2
, d
i
) =
2 2 2 2
1 1 2 2

2 2
1 2
q w q w
q q
+
+
SC(Q
q1 ^ q2
, d
i
) = 1- (
2 2 2 2
1 1 2 2
2 2
1 2
q (1-w ) (1 )q w
q q
+ −
+
)
2.4.1 Mở rộng cho số từ tuỳ ý
Để tính khoảng cách Euclide trong không gian đa chiều, tham số p được sử dụng.
Tham số p chỉ sự biến đổi tầm quan trọng của trọng số trong việc đánh giá độ thích hợp.
Độ tương quan SC tổng quát như sau:
SC(D, Q
( q i v q j )
) =
1
p p p p
p

i i j j
p p
i j
q w
q q
q w
 
+
 
+
 
 
SC(D, Q
( q i ^ q j )
) = 1 -
1
p p p p
p
i i j j
p p
i j
q (1-w ) q (1 w )
q q
 
+ −
 
+
 
 
Nếu p

→ ∞
: chuyển về hệ thống Boolean thông thường (không có trọng số)
Nếu p = 1 : chuyển về hệ thống không gian vector
2.4.2 Thêm toán tử tự động
Các chiến lược tìm kiếm không đòi hỏi người dùng nhận biết các toán tử phức
tạp. Trọng số có thể được gán tự động và tài liệu được sắp xếp bằng cách chèn toán tử
OR vào giữa các từ. Bất kỳ tài liệu nào có chứa ít nhất một từ trong câu hỏi sẽ được sắp
thứ tự với một số điểm lớn hơn 0.
Nguyễn Thị Thanh Hà - 0112215 23 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
2.5 Mô hình xác suất
Mô hình tìm kiếm xác suất tính toán độ tương quan giữa câu hỏi và tài liệu dựa
vào xác suất mà tài liệu đó liên quan đến câu hỏi. Các lý thuyết về xác suất được áp
dụng để tính toán độ liên quan giữa câu hỏi và tài liệu. Các từ trong câu hỏi được xem là
đầu mối để xác định tài liệu liên quan. Ý tưởng chính là tính xác suất của mỗi từ trong
câu hỏi và sau đó sử dụng chúng để tính xác suất mà tài liệu liên quan đến câu hỏi.
2.6 Đánh giá chung về các mô hình
 Mô hình Boolean được xem là mô hình yếu nhất trong các mô hình bởi vì
như đã trình bày nó còn rất nhiều khuyết điểm.
 Theo kinh nghiệm của Salton và Buckley thì nhìn chung mô hình vector
làm tốt hơn mô hình xác suất.
Luận văn của chúng em sử dụng mô hình không gian vector để xây dựng một
hệ thống tìm kiếm thông tin tiếng Việt.
3. Các bước để xây dựng một hệ tìm kiếm thông tin. [3.2]
3.1 Tách từ tự động cho tập các tài liệu
Đối với tiếng Anh, ta tách từ dựa vào khoảng trắng. Tuy nhiên đối với tiếng Việt,
giai đoạn này tương đối khó khăn. Cấu trúc tiếng Việt rất phức tạp, không chỉ đơn thuần
dựa vào khoảng trắng để tách từ. Hiện nay có rất nhiều công cụ dùng để tách từ tiếng
Việt, mỗi phương pháp có ưu, khuyết điểm riêng. Các phương pháp này sẽ được trình
bày chi tiết hơn ở chương III : Tách từ tự động.

Nguyễn Thị Thanh Hà - 0112215 24 Nguyễn Trung Hiếu - 0112216
Xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục có cấu trúc
3.2 Lập chỉ mục cho tài liệu
Sau khi có được tập các từ đã được trích, ta sẽ chọn các từ để làm từ chỉ mục.
Tuy nhiên, không phải từ nào cũng được chọn làm từ chỉ mục. Các từ có khả năng đại
diện cho tài liệu sẽ được chọn, các từ này được gọi là key word, do đó trước khi lập chỉ
mục sẽ là giai đoạn tiền xử lý đối với các từ trích được để chọn ra các key word thích
hợp. Ta sẽ loại bỏ danh sách các từ ít có khả năng đại diện cho nội dung văn bản dựa vào
danh sách gọi là stop list. Đối với tiếng Anh hay tiếng Việt đều có danh sách stop list.
Chi tiết về quá trình lập chỉ mục sẽ được mô tả ở chương IV: Lập chỉ mục.
3.3 Tìm kiếm
Người dùng nhập câu hỏi và yêu cầu tìm kiếm, câu hỏi mà người dùng nhập vào
cũng sẽ được xử lý, nghĩa là ta sẽ tách từ cho câu hỏi. Phương pháp tách từ cho câu hỏi
cũng nên là phương pháp tách từ cho các tài liệu thu thập được để đảm bảo sự tương
thích. Sau đó, hệ thống sẽ tìm kiếm trong tập tin chỉ mục để xác định các tài liệu liên
quan đến câu hỏi của người dùng.
3.4 Sắp xếp các tài liệu trả về (Ranking)
Các tài liệu sau khi đã xác định là liên quan đến câu hỏi của người dùng sẽ được
sắp xếp lại, bởi vì trong các tài liệu đó có những tài liệu liên quan đến câu hỏi nhiều hơn.
Hệ thống sẽ dựa vào một số phương pháp để xác định tài liệu nào liên quan nhiều nhất,
sắp xếp lại (ranking) và trả về cho người dùng theo thứ tự ưu tiên.
Nguyễn Thị Thanh Hà - 0112215 25 Nguyễn Trung Hiếu - 0112216

×