Tải bản đầy đủ (.pdf) (27 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 (1.39 MB, 27 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
Chuyên ngành: Hệ thống thông tin
Mã số:
62.48.01.04

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

Hà Nội, 2017


Công trình hoàn thành tại:
Học viện Công nghệ Bưu chính Viễn thông

Người hướng dẫn khoa học:
1. PGS.TS Võ Trung Hùng
2. TS Nguyễn Mạnh Hùng

Phản biện 1:
Phản biện 2:
Phản biện 3:

Luận án được bảo vệ trước Hội đồng cấp Học viện
Họp tại số 122 Hoàng Quốc Việt, Hà Nội
Vào lúc:


Có thể tìm hiểu luận án tại:
Thư viện Học viện Công nghệ Bưu chính Viễn thông


1
MỞ ĐẦU
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. 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ác 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ô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ểu diễn và lưu trữ. Vì thế, để tìm kiếm 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 đó.
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ữ 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ữ đó, đề

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.


2
(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 bao gồm cả các Web thường và
Semantic Web (Web ngữ nghĩa).
Ý nghĩa và đóng góp
Về mặt khoa học, các nghiên cứu này cho phép mở ra các hướng
nghiên cứu mới về tiêu chuẩn lưu trữ, xử lý, khai thác các tài liệu
toán học trên các hệ thống máy tính và mạng máy tính khác nhau.
Đặc biệt, nghiên cứu xử lý các vấn đề phát sinh do các hệ điều hành,
phần mềm ứng dụng sử dụng các tiêu chuẩn mã hóa và lưu trữ khác
nhau. Ví dụ, để chuyển đổi một tài liệu nói chung hay một tài liệu
toán học nói riêng giữa các phần mềm soạn thảo như Microsoft
Word, OpenOffice, LaTeX,...
Về mặt thực tiễn, luận án đã đề xuất và thử nghiệm thành công các
công cụ cho phép soạn thảo, xử lý, tìm kiếm và chuyển đổi các tài liệu
toán học; đã triển khai ở mức thử nghiệm một Semantic Web cho các
tài liệu toán học và đã xây dựng một hệ thống tìm kiếm các tài liệu dựa
trên công thức toán (VNMathSearch). Những kết quả bước đầu này là
cơ sở quan trọng để có thể tiếp tục thực hiện những nghiên cứu mới
trong tương lai.
Những đóng góp chính của luận án có thể được tóm tắt trên các
điểm chính như sau: (1) Đề xuất được một không gian soạn thảo, lưu
trữ thống nhất các công thức toán và dễ dàng chuyển đổi định dạng
công thức sang các tiêu chuẩn lưu trữ khác nhau, (2) Đề xuất và thử
nghiệm thành công một hệ thống tìm kiếm tài liệu dựa trên công thức
toán (văn bản hoặc Web) dựa trên ba thành phần: bộ sưu tập dữ liệu

(crawler), lập chỉ mục (index) và tìm kiếm (search), (3) Đề xuất và
thử nghiệm thành công một hệ thống tìm kiếm các tài liệu toán học
dựa trên Semantic Web.


3
Bố cục của luận án
Luận án được trình bày thành 4 chương. Trong đó, chương 1 giới
thiệu tổng quan về tìm kiếm văn bản và công thức toán. Chương 2
trình bày những nghiên cứu về biểu diễn và lưu trữ công thức toán.
Chương 3 trình bày những giải pháp đề xuất về tìm kiếm tài liệu dựa
trên công thức toán và chương 4 là thử nghiệm, đánh giá những kết
quả nghiên cứu của chương 2 và chương 3.
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: những khái niệm về 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 văn bản chứa
công thức toán; định hướng nghiên cứu của luận án.
1.1. Bài toán 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.

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


4
1.2. Tìm kiếm văn bản chứa công thức toán
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, đoạn mã có định
dạng đặc biệt,…) 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 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 khó
khăn trong việc đánh chỉ mục các tài liệu chứa công thức toán, trong
việc tìm kiếm từ khóa chứa công thức toán và trong việc xếp hạng
văn bản chứa công thức toán theo từ khóa nhập vào.
Ký hiệu toán học là một loại văn bản định dạng đặc biệt. Nó dựa
trên các bảng chữ cái khác nhau (tiếng Hy Lạp, tiếng Do Thái,…), các
quy tắc và các bit của ký hiệu. Dưới đây là một số cách biểu diễn:
1) Biểu diễn công thức toán trên Microsoft Word
Ví dụ trong Microsoft Word 2010, để hiển thị công thức √ , soạn
thảo bằng Equation Editor (Soạn thảo phương trình) thì phải sử dụng
đoạn mã sau:
Hoặc

{ EQ \r(3,x) }
được biểu diễn bằng đoạn mã sau:
{ EQ \f(x+2007, x+2008) }

2) Biểu diễn công thức toán trên OpenOffice.Org
Để hiển thị công thức √ thì chúng ta có đoạn mã tương ứng sau:
nroot{3}{x}



5
Hoặc để hiển thị công thức
ứng sau:

thì chúng ta có đoạn mã tương

{x+2007} over {x+2008}
3) Biểu diễn công thức toán trên Website
Để tạo công thức toán chúng ta phải nhập vào đoạn mã của
LaTeX tương ứng. Sau đây là ví dụ minh hoạ:
Để hiển thị công thức √ thì chúng ta phải nhập đoạn mã sau:
$\sqrt[3]{2}$
Hoặc để hiển thị công thức

thì chúng ta phải nhập đoạn mã sau:

$\frac{x+2007}{x+2008}$
Hiện nay có rất nhiều phương pháp, cách thức và tiêu chuẩn áp
dụng cho việc đặc tả, biểu diễn và lưu trữ công thức toán trên một
văn bản, một số phương pháp, tiêu chuẩn thường được sử dụng là
Ngôn ngữ đánh dấu TeX/LaTeX, Ngôn ngữ đánh dấu AMS-LaTeX,
Ngôn ngữ đánh dấu HTML, Ngôn ngữ MathML...Trong đó,
MathML được luận án đề xuất lựa chọn làm ngôn ngữ biểu diễn và
lưu trữ chung cho hệ thống đề xuất.
1.3. Hƣớng tiếp cận của luận án
Nội dung mục 1.2 đã trình bày thực tế không thống nhất giữa các
hệ thống soạn thảo, biểu diễn và lưu trữ công thức toán trong văn
bản. Thực tế này dẫn đến khó khăn cho việc áp dụng mô hình lưu trữ
và tìm kiếm văn bản thuần như đã trình bày trong mục 1.1 vào bài

toán lưu trữ và tìm kiếm văn bản chứa công thức toán. Để giải quyết
những khó khăn này, có thể xem xét các hướng tiếp cận như sau:
Giải pháp 1: Xây dựng hệ thống riêng cho bài toán lưu trữ và
tìm kiếm văn bản chứa công thức toán.


6
Giải pháp 2: Cải tiến mô hình đã có bằng cách bổ sung các hệ
thống đánh chỉ mục, tìm kiếm và xếp hạng văn bản theo các dạng lưu
trữ công thức toán khác nhau. Giải pháp này thể hiện ở Hình 1.8.

Hình 1.8. Kiến trúc hệ thống theo giải pháp 2

Giải pháp 3: Cải tiến mô hình đã có bằng cách đề xuất một
chuẩn chung để biểu diễn và lưu trữ công thức toán trong văn bản và
áp dụng mô hình truyền thống đối với dạng biểu diễn chung này.
Giải pháp này thể hiện ở Hình 1.9.

Hình 1.9. Kiến trúc hệ thống theo giải pháp 3


7
Trong 3 giải pháp này, luận án đề xuất lựa chọn giải pháp 3 để
triển khai với lý do giải pháp 3 có đầy đủ ưu điểm của giải pháp 2,
đồng thời khắc phục được các nhược điểm của giải pháp 1 và 2. Nhìn
kiến trúc hệ thống trong Hình 1.9, chúng ta cũng dễ dàng nhận thấy
giải pháp này cho kiến trúc hệ thống tinh gọn hơn và ít phải thay đổi
hơn so với giải pháp 2.
1.4. Kết luận Chƣơng 1
Chương này đã trình bày những kết quả nghiên cứu tổng quan về

quá trình soạn thảo và tìm kiếm công thức toán, tài liệu có chứa công
thức toán. Việc soạn thảo và biểu diễn công thức toán trên các công cụ
soạn thảo và đặc biệt trên Web hiện đang là một vấn đề được quan tâm.
Chương 2. BIỂU DIỄN VÀ LƯU TRỮ
CÔNG THỨC TOÁN
Nội dung chương này sẽ tập trung trình bà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,
dựa trên ngôn ngữ đánh dấu MathML. Trên cơ sở lưu trữ chung đó,
luận án đề xuất giải pháp để soạn thảo văn bản có chứa công thức
toán và việc sao chép, chuyển đổi công thức toán được lưu trữ dưới
các tiêu chuẩn biểu diễn khác nhau.
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
Hiện nay, có rất nhiều công cụ cho phép soạn thảo công thức toán
trên văn bản như Microsoft Word, OpenOffice.org Writer, Acrobat,
WebEditor,… Mặc dù kết quả hiển thị các công thức toán là tương tự
nhau, nhưng mỗi công cụ soạn thảo văn bản có một chuẩn lưu trữ nội
dung riêng, đặc biệt là lưu trữ nội dung các công thức toán như biểu
diễn ở Hình 2.1.


8

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

Thực tế này dẫn đến một số khó khăn: (1) Không thể sao chép
công thức toán từ một công cụ soạn thảo này sang các công cụ soạn
thảo khác, (2) Khó khăn khi tìm kiếm công thức toán trong các tài
liệu được soạn thảo và lưu trữ khác nhau này.
Từ thực tế của những khó khăn này, luận án đề xuất xây dựng
một môi trường soạn thảo, biểu diễn và lưu trữ thống nhất, cho phép

sao chép, tìm kiếm, chuyển đổi giữa các chuẩn lưu trữ khác nhau một
cách dễ dàng. Hình 2.2 mô tả mô hình đề xuất của luận án.

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


9
Theo đó, một hệ thống quản lí và tìm kiếm tài liệu dựa trên công
thức toán có hai mức: Thứ nhất là mức quản lí các công thức toán
trong phạm vi một văn bản (mức thấp). Thứ hai là mức tìm kiếm các
tài liệu có chứa công thức toán (mức cao). Mức cao sẽ được trình bày
chi tiết trong chương 3 của luận án. Nội dung chương này tập trung
trình bày về mức thấp của mô hình đề xuất.
Ở mức thấp, luận án đề xuất một mô hình biểu diễn và lưu trữ
công thức toán theo một chuẩn chung, là ngôn ngữ MathML. Khi đó,
các công thức toán sẽ có một hệ thống soạn thảo đồng bộ chung, một
hệ thống lưu trữ chung và một hệ thống hiển thị chung.
2.2. Biểu diễn và lƣu trữ công thức toán với MathML
Đối với tiêu chuẩn lưu trữ, luận án đề xuất sử dụng MathML, vì
đây là tiêu chuẩn được hỗ trợ bởi đa số các công cụ soạn thảo văn bản
hiện nay và đặc biệt là được hỗ trợ bởi các trình duyệt Web. Để phát
triển thử nghiệm công cụ soạn thảo văn bản cho phép soạn và lưu trữ
công thức dưới dạng MathML, luận án sử dụng mã nguồn mở Amaya
và tích hợp vào đó các công cụ phát triển mới để tìm kiếm và sao chép
công thức toán qua lại với các công cụ soạn thảo văn bản khác.
2.3. Soạn thảo và hiển thị công thức toán với Amaya
Để soạn thảo văn bản, luận án đề xuất sử dụng phần mềm mã
nguồn mở Amaya[38]. Amaya là phần mềm theo kiểu WYSIWYG,
người dùng có thể vừa soạn thảo và vừa có thể xem hiển thị kết quả
trên trình duyệt. Các bộ công cụ của Amaya ở chế độ bảng lựa chọn

tương tự như Microsoft Word, OpenOffice.Org Math,... [14].
2.4. Sao chép công thức toán trong Amaya
Luận án đề xuất xây dựng một chương trình thường trú và tích hợp
vào Amaya để cho phép sao chép công thức được soạn thảo từ một công
cụ soạn thảo khác sang trình duyệt Amaya. Mô hình hoạt động như sau:


10

Hình 2.5. Sơ đồ quá trình chuyển đổi dữ liệu trong ClipBoard

Ý tưởng đề xuất là tiến hành sao chép công thức dưới dạng Text
vào ClipBoard, tiến hành xử lý trên ClipBoard để chuyển sang ngôn
ngữ đánh dấu MathML và sau đó chuyển vào Amaya.
2.5. Chuyển đổi công thức MathML với các định dạng khác
Việc chuyển đổi định dạng giữa MathML và các định dạng khác
cho công thức toán không gặp nhiều khó khăn khi triển khai trong
thực tế. Vấn đề là tìm ra sự tương đương giữa MathML và chuẩn
biểu diễn tương ứng trong TeX, LATEX, Microsoft Word,... để tạo
ánh xạ khi chuyển đổi [35].
Việc chuyển đổi từ MathML sang TeX theo mô hình như sau:

Hình 2.8. Mô hình chuyển đổi công thức từ MathML sang TeX

Một đối tượng trong MathML được biểu diễn theo một cấu trúc
được qui định trong mô hình đối tượng tài liệu (DOM) qui định bởi
W3C [19]. Đối tượng này sẽ được biểu diễn dưới dạng cây như sau:


11


Hình 2.9. Biểu diễn dạng cây của công thức MathML

Một đối tượng trong TeX cũng được biểu diễn dưới dạng cây
nhưng khác với cây trong MathML về mặt lô-gíc. Mỗi một mức của
cây này tương ứng với một nhóm trong TeX. Ví dụ: một biểu thức
trong TeX $\sqrt {1-\alpha} + x^{3+a}$ sẽ được biểu diễn dưới dạng
cây như sau:

Hình 2.10. Biểu diễn dƣới dạng cây của đối tƣợng TeX

2.6. Kết luận Chƣơng 2

Chương này đã đề xuất mô hình biểu diễn và lưu trữ đồng bộ các
công thức toán gồm hai mức: Mức thấp cho việc quản lí công thức
toán trong phạm vi một tài liệu. Trong mức thấp này, MathML được
đề xuất sử dụng như là tiêu chuẩn trung tâm phục vụ việc lưu trữ và
xử lý các công thức toán. Môi trường soạn thảo được đề xuất xây
dựng dựa trên mã nguồn mở Amaya, có hỗ trợ soạn thảo công thức
toán theo chuẩn MathML.


12
Chƣơng 3 TÌM KIẾM T I LIỆU DỰA TRÊN
CÔNG THỨC TOÁN
Trên cơ sở mô hình biểu diễn thống nhất ở mức thấp trong mô
hình hai mức như đã trình bày ở chương 2, nội dung chương này sẽ
trình bày đề xuất mô hình tìm kiếm các tài liệu, đặc biệt là các tài
liệu trên môi trường Web dựa trên công thức toán. Đề xuất ở chương
này gồm 2 mảng là tìm kiếm trên các tài liệu, trang Web thông

thường và tìm kiếm dựa trên Semantic Web.
3.1. Bài toán tìm kiếm tài liệu toán học
Hầu hết các cách tiếp cận trong tìm kiếm dựa trên 2 thành phần
chính: một là các kỹ thuật để biểu diễn thông tin (câu truy vấn, tài
liệu) và hai là phương pháp so sánh các cách biểu diễn này. Mục đích
là để tự động qui trình kiểm tra các tài liệu bằng cách tính toán độ
tương đồng giữa các câu truy vấn và tài liệu. Qui trình tự động này
thành công khi nó trả về các kết quả giống với yêu cầu của người sử
dụng khi so sánh câu truy vấn với các tài liệu.

Hình 3.1. Mô hình hệ thống tìm kiếm thông tin


13
3.2. Tìm kiếm các tài liệu có chứa công thức toán
- Mô hình đề xuất

Nội dung phần này sẽ trình bày giải pháp tìm kiếm những tài liệu
hoặc trang Web được tạo ra từ mô hình biểu diễn và lưu trữ đồng bộ
công thức toán trong văn bản như đã được đề xuất trong chương trước.
Mô hình tìm kiếm này có hai quá trình chính đó là tạo chỉ mục cho các
tài liệu và tìm kiếm khi có yêu cầu truy vấn của người dùng. Mô hình
tổng quát của quá trình tạo chỉ mục và tìm kiếm như Hình 3.2.



Các nguồn
văn bản

user


Mô-dun tìm kiếm

Lập chỉ mục văn bản

Bộ chuyển đổi
công thức toán học

Tìm kiếm
và hiển thị kết quả

CSDL
Chỉ mục văn bản

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

Như vậy, trong mô hình đề xuất cho chức năng tìm kiếm tài liệu
chứa công thức toán, có 3 mô-đun: (1) Lập chỉ mục văn bản, (2)
chuyển đổi công thức toán, (3) tìm kiếm và hiển thị kết quả. Trong
đó, mô-đun chuyển đổi công thức toán chính là mô hình đồng bộ
biểu diễn và lưu trữ công thức toán đã được đề xuất trong chương 2.
Do đó, mô-đun này xin được không trình bày lại. Luận án sẽ trình
bày chi tiết các bước trong hai mô-đun còn lại trong các mục tiếp
theo.


14
- Mô hình lập chỉ mục văn bản
Quá trình này thu thập các văn bản chứa công thức toán từ Internet
và từ các nguồn khác, thực hiện đánh chỉ mục các văn bản theo đặc

trưng của văn bản và lưu vào CSDL chỉ mục văn bản. Các bước chi tiết
của quá trình này được mô tả trong Hình 3.3:

Hình 3.3. Mô hình quá trình tạo chỉ mục

Bước 1. Tiền xử lí văn bản theo thể loại: Bước này xác định xem
văn bản có chứa công thức toán hay không? Nếu văn bản không chứa
công thức toán, hệ thống sẽ loại văn bản đó ra khỏi quy trình đánh
chỉ mục. Kết quả bước này là tập các văn bản thô chứa công thức
toán. Các văn bản này được lưu trữ dưới nhiều dạng khác nhau như
PDF, HTML, Doc, XML...
Bước 2. Chuyển đổi định dạng văn bản: Bước này cho phép tìm
kiếm trên các định dạng tài liệu ở bước 1, tài liệu này sẽ được chuyển


15
đổi về một định dạng thống nhất là XHTML+MathML. Kết quả bước
này là tập các văn bản chứa công thức toán, đã được chuyển đổi thành
công về định dạng thống nhất là XHTML +MathML.
Bước 3. Bóc tách công thức toán trong văn bản: Nội dung tài liệu
sẽ được bóc tách thành nội dung văn bản và nội dung toán học. Các
nội dung văn bản được lập chỉ mục theo cách thông thường. Còn các
công thức toán sau khi đã hoàn thành bước chuẩn hóa sẽ được chuyển
đổi thành một chuỗi nén.
Bước 4. Đánh chỉ mục và lưu vào CSDL chỉ mục văn bản: Bước
này sẽ đánh chỉ mục các văn bản theo phương pháp Lucene. Sau đó
các văn bản được lưu vào CSDL chỉ mục các văn bản.
- Mô-đun tìm kiếm và hiển thị kết quả
Mô-đun này cho phép người dùng nhập từ khóa hoặc công thức
toán vào để tìm kiếm. Hệ thống sau đó sẽ tìm và tính điểm từng văn

bản liên quan đến công thức muốn tìm trong CSDL chỉ mục các văn
bản. Kết quả sẽ được hiển thị lên giao diện cho người dùng. Quá
trình này được mô tả như trong Hình 3.4 với các bước chính như sau:

Hình 3.4. Mô hình quá trình tìm kiếm


16
Bước 1. Tiếp nhận và chuẩn hóa câu truy vấn: Kết quả trả về của
công thức được lưu trữ dưới dạng Presentation MathML, công thức
này cũng có thể được chuyển đổi sang Content MathML hoặc LaTeX
tùy vào nhu cầu tìm kiếm.
Bước 2. Truy vấn – tìm kiếm: Để thực hiện chức năng tìm kiếm
tài liệu có chức công thức toán, luận án đề xuất sử dụng phương pháp
đối sánh mẫu (Pattern Matching) [4], [24]. Bài toán yêu cầu ta tìm ra
một hoặc nhiều vị trí xuất hiện của mẫu trên một văn bản. Trong đó
mẫu và văn bản là các chuỗi có độ dài m và n (m ≤ n).
Bước 3. Xếp hạng kết quả tìm kiếm và hiển thị: Luận án sử dụng
thuật toán xếp hạng TF-IDF (Term Frequency - Inverse Document
Frequency - Tần số mục từ - Tần số tài liệu nghịch đảo). Ý tưởng của
thuật toán này là mục từ truy vấn nào xuất hiện càng nhiều trong tài
liệu, tài liệu sẽ có điểm càng cao.
3.3. Tìm kiếm tài liệu dựa trên Semantic Web
- Mô tả ứng dụng Semantic Web toán học
Luận án đề xuất xây dựng một hệ thống Semantic Web toán học
dựa trên Semantic Web và lô-gíc mô tả được khuyến cáo bởi W3C.
Điểm đặc biệt của ứng dụng này so với các ứng dụng khác là các tài
liệu được soạn thảo và lưu trữ dựa trên không gian đề xuất ở chương
2 và chúng ta có thể tìm thấy các tài liệu dựa trên việc nhập vào công
thức tìm kiếm hoặc dựa trên ngữ nghĩa được mô tả của các tài liệu

hoặc các công thức toán.
- Mô hình đề xuất
Trên cơ sở khảo sát thực tế và nghiên cứu lý thuyết, luận án đề
xuất một mô hình tổng quát cho hoạt động của hệ thống như sau:


17

Hình 3.5. Mô hình hóa hệ thống Semantic Web toán học

3.4. Kết luận Chƣơng 3
Nội dung chương này đã trình bày đề xuất về mô hình tìm kiếm
văn bản có chức công thức toán, trên trang Web hoặc trên các
Ontology. Các văn bản, tài liệu, Ontology này được soạn thảo và lưu
trữ dựa trên mô hình thống nhất cách biểu diễn và lưu trữ văn bản đã
trình bày ở chương 2, bao gồm hai giai đoạn là lập chỉ mục văn bản
(hoặc xây dựng Ontology) chứa công thức toán và giai đoạn tìm
kiếm văn bản chứa công thức toán.
Chƣơng 4 THỬ NGHIỆM V ĐÁNH GIÁ
Nội dung chương này sẽ trình bày việc thử nghiệm và đánh giá
các mô hình đã đề xuất trong chương 2 và chương 3, bao gồm: 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; Mô tả hệ thống thử nghiệm; Trình bày phương pháp thử
nghiệm; Kết quả thử nghiệm và đánh giá.
4.1. Chức năng soạn thảo và lƣu trữ công thức toán
Cửa sổ soạn thảo công thức toán có thể chia thành ba vùng chính:


18
- Vùng menu phía trên: chứa các menu chức năng hỗ trợ cho công

cụ và môi trường soạn thảo.
- Vùng xem trước (preview) ở bên trái màn hình: cho phép hiển thị
công thức toán như khi được hiển thị trong văn bản xuất ra.
- Vùng soạn thảo bên phải và là trung tâm của màn hình: cho phép
soạn thảo công thức toán dưới dạng MathML.

Hình 4.1. Biểu diễn công thức theo dạng thẻ (tags)

4 2 Tìm kiếm trực tiếp công thức toán
Ở mức này thực hiện tìm kiếm công thức toán xuất hiện trong một
văn bản.

Hình 4.4. Ví dụ tìm kiếm ký hiệu căn bậc 2


19
4.3. Tìm kiếm trên Ontology
Qui trình cụ thể nhƣ sau:

Hình 4.6. Mô hình ây dựng và khai thác kho dữ liệu

4.4. Tìm kiếm văn bản chứa công thức toán
Hệ thống tìm kiếm tài liệu chứa công thức toán (VNMathSearch)
được xây dựng và phát triển theo một số chức năng chính của mô
hình đã đề xuất.
Phát triển hệ thống thử nghiệm
Trong quá trình nghiên cứu các hệ thống đã được phát triển, luận
án đã lựa chọn ngôn ngữ lập trình C#, hệ quản trị cơ sở dữ liệu SQL
Server và phát triển trên nền web để xây dựng hệ thống.
Chuẩn bị dữ liệu

Luân án sử dụng dữ liệu là các tài liệu kỹ thuật do thư viện của
Đại học Đà Nẵng và Trường Đại học Khoa học Tư nhiên - Đại học
Quốc gia Hà Nội cung cấp với tổng số 497 văn bản từ nhiều lĩnh vực
khác nhau gồm: Toán, Vật lí, Công nghệ thông tin, Điện tử và tự
động hóa...Tài liệu được lưu trữ dưới các định dạng như HTML,
XHTML, LaTeX, Microsoft Word, PDF…


20
Các tài liệu này khi thử nghiệm trên Semantic Web đã được
chuyển đổi và lưu trữ trên Ontology với các lớp là các kiểu tài liệu và
bổ sung mô tả tóm tắt về tài liệu, mô tả về các công thức toán có
chứa trong tài liệu.
Sau khi thực hiện phân tích các tài liệu chứa công thức. Số lượng
các công thức toán chứa trong các tài liệu thể hiện tại Bảng 4.4.
Bảng 4.4. Chi tiết số công thức trong các văn bản

Tài liệu

Số lượng

Số lượng tài liệu không chứa công thức

245

Số lượng tài liệu chứa công thức

241

Số lượng tài liệu không nhận diện được

Tổng

11
497

Trong số 241 văn bản chứa công thức, có 38 tài liệu chứa 01 công
thức và 203 tài liệu chứa từ 02 công thức toán trở lên. Tài liệu được lưu
trữ trong CSDL, công cụ nhận diện công thức sẽ nhận diện các công
thức trong mỗi tài liệu và lưu trữ, số lượng tài liệu không nhận diện
được là 11 tài liệu trong tổng số 497 tài liệu. Hiệu suất thực hiện chức
năng phân tích tài liệu của hệ thống được tính bởi công thức:

4 5 Đánh giá kết quả
4.5.1. Phƣơng pháp đánh giá
Luận án thực hiện đánh giá với hai kịch bản như sau:
- Kịch bản 1: Nhập truy vấn dưới dạng nội dung văn bản.
- Kịch bản 2: Nhập truy vấn dưới dạng công thức.
Luận án quan sát các tham số đầu ra như sau:
Số mẫu đúng trả về (TP - true positive): số lượng văn bản có chứa
nội dung truy vấn xuất hiện trong kết quả tìm kiếm.


21
Số mẫu sai trả về (FP - false positive): số lượng văn bản không
chứa nội dung truy vấn nhưng vẫn xuất hiện trong kết quả tìm kiếm.
Số mẫu đúng không trả về (FN - false negative): số lượng văn bản
có chứa nội dung truy vấn nhưng lại không xuất hiện trong kết quả
tìm kiếm.
Khi đó, độ chính xác (Precision) được xác định bởi công thức:


precision 

TP
TP  FP

Độ triệu hồi (Recall) được xác định bởi công thức:

Re call 

TP
TP  FN

4.5.2. Kết quả thực nghiệm và đánh giá kết quả
Số lượng truy vấn và số tài liệu liên quan được thể hiện chi tiết
trong Bảng 4.5:
Bảng 4.5. Thống kê truy vấn

Tóm tắt thống kê
1

Số tài liệu

497

2

Số chủ đề

8


Tổng số tài liệu thực hiện truy vấn
1

Số tài liệu đã tra cứu được

312

2

Số tài liệu liên quan

298

Luận án sử dụng các câu truy vấn có nội dung khác nhau cho việc
thử nghiệm hệ thống, đối với mỗi một cấp của độ triệu hồi, luận án
tính được độ chính xác tương đương với mỗi cấp.
Bảng 4.6. Thống kê độ triệu hồi và độ chính xác theo kịch bản 1

No

Recall

Precision (%)

No

Recall

Precision (%)


1

0.1

0.8734

6

0.6

0.7333

2

0.2

0.8333

7

0.7

0.6750


22
3

0.3


0.8167

8

0.8

0.5833

4

0.4

0.7667

9

0.9

0.5667

5

0.5

0.7433

10

1.0


0.5117

Bảng 4.7. Thống kê độ triệu hồi và độ chính ác theo kịch bản 2

No

Recall

1

0.1

2

Precision (%)

No

Recall

Precision (%)

0.9667

6

0.6

0.7500


0.2

0.8667

7

0.7

0.6667

3

0.3

0.8450

8

0.8

0.6333

4

0.4

0.8000

9


0.9

0.6083

5

0.5

0.7833

10

1.0

0.5333

Bảng 4.8. Kết quả trung bình của độ triệu hồi và độ chính ác

Kịch bản

Recall

Precision (%)

Truy vấn theo nội dung

0.72

86.8132


Truy vấn theo công thức

0.62

89.3130

Đánh giá kết quả
Mặc dù hai kịch bản đều cho kết quả có độ chính xác cao nhưng lại
cho độ triệu hồi thấp. Có nghĩa là còn khá nhiều văn bản có chứa công
thức toán được truy vấn nhưng không xuất hiện trong kết quả tìm kiếm.
Đây có thể coi là một điểm hạn chế còn tồn tại của mô hình đề xuất.
Hạn chế này có thể xuất phát từ các yếu tố kỹ thuật sau: (1) Do độ chính
xác của Bộ chuyển đổi công thức toán chưa cao, (2) Thuật toán đối sánh
xấp xỉ chưa phát hiện được đầy đủ các chuỗi con của tập từ khóa.
4.6. Kết luận Chƣơng 4
Nội dung chương này đã trình bày việc thử nghiệm và đánh giá
các mô hình đã đề xuất trong chương 2 và chương 3, bao gồm: 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


23
bản; phương pháp tìm kiếm văn bản có chứa công thức toán dựa trên
mô hình thống nhất biểu diễn và lưu trữ.
KẾT LUẬN
Luận án đã được đề xuất từ nhu cầu thực tế và những hạn chế
hiện nay về việc soạn thảo, lưu trữ và khai thác các tài liệu khoa học,
đặc biệt là những tài liệu có chứa công thức toán. Trên cơ sở nghiên
cứu tổng quan, đề xuất được các vấn đề nghiên cứu liên quan đến
việc soạn thảo, lưu trữ, tìm kiếm các tài liệu khoa học trên máy tính.
Các nghiên cứu trong luận án liên quan đến nhiều vấn đề như tiêu

chuẩn lưu trữ, hệ soạn thảo cho phép nhập và sửa các công thức toán,
giải pháp để tìm kiếm công thức toán, tìm kiếm tài liệu có chứa công
thức toán, giải pháp để chuyển đổi tài liệu có chứa công thức toán
giữa các công cụ khác nhau.
Luận án cũng đã trình bày các kết quả thử nghiệm nhằm đánh giá
các giải pháp đề xuất và các kết quả này cho thấy những giải pháp đề
xuất là hợp lý, khả thi và cho kết quả tốt. Những ứng dụng thử
nghiệm này cho thấy có thể cung cấp cho người sử dụng các giải
pháp, công cụ hiệu quả và thuận lợi hơn trong soạn thảo, lưu trữ và
tìm kiếm các tài liệu dựa trên công thức toán.
Những đóng góp chính của luận án có thể được tóm tắt trên các
điểm chính như sau:
1. Đề xuất được một không gian soạn thảo, lưu trữ thống nhất các
công thức toán và dễ dàng chuyển đổi định dạng công thức toán sang
các tiêu chuẩn lưu trữ khác nhau.
2. Đề xuất và thử nghiệm thành công một hệ thống tìm kiếm tài
liệu dựa trên công thức toán (văn bản hoặc Web) dựa trên ba thành


×