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

Xây dựng ontology phục vụ cho việc rút trích cụm danh từ đặc trưng ngữ nghĩa cho 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 (638.11 KB, 67 trang )

ĐẠI HỌC QUỐC GIA TP. HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
----------------

CỘNG HOÀ XÃ HỘI CHỦ NGHIÃ VIỆT NAM
Độc Lập - Tự Do - Hạnh Phúc
---oOo---

Tp. HCM, ngày 30 tháng 11 năm 2008

NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ và tên học viên : Vũ Chí Hiếu

Giới tính : Nam

Ngày, tháng, năm sinh : 06/02/1982

Nơi sinh :TP Hồ Chí Minh

/ Nữ

Chuyên ngành : Khoa học Máy tính
Khố : 2006
1- TÊN ĐỀ TÀI :
Nghiên cứu xây dựng Ontology phục vụ cho việc rút trích cụm danh từ
đặc trưng ngữ nghĩa
2- NHIỆM VỤ LUẬN VĂN :
Nghiên cứu các ontology hiện có vể cấu trúc, phương pháp xây
dựng và rút trích thơng tin.
-


Nghiên cứu văn phạm tiếng Việt mức từ và cụm danh từ.

Xây dựng một ontology thử nghiệm tiếng Việt phục vụ cho việc
rút trích cụm danh từ đặc trưng cùng các cơ chế bổ sung vào cấu trúc dữ liệu
của ontology cũng như truy xuất thông tin từ ontology đề xuất
3- NGÀY GIAO NHIỆM VỤ : 15/01/2008
4- NGÀY HOÀN THÀNH NHIỆM VỤ : 30/11/2008
5- HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN : PGS.TS Phan Thị Tươi
Nội dung và đề cương Luận văn thạc sĩ đã được Hội Đồng Chuyên Ngành thông
qua.
CÁN BỘ HƯỚNG DẪN

CHỦ NHIỆM BỘ MÔN

(Họ tên và chữ ký)

QUẢN LÝ CHUYÊN NGÀNH
(Họ tên và chữ ký)

PGS.TS Phan Thị Tươi


CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA
ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

Cán bộ hướng dẫn khoa học : PGS.TS. Phan Thị Tươi

Cán bộ chấm nhận xét 1 : PGS. TS. Đồng Thị Bích Thuỷ


Cán bộ chấm nhận xét 2 : TS. Quản Thành Thơ

Luận văn thạc sĩ được bảo vệ tại
HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ
TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày 26 tháng 2 năm 2009


i

Lời cảm ơn

Tôi xin chân thành cảm ơn cô PGS. TS. Phan Thị Tươi. Cơ đã tận tình hướng
dẫn, chỉ bảo cũng như động viên tơi hồn thành luận văn này.
Xin chân thành cảm ơn nghiên cứu sinh Nguyễn Quang Châu đã tận tình giúp
đỡ, giúp tơi hồn thành luận văn.
Xin chân thành cảm ơn nghiên cứu sinh Nguyễn Chánh Thành đã ln nhiệt
tình giúp đỡ, đóng góp những ý kiến phản biện quý báu.
Xin chân thành cảm ơn các bạn trong nhóm cũng như các bạn trong lớp đã giúp
đỡ và tạo điều kiện cho tơi trong q trình thực hiện luận văn.


ii

Tóm tắt

Các cụm từ đặc trưng là các cụm từ mơ tả nội dung của văn bản. Do đó việc rút
trích chính xác chúng có ý nghĩa rất lớn trong các trong việc xử lý ngôn ngữ tự
nhiên. Để rút trích chính xác các cụm từ đặc trưng ngữ nghĩa, cần phải có một cơ sở
tri thức chứa các đối tượng trong thế giới thực. Tuy nhiên, hầu như chưa có nghiên
cứu nào dựa trên hướng tiếp cận này để giải quyết bài toán cho tiếng Việt. Luận văn

này đề xuất một phương pháp xây dựng một ontology nhằm phục vụ cho việc rút
trích cụm danh từ đặc trưng ngữ nghĩa của văn bản. Ontology sẽ được xây dựng tự
động một phần. Các từ, cụm danh từ được rút trích và ánh xạ một cách bán tự động
đến các khái niệm tương ứng.


iii

Abstract

Key phrases are phrase that describe accurately the subject of a document.
Extraction of them has great meaning in natural language processing. In order to
extract key phrase correctly, it needs to have a knowledge base which contains
objects in real world. However, few of research based on this direction for the key
phrase extraction in Vietnamese. This thesis propose a method for building
ontology used in key phrase extraction. A part of the ontology is made
automatically. Nouns and noun phrases are extracted from document and mapped
semiautomatically to coresponding concepts.


iv

Mục Lục

Lời cảm ơn……………………………………………………………………i
Tóm tắt……………………………………………………………………….ii
Abstract…………………………………………………………………...…iii
Danh mục hình……………………………………………………………...vi
Danh mục bảng biểu……………………………………………………….vii
Chương 1 : Tổng quan………………………………………………………1

1.1 Phát biểu vấn đề……………………………………………………………...1
1.2 Rút trích cụm danh từ đặc trưng ngữ nghĩa………………………………….4
1.2.1 Khái niệm về cụm từ đặc trưng ngữ nghĩa………………………………4
1.2.2 Bài tốn rút trích cụm danh từ đặc trưng ngữ nghĩa……………………..5
1.3 Ontology……………………………………………………………………...6
1.3.1 Định nghĩa ontology……………………………………………………..7
1.3.2 Các chức năng chính của ontology………………………………………7
1.3.3 Phân loại ontology……………………………………………………….8
1.3.4 Một số ngôn ngữ biểu diễn ontology…………………………………….9
1.3.4.1 Ngôn ngữ RDF………………………………………………………10
1.3.4.2 Ngôn ngữ RDFS…………………………………………………….11
1.3.4.3 Ngôn ngữ OWL……………………………………………………..11
1.3.4.4 Ngôn ngữ CycL……………………………………………………..12
1.3.4.5 Ngôn ngữ SWRL……………………………………………………13

Chương 2 : Các nghiên cứu liên quan…………………………………….14
2.1

Ontology…………………………………………………………………..14

2.2

Xây dựng ontology từ tài liệu văn bản tự do……………………………...21

2.2.1 Xây dựng ontology mới………………………………………………...21


v

2.2.2 Mở rộng ontology đã tồn tại……………………………………………23

2.3

Chú thích ngữ nghĩa……………………………………………………….26

Chương 3 : Mơ hình ontology đề nghị…………………………………….28
3.1

Phương pháp………………………………………………………………28

3.2

Nhận diện các khái niệm từ vựng…………………………………………31

3.3

Chú thích ngữ nghĩa cho các khái niệm từ vựng………………………….33

3.3.1 Chú thích ngữ nghĩa dựa trên từ điển…………………………………..34
3.3.2 Chú thích ngữ nghĩa dựa trên độ tương tự……………………………...35
3.4

Chú thích ngữ nghĩa cho các thực thể……………………………………..38

3.4.1 Chú thích ngữ nghĩa dựa trên từ điển…………………………………..38
3.4.2 Chú thích ngữ nghĩa dựa trên các khái niệm đã được làm rõ…………..39

Chương 4 : Hiện thực và đánh giá………………………………………...41
4.1

Hiện thực hệ thống………………………………………………………...41


4.1.1 Ontology được xây dựng bằng tay……………………………………..41
4.1.2 Khối truy vấn ontology…………………………………………………42
4.1.3 Khối chú thích ngữ nghĩa dựa trên từ điển……………………………..43
4.1.4 Khối chú thích ngữ nghĩa dựa trên độ tương tự………………………..44
4.1.5 Khối chú thích ngữ nghĩa dựa trên các khái niệm đã được làm rõ……..46
4.2

Đánh giá…………………………………………………………………...47

4.2.1 Kết quả xây dựng ontology…………………………………………….47
4.2.2 Tính ứng dụng của ontology……………………………………………49

Chương 5 : Kết luận………………………………………………………..51
5.1

Đóng góp của luận văn……………………………………………………51

5.2

Hướng phát triển…………………………………………………………..52

Tài liệu tham khảo………………………………………………………….53


vi

Danh Mục Hình

Hình 1.1


Hệ phân cấp của đối tượng trong thế giới thực……………………….6

Hình 1.2

Phân loại ontology……………………………………………………9

Hình 1.3

Mơ tả RDF tổng quát………………………………………………..10

Hình 2.1

Cơ sở tri thức của OpenCyc…………………………………………15

Hình 2.2

Ontology Proton……………………………………………………..17

Hình 3.1

Cấu trúc ontology……………………………………………………30

Hình 3.2

Mơ hình rút trích và chú thích các khái niệm và thực thể cho

ontology……………………………………............................................................31
Hình 3.3


Mơ hình chú thích ngữ nghĩa cho từ, cụm danh từ………………….34

Hình 3.4

Mơ hình chú thích ngữ nghĩa cho các thực thể……………………...38

Hình 4.1

Cấu trúc ontology……………………………………………………42

Hình 4.2

Khối truy vấn ontology……………………………………………...43

Hình 4.3

Module rút trích cụm danh từ đặc trưng…………………………….49


vii

Danh mục bảng biểu

Bảng 4.1

Kết quả rút trích và ánh xạ các từ, cụm danh từ chỉ khái niệm .…….48

Bảng 4.2

Kết quả rút trích và ánh xạ các từ, cụm danh từ chỉ thực thể... .…….48


Bảng 4.2

Kết quả nhận diện cụm danh từ đặc trưng…………………………..50


1

Chương 1 :

Tổng quan

1.1 Phát biểu vấn đề
Hiện nay, cùng với sự phát triển mạnh mẽ của World Wide Web (WWW),
Internet đã trở thành nguồn tài nguyên thông tin khổng lồ của nhân loại. Nguồn tài
nguyên này có thể được mở rộng và chia sẻ đến bất cứ nơi nào trên thế giới. Vấn đề
đặt ra là làm thế nào khai thác các thông tin này một cách hiệu quả phục vụ nhu cầu
của con người.
Các hệ thống truy hồi thơng tin (Information Retrieval), rút trích thơng tin
(Information Extraction), tóm tắt văn bản (Text Summarization), … đã được phát
triển nhằm khai thác một cách tự động các nguồn thông tin trên Internet. Một vấn đề
cốt lõi trong các hệ thống nói trên là việc rút trích các cụm từ đặc trưng ngữ nghĩa
trong văn bản. Cụm từ đặc trưng là các cụm từ mô tả nội dung của văn bản. Do đó
việc rút trích chính xác chúng có ý nghĩa rất lớn và là mối quan tâm của các nhà
ngôn ngữ học, cũng như các nhà khoa học trong lãnh vực xử lý ngơn ngữ tự nhiên
bằng máy tính.
Ta hãy xem xét kỹ hơn thế nào là cụm từ đặc trưng ngữ nghĩa. Xét ví dụ sau :
Máy tính được trang bị màn hình LCD.
Trong câu văn trên có hai cụm danh từ “máy tính” và “màn hình LCD”. Dễ thấy
là đối tượng chính được nhắc đến trong câu là màn hình và cụm danh từ đặc trưng

hơn là cụm “màn hình LCD”. Vấn đề đặt ra là làm thế nào chọn ra được cụm danh
từ đặc trưng ngữ nghĩa trong hai cụm danh từ trên. Để giải quyết vấn đề này, cần
phải có một cơ sở tri thức khá lớn (như hệ phân cấp hay mạng ngữ nghĩa) chứa các


2

đối tượng trong thế giới thực để xác định chính xác các cụm từ đặc trưng ngữ nghĩa.
Tuy nhiên, hầu hết các hướng tiếp cận giải quyết bài toán đều dựa trên phương pháp
thống kê, học máy. Lý do là vì phương pháp này khơng địi hỏi nhiều cơng sức để
xây dựng cơ sở tri thức hoặc từ điển nhưng lại có độ chính xác tương đối cao. Tuy
nhiên, một khó khăn lớn của phương pháp này là trong một số trường hợp, nó
khơng thể rút trích các cụm từ hợp lý nhưng có tần suất thấp. Đối với tiếng Việt,
nghiên cứu [20] của các tác giả Nguyễn Quang Châu và Phan Thị Tươi sử dụng hệ
thống luật, trong đó quan tâm đến ý nghĩa các từ quan hệ giữa các cụm từ để xác
định cụm danh từ đặc trưng. Một điểm yếu của phương pháp này là nó khơng thể
cho biết cụm danh từ nào là đặc trưng nếu xét trong ngữ cảnh một đoạn. Đó lại là
một trong những điểm mạnh của phương pháp sử dụng cơ sở tri thức. Tuy nhiên,
hầu như chưa có nghiên cứu nào (đối với tiếng Việt) sử dụng hướng tiếp cận dùng
cơ sở tri thức để nhận biết ngữ nghĩa của các cụm từ, dù phân tích cho thấy hướng
tiếp cận này là rất tiềm năng.
Cơ sở tri thức, với nền tảng là ontology, ngày càng được sử dụng rộng rãi với
sự ra đời và phát triển của Web có ngữ nghĩa (Semantic Web). Một ontology, theo
[30] là một tập hợp có cấu trúc phân cấp các thuật ngữ dùng để mô tả một lĩnh vực
nào đó và có thể được dùng như một bộ khung cho một cơ sở tri thức. Nói một cách
đơn giản, ontology cung cấp mơ hình đặc tả các khái niệm, còn cơ sở tri thức bao
gồm nền tảng là một ontology cộng với các thông tin cụ thể.
Mục tiêu của luận văn là xây dựng một ontology phục vụ cho việc rút trích các
cụm danh từ đặc trưng ngữ nghĩa. Ontology xây dựng phải biểu diễn được ngữ
nghĩa của tài liệu, cụ thể là ngữ nghĩa của từ, cụm danh từ trong tài liệu. Một phần

quan trọng trong ngữ nghĩa của tài liệu là các thực thể có tên (Named Entity – NE)
được đề cập đến trong tài liệu. Các thực thể có tên là con người, tổ chức, nơi chốn,
và các đối tượng khác được tham khảo thơng qua tên [4], ví dụ như “Bill Clinton”,
“Microsoft”, “Hà Nội”, …. Một ontology về các thực thể có tên nổi tiếng là Proton
[32]. Tuy nhiên, ngữ nghĩa của tài liệu sẽ không được khai thác trọn vẹn nếu chỉ
quan tâm đến các thực thể có tên. Các từ mơ tả các khái niệm, thuộc tính, quan hệ,


3

… đóng vai trị quan trọng đối với ngữ nghĩa hồn chỉnh của tài liệu, như trong ví
dụ sau :
Ngày 22/9/2008, IDC Việt Nam công bố kết quả nghiên cứu thị trường máy tính
cá nhân quý 2/2008.
IDC Việt Nam là thực thể có tên xuất hiện trong câu văn trên, nhưng nó khơng
thể hiện đầy đủ nội dung câu văn. Các từ như kết quả, nghiên cứu, thị trường, máy
tính cá nhân giữ vai trò quan trọng trong việc thể hiện ngữ nghĩa của câu văn. Như
vậy, ngữ nghĩa của tài liệu là sự kết hợp giữa các đối tượng xuất hiện trong tài liệu
và các từ mô tả khái niệm, thuộc tính, quan hệ, … Các ontology như OpenCyc[17]
được xây dựng khá tồn diện. Ngồi các thực thể có tên, các khái niệm (không gian,
thời gian, bàn, ghế, …), các quan hệ (anh, em, thành phần, …) đều được định nghĩa
trong ontology. Do đó, OpenCyc khá thích hợp với vai trị ontology phục vụ cho
việc rút trích cụm từ đặc trưng. Một vấn đề đặt ra là làm thế nào các ontology có thể
được sử dụng hiệu quả bởi các ứng dụng xử lý ngôn ngữ tự nhiên khi xử lý các tài
liệu (được viết bằng ngôn ngữ tự nhiên mà chỉ có con người đọc hiểu được). Đối
với các ứng dụng sử dụng các ontology được định nghĩa hình thức (formal
ontology), ngữ nghĩa của tài liệu sẽ được nắm bắt thơng qua q trình chú thích ngữ
nghĩa tự động. Một ontology với cách tiếp cận từ vựng là Wordnet [18], trong đó
các từ được tổ chức thành các tập từ đồng nghĩa (synset) mô tả các khái niệm. Ưu
điểm của Wordnet là các khái niệm được hình thành bởi các từ, nên q trình chú

thích ngữ nghĩa khơng còn cần thiết. Thế nhưng, Wordnet chủ yếu tập trung vào
miền tri thức ngôn ngữ. Các khái niệm được định nghĩa thuần t theo ngơn ngữ và
các thuộc tính quan hệ của nó khơng hề được đề cập. SUMO [24] kết hợp hai hướng
tiếp cận bằng cách ánh xạ các khái niệm trong Wordnet vào các khái niệm trong
ontology của nó. Các ánh xạ này có tác dụng như những chỉ mục xác định ngữ
nghĩa của các từ, ngữ trong tài liệu. Chúng tôi nhận thấy, cách tiếp cận như vậy là
hoàn toàn hợp lý cho những ứng dụng xử lý ngơn ngữ tự nhiên, cụ thể là rút trích
cụm danh từ đặc trưng ngữ nghĩa.


4

Trong luận văn này, chúng tôi xây dựng một ontology tiếng Việt với hướng tiếp
cận giống như trên để phục vụ cho việc rút trích cụm danh từ đặc trưng ngữ nghĩa
cho câu tiếng Việt. Ontology bao gồm một ontology mức trên (top-level), mà chúng
tôi tạm gọi là TO1, một ontology từ vựng (lexical ontology) với cấu trúc tương tự
như tổ chức danh từ trong Wordnet, DO2, và một ontology định nghĩa hình thức
(formal ontology) với các khái niệm tương ứng DO3. DO3 được rút trích từ ontology
của OpenCyc với các khái niệm liên quan đến lĩnh vực máy tính. Các từ, cụm danh
từ trong DO2 được rút trích từ các tài liệu và được ánh xạ đến các lớp tương ứng
trong DO3. Tuy nhiên, một từ, cụm danh từ không phải lúc nào cũng chỉ tương ứng
với một khái niệm. Trong những miền tri thức khác nhau, từ, cụm danh từ sẽ có
những ý nghĩa khác nhau hoặc những ý nghĩa cụ thể hơn trong miền tri thức đó. Ví
dụ như từ “dữ liệu” mang nghĩa chung là những số liệu, tư liệu, thông tin được dựa
vào để giải quyết vấn đề. Tuy nhiên, trong các bài báo nói về lĩnh vực máy tính, “dữ
liệu” mang một nghĩa cụ thể hơn, vẫn là các thông tin như văn bản, số liệu, âm
thanh, hình ảnh, … nhưng được lưu trữ trong máy tính. Để biểu diễn vấn đề nhập
nhằng này, chúng tôi đã xây dựng các ánh xạ tương ứng với các miền tri thức khác
nhau. Một từ, cụm danh từ, tuỳ theo lĩnh vực đang được đề cập, sẽ tương ứng với
một khái niệm trong ontology.

Luận văn cũng khảo sát các hệ thống chú thích ngữ nghĩa để làm cơ sở cho việc
xây dựng ánh xạ từ các từ, cụm danh từ đến các khái niệm tương ứng. Các ánh xạ
này được xây dựng một cách tự động theo hướng tiếp cận kết hợp giữa từ điển và
phương pháp thống kê. Sau đó, kết quả của q trình ánh xạ sẽ được chỉnh sửa bằng
tay và được lưu trữ vào ontology.

1.2 Rút trích cụm danh từ đặc trưng ngữ nghĩa
1.2.1 Khái niệm về cụm từ đặc trưng ngữ nghĩa
Trong [20], cụm từ đặc trưng ngữ nghĩa được định nghĩa (định nghĩa của Feather và
Sturges) như sau :


5

a.Định nghĩa :
Trong khoa học thư viện và thông tin, từ đặc trưng (từ khóa) được định nghĩa là
“từ mơ tả ngắn gọn và chính xác chủ đề hay khía cạnh của chủ đề, mà nó được thảo
luận trong văn bản”.
Tương tự, cụm từ đặc trưng là các cụm từ mơ tả nội dung của văn bản.
b.Tiêu chí ngữ nghĩa :
Các cụm từ đặc trưng ngữ nghĩa cho câu truy vấn là các cụm từ xác định các
đối tượng chính được đề cập đến trong thơng tin của phát ngơn.
Ví dụ : Cho biết các trường Đại học ở Tp.Hồ Chí Minh?
Ở đây, tiêu chí ngữ nghĩa là đi xác định “các trường Đại học” và “Tp.Hồ Chí
Minh” là hai cụm từ đặc trưng ngữ nghĩa cho câu, chứ không phải là đi xác định đối
tượng nghi vấn của câu là “các trường Đại học”.

1.2.2 Bài tốn rút trích cụm danh từ đặc trưng
Xét ví dụ sau:
“Máy tính được trang bị màn hình LCD.”

Trong câu này, chúng ta có hai đối tượng trong thế giới thực là “Máy tính” và
“màn hình LCD”. Tương ứng chúng ta có hai cụm danh từ là “Máy tính” và “màn
hình LCD”. Bài tốn đặt ra là lựa chọn cụm từ nào mà nó đặc trưng cho ngữ nghĩa
cho câu. Để giải quyết vấn đề này cần phải có một cơ sở tri thức (như hệ phân cấp,
hay mạng ngữ nghĩa) mà nó chứa các đối tượng trong thế giới thực (như trong Hình
1.1), để xác định một cách chính xác các cụm từ đặc trưng ngữ nghĩa cho câu. Khó
khăn lớn cho chúng ta phải xây dựng mạng ngữ nghĩa và cú pháp cho tiếng Việt
trong các lĩnh vực nghiên cứu.
Từ những phân tích nêu trên, có thể thấy được tiềm năng của hướng tiếp cận
dùng mạng ngữ nghĩa cho bài tốn rút trích cụm danh từ đặc trưng. Để giải quyết
trở ngại chính trong hướng tiếp cận này, luận văn sẽ khảo sát, nghiên cứu các


6

phương pháp xây dựng mạng ngữ nghĩa, để từ đó, phục vụ cho việc nghiên cứu bài
tốn rút trích cụm danh từ đặc trưng.

Máy tính





CPU

chứa




RAM

Màn hình

chứa

ALU

Thanh ghi

Màn hình
LCD

Hình 1.1 : Hệ phân cấp của đối tượng trong thế giới thực

1.3 Ontology
Xuất phát từ lĩnh vực triết học, ontology được hiểu là một hệ thống các phân
loại mơ tả, giải thích các sự vật theo một thế giới quan nào đó. Gruber [7] gọi đó là
“Sự mơ tả có hệ thống về sự tồn tại”. Ontology độc lập với ngôn ngữ mơ tả nó
nhưng lại phụ thuộc vào thế giới quan triết học của từng triết gia. Cụ thể, một cá
nhân được phân loại thuộc về một khái niệm nào đó tuỳ thuộc vào quan điểm của
triết gia về cá nhân đó. Ví dụ, khái niệm chuột là một lồi gặm nhấm, có thể xinh
xắn hoặc xấu xí là tuỳ thuộc vào quan điểm của mỗi người. Tuy nhiên khái niệm
chuột thì độc lập với ngơn ngữ mơ tả nó, Mouse trong tiếng Anh hoặc Maus trong
tiếng Đức đều chỉ tới một loại sinh vật [27].
Khái niệm ontology trong khoa học máy tính được vay mượn từ triết học và
được sử dụng trong lĩnh vực trí tuệ nhân tạo. Trong lĩnh vực mới này, khái niệm


7


ontology cũng mang một ý nghĩa mới dù không tách biệt với ý nghĩa ban đầu của
nó.

1.3.1 Định nghĩa ontology
Có nhiều định nghĩa khác nhau về ontology. Theo Gruber [7] : “một ontology là
một sự mơ tả một cách hình thức và rõ ràng về các khái niệm”. Định nghĩa trên của
Gruber nói chung là khá tổng quát, ontology có thể được định nghĩa trong những
ngữ cảnh cụ thể hơn. Theo [30], các thuật ngữ giữ vai trò quan trọng trong ontology
: “một ontology là một tập hợp có cấu trúc phân cấp các thuật ngữ dùng để mô tả
một lĩnh vực nào đó và có thể được dùng như một bộ khung cho một cơ sở tri thức”.
Trong [6] : “một ontology là một mơ tả một cách hình thức, chung và được chia sẻ
của các khái niệm quan trọng trong một lĩnh vực cụ thể”. Còn theo [25] : “một
ontology là một biểu diễn hình thức và rõ ràng của các khái niệm. Thuộc tính của
mỗi khái niệm mơ tả các đặc điểm và tính chất của khái niệm được biết đến như là
các khe (slot) và các ràng buộc trên chúng”.
Từ các định nghĩa trên, có thể nhận thấy một số đặc điểm cơ bản của ontology
[23]:
-

Ontology được dùng để mô tả một lĩnh vực cụ thể.

-

Các thuật ngữ và quan hệ giữa chúng được định nghĩa rõ ràng trong lĩnh vực
đó.

-

Các thuật ngữ được tổ chức theo một cơ chế nào đó (thơng thường, cấu trúc

phân cấp với các quan hệ IS_A và HAS_A được sử dụng).

-

Cần có sự đồng thuận giữa những người sử dụng ontology theo đó ngữ nghĩa
của các thuật ngữ được sử dụng một cách nhất quán.

1.3.2 Các chức năng chính của Ontology
Ứng dụng của ontology trong thực tế là rất rộng lớn, bao gồm nhiều lĩnh vực
như biểu diễn tri thức, xử lý ngơn ngữ tự nhiên, rút trích thơng tin, quản lý tri thức,


8

thư viện điện tử, hệ thống thông tin địa lý, … Trong [23], tác giả đã liệt kê một số
chức năng chính của ontology.
-

Ontology cung cấp những thơng tin mơ tả ngữ nghĩa của dữ liệu. Thông qua
ontology, tri thức có thể được chia sẻ và tái sử dụng, con người có thể giao
tiếp được với máy tính. Máy tính có thể hiểu các quan hệ ngữ nghĩa trong
ontology, theo nghĩa là thông qua các khái niệm mô tả các thực thể và các
mối quan hệ giữa chúng, ontology có thể trả lời các câu hỏi về các chủ đề
trong miền dữ liệu của chúng.

-

Ontology cũng có thể được dùng để xây dựng cơ sở tri thức. Một cơ sở tri
thức gồm có nền tảng là một ontology cộng với tập các đối tượng, thực thể
của các lớp. Người sử dụng có thể truy vấn, chia sẻ, và làm giàu thêm cơ sở

tri thức.

-

Ontology còn được dùng để tổ chức và phân loại thơng tin. Dựa trên
ontology, người dùng có thể xây dựng các công cụ để phân loại, thu thập tri
thức.

-

Một ứng dụng khác của ontology là việc hợp nhất ngữ nghĩa giữa những tài
nguyên thông tin khác biệt nhau. Dựa trên ngữ nghĩa thống nhất của một
ontology, các tri thức giống nhau nhưng ở những dạng khác nhau có thể
được tích hợp và chia sẻ một cách dễ dàng.

-

Trong các ứng dụng rút trích thơng tin, ontology được sử dụng để phân giải
nhập nhằng ngữ nghĩa các câu truy vấn, mở rộng hoặc thu hẹp các khái niệm
truy vấn để đưa ra những kết quả truy vấn tốt hơn.

1.3.3 Phân loại Ontology
Theo [8], Ontology được phân loại theo mức độ tổng quát đối với miền dữ liệu,
cụ thể như hình 1.2 :


9

Hình 1.2 : Phân loại ontology


-

Top-level ontology : đặc tả các khái niệm tổng quát, độc lập với tri thức
trong các lĩnh vực cụ thể, ví dụ như khơng gian, thời gian, sự kiện, hành
động, …

-

Domain ontology và Task ontology : mô tả những khái niệm, tri thức tổng
quát trong những lĩnh vực cụ thể (thuốc, ô tô, …) hay trong những hoạt
động, nhiệm vụ cụ thể (chNn đoán, bán hàng, …). Các ontology này được
xây dựng bằng cách chuyên biệt hoá các khái niệm trong top-level ontology.

-

Application ontology : mô tả những khái niệm kế thừa từ domain-ontology
lẫn task-ontology. Nó thường tương ứng với vai trị của các thực thể trong
miền ứng dụng khi thực thi các hoạt động cụ thể.Ví dụ như “thành phần dự
trữ”, “các đơn vị thay thế được”, ...

1.3.4 Một số ngôn ngữ biểu diễn Ontology
Cũng như các loại mơ hình dữ liệu khác, ontology cũng cần một ngôn ngữ để
biểu diễn. Ngữ nghĩa của ontology, tính chính xác, tính diễn đạt, … phụ thuộc vào
khả năng biểu diễn của ngôn ngữ. Trong phần này, chúng tôi khảo sát một số ngôn
ngữ biểu diễn ontology thông dụng.


10

1.3.4.1 Ngôn ngữ RDF (Resource Description Framework) [29]

Tài nguyên thông tin trên internet hiện này là vô cùng rộng lớn. Tuy nhiên hầu
hết đều ở dạng thức mà chỉ có con người hiểu được. Do đó, để có thể sử dụng các
tài nguyên này một cách hiệu quả, cần phải có thêm những dữ liệu mơ tả thơng tin
về chúng, hay còn gọi là các siêu dữ liệu (metadata). Từ đó, dẫn đến nhu cầu phải
chuNn hố cách biểu diễn các siêu dữ liệu này.
RDF, được phát triển bởi Word Wide Web Consortium (W3C), là một chuNn
cho phép mã hoá, trao đổi và tái sử dụng các siêu dữ liệu có cấu trúc. RDF cho phép
các siêu dữ liệu có thể cộng tác với nhau thông qua những quy ước về ngữ nghĩa, cú
pháp và cấu trúc. RDF sử dụng XML (eXtendsible Markup Language) làm cú pháp
chuNn để trao đổi và xử lý siêu dữ liệu. Do được dùng để biểu diễn ngữ nghĩa của
dữ liệu, nên, RDF cũng rất thích hợp để biểu diễn tri thức.
RDF cung cấp một mơ hình để biểu diễn tài ngun nói chung. Tài ngun gồm
có các thuộc tính (đặc điểm và tính chất). Tài nguyên được định nghĩa bởi một định
danh duy nhất là URI (Universal Resource Identifier). Các thuộc tính của tài nguyên
thuộc về một (hoặc nhiều) kiểu thuộc tính. Mỗi kiểu thuộc tính có miền giá trị tương
ứng. Kiểu thuộc tính mô tả mối quan hệ giữa tài nguyên và giá trị thuộc tính của nó.
Giá trị thuộc tính có thể là các giá trị đơn giản (số, chuỗi ký tự, …) hoặc cũng có thể
là tài nguyên khác. Tập hợp các thuộc tính liên kết với một tài nguyên được gọi là
một mơ tả của tài ngun đó. Hình 1.3 thể hiện một mô tả RDF tổng quát.

Mô tả RDF
Tài nguyên
1

Kiểu thuộc tính 1

Kiểu thuộc tính 2

“123”


Tài nguyên
2

Kiểu thuộc tính 3

Kiểu thuộc tính 4

“ABC”

Hình 1.3 : Mơ tả RDF tổng quát

Tài nguyên
3


11

RDF coi tất cả các đối tượng, sự vật là các tài ngun, mơ hình RDF dùng để
biểu diễn tài nguyên. Do đó, dưới góc độ biểu diễn ontology, RDF khơng có các cơ
chế định nghĩa từ vựng, cú pháp để biểu diễn ontology.
1.3.4.2 Ngôn ngữ RDFS (RDF Schema)
Như đã nói ở trên, RDF cung cấp một mơ hình dữ liệu mô tả các đối tượng (tài
nguyên) và mối quan hệ giữa chúng. Tuy nhiên, mơ hình RDF chỉ mơ tả ngữ nghĩa
khá đơn giản. Trong RDF, tất cả các đối tượng đều là tài ngun, hồn tồn khơng
có cơ chế mơ tả các lớp và các thuộc tính một cách rõ ràng.
RDFS được xây dựng như là một sự mở rộng ngữ nghĩa của RDF. Nó cung cấp
tập từ vựng mơ tả các lớp và các thuộc tính của các đối tượng, cũng như cây phân
cấp ngữ nghĩa giữa các lớp đối tượng. Có thể nói, RDFS là một ngôn ngữ biểu diễn
ontology đơn giản. Tuy nhiên, khi cần thực hiện các suy diễn với ontology, thì điều
đó nằm ngồi khả năng biểu diễn ngữ nghĩa của RDFS. Ví dụ : RDFS không thể chỉ

ra được lớp Person và lớp Car là hai lớp rời nhau, hoặc một nhóm tứ tấu có chính
xác bốn thành viên.
1.3.4.3 Ngơn ngữ OWL (Web Ontology Language)
Được giới thiệu bởi W3C, OWL là ngôn ngữ chuNn biểu diễn ontology cho
Web ngữ nghĩa. So với RDFS, tập từ vựng định nghĩa lớp và thuộc tính của OWL
phong phú hơn như : quan hệ giữa các lớp, sự tương đương, thuộc tính của quan hệ,
… Hay nói cách khác, OWL có tính diễn đạt cao hơn và hỗ trợ suy diễn tốt hơn so
với RDFS. OWL được phân chia thành ba ngôn ngữ con : OWL Lite, OWL DL và
OWL Full.
-

OWL Lite : OWL Lite thích hợp cho việc xây dựng ontology chỉ gồm có hệ
phân cấp và các ràng buộc đơn giản. Ví dụ : đối với ràng buộc số lượng,
OWL Lite chỉ cho phép các giá trị là 0 hoặc 1. OWL Lite có độ phức tạp
nhỏ nhất trong ba ngơn ngữ. Do đó, xây dựng các cơng cụ hỗ trợ, xử lý nó
cũng đơn giản hơn hai ngơn ngữ cịn lại.


12

-

OWL DL : được đặt tên như vậy vì OWL DL dựa trên logic mơ tả
(description logics). OWL DL thích hợp với nhu cầu cần tính diễn đạt, biểu
cảm cao trong khi vẫn giữ được tính đầy đủ (tất cả các kết luận đều có thể
được tính tốn) và tính khả quyết (tất cả các tính tốn đều trong thời gian
hữu hạn). OWL DL bao gồm đầy đủ các thành phần xây dựng nên OWL,
tuy nhiên chúng chỉ được sử dụng với những ràng buộc nhất định (ví dụ,
một lớp có thể là lớp con của nhiều lớp nhưng nó không thể là thực thể của
một lớp).


-

OWL Full : cung cấp tính diễn đạt cao và sự tự do cú pháp của RDF nhưng
khơng bảo đảm tính đầy đủ và tính khả quyết. OWL Full cho phép ontology
có thể gia tố thêm ngữ nghĩa của từ vựng (RDF hay OWL) đã định nghĩa
trước. Do vậy, không chắc chắn một hệ thống suy diễn có thể hỗ trợ đầy đủ
các đặc điểm của OWL Full.

1.3.4.4 Ngôn ngữ CycL [33]
CycL được phát triển bởi Cycorp và được dùng trong hệ thống cơ sở tri thức
OpenCyc. Được xây dựng dựa trên logic bậc nhất với một số mở rộng, CycL cung
cấp tính diễn đạt cùng độ chính xác cao, nâng cao khả năng suy luận của hệ thống.
Một số đặc điểm của CycL :
-

Các khái niệm được biểu diễn bởi các hằng chuỗi.

-

Hệ phân cấp các khái niệm được xây dựng bằng cách gom nhóm các hằng
biểu diễn khái niệm qua các quan hệ tổng quát hoá và đặc biệt hoá.

-

Các luật và khẳng định hỗ trợ các suy diễn về các khái niệm.

-

Chân trị của các mệnh đề trong CycL phụ thuộc vào ngữ cảnh. Các ngữ

cảnh trong CycL được gọi là các Microtheories.


13

1.3.4.5 Ngôn ngữ SWRL [12]
Được đề nghị năm 2004 bởi National Reasearch Council of Canada, Netword
Inference và đại học Stanford đồng thời liên kết với uỷ ban Joint US/EU ad hoc
Agent Markup Language. SWRL (Semantic Web Rule Language) là sự kết hợp
giữa các ngôn ngữ OWL DL và OWL Lite và Unary/Binary Datalog RuleML.
SWRL mở rộng OWL với các luật dạng mệnh đề Horn. Các luật được viết dưới
dạng suy diễn gồm có phần giả thiết (thân của luật) và phần kết luận (đầu của luật).
Với sự mở rộng này, khả năng suy diễn của ontology trở nên mạnh mẽ hơn rất
nhiều nhưng tính khả quyết lại mất đi, dẫn đến khó khăn trong việc hiện thực.


14

Chương 2 :

Các nghiên cứu liên quan

Trong chương này, chúng tơi trình bày các nghiên cứu liên quan đến việc xây
dựng ontology. Đầu tiên, các cấu trúc ontology phổ biến trên thế giới sẽ được trình
bày trong 2.1. Tiếp đó, các phương pháp xây dựng ontology cũng được khảo sát
(phần 2.2, 2.3) nhằm mục đích tự động xây dựng (một số thành phần của) ontology.

2.1 Ontology
Như đã trình bày trong phần 1.3.1, ontology là một tập hợp có cấu trúc phân cấp
các thuật ngữ dùng để mô tả một lĩnh vực nào đó. Tuỳ vào miền dữ liệu cần mơ tả

cũng như mục đích của ứng dụng, ontology sẽ được xây dựng theo những cách thức
khác nhau, Wordnet [18] là một ontology mô tả các tri thức từ vựng, OpenCyc [17]
là ontology hình thức mơ tả các tri thức thường nhật, Proton [32] là ontology về các
thực thể có tên, …Trong phần này, chúng tôi sẽ khảo sát một số ontology thơng
dụng có liên quan đến đề tài.
OpenCyc [17], được phát triển bởi CyCorp, là một trong những hệ thống cơ sở
tri thức và suy diễn lớn nhất hiện nay. OpenCyc hiện có khoảng 155000 khái niệm
và 2,5 triệu khẳng định (assertion) về các lĩnh vực thường nhật trong cuộc sống.
Ontology của OpenCyc bao gồm một hệ phân cấp rộng lớn các khái niệm và
các quan hệ giữa chúng. Ontology được chia thành upper ontology, core theories và
domain-specific theories :


15

Hình 2.1: Cơ sở tri thức của OpenCyc
-

Upper ontology : gồm các khái niệm và quan hệ hết sức trừu tượng như sự
vật, cá nhân, sự kiện, … và các mối quan hệ giữa chúng.

-

Core theories : bao gồm các khái niệm và các suy diễn về các sự việc
chung như không gian, thời gian, quan hệ, … Đây là những khái niệm chủ
yếu liên quan đến các suy diễn thông thường.

-

Domain-specific theories : chứa các lý thuyết về các lĩnh vực cụ thể như

vật lý, hóa học, tài chính, kinh tế, … Các khái niệm, quan hệ mang tính
chuyên biệt này làm cho OpenCyc trở nên một cơ sở tri thức hết sức hữu
ích.

Các khẳng định, các luật trong OpenCyc được xếp vào trong các microtheory
tuỳ theo ngữ nghĩa cụ thể. Có thể coi các microtheory như các ngữ cảnh trong đó
các luật được mơ tả một cách đúng đắn và nhất quán. Cách tổ chức này có những
thuận lợi :
-

Suy diễn hiệu quả hơn vì khơng gian tìm kiếm có thể được thu hẹp. Q
trình tìm kiếm chỉ cần tập trung vào những thơng tin có liên quan thay vì
trong tồn bộ cơ sở tri thức.


16

-

Việc xây dựng cơ sở tri thức đơn giản và hiệu quả hơn. Người phát triển
ontology và cơ sở tri thức có thể sử dụng các khẳng định và luật súc tích,
ngắn gọn. Ví dụ, với những microtheory chứa các khẳng định và các luật
trong ngữ cảnh đất nước Nam Phi vào năm 1995, người phát triển có thể sử
dụng một khẳng định ngắn gọn : “Mandela là tổng thống”. Nếu khơng có
microtheory, người phát triển sẽ phải chỉ rõ các thơng tin về ngữ cảnh
trong khẳng định đó, như : “Mandela là tổng thống Nam Phi năm 1995”.

-

Microtheory cho phép tránh được những mâu thuẫn toàn cục trong cơ sở tri

thức. Trong một cơ sở tri thức rộng lớn như OpenCyc, với luật liên quan
tới những chủ đề, lý thuyết và quan điểm khác nhau , mâu thuẫn xảy ra là
điều không thể tránh khỏi. Thông qua microtheory, các suy diễn có thể
được thực hiện trong một nhóm các thông tin nhất quán với nhau.

Ngôn ngữ biểu diễn của OpenCyc là CycL, với cú pháp kế thừa từ logic bậc
nhất và ngơn ngữ lập trình hàm Lisp. CycL cung cấp khả năng suy diễn rất tốt dựa
trên tính diễn đạt và độ chính xác cao.
Nhìn chung OpenCyc là một ontology mạnh với những khái niệm logic và toàn
diện. Tuy nhiên, sự logic và tồn diện đó làm cho các khái niệm trở nên phức tạp và
trừu tượng hơn. Việc thao tác trên chúng không dễ dàng với những người dùng bình
thường.
Proton (PROTo ONtology) [32], được phát triển bởi Ontotext Lab trong dự án
Semantic Knowledge Technologies (SEKT).
Ontology Proton có khoảng 300 lớp và 100 thuộc tính, bao gồm các khái niệm
chung, cần thiết cho các ứng dụng chú thích ngữ nghĩa, đánh chỉ mục, truy hồi
thơng tin, … Proton có những đặc điểm sau :
-

Độc lập với miền dữ liệu.

-

Các khái niệm được định nghĩa đơn giản (light-weight).


×