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

Thu nhận ngữ nghĩa của ảnh và tìm kiếm theo ngữ nghĩa ảnh số

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 (2.01 MB, 74 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
---------------------------------------

TRẦN VĂN TRUNG

THU NHẬN NGỮ NGHĨA CỦA ẢNH
VÀ TÌM KIẾM THEO NGỮ NGHĨA ẢNH SỐ

Chuyên ngành: Công nghệ thông tin

LUẬN VĂN THẠC SĨ KỸ THUẬT
Công nghệ thông tin

NGƯỜI HƯỚNG DẪN KHOA HỌC:
TS. Cao Tuấn Dũng

Hà Nội – Năm 2015

1


MỤC LỤC
MỤC LỤC ..................................................................................................................2
LỜI CAM ĐOAN ......................................................................................................5
DANH MỤC THUẬT NGỮ - VIẾT TẮT ...............................................................6
DANH MỤC HÌNH VẼ ............................................................................................7
LỜI MỞ ĐẦU ............................................................................................................8
1. Lý do chọn đề tài ....................................................................................................8
2. Mục đích nghiên cứu, đối tượng, phạm vi áp dụng ................................................8
Chương I: TỔNG QUAN VỀ WEB NGỮ NGHĨA ..............................................10


1.1. Sự ra đời và khái niệm của Web ngữ nghĩa.......................................................10
1.2. Những ích lợi mà web ngữ nghĩa mang lại .......................................................11
1.2.1. Máy có thể hiểu được thông tin trên web .......................................................11
1.2.2. Thông tin được tìm kiếm nhanh chóng và chính xác hơn ..............................11
1.2.3. Dữ liệu liên kết động ......................................................................................11
1.2.4. Hỗ trợ công cụ tự động hóa ............................................................................12
1.3. Kiến trúc công nghệ Web ngữ nghĩa .................................................................12
1.4. Các ngôn ngữ biễu diễn dữ liệu .........................................................................16
1.4.1. XML ...............................................................................................................16
1.4.1.1. Khái niệm về XML ......................................................................................16
1.4.1.2. Cấu trúc một tài liệu XML ...........................................................................16
1.4.1.3. Lược đồ XML ..............................................................................................18
1.4.2. RDF (Resource Description Framework): .....................................................19
1.4.2.1. Khái niệm RDF: ...........................................................................................19
1.4.2.2. Mô hình RDF ...............................................................................................21
1.4.2.2.1. Namespace và Qualified name: ...............................................................21
1.4.2.2.2. Bộ ba RDF (RDF triple) ..........................................................................22
1.4.2.2.3. Literal .......................................................................................................23
1.4.2.2.4. Kiểu dữ liệu có cấu trúc và Blank node ....................................................24
1.4.2.3. Cấu trúc RDF/XML ....................................................................................26

2


1.4.2.4. RDF Container ............................................................................................27
1.4.2.5. RDF Collection ...........................................................................................29
Chương II: LÝ THUYẾT XÂY DỰNG ONTOLOGY .......................................31
2.1. Tổng quan về ontology ......................................................................................31
2.1.1. Định nghĩa ......................................................................................................31
2.1.2. Vai trò của Ontology ......................................................................................31

2.1.3. Thành phần của Ontology ..............................................................................32
2.1.4. Xây dựng Ontology ........................................................................................34
2.1.4.1. Phương pháp xây dựng một Ontology ........................................................34
2.1.4.2. Ngôn ngữ biểu diễn Ontology:.....................................................................37
2.1.4.3. Một số nghiên cứu về ontology....................................................................39
2.2. Công cụ xây dựng Ontology (công cụ Protégé) .................................................42
2.2.1. Cách tạo lớp và ràng buộc ..............................................................................43
2.2.2. Tạo các thuộc tính và quan hệ: .......................................................................44
2.2.3. Tạo các cá thể .................................................................................................46
2.3. Tổng kết chương .................................................................................................46
Chương III: CHÚ THÍCH NGỮ NGHĨA .................................................................
VÀ TÌM KIẾM NGỮ NGHĨA ẢNH .....................................................................47
3.1. Chú thích ngữ nghĩa ảnh ....................................................................................47
3.1.1. Giới thiệu về chú thích ngữ nghĩa ...................................................................47
3.1.2. Một số ứng dụng về chú thích ngữ nghĩa ảnh .................................................47
3.1.2.1. Sử dụng trong việc quản lý bộ sưu tập ảnh cá nhân.....................................47
3.1.2.2. Sử dụng trong quản lý thông tin tư liệu .......................................................54
3.2. Tìm kiếm ngữ nghĩa ...........................................................................................56
3.2.1. Nhu cầu về tìm kiếm ngữ nghĩa .....................................................................56
3.2.2. Công cụ tìm kiếm ngữ nghĩa ..........................................................................57
3.2.3. Ngôn ngữ truy vấn SPARQL .........................................................................59
3.2.3.1. Định nghĩa: ...................................................................................................59
3.2.3.2. Cấu trúc của SPARQL: ................................................................................59

3


3.2.3.3. Các kiểu truy vấn: ........................................................................................60
Chương 4: THỰC NGHIỆM XÂY DỰNG VÀ KHAI THÁC CÔNG CỤ CHÚ
THÍCH VÀ TÌM KIẾM NGỮ NGHĨA ẢNH .......................................................62

4.1. Xây dựng ontology ảnh ......................................................................................62
4.2. Chú thích ngữ nghĩa ảnh ....................................................................................64
4.3. Khai thác sử dụng công cụ tìm kiếm ..................................................................68
4.4. Đánh giá kết quả.................................................................................................71
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .............................................................72
1. Kết luận .................................................................................................................72
2. Hướng phát triển của đề tài ...................................................................................72
TÀI LIỆU THAM KHẢO ......................................................................................73

4


LỜI CAM ĐOAN
Luận văn Thạc sĩ “Thu nhận ngữ nghĩa của ảnh và tìm kiếm theo ngữ nghĩa
ảnh số”, chuyên ngành công nghệ thông tin là công trình của cá nhân tôi. Các nội
dung nghiên cứu và kết quả trình bày trong luận văn là trung thực rõ ràng. Các tài
liệu tham khảo, nội dung trích dẫn đã ghi rõ nguồn gốc.
Ngày 11 tháng 9 năm 2015
Tác giả luận văn

Trần Văn Trung

5


DANH MỤC THUẬT NGỮ - VIẾT TẮT

STT

Viết tắt


Giải thích

1

RDF

Resource Description Framework

2

OWL

Ontology Web Language

3

SPARQL

Protocol and RDF Query Language

4

RDFS

RDF Schema

5

URI


Uniform Resouce Identifieres

6

XML

eXtensible Markup Language

7

HTML

HyperText Markup Language

8

DTD

Document Type Definition

9

FOAF

Friend of a friend

10

MPEG


Moving Picture Experts Group

6


DANH MỤC HÌNH VẼ
Hình 1.1: Web ngữ nghĩa như một sự mở rộng của WWW ...............................10
Hình 1.2: Kiến trúc phân tầng của Web ngữ nghĩa năm 2001 ........................12
Hình 1.3: Kiến trúc phân tầng của Web ngữ nghĩa hoàn thiện năm 2006 ......13
Hình 2.1: Cấu trúc lớp phân cấp......................................................................36
Hình 2.2: Ràng buộc về thuộc tính ...................................................................37
Hình 2.3: Cách tạo một lớp ..............................................................................43
Hình 2.4: Cấu trúc phân cấp của các lớp. .......................................................44
Hình 2.5: Tạo các quan hệ trong ontology ......................................................45
Hình 2.6: Tạo các thuộc tính trong Ontology ..................................................45
Hình 2.7: Tạo các thể hiện của lớp (individual) ..............................................46
Hình 3.1: Ảnh Katerina Tzouvara ở Thái Lan .................................................48
Hình 3.2: Ảnh cầu thủ bóng đá trong tư thế việt vị ..........................................55
Hình 4.1: Cấu trúc lớp trong ontology .............................................................62
Hình 4.2: Các Thuộc tính của ontology ...........................................................63
Hình 4.3: các thể hiện của lớp trong ontology .................................................64

7


LỜI MỞ ĐẦU
1. Lý do chọn đề tài
Ngày nay, Word Wide Web đã trở thành một kho tàng thông tin khổng lồ của
nhân loại và một môi trường chuyển tải thông tin không thể thiếu được trong thời đại

công nghệ thông tin ngày nay. Tuy nhiên, lượng thông tin khổng lồ đó cũng tạo ra
khó khăn lớn trong việc tìm kiếm thông tin trên WWW. Hiện nay, chủ yếu thông tin
trên WWW được biểu diễn dưới dạng ngôn ngữ tự nhiên (các trang web sử dụng
ngôn ngữ HTML). Cách biểu diễn đó phù hợp với con người nhưng lại gây ra nhiều
khó khăn cho các chương trình làm nhiệm vụ hỗ trợ tìm kiếm thông tin. Chương trình
máy tính không thể hiểu được thông tin và dữ liệu biểu diễn dưới dạng thích hợp với
con người.
Sự ra đời của Web ngữ nghĩa (hay Semantic Web) do W3C (The World
Wide Web Consortium) khởi xướng đã mở ra một bước tiến của công nghệ Web,
những thông tin trong Web ngữ nghĩa có cấu trúc hoàn chỉnh và mang ngữ nghĩa
mà máy tính có thể “hiểu” được. Những thông tin này, có thể được sử dụng lại mà
không cần qua các bước tiền xử lý. Phần lớn các máy tìm kiếm hiện nay là dựa trên
cơ chế tìm kiếm theo từ khóa, cho nên kết quả tìm kiếm trả về không theo mong
muốn của người dùng. Do vậy, cần thiết có một hệ thống tìm kiếm ngữ nghĩa
(Semantic Search) tìm kiếm trên Web ngữ nghĩa hay trên một mạng tri thức mang
ngữ nghĩa, kết quả trả về là các thông tin có cấu trúc hoàn chỉnh mà máy tính có thể
“hiểu” được, nhờ đó việc sử dụng hay xử lý thông tin trở nên dễ dàng hơn. Ngoài
ra, việc xây dựng được một hệ thống tìm kiếm ngữ nghĩa cụ thể sẽ tạo tiền đề cho
việc mở rộng xây dựng các hệ thống tìm kiếm trên nhiều lĩnh vực khác nhau, điều
này mang một ý nghĩa thiết thực trong đời sống, ví dụ như: tìm kiếm ảnh dựa vào
ngữ nghĩa. Và đó cũng là lý do luận văn “Thu nhận ngữ nghĩa của ảnh và tìm
kiếm theo ngữ nghĩa ảnh số” được em quan tâm và chọn làm luận văn tốt nghiệp.
2. Mục đích nghiên cứu, đối tượng, phạm vi áp dụng
- Mục đích:
Đề tài tập trung nghiên cứu lý thuyết cơ bản về web ngữ nghĩa, chú thích ngữ

8


nghĩa của ảnh và ứng dụng tìm kiếm ảnh dựa vào ngữ nghĩa.

Để đạt được những mục tiêu trên, đề tài tập trung vào các nhiệm vụ sau:
+ Tìm hiểu, phân tích kiến trúc của web ngữ nghĩa
+ Tìm hiểu các ngôn ngữ biểu diễn, truy vấn dữ liệu
+ Khảo sát, tìm hiểu công cụ xây dựng các ontology ảnh
+ Tìm hiểu chú thích ngữ nghĩa ảnh và tìm kiếm ngữ nghĩa
+ Phân tích, khai thác công cụ tìm kiếm ảnh dựa vào ngữ nghĩa
- Đối tượng, phạm vi áp dụng:
Nghiên cứu kiến trúc của web ngữ nghĩa và chú thích ngữ nghĩa của ảnh.
Thực nghiệm xây dựng và khai thác công cụ tìm kiếm ảnh dựa vào ngữ nghĩa.
Nội dung luận văn được chia thành 4 chương:
Chương 1: Tổng quan về web ngữ nghĩa
Chương 2: Xây dựng Ontology thông tin ảnh
Chương 3: Chú thích ngữ nghĩa và tìm kiếm ngữ nghĩa ảnh
Chương 4: Thực nghiệm xây dựng và khai thác công cụ chú thích và tìm
kiếm ngữ nghĩa ảnh.

9


Chương I: TỔNG QUAN VỀ WEB NGỮ NGHĨA
1.1. Sự ra đời và khái niệm của Web ngữ nghĩa
Thế hệ web đầu tiên với những trang HTML thủ công, thế hệ thứ hai đã tạo
nên một bước cho máy thực hiện và thường là các trang HTML động. Các thế hệ
web này mang ý nghĩa cho con người thao tác trực tiếp (đọc, duyệt, điền vào mẫu).
Thế hệ web thứ ba được gọi là “Semantic web”, mang mục đích thông tin sẽ do máy
xử lý.
Một trong những khái niệm về Web ngữ nghĩa được Tim Berners – Lee định
nghĩa như sau:
“Web ngữ nghĩa là sự mở rộng của WEB hiện tại mà trong đó thông tin
được định nghĩa rõ ràng sao cho con người và máy tính có thể cùng làm việc với

nhau một cách hiệu quả hơn”. [1]
Sự mở rộng của semantic web chính là việc thêm vào trong web hiện tại yếu
tố ngữ nghĩa, để cho phép máy tính khai thác và khai thác tốt hơn các thông tin trên
web. Trên semantic web , tài nguyên được đưa ra với sự xác định rõ ràng về ngữ
nghĩa và thuận tiện để máy tính và con người có thể cộng tác làm việc.
Web ngữ nghĩa là một mạng lưới các thông tin được liên kết sao cho chúng có
thể xử lý dễ dàng bởi các máy tính ở phạm vi toàn cầu. Nó được xem là cách mô tả
thông tin rất hiệu quả trên Word Wide Web, và cũng được xem là một cở sở dữ liệu
có khả năng liên kết toàn cầu.

Hình 1.1: Web ngữ nghĩa như một sự mở rộng của WWW
Tóm lại: Semantic Web đơn thuần chỉ là một sự mở rộng của Web hiện hành
mà không phải là một sự đột phá thay thế công nghệ Web cũ. Ngược lại Semantic

10


Web kế thừa từ Web hiện hành và cho phép khai thác Web hiện tại trong một con
đường mới, con đường mà máy và người có thể làm việc cộng tác trong khai thác tài
nguyên Web một cách hiệu quả hơn.
1.2. Những ích lợi mà web ngữ nghĩa mang lại
1.2.1. Máy có thể hiểu được thông tin trên web
Internet ngày nay dựa hoàn toàn vào nội dung. Web hiện hành chỉ cho con
người đọc chứ không dành cho máy hiểu. Semantic sẽ cung cấp cho máy có thể hiểu
được, ví dụ như:
“ Cristiano Ronaldo là một cầu thủ bóng đá nổi tiếng của câu lạc bộ Real
Madrid. Real Madrid là một câu lạc bộ bóng đá của Tây Ban Nha. Cristiano
Ronaldo là cầu thủ đã 4 lần đạt danh hiệu chiếc giày vàng Châu Âu”.
Những câu như vậy chúng có thể hiểu bởi con người nhưng làm sao chúng
có thể được hiểu bởi máy tính.

1.2.2. Thông tin được tìm kiếm nhanh chóng và chính xác hơn
Với web ngữ nghĩa, việc tìm kiếm sẽ trở lên dễ dàng hơn nếu mọi thứ được
đặt trong ngữ cảnh. Ý tưởng chính yếu là toàn bộ ngữ cảnh mà người sử dụng được
biết đến.
Mục tiêu của web ngữ nghĩa là phát triển các tiêu chuẩn và kỹ thuật để giúp
máy hiểu nhiều thông tin trên web hơn, để chúng tìm ra các thông tin dồi dào hơn,
tích hợp, duyệt dữ liệu, và tự động hóa các thao tác.
Với web ngữ nghĩa chúng ta không những nhận được những thông tin chính
xác hơn khi tìm kiếm thông tin từ máy tính, mà máy tính còn có thể tích hợp thông
tin từ nhiều nguồn khác nhau, biết so sánh các thông tin với nhau.
1.2.3. Dữ liệu liên kết động
Với web ngữ nghĩa chúng ta có thể kết hợp các thông tin đã được mô tả và
giàu ngữ nghĩa với bất kỳ nguồn dữ liệu nào.
Ví dụ, bằng cách thêm các metadata (dữ liệu về dữ liệu) cho các tài liệu khi
tạo ra nó, chúng ta có thể tìm kiếm các tài liệu mà metadata cho biết tác giả là Eric

11


Miller. Cũng thế, với metadata chúng ta có thể tìm kiếm chỉ những tài liệu thuộc
loại tài liệu nghiên cứu.
Với web ngữ nghĩa, chúng ta không chỉ cung cấp các URI cho các tài liệu
như đã làm trong quá khứ mà còn cho con người, các khái niệm, các mối liên hệ.
Như trong ví dụ trên, bằng cách cung cấp những định danh duy nhất cho mỗi con
người như vai trò của “tác giả” và khái niệm “tài liệu nghiên cứu”, chúng ta đã làm
rõ người ở đây là ai và mối quan hệ của người này với một tài liệu nào đó. Ngoài ra,
bằng cách làm rõ người mà chúng ta đang đề cập chúng ta có thể phân biệt được
những tài liệu của Eric Miller với những tài liệu của những người khác. Chúng ta
cũng có thể kết hợp những thông tin đã được mô tả ở nhiều site khác nhau để biết
thêm thông tin về người này ở những ngữ cảnh khác nhau ví dụ như vai trò của anh

ta ra sao khi anh ta là tác giả, nhà quản lý, nhà phát triển,…
1.2.4. Hỗ trợ công cụ tự động hóa
Ngoài những lợi ích trên, web ngữ nghĩa còn cung cấp các loại dịch vụ tự
động từ nhiều vùng khác nhau : từ gia đình và từ các thư viện kỹ thuật số cho đến
các dịch vụ kinh doanh điện tử và dịch vụ sức khỏe…
Web ngữ nghĩa cung cấp phương tiện để cung cấp thêm các thông tin chi tiết
lên web nhằm hỗ trợ sự tự động hóa cho các dịch vụ.
1.3. Kiến trúc công nghệ Web ngữ nghĩa

Hình 1.2: Kiến trúc phân tầng của Web ngữ nghĩa năm 2001
Trong đó:
- Unicode và URI: cơ sở để xây dựng các tài liệu

12


- XML+NS+XMLschema: Công nghệ xây dựng tài liệu bán cấu trúc
- RDF và RDFs: mô tả siêu dữ liệu trên Web ngữ nghĩa
- Ontology vocabulary: Mô tả các quan hệ cũng như các khái niệm trong
miền ứng dụng.
- Logic: Cơ sở để chuẩn hóa các khái niệm cho Web ngữ nghĩa
- Proof và Trust: Là các ứng dụng cao cấp mà Web ngữ nghĩa muốn đạt đến
cho Web hiện tại.

Hình 1.3: Kiến trúc phân tầng của Web ngữ nghĩa hoàn thiện năm 2006
Trong đó:
- Unicode và URI: cơ sở để xây dựng các tài liệu
- XML: công nghệ xây dựng tài liệu bán cấu trúc.
- RDF: Chuẩn trao đổi siêu dữ liệu Web ngữ nghĩa
- Ontology (RDFs, OWL) và ngôn ngữ các luật: Mô tả các quan hệ cũng như

các khái niệm trong miền ứng dụng và suy diễn của chúng.
SPARQL: ngôn ngữ truy vấn cho dữ liệu RDF và ontology [12]
- Đồng nhất về logic: cơ sở để chuẩn hóa các khái niệm cho Web ngữ nghĩa
- Proof và Trust: Là các ứng dụng cao cấp mà Web ngữ nghĩa muốn đạt đến ho
web hiện tại.
- Tầng trên cùng: Giao diện người dùng và các ứng dụng.

13


Giải thích chi tiết:
Từ sơ đồ kiến trúc của Web ngữ nghĩa, ta thấy có bảy tầng kiến trúc. Trong
đó, với hệ thống Web hiện tại (World Wide Web) là đang ở tầng thứ hai.
Unicode: là một bảng mã chuẩn chung có đủ các ký tự để thống nhất sự giao
tiếp trên tất cả các quốc gia, đáp ứng tính nhất quán toàn cầu của web.
URI (Uniform Resource Identifier): là kí hiệu nhận dạng Web đơn giản. Cụ
thể, nó là một xâu ngắn cho phép nhận dạng tài nguyên Web như: với các xâu bắt
đầu với "http:" hoặc "ftp:" mà chúng ta thường thấy trên World Wide Web. Bất kỳ
một người nào cũng có thể tạo một URI, và sở hữu chúng và chúng là một công
nghệ cơ sở để xây dựng một hệ thống Web toàn cầu. Hệ thống World Wide Web
được xây dựng trên chúng và bất kỳ cái gì mà có một URI thì được coi là "trên
Web".
URL (Uniform Resource Locator): là một dạng đặc biệt của URI, cụ thể nó là
một địa chỉ trên mạng.
(URI (Uniform Resource Identifier) có thể hiểu là một chuỗi định danh tài
nguyên trên mạng. Mỗi một nguồn tài nguyên trên mạng sẽ có một địa chỉ duy nhất
xác định nó, đó chính là URI. Một dạng thức quen thuộc của URI là URL (Uniform
Resource Locator) được sử dụng để định danh một địa chỉ Web nào đó trên
Internet. Nói theo cách khác, URI là sự mở rộng của URL.)
RDF (Resource Description Framework): Khung mô tả tài nguyên - RDF

được W3C giới thiệu để cung cấp một cú pháp chuẩn để tạo, thay đổi và sử dụng
các chú thích trong Web ngữ nghĩa. Một mệnh đề RDF là một bộ ba có dạng: [chủ
thể - thuộc tính - đối tượng]. Trong đó, chủ đề là tài nguyên mà được mô tả bằng
thuộc tính và đối tượng. Thuộc tính thể hiện mối quan hệ giữa chủ đề và đối tượng.
Còn đối tượng ở đây có thể là một tài nguyên hoặc một giá trị. Ba thành phần trên
trong RDF đều là các URI. [13]
RDFS (RDF schema): RDFS là một ngôn ngữ ontology đơn giản của web ngữ
nghĩa, được coi là một ngôn ngữ cơ sở của web ngữ nghĩa. RDFS là ngôn ngữ mô tả
bộ từ vựng trên các bộ ba RDF. Nó cung cấp các công việc sau:

14


- Định nghĩa các lớp tài nguyên
- Định nghĩa các quan hệ giữa các lớp
- Định nghĩa các loại thuộc tính mà các lớp trên có
- Định nghĩa các mối quan hệ giữa các thuộc tính.
Ontology Vocabulary: Bộ từ vựng ontology được xây dựng trên cơ sở tầng
RDF và RDFS, cung cấp 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. Để xây dựng được các bộ từ vựng này, người ta đã sử
dụng các ngôn ngữ ontology để biểu diễn chúng như: RDFS, OIL, DAML,
DAML+OIL, OWL, ... Các ngôn ngữ này cung cấp khả năng biểu diễn và hỗ trợ lập
luận khác nhau và chúng dựa trên nền tảng là các ngôn ngữ logic mô tả tương ứng
khác nhau.
Tầng hợp Logic: Việc biểu diễn các tài nguyên dưới dạng các bộ từ vựng
ontology có mục đích là để máy có thể lập luận được. Mà cơ sở lập luận chủ yếu
dựa vào logic. Chính vì vậy mà các ontology được ánh xạ sang logic, cụ thể là logic
mô tả để có thể hỗ trợ lập luận. Vì logic mô tả có biểu diễn ngữ nghĩa hình thức
(đặc trưng của lý thuyết mô hình), và cung cấp các dịch vụ lập luận, là cơ sở để hỗ
trợ máy có thể lập luận và hiểu tài nguyên.

Tầng Proof: Tầng này đưa ra các luật để suy luận. Cụ thể từ các thông tin đã
có ta có thể suy ra các thông tin mới. Ví dụ: A là cha của B, A là em trai C thì khi
đó ta có thông tin mới là C là bác của B. Để có được các suy luận này thì cơ sở là
FOL (First-Order-Logic). Và tầng này hiện nay các nhà nghiên cứu đang xây dựng
các ngôn ngữ luật cho nó như: SWRL, RuleML.
Tầng Trust: Đảm bảo tính tin cậy của các ứng dụng trên Web ngữ nghĩa. Ví
dụ: có một người bảo x là xanh, một người khác lại nói x không xanh, như thế Web
ngữ nghĩa là không đáng tin cậy. Câu trả lời ở đây được xem xét trong các ngữ
cảnh. Mỗi ứng dụng trên web ngữ nghĩa sẽ có một ngữ cảnh cụ thể, chính vì thế các
mệnh đề trên có thể nằm trong các ngữ cảnh khác nhau khi đó ngữ nghĩa tương ứng
khác nhau nên các mệnh đề đó vẫn đúng, đáng tin cậy trong ngữ cảnh của nó. Để có
được sự chứng minh về độ tin cậy thì các lập luận được áp dụng là không đơn điệu

15


và có các cơ chế kiểm tra chứng minh kết hợp với công nghệ chữ ký điện tử để xác
nhận độ tin cậy. Các ngôn ngữ chứng minh là ngôn ngữ cho ta chứng minh một
mệnh đề là đúng hay sai.
1.4. Các ngôn ngữ biễu diễn dữ liệu
1.4.1. XML
1.4.1.1. Khái niệm về XML
XML (Extensible Markup Language) [15] là ngôn ngữ đánh dấu mở rộng
được phát triển dựa trên tính đơn giản, dễ dùng của HTML và tính phức tạp nhưng
đa chức năng của SGML (Standard Generalized Markup Language - ngôn ngữ
đánh dấu tiêu chuẩn tổng quát). XML là một đặc tả cho các tài liệu (document) mà
máy tính đọc được. Đánh dấu (markup) có nghĩa là các chuỗi ký tự nào đó trong tài
liệu có chứa thông tin chỉ ra vai trò nội dụng của tài liệu. Markup mô tả sơ đồ
(layout) dữ liệu của tài liệu (document) và cấu trúc logic. Markup làm thông tin tự
mô tả tùy vào cảm nhận. Markup được mô tả dưới dạng các từ trong dấu ngoặc

nhọn hay còn gọi là tag. Ví dụ <name> hay

, về khía cạnh này XML giống
như HTML. Một tài liệu XML bao gồm một tập các cặp thẻ lồng vào nhau. Mỗi thẻ
có một cặp các thuộc tính và giá trị.
Ví dụ:
<teacher>
<name> Tran Van Trung </name>
<from> Truong Dai hoc Ky thuat – Hau can CAND </from>
</teacher>
1.4.1.2. Cấu trúc một tài liệu XML
Một tài liệu XML có thể được chia thành hai phần chính, mỗi phần có thể có
các thành phần theo quy định khác nhau:
Phần khai báo: Chứa các khai báo cho tài liệu XML. Phần này có thể chứa
các định dạng như: Các chỉ thị xử lý, định nghĩa kiểu cho tài liệu, chú thích, phiên
bản đang sử dụng, cách thức mã hóa dữ liệu, báo cáo các chỉ thị xử lý cho ứng
dụng.

16


Phần thân chứa nội dung dữ liệu, bao gồm một hay nhiều phần tử, mỗi phần
tử được chứa trong một cặp thẻ. Phần tử đầu tiên của tài liệu được gọi là phần tử
gốc (root element).
Một tài liệu được coi là hợp khuôn dạng (well-form) nếu nó tuân thủ các quy
tắc sau:
* Các khai báo XML cần được đặt tại dòng đầu tiên của tài liệu, chẳng hạn
như khai báo các phiên bản hay các chỉ thị xử lý XML.
* Mỗi tài liệu XML chỉ có một thành phần gốc (root) chứa mọi thành phần
khác trong tài liệu. Các thành phần có thể đứng trước phần tử gốc là chú thích, chỉ
thị xử lý và định nghĩa DTD (nếu khai báo ở phần khởi đầu của tài liệu).
* Mỗi phần tử của tài liệu phải được nằm trong một cặp thẻ. Nếu là phần tử

rỗng thì thẻ phải được kết thúc bằng “/>”. Ví dụ: “<Image/>”
* Các thành phần trong tài liệu XML, khác thành phần gốc đều nằm giữa cặp
thẻ và phải lồng nhau một cách hợp lý, tức là không có thành phần phủ, tập hợp thẻ
này không được phép chồng lên thẻ kia, mỗi tập trong phải nằm trong tập hợp lớn
hơn kế tiếp.
* Các cặp thẻ phải được viết chính xác như nhau kể cả chữ hoa hay chữ
thường.
* Các giá trị của các thuộc tính đều phải nằm giữa hai ngoặc kép. Ví dụ:
hide=true là không hợp lệ, mà phải là hide= “true”.
XML namespace
 Namespace là không gian tên, một khái niệm được dùng để chỉ không gian
tên trong một tài liệu XML.
 Không gian tên XML là một chuẩn của W3C để cung cấp các phần tử với
tên và thuộc tính duy nhất trong một thể hiện XML. Một thể hiện XML có thể chứa
tên các thuộc tính hoặc tên các phần tử từ nhiều bộ từ vựng XML.
 Tất cả các tên các phần tử trong cùng một không gian tên phải là đơn nhất.
Hãy xem xét một ví dụ về một thể hiện XML trong đó có chứa tham chiếu đến một
customer và một product. Cả hai thành phần customer và product đều có thể có một

17


thành phần con là “ID_number”. Vì vậy khi tham chiếu đến thành phần ID_number
có thể sẽ gây ra sự nhập nhằng, trừ phi các phần tử được đặt cùng định danh nhưng
khác ý nghĩa được sinh ra dưới dạng các không gian tên cho phép phân biệt chúng.
 Một không gian tên được khai báo bằng cách sử dụng thuộc tính XML
dành riêng xmlns, giá trị của nó phải là tham chiếu đến một URI. Ví dụ:
Xmlns= />Sự khai báo có thể bao gồm một tiền tố ngắn cùng với mỗi phẩn tử và thuộc
tính có thể được định danh, ví dụ:
Xmlns:xhtml= />1.4.1.3. Lược đồ XML

Một lược đồ đơn giản chỉ là tập luật được định nghĩa lại để mô tả nội dung
dữ liệu của một tài liệu XML. Nó tương tự như một định nghĩa cấu trúc bảng tên
trong cơ sở dữ liệu quan hệ. Trong lược đồ XML, chúng ta định nghĩa một tài liệu
XML, những phần tử của nó, những kiểu dữ liệu của phần tử và thuộc tính liên
quan, và điều quan trọng nhất là mối quan hệ “cha - con” giữa các phần tử. Lược đồ
XML (XML Schema) là một tài liệu XML được viết dưới dạng thức thuần văn bản
với phần mở rộng (.xsd). Tài liệu này mở đầu bằng khai báo chuẩn XML, tiếp theo
dùng tiếp đầu ngữ xsd: để khai báo không gian tên XML Schema, theo cú pháp sau:
<?xml version= “1.0” ?>
<xsd:schema xmlns:xsd= />…
</xsd:schema>
Lược đồ XML được Microsoft đề xuất để thay thế cho định kiểu tư liệu
(Document Type Definition - DTD), được sử dụng để định nghĩa kiểu tư liệu cho
các phần tử XML, vốn xuất thân từ SGML, khó sử dụng và có một số nhược điểm
như không định nghĩa chính xác được các loại dữ liệu. Lược đồ XML có một số ưu
điểm:
 Dễ học và dễ dùng hơn DTD
 Định nghĩa được chính xác các kiểu dữ liệu (data type)

18


Tóm lại, XML được xây dựng như một chuẩn để trình bày và trao đổi dữ liệu
trên web. Tập đoàn W3C đã xây dựng chuẩn XML và những công nghệ liên quan
bao gồm XML DOM, Xpath, XSL, XML Schema. Xpath là ngôn ngữ dùng để truy
vấn trên tài liệu XML. XSL dùng để chuyển đổi tài liệu XML từ dạng này sang
dạng khác. XML Schema định nghĩa cấu trúc và kiểu dữ liệu cho những nút trong
một tài liệu XML. Tất cả những công nghệ này đã tạo nên sức mạnh cho XML. Vì
thế, XML ngày nay đang được sử dụng rất phổ biến.
1.4.2. RDF (Resource Description Framework):

1.4.2.1. Khái niệm RDF:
Khung mô tả tài nguyên (RDF)[13] là một ngôn ngữ siêu dữ liệu để biểu
diễn dữ liệu trên Web và cung cấp một mô hình để mô tả và tạo các mối quan hệ
giữa các tài nguyên. RDF định nghĩa một nguồn tài nguyên (resource) như một đối
tượng bất kỳ có khả năng xác định duy nhất bởi một URI. Các nguồn tài nguyên có
các thuộc tính đi kèm. Các thuộc tính (predicate/property) được xác định bởi các
kiểu thuộc tính và các kiểu thuộc tính có các giá trị tương ứng. Kiểu thuộc tính biểu
diễn các mối quan hệ của các giá trị được kết hợp với các tài nguyên.
Mô hình dữ liệu của RDF là các bộ ba (triple) gồm: Đối tường>
 Chủ-thể (Subject): được xác định bởi URI cụ thể.
 Thuộc-tính (Predicate): thuộc tính của siêu dữ liệu, cũng được xác định
bởi một URI.
 Đối-tượng (Object): giá trị của thuộc tính, có thể là một giá trị (literal)
hoặc một URI.
Ví dụ: Dữ liệu về tên họ của một cá nhân có mã số (ID) xác định

Được biểu diễn như sau:

19


RDF mô tả siêu dữ liệu về các tài nguyên trên Web. RDF dựa trên cú pháp
XML tuy nhiên XML chỉ mô tả dữ liệu, RDF còn có khả năng biểu diễn ngữ nghĩa
giữa chúng thông qua các tài nguyên được định danh bằng URI. Ở kỳ này chúng ta
sẽ có một cái nhìn cụ thể và bao quát hơn về RDF.
Thông tin và tri thức trên web ngữ nghĩa sử dụng liên kết URIs và RDF.
Giống như web của văn bản, web của dữ liệu được xây dựng dựa trên các tài
liệu trên web. Tuy nhiên, không giống web của văn bản, các liên kết là quan trên
văn bản biểu diễn dưới dạng HTML, web của dữ liệu liên kết các “thực thể được đặt

tên” thông qua RDF. URIs xác định các loại đối tượng và khái niệm.
RDF chính là nền tảng trung tâm của web ngữ nghĩa. Trong khi XML cung
cấp cú pháp để mã hóa dữ liệu thì RDF mô tả siêu dữ liệu về các tài nguyên trên
Web. RDF dựa trên cú pháp XML tuy nhiên XML chỉ mô tả dữ liệu, RDF còn có
khả năng biểu diễn ngữ nghĩa giữa chúng thông qua các tài nguyên định danh bằng
URI.
* Nguyên lý: Tim Berners- Lee tóm tắt 4 nguyên lý nền tảng cho hoạt động
của dữ liệu liên kết (Linked Data) trong bài báo “Design Issues: Linked Data”
(2006) [14]:
- Sử dụng các URIs để xác định, “đặt tên” các “thực thể”
- Sử dụng giao thức HTTP URI để con người có thể tìm kiếm, duyệt chúng
- Cung cấp thông tin hữu ích ( siêu dữ liệu, mô tả có cấu trúc) về các “thực
thể được đặt tên” đó khi URI của chúng được duyệt
- Chứa các liên kết đến các URIs khác liên quan trong dữ liệu vừa được
duyệt giúp có thể duyệt các thông tin khác liên quan.
Hiện tại có các định dạng cú pháp tuần tự hóa để cài đặt dữ liệu liên kết, chú
thích ngữ nghĩa như RDF, RDFa, RDF/XML, N3, Turtle.

20


RDF - Resource Description Framework, định dạng dữ liệu cho phép mô tả
thực thể, tài nguyên và quan hệ nội tại giữa chúng bằng bộ ba đối tượng – thuộc tính
– giá trị ( subject – predicate – object).
RDFa (RDF – in – attributes) bổ sung tập các thuộc tính mở rộng cho
XHTML để nhúng siêu dữ liệu trong văn bản web.
N3 (Notation3): cú pháp phi XML của RDF, được thiết kế dễ đọc hơn so với
các chú thích RDF/XML. Turtle (Terse RDF Triple Language) định dạng tuần tự
hóa cho các đồ thị RDF, tập con của N3.
Ví dụ: Mô hình RDF được chú thích bằng XML chuẩn

1.4.2.2. Mô hình RDF
1.4.2.2.1. Namespace và Qualified name:
Namespace là một tập các tên (name), được định danh 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.
Một namespace được khai báo sử dụng một tập các thuộc tính đã được định
nghĩa. Tên của một thuộc tính phải có “xmlns” hay “xmlns:” như là một tiếp đầu
ngữ.
Cách khai báo một namespace:
NSAttName ::= PrefixedAttName | DefaultAttName
PrefixedAttName ::= 'xmlns:' NCName
DefaultAttName ::= 'xmlns'
NCName ::= (Letter | '_') (NCNameChar)*
NCNameChar ::= Letter | Digit | '.' | '-' | '_' | CombiningChar | Extender
Qualified name (QName) bao gồm một tiếp đầu ngữ đã được gán trước đó
bởi một URI theo sau là dấu ‘:’ và tên cục bộ.
- Cách định nghĩa một QName
QName::= (Prefix ':')? LocalPart
Prefix::= NCName
LocalPart::= NCName
- Cách dùng QName đối với kiểu dữ liệu là element

21


STag::= '<' QName (S Attribute)* S?'>’
ETag::= '</' QName S? '>'
EmptyElemTag::= '<' QName (S Attribute)* S?'/>'
1.4.2.2.2. Bộ ba RDF (RDF triple)
Mô hình cơ bản của RDF gồm ba bộ phận 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) là đặc tính hay quan hệ mô tả tính chất tài nguyên
- Phát biểu (Statements) mỗi phát biểu gồm ba thành phần sau
+ Subject (chủ thể): địa chỉ hay vị trí tài nguyên muốn mô tả.
+ Predicate (thuộc tính): xác định tính chất của tài nguyên.
+ Object (đối tượng): nội dung gán cho thuộc tính.
Mỗi một mệnh đề (subject, predicate, object) còn gọi là một bộ ba (triple).

Ví dụ: Xét mệnh đề 1 Tran Van Trung works for Semantic Groups

Mệnh đề 2: “Tran Van Trung was born in 1987”

Mệnh đề 3: “Semantic Group is headquartered in Bac Ninh”

22


Các bộ ba liên kết với nhau tạo thành đồ thị RDF:

Tập các triple hợp lại tạo thành đồ thị RDF (RDF Graph). Các node trong đồ
thị có thể là các subject và object trong triple và các cung (arc) trong đồ thị là các
predicate. Nên một triple còn có thể được mô tả dưới dạng node-arc-node. Hướng
của đồ thị rất quan trọng, cung của đồ thị luôn bắt đầu từ subject đến object.
1.4.2.2.3. 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. Một Literal có thể là object của một phát biểu nhưng không thể là
subject hay là predicate.
Literal có hai kiểu sau: plain literal hay là typed literal.
- Plain literal là một chuỗi được kết hợp với một tag tùy ý. Trong ngôn ngữ
tự nhiên ta có thể gọi nó là một kiểu text.


23


- Typed literal hình thành bằng cách kết hợp một chuỗi với định danh URI để
biểu diễn kiểu dữ liệu đặc biệt nào nó. Kết quả trả về là một node trong đồ thị tương
tự như kiểu literal. Kiểu giá trị được biểu diễn bằng typed literal sẽ được ánh xạ đến
kiểu giá trị đặc biệt mà ta đã khai báo thông qua URI.
1.4.2.2.4. Kiểu dữ liệu có cấu trúc và Blank node
Hầu hết các dữ liệu trên Web đều liên quan đến các cấu trúc phức tạp.Trong ví
dụ trên ngày của trang web được tạo ra được khai báo bởi thuộc tính exterms:
creationdate, với một kiểu dữ liệu là plain literal.
Các mệnh đề RDF (bao gồm các cung và node) sau đó sẽ được biểu diễn ra
trong đồ thị với node mới vừa tạo là subject.
Xét đồ thị sau:

Có thể viết dưới dạng tripple như sau:
exstaff:85740 exterms:address exaddressid:85740 .
exaddressid:85740 exterms:street "1501 Grant Avenue" .
exaddressid:85740 exterms:city "Bedford" .
exaddressid:85740 exterms:state "Massachusetts" .
exaddressid:85740 exterms:postalCode "01730" .
Cách biểu diễn thông tin có cấu trúc như vậy đòi hỏi phải có một địa chỉ URI
exaddressid:85740 để mô tả khái niệm kết hợp( địa chỉ của Mr Joe). Những khái

24


niệm như thế này có thể không được sử dụng bởi các thành phần khác trong đồ thị
và chính vì vậy định danh này không cần thiết. Chính vì vậy ta nên dùng một node

trống (blank node) để biểu diễn node này.

Và có thể mô tả dưới dạng tripple như sau:
exstaff:85740 exterms:address ??? .
??? exterms:street "1501 Grant Avenue" .
??? exterms:city "Bedford" .
??? exterms:state "Massachusetts" .
??? exterms:postalCode "01730" .
??? để chỉ sự hiện diện của blank node. Trong trường hợp đồ thị sử dụng
nhiều blank node, để phân biệt các blank node ta dùng một định danh (blank node
identifiers), có dạng _:name, để chỉ sự hiện diện của một blank node. Ví dụ như,
trong ví dụ này định danh _:joeaddress được sử dụng để chỉ blank node (là địa chỉ
của Mr Joe). Viết lại tripple sau:
exstaff:85740 exterms:address _:joeaddress .
_:johnaddress exterms:street "1501 Grant Avenue" .
_:johnaddress exterms:city "Bedford" .
_:johnaddress exterms:state "Massachusetts" .
_:johnaddress exterms:postalCode "01730" .

25


×