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

Nghiên cứu phương pháp tìm kiếm tài liệu dựa trên công thức toá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 (3.62 MB, 106 trang )

BỘ THÔNG TIN VÀ TRUYỀN THÔNG
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

CAO XUÂN TUẤN

NGHIÊN CỨU PHƯƠNG PHÁP
TÌM KIẾM TÀI LIỆU DỰA TRÊN CÔNG THỨC TOÁN

LUẬN ÁN TIẾN SĨ KỸ THUẬT

Hà Nội - 2017


BỘ THÔNG TIN VÀ TRUYỀN THÔNG
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

CAO XUÂN TUẤN

NGHIÊN CỨU PHƯƠNG PHÁP
TÌM KIẾM TÀI LIỆU DỰA TRÊN CÔNG THỨC TOÁN
Chuyên ngành :

Hệ thống Thông tin

Mã số:

62.48.01.04

LUẬN ÁN TIẾN SĨ KỸ THUẬT

NGƯỜI HƯỚNG DẪN KHOA HỌC:


1. PGS.TS Võ Trung Hùng
2. TS Nguyễn Mạnh Hùng

Hà Nội – 2017


i

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả nêu trong Luận án là trung thực và chưa từng được ai
công bố trong bất kỳ công trình nào khác.

Tác giả Luận án


ii

LỜI CẢM ƠN

Để hoàn thành được luận án này, đầu tiên, nghiên cứu sinh xin chân thành
cảm ơn sự hướng dẫn khoa học và tận tình giúp đỡ của PGS.TS. Võ Trung Hùng và
TS. Nguyễn Mạnh Hùng. Nghiên cứu sinh trân trọng cảm ơn Ban Giám đốc Học
viện Công nghệ Bưu chính Viễn thông, Hội đồng tiến sĩ, Khoa Quốc tế và Đào tạo
sau đại học đã tạo điều kiện thuận lợi cho nghiên cứu sinh thực hiện và hoàn thành
chương trình nghiên cứu. Xin chân thành cảm ơn Quý thầy, cô đã đọc và góp ý kiến
cho luận án.
Nghiên cứu sinh chân thành cảm ơn Cơ quan Bộ Giáo dục và Đào tạo đã tạo
điều kiện công tác thuận lợi để nghiên cứu sinh tham gia và hoàn thành khóa học

này.
Cuối cùng, nghiên cứu sinh bày tỏ lòng biết ơn đến gia đình, người thân,
những người bạn đã luôn bên cạnh, động viên và ủng hộ nghiên cứu sinh trong suốt
thời gian qua.

Nghiên cứu sinh

Cao Xuân Tuấn


iii

MỤC LỤC

LỜI CẢM ƠN ......................................................................................................... ii
DANH MỤC CÁC TỪ VIẾT TẮT ........................................................................ vi
DANH MỤC HÌNH VẼ ........................................................................................ vii
DANH MỤC BẢNG .............................................................................................. ix
MỞ ĐẦU

........................................................................................................... 1

CHƯƠNG 1. TỔNG QUAN VỀ TÌM KIẾM VĂN BẢN VÀ CÔNG THỨC TOÁN . 8
1.1. Tìm kiếm văn bản ....................................................................................... 8
1.1.1.

Khái niệm văn bản................................................................................ 8

1.1.2.


Hệ thống tìm kiếm văn bản ................................................................... 9

1.2. Tìm kiếm văn bản chứa công thức toán ..................................................... 12
1.2.1.

Đặc thù của tìm kiếm văn bản chứa công thức toán ............................ 12

1.2.2.

Các công cụ soạn thảo văn bản chứa công thức toán ......................... 13

1.2.3.

Biểu diễn văn bản chứa công thức toán .............................................. 17

1.2.4.

Lưu trữ văn bản chứa công thức toán ................................................. 19

1.2.5. Tìm kiếm công thức toán với hệ thống MathWebSearch ............................ 23
1.3. Hướng tiếp cận của luận án ....................................................................... 25
1.4. Kết luận Chương 1 .................................................................................... 29
CHƯƠNG 2. BIỂU DIỄN VÀ LƯU TRỮ CÔNG THỨC TOÁN .......................... 31
2.1. Mô hình biểu diễn và tìm kiếm công thức toán trong văn bản ................... 31
2.2. Biểu diễn và lưu trữ công thức toán với MathML ..................................... 34
2.3. Soạn thảo và hiển thị công thức toán với Amaya ....................................... 38


iv


2.4. Sao chép công thức toán trong Amaya ...................................................... 40
2.5. Chuyển đổi công thức MathML với các định dạng khác............................ 44
2.6. Kết luận Chương 2 .................................................................................... 46
CHƯƠNG 3. TÌM KIẾM TÀI LIỆU DỰA TRÊN CÔNG THỨC TOÁN .............. 48
3.1. Bài toán tìm kiếm tài liệu .......................................................................... 48
3.2. Tìm kiếm tài liệu dựa trên công thức toán ................................................. 50
3.2.1.

Mô hình đề xuất .................................................................................. 50

3.2.2.

Mô-đun lập chỉ mục văn bản .............................................................. 51

3.2.3.

Mô-đun tìm kiếm và hiển thị kết quả ................................................... 54

3.3. Tìm kiếm tài liệu dựa trên Semantic Web .................................................. 61
3.3.1.

Mô tả ứng dụng Semantic Web toán học ............................................. 62

3.3.2.

Mô hình đề xuất .................................................................................. 63

3.4. Kết luận Chương 3 .................................................................................... 67
CHƯƠNG 4. THỬ NGHIỆM VÀ ĐÁNH GIÁ ...................................................... 68
4.1. Chức năng soạn thảo và lưu trữ công thức toán ......................................... 68

4.2. Tìm kiếm trực tiếp công thức toán ............................................................ 70
4.3. Tìm kiếm trên Ontology ............................................................................ 72
4.4. Tìm kiếm văn bản dựa trên công thức toán ............................................... 74
4.4.1.

Phát triển hệ thống thử nghiệm........................................................... 74

4.4.2.

Mô tả chức năng hệ thống .................................................................. 74

4.4.3.

Môi trường cài đặt hệ thống ............................................................... 75

4.4.4.

Chuẩn bị dữ liệu ................................................................................. 76

4.5.

Đánh giá kết quả ................................................................................. 81


v

4.5.1.

Phương pháp đánh giá ....................................................................... 81


4.5.2.

Kết quả thử nghiệm và đánh giá kết quả ............................................. 82

4.6. Kết luận Chương 4 .................................................................................... 86
KẾT LUẬN ......................................................................................................... 87
DANH MỤC CÁC BÀI BÁO ĐÃ CÔNG BỐ....................................................... 90
TÀI LIỆU THAM KHẢO ..................................................................................... 91


vi

DANH MỤC CÁC TỪ VIẾT TẮT

Từ viết tắt

Nghĩa Tiếng Anh

Nghĩa Tiếng Việt

CSS

Cascading Style Sheets

Tập tin định dạng theo tầng

HTML

HyperTeXt Markup Language


Ngôn ngữ đánh dấu siêu văn
bản

MathML

Mathematical Markup Language

Ngôn ngữ đánh dấu toán học

OLE

Object Linking and Embedding

Liên kết và nhúng đối tượng

SVG

Scalable Vector Graphics

Ngôn ngữ đánh dấu miêu tả các
hình ảnh đồ họa véc tơ hai
chiều

W3C

The World Wide Web Consortium

Tiêu chuẩn thiết kế Web

WYSIWYG


What You See Is What You Get

Giao diện tương tác tức thời

XHTML

Extensible

HyperTeXt

Markup Ngôn ngữ đánh dấu siêu văn

Language

bản mở rộng

XML

eXtensible Markup Language

Ngôn ngữ đánh dấu mở rộng

URI

Uniform Resource Identifier

Định danh tài nguyên



vii

DANH MỤC HÌNH VẼ

Hình 1.1. Kiến trúc tổng quan hệ thống lưu trữ và tìm kiếm văn bản ................. 10
Hình 1.2. Nhập công thức bằng bảng chọn ........................................................ 13
Hình 1.3. Hiển thị công thức trên màn hình soạn thảo ....................................... 14
Hình 1.4. Cửa sổ soạn thảo trên TeXworks ........................................................ 14
Hình 1.5. Cửa sổ soạn thảo Microsoft Equation................................................. 15
Hình 1.6. Giao diện phần mềm Mathtype .......................................................... 16
Hình 1.7. Công cụ MyEqText soạn thảo trực tiếp trong cửa sổ Microsoft Word. 16
Hình 1.8. Cấu trúc của hệ thống ( MWS – 0.4) .................................................. 24
Hình 1.9. Kiến trúc hệ thống theo giải pháp 2.................................................... 26
Hình 1.10. Kiến trúc hệ thống theo giải pháp 3.................................................. 29
Hình 2.1. Mô hình biểu diễn công thức toán trong văn bản truyền thống ........... 31
Hình 2.2. Mô hình biểu diễn và lưu trữ công thức toán trong văn bản đề xuất ... 32
Hình 2.3. Minh họa cách trình bày công thức .................................................... 37
Hình 2.4. Cấu trúc thành phần của mã nguồn mở Amaya .................................. 39
Hình 2.5. Sơ đồ quá trình chuyển đổi dữ liệu trong ClipBoard .......................... 40
Hình 2.6. Chương trình thường trú Math Clipboard Converted.......................... 41
Hình 2.7. Thuật toán sao chép công thức qua ClipBoard ................................... 43
Hình 2.8. Mô hình chuyển đổi công thức từ MathML sang TeX ........................ 44
Hình 2.9. Biểu diễn dạng cây của công thức MathML ....................................... 45
Hình 2.10. Biểu diễn dưới dạng cây của đối tượng TeX ..................................... 45
Hình 3.1. Mô hình hệ thống tìm kiếm thông tin ................................................ 49


viii

Hình 3.2. Mô hình tổng quát của quá trình tạo chỉ mục và tìm kiếm .................. 50

Hình 3.3. Mô hình quá trình tạo chỉ mục ........................................................... 52
Hình 3.4. Mô hình quá trình tìm kiếm ............................................................... 55
Hình 3.5. Mô hình hóa hệ thống Semantic Web toán học................................... 63
Hình 4.1. Biểu diễn công thức theo dạng thẻ (tags) ........................................... 69
Hình 4.2. Biểu diễn công thức theo dạng hình cây ............................................. 69
Hình 4.3. Ví dụ về tìm kiếm ký tự a .................................................................. 70
Hình 4.4. Ví dụ tìm kiếm ký hiệu căn bậc 2 ....................................................... 70
Hình 4.5. Tìm và thay thế công thức .................................................................. 71
Hình 4.6. Mô hình xây dựng và khai thác kho dữ liệu ....................................... 72
Hình 4.7. Giao diện tìm kiếm tài liệu với câu truy vấn là văn bản ...................... 73
Hình 4.8. Giao diện tìm kiếm có câu truy cấn là công thức toán ........................ 73
Hình 4.9. Tổ chức dữ liệu trên máy chủ lưu trữ ................................................. 75
Hình 4.10. Chi tiết cơ sở dữ liệu lưu trữ thông tin tài liệu .................................. 79
Hình 4.11. Cửa số tìm kiếm với câu truy vấn là công thức toán ......................... 80
Hình 4.12. Cửa tìm kiếm với câu truy vấn là nội dung văn bản ......................... 80
Hình 4.13. Mối tương quan giữa độ triệu hồi và độ chính xác theo kịch bản 1... 84
Hình 4.14. Mối tương quan giữa độ triệu hồi và độ chính xác theo kịch bản 2... 85


ix

DANH MỤC BẢNG

Bảng 1.1. So sánh các công cụ soạn thảo công thức toán ................................... 17
Bảng 2.1 Một số thẻ đặc trưng của MathML ..................................................... 35
Bảng 2.2. So sánh cách biểu diễn hai ngôn ngữ đánh dấu .................................. 41
Bảng 4.1. Mô tả tài liệu thực nghiệm ................................................................. 76
Bảng 4.2. Bảng phân loại lĩnh vực của tài liệu ................................................... 76
Bảng 4.3. Bảng phân loại định dạng tài liệu ...................................................... 77
Bảng 4.4. Kết quả phân tích tài liệu ................................................................... 78

Bảng 4.5. Thống kê truy vấn ............................................................................. 82
Bảng 4.6. Thống kê độ triệu hồi và độ chính xác theo kịch bản 1 ...................... 83
Bảng 4.7. Thống kê độ triệu hồi và độ chính xác theo kịch bản 2 ...................... 84
Bảng 4.8. Kết quả trung bình của độ triệu hồi và độ chính xác .......................... 85


1

MỞ ĐẦU
1. Lý do chọn đề tài
Trong những năm gần đây, cùng với sự phát triển mạnh mẽ của mạng
Internet và công nghệ Web là sự bùng nổ thông tin số. Số lượng người sử dụng và
lượng thông tin sản sinh ra trên mạng Internet gia tăng rất nhanh và chúng ta có thể
tìm thấy hầu hết thông tin cần thiết khi có nhu cầu. Đặc biệt, lượng thông tin liên
quan đến khoa học, phục vụ học tập, nghiên cứu cũng gia tăng nhanh chóng và
phong phú về lĩnh vực. Vì vậy, việc khai thác hiệu quả các tài liệu nói chung và các
tài liệu khoa học nói riêng trên Internet có ý nghĩa quan trọng trong việc nâng cao
chất lượng học tập và nghiên cứu, góp phần vào sự phát triển khoa học và kinh tế.
Theo số liệu thống kê, trong quá trình học tập và nghiên cứu thì con người đã chi
phí khoảng 90% thời gian cho công tác tìm kiếm, phân tích và tổng hợp các tài liệu
hiện có. Các công cụ tìm kiếm phổ biến hiện nay như Google, Yahoo, Bing… chỉ hỗ
trợ mạnh việc tìm kiếm các dữ liệu dưới dạng văn bản và hình ảnh, việc tìm kiếm
các dữ liệu đặc biệt như công thức toán thì các công cụ này hầu như chưa thực hiện
được.
Hiện nay, đã có nhiều công cụ cho phép soạn thảo và quản lý các công thức
toán, nhưng việc tìm kiếm còn gặp nhiều khó khăn do chưa có chuẩn chung về biễn
diễn và lưu trữ. Để tìm kiếm một tài liệu dựa trên công thức toán, chúng ta cần có
một cơ chế thống nhất để mô tả, lưu trữ và tìm kiếm theo ngữ nghĩa tương ứng với
công thức đó. Hiện đã xuất hiện một số công cụ hỗ trợ việc biểu diễn các công thức
toán trên môi trường Web, tuy nhiên các công cụ này chưa xác định được chuẩn mô

hình và cách biểu diễn chung. Do sự đa dạng về cách biểu diễn công thức toán trong
các tài liệu khoa học, dẫn đến khó khăn trong việc diễn giải công thức cần tìm kiếm
đối với người dùng và so sánh sự tương đồng giữa chúng.
Vì vậy, luận án này tập trung nghiên cứu đề xuất các mô hình phù hợp, phát
triển các bộ công cụ để soạn thảo công thức, soạn thảo chú thích và tìm kiếm công
thức toán và tìm kiếm tài liệu dựa trên công thức toán cũng như các giải pháp lưu


2

trữ, quản lý và khai thác dữ liệu các công thức toán trên các tài liệu, đặc biệt là trên
môi trường Web.
2. Tổng quan tình hình nghiên cứu
Các nghiên cứu liên quan đến các tài liệu chứa công thức toán tập trung vào 3
hướng chính: 1) Các tiêu chuẩn để lưu trữ công thức toán trong các văn bản điện tử;
2) Soạn thảo và hiển thị các công thức toán trên các văn bản; 3) Tìm kiếm công thức
toán. Các nghiên cứu trên chủ yếu được thực hiện bởi các nhà khoa học ở nước ngoài,
ở Việt Nam các nghiên cứu về vấn đề này chưa nhiều và kết quả còn khá khiêm tốn.
a. Tình hình nghiên cứu trên thế giới
Việc nghiên cứu các tiêu chuẩn để có thể lưu trữ và trao đổi các văn bản có
chứa công thức toán đã được các nhà khoa học, các công ty nước ngoài quan tâm từ
rất sớm như: tiêu chuẩn TeX/LaTeX (đề xuất bởi Donald Knuth từ năm 1969 và đến
năm 1991 đã có nhiều phiên bản ra đời và hỗ trợ nhiều ngôn ngữ khác nhau) [27],
[18]; tiêu chuẩn MathML (phát triển và phổ biến rộng rãi bởi W3C - World Wide
Web Consortium) [9].
Bên cạnh các tiêu chuẩn lưu trữ, việc soạn thảo và xử lý các công thức toán
được nhiều nhà khoa học quan tâm. Hàng loạt các giải pháp đã được đề xuất và cho
ra đời các công cụ soạn thảo, xử lý công thức toán như: MathMagic (phát triển bởi
InfoLogic, Inc) [9], GtkMathView (phát triển bởi Luca Padovani, Đại học Torino,
Ý) [39],…

Ngoài ra, việc nghiên cứu các công cụ cho phép có thể lưu trữ, lập chỉ mục,
tìm kiếm dựa trên công thức toán đã và đang được nhiều nhà khoa học, tổ chức đầu
tư nghiên cứu như: WolframAlpha (tự động xử lý và tính toán giá trị các biểu thức
toán học) [26], [39], Symbolab (tìm kiếm tài liệu có chứa công thức toán cho trước)
[10],… Dưới đây là một số công cụ tìm kiếm trên nền tảng Web:
- TeMaSearch ( kết hợp tìm kiếm văn bản và
toán học cho Zentralblatt Math.


3

- ZBLSearch ( một công cụ hướng tìm kiếm
công thức trong 3.3 triệu file đánh giá và tóm tắt trong cơ sở dữ liệu Zentralblatt
Math. Công cụ này cho phép thực hiện truy vấn trong LaTeX mở rộng với các biến
tìm kiếm.
- XLSearch ( một công cụ tìm kiếm cho các
công thức trên bảng tính.
- FlatSearch (:8181/search.html): một công cụ tìm kiếm
theo định dạng.
- SentidoSearch ( một công cụ tìm kiếm
đa định dạng đầu vào cho các truy vấn tìm kiếm dựa trên hệ thống Sentido
( Nó bao gồm một bảng điều khiển,
trình soạn thảo công thức toán và các chức năng hỗ trợ tìm kiếm.
b. Tình hình nghiên cứu ở trong nước
Cho đến nay, đã có một số nghiên cứu nhằm đưa tiếng Việt vào TeX và một
sản phẩm tiêu biểu cho hướng này là VnTeX. VnTeX hỗ trợ tiếng Việt cho LaTeX
và TeX thuần thông qua các gói macro và phông chữ. VnTeX thường được đóng gói
kèm trong các bản phân phối TeX như teTeX, TeXLive... [11]. Ngoài ra, một cách
soạn thảo công thức toán và tiếng Việt trong TeX có thể được vẽ bằng các lệnh của
TeX. Hiện đã có một số nghiên cứu liên quan đến xử lý văn bản tiếng Việt nhưng

không nhiều và chưa chú trọng đến xử lý các công thức toán trên văn bản [1], [3].
Một số công cụ khác đang được nghiên cứu và phát triển hiện nay theo dự án
MATHIS. Đây là dự án hợp tác nghiên cứu giữa Nhóm nghiên cứu KEWI của Đại
học Nice – Sophia Antipolis (Cộng hòa Pháp) và Trung tâm DATIC của Trường Đại
học Bách khoa – Đại học Đà Nẵng. Dự án này tập trung nghiên cứu trên 3 nội dung
chính gồm: 1) Bộ soạn thảo công thức Mathis: một trình soạn thảo công thức toán
để tạo ra và xuất bản các công thức toán trực tuyến, được gọi là “eFormula" được
phát triển trên cơ sở của OpenMath/MathML, kết hợp với phong cách trình bày theo
kiểu Web. Các mẫu công thức này được gắn kèm chú thích nhằm mô tả ngữ nghĩa


4

liên quan đến lĩnh vực toán học. 2) Bộ tạo chú thích Mathis: tạo ra một chú thích
đính kèm công thức hoặc tài liệu khoa học. Công cụ này cho phép chúng ta tạo các
đối tượng gọi là "eNote", nó sẽ được lưu trữ trên máy tính cục bộ hoặc trên một
máy chủ chia sẻ. Một eNote có thể được tạo ra từ một bộ soạn thảo eNoter. 3) Bộ
tìm kiếm Mathis: Một công cụ tìm kiếm khai thác ngữ nghĩa của eNote được lưu trữ
cục bộ hoặc trên một máy chủ, một cơ chế suy luận cụ thể để cung cấp câu trả lời
cho người dùng. Việc tích hợp bộ tìm kiếm Mathis vào các công cụ tìm kiếm trên
thị trường như Google, Yahoo,... có thể sẽ được xem xét đến trong quá trình phát
triển [2]. Tuy nhiên, dự án này chỉ mới khởi đầu và chưa có các kết quả nghiên cứu
cụ thể được công bố rộng rãi.
3. Mục tiêu nghiên cứu
Mục tiêu tổng quát của đề tài là đề xuất được một mô hình hệ thống cho
phép biểu diễn, lưu trữ công thức toán và tìm kiếm tài liệu dựa trên công thức toán
với nhiều nền tảng hệ thống khác nhau: máy đơn, mạng nội bộ, trên Internet.
Mục tiêu cụ thể như sau:
(1) Đề xuất một không gian biểu diễn và lưu trữ công thức toán theo một cách
thống nhất và có thể chuyển đổi dễ dàng từ nhiều nguồn, nhiều công cụ soạn thảo và

lưu trữ khác nhau.
(2) Trên cơ sở mô hình thống nhất cách biểu diễn và lưu trữ đó, luận án đề
xuất phát triển một công cụ cho phép soạn thảo, tìm kiếm công thức toán một cách
thuận lợi trong các văn bản.
(3) Đề xuất các giải pháp để tìm kiếm các tài liệu dựa trên công thức toán trên
môi trường Internet với cả các Web thường và Semantic Web (Web ngữ nghĩa).
4. Đối tượng và phạm vi nghiên cứu
Luận án này thực hiện một số nội dung trong dự án Mathis và tập trung đi
sâu nghiên cứu và đưa ra mô hình để biểu diễn các công thức toán, xây dựng bộ chú


5

thích, thiết lập cơ chế và xây dựng công cụ tìm kiếm, cơ chế lưu trữ, quản lý và khai
thác dữ liệu.
a. Đối tượng
Đối tượng nghiên cứu của đề tài bao gồm: Các phương pháp biểu diễn các
công thức toán trong các tài liệu được lưu trữ dưới dạng các văn bản như HTML,
XML,…; Các giải pháp mô hình hóa công thức toán, từ đó xây dựng mô hình chung
cho phép biểu diễn công thức toán; Các kỹ thuật bóc tách và tổng hợp thông tin từ
trang Web; Các mô hình và phương pháp tìm kiếm; Các vấn đề liên quan đến
Semantic Web.
b. Phạm vi nghiên cứu
- Giới hạn nghiên cứu việc mô hình hóa cách biểu diễn các công thức toán
phục vụ chuyển đổi, tìm kiếm dựa trên công thức toán trên một số tiêu chuẩn phổ
biến như TeX, LaTeX, AMS-LaTeX, HTML và MathML;
- Nghiên cứu ngôn ngữ đặc tả cho phép người sử dụng tìm kiếm công thức
toán một cách dễ dàng;
- Nghiên cứu xây dựng một Web ngữ nghĩa cho các tài liệu toán học.
5. Nội dung nghiên cứu

Nội dung chính của luận án tập trung nghiên cứu việc mô hình hóa cách biểu
diễn các công thức toán áp dụng cho bài toán tìm kiếm trong các tài liệu dưới dạng
các tài liệu điện tử.
Các nội dung nghiên cứu bao gồm:
- Nghiên cứu tổng quan về việc biểu diễn, các tiêu chuẩn lưu trữ, các công cụ
soạn thảo và tìm kiếm tài liệu dựa trên công thức toán;
- Định nghĩa một mô hình chính thức cho eFormula (công thức toán trực
tuyến) dựa chủ yếu vào OpenMath và MathML;


6

- Nghiên cứu về một mô hình tổng quát để mô tả mối quan hệ giữa một đối
tượng toán học eFormula và khái niệm toán học trong một ontology được xây dựng
trong ngôn ngữ OWL (Web Ontology Language). Mô hình này dẫn đến một cơ chế
biểu diễn và lý luận lai (hybrid logic) để biên soạn hai loại ngữ nghĩa: ngữ nghĩa của
lĩnh vực toán học và ngữ nghĩa của công thức;
- Cuối cùng, tiến hành các nghiên cứu về khả năng tích hợp và vai trò của việc
lưu trữ và tìm kiếm tài liệu dựa trên công thức toán trong các ứng dụng khác.
6. Phương pháp nghiên cứu
Phương pháp tài liệu: Nghiên cứu các tài liệu có liên quan đến các nội dung
nghiên cứu như: mô hình hóa biểu diễn, tách lọc dữ liệu, khai phá dữ liệu, Ontology,
các giải pháp về tìm kiếm dữ liệu...
Phương pháp thực nghiệm: Nghiên cứu đánh giá thực nghiệm từng mô hình
biểu diễn công thức toán, từ đó so sánh, đánh giá với mô hình chuẩn được nghiên cứu
từ nội dung của đề tài. Thực nghiệm một số hệ thống tìm kiếm. Xây dựng và đánh giá
mô hình chuẩn về biểu diễn công thức toán, đánh giá công cụ tìm kiếm đã xây dựng.
Phương pháp đối sánh: Tìm kiếm trên tập dữ liệu xây dựng sẵn với nhiều
cách biểu diễn công thức toán khác nhau. Đánh giá độ chính xác và xác suất tìm
kiếm.

Phương pháp chuyên gia: Lấy ý kiến các chuyên gia về các giải pháp đề xuất
và khảo sát ý kiến của người sử dụng.
7. Bố cục của luận án
Nội dung chính của luận án được trình bày trong 4 chương:
Chương 1: Tổng quan về tìm kiếm văn bản và công thức toán
Chương này trình bày các kết quả nghiên cứu tổng quan liên quan đến văn
bản và tìm kiếm văn bản; lưu trữ và tìm kiếm văn bản chứa công thức toán; các giải


7

pháp trong tìm kiếm và phân loại, đánh giá các vấn đề còn tồn tại để làm cơ sở cho
những nghiên cứu trình bày trong các chương tiếp theo.
Chương 2: Biểu diễn và lưu trữ công thức toán
Chương này đề xuất mô hình thống nhất cách biểu diễn và lưu trữ công thức
toán trong văn bản. Trong đó, các công thức được lưu trữ và xử lý dựa trên tiêu
chuẩn định dạng MathML và giải pháp chuyển đổi các văn bản có chứa công thức
toán giữa các công cụ soạn thảo khác nhau.
Chương 3: Tìm kiếm tài liệu dựa trên công thức toán
Chương này trình bày các giải pháp đề xuất phục vụ việc tìm kiếm tài liệu
dựa trên công thức toán. Các đề xuất này dựa trên một số hướng tiếp cận khác nhau
cho cả việc tìm kiếm trên các Web thông thường và Semantic Web.
Chương 4: Thử nghiệm và đánh giá
Chương này trình bày tóm tắt qui trình xây dựng các ứng dụng thử nghiệm
và đánh giá các mô hình đã đề xuất ở chương 2 và 3. Bao gồm thử nghiệm một hệ
thống cho phép soạn thảo, biểu diễn, lưu trữ và tìm kiếm tài liệu dựa trên công thức
toán, tìm kiếm trên các Web thường và tìm kiếm trên Sematic Web.


8


CHƯƠNG 1.

TỔNG QUAN VỀ TÌM KIẾM VĂN BẢN
VÀ CÔNG THỨC TOÁN

Chương này trình bày một số kết quả nghiên cứu tổng quan liên quan đến đề
tài gồm:
Văn bản và hệ thống tìm kiếm văn bản.
Các vấn đề đối với lưu trữ và tìm kiếm tài liệu chứa công thức toán.
Định hướng nghiên cứu của luận án.
1.1.

Tìm kiếm văn bản

1.1.1. Khái niệm văn bản
Theo nghĩa rộng, văn bản là vật mang tin (các vật liệu dùng để viết như:
xương thú vật, đồng, đá, gỗ, da, tre, giấy,…) được ghi bằng ký hiệu ngôn ngữ nhất
định như tiếng Anh, Pháp, Việt,... Theo định nghĩa này thì mọi vật có ghi ký hiệu
ngôn ngữ như: bia đá, gia phả, câu đối, các tác phẩm văn học, các công trình nghiên
cứu khoa học, các công văn, giấy tờ của các cơ quan … đều là văn bản. Khái niệm
này được dùng phổ biến trong nghiên cứu về ngôn ngữ học, sử học và văn bản học.
Theo nghĩa hẹp, văn bản là các công văn, giấy tờ, hồ sơ được hình thành
trong quá trình hoạt động của các cơ quan, doanh nghiệp, đoàn thể như: nghị định,
chỉ thị, thông tư, nghị quyết, báo cáo, biên bản, tờ trình, thông báo… Khái niệm này
được sử dụng rộng rãi trong hoạt động quản lý của các cơ quan.
Cùng với phát triển của công nghệ thông tin, nhu cầu ứng dụng công nghệ
thông tin trong thực tiễn đã sản sinh ra một loại hình đó là văn bản điện tử. Văn bản
điện tử được tạo ra và đọc trong môi trường điện tử. Đó là môi trường của các thiết
bị kỹ thuật (phương tiện máy móc), hoạt động trên cơ sở các quy luật vật lý và được

sử dụng vào công nghệ thông tin để xử lý, lưu giữ và truyền tải các dữ liệu [3].
Theo quy định tại Nghị định số 64/2007/NĐ-CP ngày 10/4/2007 của Chính
phủ về ứng dụng công nghệ thông tin trong hoạt động quản lý nhà nước, “Văn bản


9

điện tử” là văn bản được thể hiện dưới dạng thông điệp dữ liệu. Như vậy, với tính
chất là một loại hình văn bản, văn bản điện tử trước hết cũng phải đảm bảo yêu cầu
ổn định, thống nhất, cố định và truyền đạt thông tin cho nhiều đối tượng. Điểm khác
biệt giữa văn bản điện tử với văn bản giấy và các loại hình văn bản khác chính ở kỹ
thuật ghi tin, lưu trữ và truyền tin. Các công đoạn này được thực hiện bằng các
phương tiện hoạt động dựa trên công nghệ điện, điện tử, kỹ thuật số, từ tính, truyền
dẫn không dây, quang học, điện từ và các công nghệ tích hợp.
Nói một cách khái quát, văn bản là phương tiện ghi tin và truyền đạt thông
tin bằng một ngôn ngữ hay kí hiệu nhất định. Ở mỗi lĩnh vực, văn bản có những
hình thức và nội dung khác nhau. Chẳng hạn, văn bản nghệ thuật khác với văn bản
quản lí nhà nước; văn bản lập pháp khác với văn bản lập quy; văn bản báo cáo khác
với văn bản kế hoạch...
1.1.2. Hệ thống tìm kiếm văn bản
Một hệ thống tìm kiếm văn bản, nói chung, thường có hai phần khá tách biệt là:
(i) Phần hệ thống quản lí, lưu trữ; và (ii) phần hệ thống tìm kiếm như Hình 1.1.
Phần hệ thống quản lí, lưu trữ thường có các bước:
- Thu thập tài liệu: Bước này tự động thu thập các tài liệu từ các nguồn khác
nhau. Các tài liệu này sẽ được tiền xử lí về dạng thuần văn bản trước khi đưa vào hệ
thống đánh chỉ mục.
- Đánh chỉ mục văn bản: Thực hiện đánh chỉ mục theo các từ khóa và chỉ
mục tương ứng với từng văn bản. Kết quả bước này là tập các từ khóa, chỉ mục
tương ứng với từng văn bản, sau đó được lưu vào hệ thống lưu trữ (lưu trữ thông tin
văn bản và chỉ mục).

Trong phần hệ thống quản lí, lưu trữ này, bước quan trọng nhất và thu hút
được nhiều sự quan tâm nghiên cứu là bước đánh chỉ mục văn bản. Cho đến nay, có
khá nhiều hệ thống đánh chỉ mục văn bản được đề xuất và sử dụng rộng rãi trong


10

các ứng dụng lưu trữ, quản lí và tìm kiếm văn bản, chẳng hạn như hệ thống đánh chỉ
mục của Lucene [25].

Hình 1.1. Kiến trúc tổng quan hệ thống lưu trữ và tìm kiếm văn bản
Phần hệ thống tìm kiếm, thường có các bước xử lí như sau:
- Nhập từ khóa: Hệ thống cung cấp giao diện cho phép người dùng nhập từ
khóa cần tìm kiếm vào hệ thống để xử lí tìm kiếm.
- Xử lí truy vấn: Máy tìm kiếm bắt đầu xử lí câu truy vấn của người dùng,
tách thành các từ khóa đơn để đưa vào máy tìm kiếm.
- Tìm kiếm: Máy tìm kiếm thực hiện việc tìm kiếm trong tập dữ liệu văn bản
đã đánh chỉ mục với các từ khóa đã xử lí. Kết quả trả về là một tập các văn bản có
chứa từ khóa đã nhập vào.


11

- Xếp hạng: Bước này sẽ tiến hành xếp hạng các văn bản trả về theo thứ tự
giảm dần mức độ liên quan đến các từ khóa nhập vào. Kết quả là thu được một tập
các văn bản được xếp theo thứ tự giảm dần mức độ liên quan đến từ khóa của người
dùng đã nhập vào.
- Hiển thị kết quả: Hệ thống cung cấp giao diện hiển thị kết quả các văn bản
có chứa từ khóa đã nhập vào, các văn bản được xếp theo thứ tự giảm dần mức độ
liên quan đến từ khóa nhập vào.

Trong các bước của phần hệ thống tìm kiếm, bước tìm kiếm và bước xếp
hạng là các bước nằm trong phần lõi của máy tìm kiếm và thu hút được nhiều quan
tâm nghiên cứu. Cho đến nay, đã có nhiều hệ thống tìm kiếm và xếp hạng được đề
xuất. Các mô hình tìm kiếm có thể được nhóm vào các hướng tiếp cận như sau:
- Hướng tiếp cận dựa trên giả định các từ trong văn bản là độc lập với nhau.
Chẳng hạn như mô hình dựa trên so khớp Boolean (Hiemstra and Mihajlovic [13]),
mô hình dựa trên không gian vector (Salton et al. [30]), mô hình dựa trên xác suất
(Robertson [29]), mô hình dựa trên ngôn ngữ (Zhai and Lafferty [6]).
- Hướng tiếp cận dựa trên việc xem xét quan hệ giữa các từ trong văn bản.
Chẳng hạn như mô hình ngữ nghĩa ngầm (Scott Deerwester et al. [31]), mô hình lân
cận (Ralf Schenkel et al. [28], Svore et al. [17], Tao and Zhai [36]).
- Hướng tiếp cận dựa trên việc xếp hạng mức độ quan trọng của văn bản
trong mối quan hệ với các văn bản khác. Mô hình này thường được dùng để xếp
hạng các trang web. Chẳng hạn như hướng tiếp cận HITS (Hypertext Induced Topic
Search) của Jon Kleinberg [15], PageRank bởi Lawrence Page et al. [20].
Mô hình lưu trữ và tìm kiếm văn bản này hiện đang được áp dụng phổ biến
với nhiều ứng dụng tìm kiếm chẳng hạn như: Google search (google.com), Yahoo
search (yahoo.com), Bing (bing.com), Coccoc (coccoc.com),…


12

1.2.

Tìm kiếm văn bản chứa công thức toán

1.2.1. Đặc thù của tìm kiếm văn bản chứa công thức toán
Mặc dù mô hình lưu trữ và tìm kiếm văn bản như đã trình bày trong mục 1.1
đã được áp dụng rộng rãi và được một số lượng lớn người dùng chấp nhận. Tuy vậy,
mô hình này vẫn còn gặp nhiều khó khăn, hạn chế khi áp dụng vào bài toán tìm

kiếm văn bản chứa công thức toán. Một số khó khăn có thể kể đến như:
- Phần nội dung công thức toán trong văn bản được xử lí như là một đối
tượng độc lập (chẳng hạn như hình ảnh, bảng biểu, sơ đồ,…) nhúng vào văn bản, do
đó, không thể áp dụng các kỹ thuật xử lí văn bản vào các bước xử lí cho công thức
toán:
 Ở phần hệ thống lưu trữ, không thể trích rút các nội dung mã hóa của công
thức toán thành các từ khóa để đánh chỉ mục và lưu trữ văn bản. Thậm chí một số hệ
thống đã loại bỏ các phần nội dung không phải dạng thuần văn bản (trong đó có công
thức toán) ra khỏi tài liệu trước khi đánh chỉ mục và lưu trữ tài liệu.
 Ở phần hệ thống tìm kiếm, phần lớn các giao diện với người dùng chỉ cho
phép gõ từ khóa dạng văn bản thuần mà không hỗ trợ người dùng gõ từ khóa là một
công thức toán. Cùng với đó là hạn chế ở bước xử lí câu truy vấn: Hầu hết các giải
pháp đề xuất đều chỉ tập trung hỗ trợ câu truy vấn dạng thuần văn bản mà không hỗ
trợ xử lí câu truy vấn dạng công thức toán.
- Phần nội dung công thức toán được biểu diễn và lưu trữ trong các tài liệu
khác nhau là không giống nhau. Điều này dẫn đến việc khó khăn trong đánh chỉ
mục các tài liệu chứa công thức toán, khó khăn trong việc tìm kiếm từ khóa chứa
công thức toán và khó khăn trong việc xếp hạng tài liệu văn bản chứa công thức
toán theo từ khóa nhập vào.
Các mục tiếp theo sẽ trình bày một số công cụ và phương pháp hỗ trợ soạn
thảo, biểu diễn và lưu trữ công thức toán trong văn bản. Từ cái nhìn tổng quan này,


13

chúng ta sẽ thấy được mức độ nghiêm trọng của những khó khăn vừa nêu trên của
bài toán lưu trữ và tìm kiếm tài liệu dựa trên công thức toán.
1.2.2. Các công cụ soạn thảo văn bản chứa công thức toán
Đối với các công thức toán, có ba cách nhập công thức trên các công cụ soạn
thảo văn bản. Cách thứ nhất là nhập công thức bằng các ký tự có sẵn trong bảng lựa

chọn (selection) hiện ra. Cách thứ hai là nhấp chuột phải lên trình soạn thảo công
thức và chọn ký tự từ menu ngữ cảnh. Cách thứ ba là nhập công thức bằng ngôn
ngữ đánh dấu. Nhưng thực chất việc sử dụng menu ngữ cảnh hay sử dụng bảng lựa
chọn tức là cũng đã nhập vào đoạn mã (code) tương ứng với ký tự.
Sử dụng bảng lựa chọn
Đối với phương pháp thứ nhất và thứ hai thì việc nhập công thức toán thực
hiện đơn giản, trực quan và dễ sử dụng. Ví dụ qua phần mềm OpenOffice.Org,
trong quá trình soạn thảo công thức, chúng ta có thể chọn các thành phần để tạo
công thức qua bảng hoặc qua menu ngữ cảnh, sau đó nhập các giá trị tương ứng vào
công thức:

1.2. Nhập công thức bằng bảng chọn


14

Hình 1.3. Hiển thị công thức trên màn hình soạn thảo
Sử dụng ngôn ngữ đánh dấu
Trong cách này, chúng ta có thể gõ trực tiếp thông qua ngôn ngữ đánh dấu
(Markup Language) vào vùng soạn thảo công thức toán. Phương pháp này đòi hỏi
người soạn thảo phải học cách soạn thảo dựa trên các dòng lệnh hoặc thẻ. Vì vậy
đây không phải là một phương pháp thân thiện đối với người sử dụng.
2
2
2
Ví dụ để tạo công thức: c  a  b trên TeXworks, chúng ta phải nhớ đoạn

mã lệnh khai báo cần thiết cho tài liệu và mã lệnh tạo công thức. Sau khi hoàn thành
quá trình soạn thảo, người sử dụng tiến hành biên dịch sang tập tin .pdf, khi đó mới
xem kết quả soạn thảo.


Hình 1.4. Cửa sổ soạn thảo trên TeXworks


×