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

TÌM HIỂU VỀ ONTOLOGY – XÂY DỰNG HỆ THỐNG MÔ TẢ THÔNG TIN TRONG BỘ MÔN TRUYỀN THÔNG VÀ MẠNG MÁY TÍNH

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.22 MB, 23 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
*






TIỂU LUẬN
HỌC PHẦN: WEB VÀ CÁC DỊCH VỤ THẾ HỆ MỚI
MÃ HỌC PHẦN: IT6210


TÊN ĐỀ TÀI
TÌM HIỂU VỀ ONTOLOGY – XÂY DỰNG HỆ THỐNG MÔ TẢ
THÔNG TIN TRONG BỘ MÔN TRUYỀN THÔNG VÀ MẠNG
MÁY TÍNH

Giảng viên hướng dẫn: TS. Phạm Huy Hoàng
Nhóm thực hiện: Lê Quốc Hoan
Nguyễn Công Trung

Lớp: 12BMTTT











THÁNG 2/2013
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 1
LỜI NÓI ĐẦU

Sự phát triển mạnh mẽ của Internet đã mang lại những lợi ích to lớn cho con người.
Những lợi ích đó được thể hiện một cách rõ nét nhất kể từ khi Tim Berners-Lee phát minh
ra World Wide Web năm 1989. Kể từ đó đến nay, con người đã sử dụng Internet như một
công cụ đắc lực trong rất nhiều lĩnh vực và ứng dụng khác nhau. Mặc dù vậy, chính sự
bùng nổ thông tin trên Web lại khiến cho Web hiện tại chứa đựng những hạn chế mà khó
có thể khắc phục được với những dữ liệu phi cấu trúc mà nó đang có.
Ngày nay công nghệ thông tin đã và đang phát triển mạnh mẽ trên toàn thế giới. Nó
đóng vai trò rất quan trọng trong đời sống kinh tế, xã hội, học tập …Nhắc tới công nghệ
thông tin chúng ta không thể bỏ qua công nghệ web. Công nghệ này đóng vai trò rất quan
trong trong việc trao đổi thông tin giữa con người với nhau trên thế giới. Nó giúp chúng ta
tiết kiệm được cả về thời gian cũng như tiền bạc so với cách cũ mà ta vẫn thường làm.
Hiện nay việc cải tiến các công cụ phục vụ trong công nghệ web rất quan trọng và được
nhiều cá nhân, tổ chức quan tâm. Với những thông tin có sẵn và tỉ lệ gia tăng người dùng
hiện nay, có thể khẳng định rằng Web là một công nghệ thành công gây ấn tượng nhất.
Hiện nay, Web thâm nhập vào hầu hết mọi lĩnh vực trong đời sống. Thành công của Web
là dựa trên tính đơn giản, dễ hiểu của nó.
Trong nội dụng của bài tiểu luận này, chúng em tập trung nghiên cứu về ontology
và ứng dụng vào xây dụng hệ thống mô tả thông tin trong bộ môn Kỹ thuật máy tính và
truyền thông.
Chúng em xin gửi lời cảm ơn tới thầy Phạm Huy Hoàng đã hướng dẫn chúng em
hoàn thiện bài tiểu luận này.


Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 2

LỜI NÓI ĐẦU 1
1. Khái niệm Ontology 3
1.1 Khái niệm Ontology 3
1.2 Yêu cầu khi xây dựng ontology 4
1.2.1 Các thành phần của ontology 4
 Cá thể (Individuals) – Thể hiện 5
 Lớp (Classes) - Khái niệm 5
 Thuộc tính (Properties) 5
 Mối quan hệ (Relation) 5
1.2.2 Tìm hiểu về RDF/RDFS 6
 Khái niệm 6
 Diểm mạnh và giới hạn của RDF và RDFS 7
1.2.3 Ngôn ngữ OWL 8
2. Phương pháp xây dựng Ontology 10
2.1 Quy trình phát triển Ontology 10
 Bước 1: Xác định lĩnh vực và phạm vi của Ontology 10
 Bước 2: Xem xét việc sử dụng lại các ontology có sẵn 10
 Bước 3: Liệt kê các thuật ngữ quan trọng 10
 Bước 4: Xác định các lớp và phân cấp của các lớp 11
 Bước 5: Xác định các thuộc tính 11
 Bước 6: Xác định ràng buộc của các thuộc tính 12
 Bước 7: Tạo các thể hiện / thực thể 12
2.2 Công cụ phát triển ontology 12
3. Ontology về thông tin trong bộ môn Truyền thông và Mạng máy tính 14
3.1 Các lớp trong Ontology 15

3.2 Các thuộc tính trong Ontology 16
3.3 Các cá thể trong Ontology 18
3.4 Thuộc tính của các khái niệm trong ontology về thông tin trong bộ môn Truyền thông và
Mạng máy tính. 18


Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 3
1. Khái niệm Ontology
1.1 Khái niệm Ontology
Trước hết ta cần phải biết Ontology là gì? Nói một cách đơn giản ontology là tập
từ vựng để mô hình hóa thế giới bên ngoài, nó đưa ra các khái niệm cơ bản và định nghĩa
quan hệ giữa các khái niệm đó trong một miền lĩnh vực. Đồng thời ontology còn cung cấp
các ràng buộc, là các giả định cơ sở về ý nghĩa mong muốn của bộ từ vựng.
Ontology được xây dựng nhằm các mục đích sau:
- Chia sẻ hiểu biết chung về cấu trúc thông tin giữa con người và phần mềm agent
- Sử dụng lại tri thức về một miền lĩnh vực đã được xây dựng từ trước



Trong hình trên ta thấy các ứng dụng khác nhau, muốn trao đổi thông tin với nhau
thì cần phải có một tri thức chung, vì vậy các ứng dụng này đểu sử dụng một ontology để
có thể chia sẻ tri thức cho nhau.
Ontology được sử dụng rộng rãi trong công nghệ tri thức, trí tuệ nhân tạo, và
khoa học máy tính trong các ứng dụng liên quan đến quản lý tri thức, xử lý ngôn ngữ tự
nhiên, thương mại điện tử, tích hợp thông tin, tìm kiếm thông tin, thiết kế cơ sở dữ liệu…
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 4

1.2 Yêu cầu khi xây dựng ontology
Ngôn ngữ ontology cho phép người sử dụng viết rõ ràng, các khái niệm hình thức
của mô hình miền. Các yêu cầu chính:
- Cấu trúc rõ ràng: đây là điều kiện cần cho máy có thể xử lý thông tin.
- Ngữ nghĩa hình thức miêu tả ý nghĩa tri thức một cách chính xác: Ý nghĩa của ngữ
nghĩa hình thức tồn tại trong một thời gian dài trong miền toán logic. Việc sử dụng
ngữ nghĩa hình thức cho phép con người suy diễn tri thức. Với tri thức trong ontology
chúng ta có thể suy diễn về:
o Thành viên của lớp: Nếu x là một thể hiện của lớp C và C là lớp con của lớp D thì
chúng ta có x là thể hiện của lớp D
o Các lớp tương đương: Nếu lớp A tương đương với lớp B và lớp B tương đương với
lớp C, thì lớp A cũng tương đương với lớp C.
o Tính nhất quán: Giả sử chúng ta khai báo x là thể hiện của lớp A và A là lớp con
của B∩ C, A là lớp con của lớp D, Lớp B và lớp D không có quan hệ với nhau
(disjoint). Thì chúng ta không nhất quán bởi vì A nên là rỗng nhưng lại có thể hiện là
x. Đây là một dấu hiệu của một lỗi trong ontology.
o Phân loại : nếu chúng ta khai báo các cặp thuộc tính giá trị đã biết là điều kiện đủ
cho thành viên trong một lớp A, thì nếu một cá thể x thỏa mãn các điều kiện, chúng
ta có thể kết luận x phải là một thể hiện của A.
- Ngữ nghĩa là điều kiện tiên quyết cho việc hỗ trợ suy diễn: Hỗ trợ suy diễn rất quan
trọng bởi vì nó cho phép kiểm tra tính nhất quán của ontology và tri thức, kiểm tra các
quan hệ thừa giữa các lớp, tự động phân loại các thể hiện trong lớp.
Ngữ nghĩa hình thức và hỗ trợ suy diễn thường được cung cấp bởi việc ánh xạ một
ngôn ngữ ontology đến hình thức logic và sử dụng suy diễn tự động bởi các hình thức
luôn tồn tại. OWL được ánh xạ logic miêu tả và sử dụng các suy diễn đang tồn tại như
FaCT và RACER. Các logic mô tả là tập con của logic vị từ nhằm hỗ trợ suy diễn hiệu
quả.
1.2.1 Các thành phần của ontology
Ontology được sử dụng như là một biểu mẫu trình bày tri thức về thế giới hay một
phần của nó. Ontology thường miêu tả:

- Cá thể: Các đối tượng cơ bản, nền tảng.
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 5
- Lớp: Các tập hợp, hay kiểu của các đối tượng.
- Thuộc tính: Thuộc tính, tính năng, đặc điểm, tính cách, hay các thông số mà các đối
tượng có và có thể đem ra chia sẻ.
- Mối liên hệ: cách mà các đối tượng có thể liên hệ tới một đối tượng khác.
Bộ từ vựng ontology được xây dựng trên cơ sở tầng RDF và RDFS, cung cấp khả
năng biểu diễn ngữ nghĩa mềm dẻo cho tài nguyên Web và có khả năng hỗ trợ lập luận.
 Cá thể (Individuals) – Thể hiện
Cá thể là thành phần cơ bản của một ontology. Các cá thể trong một ontology có thể
bao gồm các đối tượng rời rạc như xe, con cọp , cũng như các đối tượng trừu tượng như
con số và từ.
 Lớp (Classes) - Khái niệm
Lớp là những nhóm, bộ hoặc tập hợp các đối tượng. Một lớp có thể gộp nhiều lớp
hoặc được gộp vào lớp khác. Một lớp gộp vào lớp khác được gọi là lớp con của lớp gộp.
Điều quan trọng của quan hệ xếp gộp là tính kế thừa.
 Thuộc tính (Properties)
Các đối tượng trong ontology có thể được mô tả thông qua việc khai báo các thuộc
tính của chúng. Mỗi một thuộc tính đều có tên và giá trị của thuộc tính đó. Các thuộc tính
được sử dụng để lưu trữ các thông tin mà đối tượng có thể có. Ví dụ, đối với một cá nhân
có thể có các thuộc tính: Họ_tên, ngày_sinh, quê_quán, số_cmnd…
Giá trị của một thuộc tính có thể có các kiểu dữ liệu phức tạp.
 Mối quan hệ (Relation)
Quan hệ giữa các đối tượng trong một ontology cho biết các đối tượng liên hệ với
đối tượng khác như thế nào. Sức mạnh của ontolgy nằm ở khả năng diễn đạt quan hệ. Tập
hợp các quan hệ cùng nhau mô tả ngữ nghĩa của domain. Tập các dạng quan hệ được sử
dụng và cây phân loại thứ bậc của chúng thể hiện sức mạnh diễn đạt của ngôn ngữ dùng
để biểu diễn ontology.

Ontology thường phân biệt các nhóm quan hệ khác nhau. Vd:
- Quan hệ giữa các lớp
- Quan hệ giữa các thực thể
- Quan hệ giữa một thực thể và một lớp
- Quan hệ giữa một đối tượng đơn và một tập hợp
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 6
- Quan hệ giữa các tập hợp.
1.2.2 Tìm hiểu về RDF/RDFS
 Khái niệm
- Khái hiệmRDF: (Resource Description Framework) là một “bộ khung” được sử
dụng để mô tả các nguồn tài nguyên trên Internet
- Mô hình cơ bản của RDF gồm ba đối tượng sau:
Tài nguyên (Resources): là tất cả những gì được mô tả bằng biểu thức RDF
Thuộc tính (Properties): thuộc tính, đặc tính, hoặc quan hệ dùng để mô tả tính chất
của tài nguyên.

Phát biểu (Statements): mỗi phát biểu gồm ba thành phần sau:

+ Subject (Tài nguyên): địa chỉ hay vị trí tài nguyên muốn mô tả

+ Predicate (Vị ngữ): xác định tính chất của tài nguyên.

+ Object (Bổ ngữ): có thể là một giá trị nguyên thủy hoặc c
ũ
ng có thể là một
tài nguyên.
Mỗi một phát biểu (subject, predicate, object) còn gọi là một bộ ba ( triple).
- Đồ thị RDF

Một tập hợp các RDF Triple được gọi là một đồ thị RDF (RDF Graph)
Mối quan hệ giữa các thành phần trong triple

- Namespace
Namespace là một tập các tên (name), được định dan bởi các URI, được sử dụng
trong các tài liệu XML như các element type và attribute name
- Literal
Literal được sử dụng để biểu diễn các giá trị như con số, ngày tháng, chuỗi Bất
cứ cái gì có thể biểu diễn bởi một giá tri Literal cũng có thể được biểu diễn dưới dạng
một URI.
- Kiểu dữ liệu có cấu trúc
RDF Container
Subject Object
prediccate
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 7
RDF sử dụng một số phần tử đặc biệt để xây dựng các danh sách, gọi là các
“bộ chứa” (RDF Container). Ba phần tử chính đư

c dùng để mô tả các nhóm là rdf:Bag,
rdf:Seq và rdf:Alt.
RDF Collection
RDF collection cho phép khai báo một tập hợp đóng. Cấu trúc của RDF
Collection tương tự như một danh sách, có phần tử đầu (rdf:first), phần tử kế
(rdf:rest)và phần tử cuối(rdf:nil).
- RDFS (RDF Schema)
RDFS được sử dụng để định nghĩa các nguồn tài nguyên và các l

p. Trong RDF,

tất cả mọi thứ đều được coi là các nguồn tài nguyên, bản thân các lớp cũng là các nguồn
tài nguyên, nhưng bên trong nó cũng có thể là tập hợp các nguồn tài nguyên khác.
RDF/RDFS trước đây được coi là một thành phần cốt yếu để biểu diễn nội dung
trong Semantic Web. Tuy nhiên, chúng không đủ mạnh để mô tả thông tin một cách chi
tiết. Cụ thể hơn, chúng không có các ràng buộc cục bộ giữa domain và range, các ràng
buộc tồn tại, tập hợp, các thuộc tính bắc cầu nghịch đảo, đối xứng… (các thuộc tính
liên quan đến logic), và đặc biệt là chúng không có chuẩn ngữ nghĩa nên khó hỗ trợ cho
suy diễn, lập luận.
 Diểm mạnh và giới hạn của RDF và RDFS
RDF và RDFS cho phép biểu diễn một vài tri thức ontology. Mô hình cơ bản của
RDF/RDFS liên quan đến tổ chức bộ từ vựng trong việc phân cấp: các quan hệ lớp con,
thuộc tính con, các ràng buộc domain và range, các thể hiện của lớp. Tuy nhiên một số
các đặc điểm bị thiếu. Ví dụ như:
- Tách rời các lớp: Thỉnh thoảng chúng ta muốn chỉ ra các lớp tách rời nhau. Ví dụ lớp
Male và lớp Female là tách rời, nhưng trong RDFS chúng ta chỉ có thể để ở quan hệ
lớp con, ví dụ: Female là lớp con của lớp Person
- Phạm vi giá trị của thuộc tính: rdfs:range định nghĩa dải giá trị của thuộc tính áp dụng
cho tất cả các lớp. Vì vậy trong RDF Schema chúng ta không thể khai báo các ràng
buộc với dải giá trị chỉ áp dụng với một vài lớp nhất định. Ví dụ, trong RDFS chúng ta
không thể định nghĩa bò chỉ ăn cỏ, trong khi các loài động vật khác cũng có thể ăn cỏ.
- Kết hợp các lớp với nhau: Đôi khi chúng ta muốn xây dụng một lớp mới được tạo ra
từ việc kết hợp các lớp khác sử dụng hợp hoặc giao hoặc bù. Ví dụ chúng ta có thể
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 8
định nghĩa lớp Person bằng việc hợp hai lớp phân biệt là Male và Female. RDF
Schema không cho phép chúng ta định nghĩa như vậy.
- Các ràng buộc về lực lượng: Chúng ta muốn các ràng buộc bao nhiêu giá trị thuộc tính
phân biệt có thể có hoặc bắt buộc. Ví dụ: Chúng ta thích nói rằng một người có đúng
hai cha mẹ, hoặc một khóa học được dạy bởi ít nhất một giảng viên. Kiểu ràng buộc

này không thể biểu diễn trong RDF Schema được
- Các đặc điểm cụ thể của thuộc tính: Nó hữu ích khi nói một thuộc tính là bắc cầu (ví
dụ “Lớn hơn”), hoặc duy nhất (“là mẹ của”), hoặc nghịch đảo của thuộc tính khác
(như thuộc tính “là mẹ của”, và thuộc tính “là con của”)
Vì những hạn chế này mà chúng ta cần một ngôn ngữ ontology giàu có hơn (cách biểu
diễn phong phú ) RDF Schema. Trong thiết kế một ngôn ngữ nên chú ý đến sự cân bằng
giữa sức mạnh biểu diễn và hỗ trợ suy diễn hiệu quả. Nên ngôn ngữ ontology cho web
(OWL – Ontology Web Language) ra đời. OWL đưa ra tiêu chuẩn cho ontology sử dụng
trong web. Mục đích chính của OWL là sẽ cung cấp các chuẩn để tạo ra một nền tảng để
quản lý tài nguyên, để chia sẻ cũng như tái sử dụng dữ liệu trên Web.
1.2.3 Ngôn ngữ OWL
OWL (The Web Ontology Language) là một ngôn ngữ gần như XML dùng để mô
tả các hệ cơ sở tri thức. OWL là một ngôn ngữ đánh dấu dùng để xuất bản và chia sẻ dữ
liệu trên Internet thông qua những mô hình dữ liệu gọi là “ontology”. Ontology mô tả một
lĩnh vực (domain) và diễn tả những đối tượng trong lĩnh vực đó cùng những mối quan hệ
giữa các đối tượng này. OWL là phần mở rộng về từ vựng của RDF và được kế thừa từ
ngôn ngữ DAML+OIL Web ontology – một dự án được hỗ trợ bởi W3C. OWL biểu diễn
ý nghĩa của các thuật ngữ trong các từ vựng và mối liên hệ giữa các thuật ngữ này để đảm
bảo phù hợp với quá trình xử lý bởi các phần mềm.
OWL được xem như là một kỹ thuật trọng yếu để cài đặt cho Semantic Web trong
tương lai. OWL được thiết kế đặc biệt để cung cấp một cách thức thông dụng trong việc
xử lý nội dung thông tin của Web. Ngôn ngữ này được kỳ vọng rằng sẽ cho phép các hệ
thống máy tính có thể đọc được thay thế cho con người. Vì OWL được viết bởi XML, các
thông tin OWL có thể dễ dàng trao đổi giữa các kiểu hệ thống máy tính khác nhau, sử
dụng các hệ điều hành và các ngôn ngữ ứng dụng khác nhau. Mục đích chính của OWL là
sẽ cung cấp các chuẩn để tạo ra một nền tảng để quản lý tài sản, tích hợp mức doanh
nghiệp và để chia sẻ cũng như tái sử dụng dữ liệu trên Web. OWL được phát triển bởi nó
có nhiều tiện lợi để biểu diễn ý nghĩa và ngữ nghĩa hơn so với XML, RDF và RDFS, và vì
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính

Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 9
OWL ra đời sau các ngôn ngữ này, nó có khả năng biểu diễn các nội dung mà máy có thể
biểu diễn được trên Web.
Các phiên bản của OWL: Hiện nay có ba loại OWL : OWL Lite, OWL DL
(description logic), và OWL Full.
- OWL Lite: hỗ trợ cho những người dùng chủ yếu cần sự phân lớp theo thứ bậc và các
ràng buộc đơn giản. Ví dụ: Trong khi nó hỗ trợ các ràng buộc về tập hợp, nó chỉ cho
phép tập hợp giá trị của 0 hay 1. Điều này cho phép cung cấp các công cụ hỗ trợ OWL
Lite dễ dàng hơn so với các bản khác.
 OWL DL (OWL Description Logic): hỗ trợ cho những người dùng cần sự diễn cảm tối
đa trong khi cần duy trì tính tính toán toàn vẹn (tất cả các kết luận phải được đảm bảo
để tính toán) và tính quyết định (tất cả các tính toán sẽ kết thúc trong khoảng thời gian
hạn chế). OWL DL bao gồm tất cả các cấu trúc của ngôn ngữ OWL, nhưng chúng chỉ
có thể được sử dụng với những hạn chế nào đó (Ví dụ: Trong khi một lớp có thể là
một lớp con của rất nhiều lớp, một lớp không thể là một thể hiện của một lớp khác).
OWL DL cũng được chỉ định theo sự tương ứng với logic mô tả, một lĩnh vực nghiên
cứu trong logic đã tạo nên sự thiết lập chính thức của OWL.
 OWL Full muốn đề cập tới những người dùng cần sự diễn cảm tối đa và sự tự do của
RDF mà không cần đảm bảo sự tính toán của các biểu thức. Ví dụ, trong OWL Full,
một lớp có thể được xem xét đồng thời như là một tập của các cá thể và như là một cá
thể trong chính bản thân nó. OWL Full cho phép một ontology gia cố thêm ý nghiã
của các từ vựng được định nghĩa trước (RDF hoặc OWL).
Các phiên bản này tách biệt về các tiện ích khác nhau, OWL Lite là phiên bản dễ
hiểu nhất và phức tạp nhất là OWL Full.
Mối liên hệ giữa các ngôn ngữ con của OWL:
- Mọi ontology hợp lệ dựa trên OWL Lite đều là ontology hợp lệ trên OWL DL
- Mọi ontology hợp lệ dựa trên OWL DL đều là ontology hợp lệ trên OWL Full
- Mọi kết luận hợp lệ dựa trên OWL Lite đều là kết luận hợp lệ trên OWL DL
- Mọi kết luận hợp lệ dựa trên OWL DL đều là kết luận hợp lệ trên OWL Full
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và

mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 10
2. Phương pháp xây dựng Ontology
2.1 Quy trình phát triển Ontology
Trong những năm gần đây, một loạt các phương pháp luận khác nhau được thiết kế
để trợ giúp cho việc tiến hành phát triển các nhiệm vụ được báo cáo trong tài liệu trí tuệ
nhân tạo. Các phương pháp truyền thống gồm Cyc (Lenat & Guha 1990), Uschold và
King (Uschold $ King 1995), Gruninger và Fox (Gruninger $ Fox 1995), Kactus (Kactus
1996),và Methontology (Fernandez-Lopez, Gomes-Perez & Juritso 1997). Các phương
pháp luận cung cấp các chỉ dẫn chung và có cấu trúc. Nếu làm theo có thể tăng quy trình
phát triển và cải tiến chất lượng cho kết quả cuối cùng. Theo như đánh giá phương pháp
luận “Methontology” là phương pháp luận thiết kế ontology phổ biến nhất (được hỗ trợ
môi trường WebODE).
Quy trình phát triển Ontology là một quy trình gồm nhiều bước, tuy nhiên vẫn
chưa có một phương pháp chuẩn hóa nào để phát triển các ontology. Quy trình phát triển
gồm 7 bước do Stanford Center for Biomedical Informatics Research đưa ra (đây là nhóm
phát triển phần mềm Protégé để trình diễn và soạn thảo Ontology).
 Bước 1: Xác định lĩnh vực và phạm vi của Ontology
Trong giai đoạn này cần xác định mục đích của việc xây dựng ontology là gì? Phục vụ
đối tượng nào? Ontology sắp xây dựng cần có đặc điểm gì, liên quan đến lĩnh vực, phạm
vi nào. Quá trình khai thác, quản lý và bảo trì ontology được thực hiện ra sao?
 Bước 2: Xem xét việc sử dụng lại các ontology có sẵn
Cấu trúc của một Ontology bao gồm 3 tầng: tầng trừu tượng (Abstract), tầng miền xác
định (Domain) và tầng mở rộng (Extension). Trong đó tầng trừu tượng có tính tái sử dụng
rất cao, tầng miền xác định có thể tái sử dụng trong một lĩnh vực nhất định. Cộng đồng
Ontology cũng đang lớn mạnh và có rất nhiều Ontology đã được tạo ra, với tâm huyết của
nhiều chuyên gia. Do đó trước khi bắt đầu xây dựng ontology, cần xét đến khả năng sử
dụng lại các ontology đã có. Nếu có thể sử dụng lại một phần các ontology đã có, chi phí
bỏ ra cho quá trình xây dựng ontology sẽ giảm đi rất nhiều.
 Bước 3: Liệt kê các thuật ngữ quan trọng

Ontology được xây dựng trên cơ sở các khái niệm trong một lĩnh vực cụ thể, vì vậy
khi xây dựng ontology cần bắt đầu từ các thuật ngữ chuyên ngành để xây dựng thành các
lớp trong ontology tương ứng. Tất nhiên không phải thuật ngữ nào cũng đưa vào
ontology, vì chưa chắc đã định vị được cho thuật ngữ đó. Do đó cần phải liệt kê các thuật
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 11
ngữ, để xác định ngữ nghĩa cho các thuật ngữ đó, cũng như cân nhắc về phạm vi của
ontology. Việc liệt kê các thuật ngữ còn cho thấy được phần nào tổng quan về các khái
niệm trong lĩnh vực đó, giúp cho các bước tiếp theo được thuận lợi.
 Bước 4: Xác định các lớp và phân cấp của các lớp
Công việc xác định các lớp không chỉ đơn giản là tiến hành tìm hiểu về ngữ nghĩa
của các thuật ngữ đã có để có được các mô tả cho thuật ngữ đó, mà còn phải định vị cho
các lớp mới, loại bỏ ra khỏi ontology nếu nằm ngoài phạm vi của ontology hay hợp nhất
với các lớp đã có nếu có nhiều thuật ngữ có ngữ nghĩa như nhau (đồng nghĩa, hay đa ngôn
ngữ). Ngoài ra không phải thuật ngữ nào cũng mang tính chất như một lớp.
Một công việc cần phải tiến hành song song với việc xác định các lớp là xác định
phân cấp của các lớp đó. Việc này giúp định vị các lớp dễ dàng hơn.
Có một số phương pháp tiếp cận trong việc xác định phân cấp của các lớp:
- Phương pháp từ trên xuống (top-down): bắt đầu với định nghĩa của các lớp tổng quát
nhất trong lĩnh vực và sau đó chuyên biệt hóa các khái niệm đó. Ví dụ: Trong
Ontology về quản lý nhân sự, ta bắt đầu với lớp Người, sau đó chuyên biệt hóa lớp
Người đó bằng cách tạo ra các lớp con của lớp Người như : Kỹ sư, Công nhân, Bác
sỹ,… Lớp Kỹ sư cũng có thể chuyên biệt hóa bằng cách tạo ra các lớp con như Kỹ sư
CNTT, Kỹ sư điện, Kỹ sư cơ khí, …
- Phương pháp từ dưới lên (bottom-up): bắt đầu với định nghĩa của các lớp cụ thể nhất,
như các lá trong cây phân cấp. Sau đó gộp các lớp đó lại thành các khái tổng quát hơn.
Ví dụ: ta bắt đầu với việc định nghĩa các lớp như: nhân viên lễ tân, nhân viên vệ sinh,
nhân viên kỹ thuật. Sau đó tạo ra một lớp chung hơn cho các lớp đó là lớp nhân viên.
- Phương pháp kết hợp: kết hợp giữa phương pháp từ trên xuống và từ dưới lên: bắt đầu

từ định nghĩa các lớp dễ thấy trước và sau đó tổng quát hóa và chuyên biệt hóa các lớp
đó một cách thích hợp. Ví dụ ta bắt đầu với lớp nhân viên trước, là thuật ngữ hay gặp
nhất trong quản lý nhân sự. Sau đó chúng ta có thể chuyên biệt hóa thành các lớp con:
nhân viên lễ tân, nhân viên vệ sinh,… hoặc tổng quát hóa lên thành lớp Người.
 Bước 5: Xác định các thuộc tính
Để xác định thuộc tính cho các lớp, ta quay trở lại danh sách các thuật ngữ đã liệt
kê được. Hầu hết các thuật ngữ còn lại (sau khi đã xác định lớp) là thuộc tính của các lớp
đó. Với mỗi thuộc tính tìm được, ta phải xác định xem nó mô tả cho lớp nào. Các thuộc
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 12
tính đó sẽ trở thành thuộc tính của các lớp xác định. Ví dụ lớp Người có các thuộc tính
sau: Họ, Tên, Ngày sinh, Giới tính, Nghề nghiệp, Địa chỉ, Điện thoại,…
 Bước 6: Xác định ràng buộc của các thuộc tính
Các thuộc tính có thể có nhiều khía cạnh khác nhau: như kiểu giá trị, các giá trị cho
phép, số các thuộc tính (lực lượng), và các đặc trưng khác mà giá trị của thuộc tính có thể
nhận. Ví dụ: “Năm sinh” của một “nhân viên” chỉ có duy nhất và là số nguyên, có thể
nhận giá trị từ 1948 đến 1990. Cần phải xác định các ràng buộc cho một thuộc tính càng
chặt chẽ càng tốt, để tránh trường hợp nhập dữ liệu sai, dẫn đến đổ vỡ của các ứng dụng
sử dụng Ontology này.
 Bước 7: Tạo các thể hiện / thực thể
Bước cuối cùng là tạo ra các thể hiện của các lớp trong sự phân cấp. Việc tạo thể
hiện cho một lớp là quá trình điền các thông tin vào các thuộc tính của lớp đó.
2.2 Công cụ phát triển ontology
Một số công cụ phát triển và hiệu chỉnh có giá trị trong việc làm giảm độ phức tạp
và thời gian dùng cho nhiệm vụ xây dựng ontology. Các công cụ như Kaon, OileEd và
Protégé cung cấp các giao diện nhằm giúp đỡ người sử dụng thực hiện các hoạt động
chính yêu trong trong quá trình phát triển một ontology. Việc lựa chọn một công cụ hiệu
chỉnh phù hợp nhất có nhiều khó khăn vì mỗi kiểu ontology có các yêu cầu về kinh phí,
thời gian, tài nguyên khác nhau. Để giúp cho việc giải quyết vướng mắc này, Singh &

Murshed (2005) đưa ra các tiêu chuẩn đánh giá công cụ tạo ontology. Tiêu chuẩn bao
gồm tính năng, khả năng sử dụng lại, lưu trữ dữ liệu, mức độ phức tạp, quan hệ, tính lâu
bền, độ an toàn, độ chắc chắn, khả năng học, tính khả dụng, hiệu lực, và tính rõ ràng.
Protégé và OntoEditFree được phát triển bởi Singh & Murshed sử dụng các tiêu chuẩn
này.
Một số công cụ hiệu chỉnh ontology phổ biến:
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 13

Các công cụ phát triển Ontology
Protégé hỗ trợ OWL, là công cụ được sử dụng rộng rãi và lâu nhất hiện nay. Nó
cho phép người sử dụng định nghĩa và chỉnh sửa các lớp ontology, các thuộc tính và quan
hệ và các thể hiện sử dụng cấu trúc cây. Các ontology có thể được đưa ra theo các định
dạng RDF(S), XML Schema. Platform protégé cung cấp hai cách chính mô hình hóa
ontology thông qua Protégé - Frame và Protégé – OWL, ngoài ra có thể có nhiều plugin.
Chúng ta có thể quan sát một cách trực quan thông qua OWL Viz, nó cho phép quan sát
ontology dưới dạng đồ họa và đưa file ảnh JPEG. Ngoài ra, nó còn hỗ trợ truy vấn
SPARQL. Hiện tại, Protégé đã có phiên bản 4.2 hỗ trợ OWL 2
 Các ưu điểm của Protégé là:
 Hỗ trợ đầy đủ ba phiên bản của ngôn ngữ OWL là OWL-Full, OWL-Lite và OWL-
DL.
 Nhờ sử dụng mô hình hướng đối tượng của ngôn ngữ Java, Protégé rất hiệu quả
trong việc mô hình hóa các lớp, thực thể, quan hệ…
 Giao diện thiết kế trực quan có tính tương tác cao. Người sử dụng có thể định nghĩa
các thành phần của Ontology trực tiếp từ các form. Nó hỗ trợ xây dựng các thành
phần của một Ontology rất nhanh và hiệu quả.
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 14

 Cho phép biểu diễn trực quan Ontology dưới dạng các sơ đồ.
 Cho phép xây dựng Ontology từ nhiều nguồn khác nhau.
 Protégé tự động lưu một bản tạm của Ontology. Nếu có lỗi phát sinh trong quá trình
thao tác thì Ontology cũ sẽ tự động được phục hồi.
 Cung cấp chức năng tìm kiếm lỗi, kiểm tra tính nhất quán và đầy đủ của Ontology.
 Cho phép các lớp và thuộc tính của Ontology này có thể được sử dụng trong
một Namespace khác mà chỉ cần sử dụng các URL để tham khảo.
 Hỗ trợ suy luận trực tiếp trên Ontology dựa trên Interface chuẩn DL
Implementation Group (DIG).
 Hỗ trợ sinh mã tự động. Protégé cho phép chuyển Ontology thành mã nguồn
RDF/XML, OWL, DIG, Java, EMF Java Interfaces, Java Schema Classes Các mã
này có thể được nhúng trực tiếp vào ứng dụng và là đầu vào cho các thao tác trên
Ontology khi cần.
3. Ontology về thông tin trong bộ môn Truyền thông và Mạng máy
tính
Để chuyển thông tin của bộ môn về dưới dạng các file RDF thì trước hết cần xác
định được những thông tin này thuộc về những nhóm đối tượng nào và mối quan hệ giữa
các nhóm đối tượng đó ra sao. Đó chính là việc xây dựng nên ontology.
Như chúng ta đã biết thông tin liên quan đến đào tạo và nghiên cứu của bộ môn là
thông tin về giảng viên, sinh viên, bài báo, lĩnh vực nghiên cứu và các dự án, đề tài khoa
học của bộ môn. Đó có thể coi là những khái niệm trong ontology.
Với ontology này, có thể tạo tất cả các đối tượng thuộc các khái niệm và thiết lập
mối quan hệ giữa các mối quan hệ đó. Những mối quan hệ này sẽ được thể hiện như là
những câu phát biểu trong các file RDF.
Bên cạnh mối quan hệ với các đối tượng khác, mỗi đối tượng cũng có những thuộc
tính riêng. Chẳng hạn như một bài báo có thể có thêm các thuộc tính như tên bài báo, nội
dung phần tóm tắt, các từ khóa quan trọng nhất… Các thuộc tính này là các giá trị thuộc
kiểu Literal trong file RDF và có tác dụng làm các phần nội dung khi tìm kiếm theo từ
khóa.
Các mối quan hệ giữa các khái niệm của ontology đã xây dựng không phải là tất cả

các mối quan hệ có thể có. Đây có thể coi là những mối quan hệ điển hình nhất giữa các
khái niệm này.
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 15
L
à

t
h
à
n
h

v
i
ê
n

c

a

(
i
s
M
e
m
b

e
r
O
f
)
C
ó

t
h
à
n
h

v
i
ê
n
(
h
a
s
M
e
m
b
e
r
)
L

à

t
h
à
n
h

v
i
ê
n

c

a

(
i
s
M
e
m
b
e
r
O
f
)
C

ó

t
h
à
n
h

v
i
ê
n

(
h
a
s
M
e
m
b
e
r
)
C
ó

t
á
c


g
i

(
h
a
s
A
u
t
h
o
r
)
L
à

t
á
c

g
i


c

a
(

i
s
A
u
t
h
o
r
O
f
)
T
h
u

c

v


d


á
n
(
i
s
B
e

l
o
n
g
T
o
P
r
o
j
e
c
t
)
C
ó

b
à
i

b
á
o
(
h
a
s
P
u

b
l
i
c
a
t
i
o
n
)
Q
u
a
n

t
â
m

(
I
n
t
e
r
e
s
t
s
)

Đ
ư

c

q
u
a
n

t
â
m

b

i
(
i
s
I
n
t
e
r
e
s
t
e
d

B
y
)

Ontology về thông tin trong bộ môn Truyền thông và Mạng máy tính
3.1 Các lớp trong Ontology
Việc phân tích các lớp là rất quan trọng thể hiện độ lớn của ứng dụng và sự bao
quát của vấn đề. Trong phần này các lớp được xây dựng là Lecturer, Student, Area,
Publication và Project. Ngoài ra còn xây dựng thêm lớp Person là lớp cơ sở của hai lớp
Lecturer và Student.
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 16


3.2 Các thuộc tính trong Ontology
Các thuộc tính của một lớp biểu thị những quan hệ của lớp đó với một lớp. Thông
thường các thuộc tính được quy định kiểu dữ liệu để hỗ trợ việc xây dựng chương trình có
tính ràng buộc hơn
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 17

Các thuộc tính dữ liệu trong Ontology (Data Properties)

Các quan hệ trong Ontology (Object Properties)
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 18
3.3 Các cá thể trong Ontology

Những cá thể trong ontology được mô tả và thiết lập với mục đích là để luu trữ
những nội dung thông tin của những đối tượng trong bài toán ứng dụng.

3.4 Thuộc tính của các khái niệm trong ontology về thông tin trong bộ môn
Truyền thông và Mạng máy tính.
Lớp Person
Tên thuộc
tính
Ý nghĩa Kiểu Số nhiều
name Tên người Literal
title
Là cách gọi tên người này một cách
lịch sự như Mr./Ms. …
Literal
gender Là nam hay nữ Literal
birthday Ngày sinh Literal
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 19
image Đường link ảnh đại diện Literal
mbox Địa chỉ email Literal x
homepage Địa chỉ trang chủ cá nhân Literal
phone Số điện thoại Literal x
interests Thích những lĩnh vực nào
Resource
(Area)
x
isAuthorOf Là tác giả của những bài báo nào
Resource
(Publication)


x
isMemberOf
Là thành viên của các dự án, các đề
tài khoa học nào
Resource
(Project)
x
Bảng danh sách các thuộc tính của lớp Person
Lớp Lecturer
Tên thuộc
tính
Ý nghĩa Kiểu Số nhiều
name Tên người Literal
title
Là cách gọi tên người này một cách
lịch sự như TS./ThS. …
Literal
gender Là nam hay nữ Literal
birthday Ngày sinh Literal
image Đường link ảnh đại diện Literal
mbox Địa chỉ email Literal x
homepage Địa chỉ trang chủ cá nhân Literal
phone Số điện thoại Literal x
interests Thích những lĩnh vực nào
Resource
(Area)
x
isAuthorOf Là tác giả của những bài báo nào
Resource

(Publication)

x
isMemberOf
Là thành viên của các dự án, các đề
Resource x
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 20
tài khoa học nào (Project)
advises
Đã hướng dẫn những sinh viên nào
làm đồ án tốt nghiệp
Resource
(Student)
x
Bảng danh sách các thuộc tính của lớp Lecturer
Lớp Student
Tên thuộc tính

Ý nghĩa Kiểu Số nhiều
name Tên người Literal
title
Là cách gọi tên người này một
cách lịch sự như Mr./Ms. …
Literal
gender Là nam hay nữ Literal
birthday Ngày sinh Literal
image Đường link ảnh đại diện Literal
mbox Địa chỉ email Literal x

homepage Địa chỉ trang chủ cá nhân Literal
phone Số điện thoại Literal x
className Tên lớp theo học Literal
course Khóa bao nhiêu Literal
interests Thích những lĩnh vực nào
Resource
(Area)
x
isAuthorOf Là tác giả của những bài báo nào
Resource
(Publication)

x
isMemberOf
Là thành viên của các dự án, các
đề tài khoa học nào
Resource
(Project)
x
isAdvisedBy
Được những giảng viên nào
hướng dẫn đồ án tốt nghiệp
Resource
(Professor)
x
Bảng danh sách các thuộc tính của lớp Student


Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính

Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 21

Lớp Area
Tên thuộc tính Ý nghĩa Kiểu Số nhiều
areaName Tên lĩnh vực Literal
areaDescription Mô tả về lĩnh vực Literal
areaNameInEnglish Tên lĩnh vực trong tiếng Anh Literal
areaKeywords Các từ khóa về lĩnh vực này Literal x
isAreaOfPublication
Là lĩnh vực của những bài
báo nào
Resource
(Publication)

x
isInterestedBy Được những ai yêu thích
Resource
(Person)
x
relatesProject
Liên quan đến những dự án
hay đề tài khoa học nào
Resource
(Project)
x
Bảng danh sách các thuộc tính của lớp Area

Lớp Publication
Tên thuộc tính Ý nghĩa Kiểu Số nhiều
publicationName Tên bài báo Literal

publicationLink Đường link tới bài báo Literal
publicationAbstract Phần tóm tắt của bài báo Literal
publicationKeywords Các từ khóa của bài báo Literal x
references
Tham khảo tới những bài
báo nào (tất cả)
Literal x
refersTo
Tham khảo đến những bài
báo nào trong bộ môn
Resource
(Publication)

x
has Author Có những tác giả nào
Resource
(Person)
x
isBelongToArea Bài báo thuộc lĩnh vực nào Resource x
Tìm hiểu về Ontology và xây dựng hệ thống mô tả thông tin trong bộ môn Truyền thông và
mạng máy tính
Nhóm học viên: Lê Quốc Hoan – Nguyễn Công Trung Trang 22
(Area)
isBelongToProject
Bài báo của dự án hay đề
tài khoa học nào
Resource
(Project)
x
Bảng danh sách các thuộc tính của lớp Publication


Lớp Project
Tên thuộc tính Ý nghĩa Kiểu Số nhiều
projectName Tên dự án, đề tài khoa học Literal
projectDescription Mô tả về dự án, đề tài Literal
projected Mã dự án, đề tài Literal
projectLevel
Cấp đề tài: cấp Nhà nước,
cấp Bộ, cấp Trường…
Literal
projectBegin Thời điểm bắt đầu Literal
projectEnd Thời điểm kết thúc Literal
projectSponsors
Các nhà tài trợ cho dự án,
đề tài khoa học
Literal x
hasMember Có những thành viên nào
Resource
(Person)
x
hasPublication Có những bài báo nào
Resource
(Publication)

x
relatesArea
Liên quan đến những lĩnh
vực nào
Resource
(Area)

x
Bảng danh sách các thuộc tính của lớp Project

×