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

Ứng dụng logic mô tả trong phân tích câu trong ngôn ngữ tự nhiên

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (613.12 KB, 81 trang )

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

LUẬN VĂN THẠC SĨ KHOA HỌC
NGÀNH: CÔNG NGHỆ THÔNG TIN

ỨNG DỤNG LOGIC MƠ TẢ TRONG PHÂN TÍCH CÂU
TRONG NGƠN NGỮ TỰ NHIÊN

NGUYỄN VIỆT ANH

HÀ NỘI 2006


1

Mục lục
Mục lục................................................................................................................... 1
Danh sách bảng ...................................................................................................... 3
Phần mở đầu........................................................................................................... 4
Chương 1 Logic mô tả........................................................................................... 6
1.1 Giới thiệu.................................................................................................. 6
1.2 Ngôn ngữ mô tả ........................................................................................ 7
1.3 Kiến trúc hệ logic mô tả ........................................................................10
1.3.1 Bộ thuật ngữ - TBox........................................................................12
1.3.2 Bộ khẳng định – ABox ....................................................................17
1.4 Các bài toán quyết định trong logic mơ tả ............................................18
1.5 Thuật tốn...............................................................................................21
1.5.1 Thuật tốn bao hàm cấu trúc ...........................................................21
1.5.2 Thuật tốn tableau ...........................................................................24


1.6 Ví dụ về khai triển cơ sở tri thức trong logic mô tả ...............................29
1.6.1 Loại bỏ bao hàm khái niệm .............................................................30
1.6.2 Loại bỏ Tbox ...................................................................................31
1.6.3 Tính tốn Abox................................................................................32
1.7 Kết luận ..................................................................................................35
Chương 2 Xử lý ngôn ngữ tự nhiên ....................................................................36
2.1 Giới thiệu................................................................................................36
2.2 Đặc điểm của ngôn ngữ tự nhiên............................................................38
2.3 Các bước xử lý và ứng dụng trong xử lý ngôn ngữ tự nhiên .................38
2.3.1 Tiền xử lý văn bản (text pre-processing).........................................39
2.3.2 Phân tích hình thái (Morphology) ...................................................39
2.3.3 Phân tích cú pháp (Syntax)..............................................................40
2.3.4 Phân tích ngữ nghĩa (Semantics).....................................................40
2.3.5 Phân tích ngữ dụng (Pragmatics) ....................................................40
2.4 Các ứng dụng của xử lý ngôn ngữ tự nhiên ...........................................41
2.4.1 Dịch tự động (Machine Translation) ...............................................41
2.4.2 Hiểu văn bản (tóm tắt văn bản) .......................................................41
2.4.3 Bắt lỗi chính tả / văn phạm (Spelling/ grammar checker)...............41
2.4.4 Nhận dạng chữ viết (Character recognition) ...................................42
2.4.5 Nhận dạng tiếng nói (voice recognition).........................................42
2.4.6 Tổng hợp tiếng nói (voice synthesis) ..............................................42


2

2.4.7 Giao tiếp với hệ CSDL (DBMS) .....................................................43
2.5 Khái niệm Câu........................................................................................43
2.5.1 Phân loại theo cấu tạo ngữ pháp......................................................45
2.5.2 Cấu tạo của chủ ngữ và của vị ngữ..................................................49
2.6 Xây dựng các tập luật cấu thành nên câu ...............................................52

2.7 Kết luận ..................................................................................................53
Chương 3 Khai triển cơ sở tri thức ....................................................................54
3.1 Đặt vấn đề...............................................................................................54
3.2 Khai triển Tbox ......................................................................................54
3.2.1 Mục đích ..........................................................................................54
3.2.2 Áp dụng thuật tốn ..........................................................................55
3.3 Khai triển ABox .....................................................................................64
3.3.1 Mục đích ..........................................................................................64
3.3.2 Áp dụng thuật toán ..........................................................................64
3.4 Kết luận.......................................................................................................66
Chương 4 Ứng dụng bài toán xử lý câu ..............................................................67
4.1 Giới thiệu................................................................................................67
4.2 Ứng dụng ................................................................................................67
4.2.1 Ví dụ 1 .............................................................................................68
4.2.2 Ví dụ 2 .............................................................................................73
4.3 Kết luận ..................................................................................................76
Các thuật ngữ .......................................................................................................77
Tài liệu tham khảo................................................................................................79
Tóm tắt luận văn...................................................................................................80


3

Danh sách bảng
Bảng 1.1: Luật cú pháp của ngôn ngữ mô tả AL.................................................. 8
Bảng 1.2: Các luật bổ sung.................................................................................... 8
Bảng 1.3: Kiến trúc hệ logic mô tả ......................................................................11
Bảng 1.4 : Các khái niệm trong gia đình ............................................................13
Bảng 1.5: Các khẳng định trong khái niệm gia đình............................................18
Bảng 1.6: TBox sau khi loại bỏ bao hàm khái niệm............................................31

Bảng 1.7: TBox sau khi khai triển .......................................................................32
Bảng 1.8: ABox sau khi khai triển .......................................................................33
Bảng 2.1: Lược đồ hoá tổ chức câu .....................................................................44
Bảng 2.2: Các tập luật cơ sở.................................................................................53


4

Phần mở đầu
Logic mô tả (Description Logic) thời gian gần đây được đề cập rất nhiều
và được coi là một loại hình biểu diễn tri thức hiệu quả. Ứng dụng của logic mô
tả ngày càng nhiều, đặc biệt trong lĩnh vực xử lý ngơn ngữ tự nhiên.
Trong q trình làm luận văn, em đã nghiên cứu về logic mô tả, và một
hướng phát triển ứng dụng của logic mô tả đó là hướng sử dụng logic mơ tả để
phân tích ngôn ngữ tự nhiên. Nội dung của luận văn gồm các phần như sau :
• Logic mơ tả : giới thiệu các kiến thức cơ bản về logic mô tả, ngôn ngữ
logic mô tả, kiến trúc logic mô tả, các bài tốn quyết định về logic mơ tả,
thuật tốn tableau.
• Xử lý ngôn ngữ tự nhiên : giới thiệu đặc điểm ngôn ngữ tự nhiên, các
bước xử lý và ứng dụng trong xử lý ngôn ngữ tự nhiên, khái niệm câu
trong ngôn ngữ tiếng Việt, và các tập luật cấu tạo thành câu
• Khai triển cơ sở tri thức: phần này sẽ đi sâu vào việc khai triển cơ sở tri
thức ABox và TBox từ các tập luật cấu tạo câu ở phần 2. Từ đó có thể áp
dụng cho bài tốn xử lý câu
• Ứng dụng bài tốn xử lý câu : Với ABox và TBox xây dựng được ở
chương 3, ta sẽ áp dụng vào bài toán : “Xác định chuỗi đầu vào có phải là
1 câu hay khơng”. Sử dụng các bài tốn trong logic mơ tả, ta sẽ chứng
minh được mệnh đề trên là đúng hay sai, từ đó rút ra kết luận : “Chuỗi
đầu vào là một câu hay không?”



5

Trên đây là những phần chính sẽ được em trình bầy trong luận văn thạc sĩ
của mình. Trên thực tế, việc áp dụng logic mô tả vào việc xử lý ngơn ngữ tự
nhiên cịn gặp rất nhiều khó khăn, do sự đa dạng về vấn đề ngôn ngữ, tuy nhiên
luận văn đã trình bầy và chứng minh được việc áp dụng logic mơ tả trong việc
giải quyết bài tốn phân tích câu trong ngơn ngữ tự nhiên
Cuối cùng, em xin được gửi lời cảm ơn chân thành tới thầy hướng dẫn
Tiến sĩ Trần Đình Khang, thầy đã hỗ trợ, đóng góp ý kiến q báu, giúp đỡ em
hồn thành luận văn thạc sĩ.
Em xin chân thành cảm ơn các thầy cô khoa Công nghệ thông tin trường
đại học Bách Khoa Hà Nội đã dạy dỗ, giúp đỡ em trong suốt 5 năm học tập bậc
đại học và 2 năm học tập bậc cao học.
Học viên
Nguyễn Việt Anh


6

Chương 1 Logic mô tả
1.1 Giới thiệu
Logic mô tả đầu tiên được phát triển nhằm cung cấp ý nghĩa cho các mạng
ngữ nghĩa, đã đưa ra các biểu diễn được cấu trúc và các biểu diễn này có thể
được kết hợp với các công cụ lập luận cho hiệu quả cao.
Logic mô tả được ứng dụng đặc biệt hiệu quả trong các hệ thống thông
minh, và gần đây với ý tưởng xây dựng hệ thống web thế hệ mới: web ngữ
nghĩa, với mục đích tăng khả năng liên kết giữa các trang web và khả năng hiểu
nội dung các tài liệu web của máy tính, logic mơ tả đóng vai trò là nền tảng logic
để bổ sung ngữ nghĩa và đã thu hút được sự quan tâm của rất nhiều nhà nghiên

cứu trong lĩnh vực này.
Logic mô tả cung cấp khả năng biểu diễn tri thức và suy diễn để rút ra
được các tri thức đúng đắn trong miền ứng dụng. Việc biểu diễn tri thức được
xây dựng từ các khái niệm, các quan hệ nguyên thuỷ và các luật xây dựng khái
niệm. Các luật này được gọi là ngôn ngữ xây dựng khái niệm. Bên cạnh các khái
niệm và các quan hệ cịn có các khẳng định, thể hiện mối quan hệ giữa các khái
niệm, các quan hệ với các cá thể hay giữa các cá thể với nhau. Logic mơ tả cịn
cung cấp khả năng lập luận và suy diễn các tri thức được biểu diễn ở trên. Khả
năng biểu diễn tri thức tỉ lệ thuận với độ phức tạp tính tốn của các dịch vụ suy
diễn của hệ logic mô tả tương ứng. Để xây dựng một hệ thống logic mô tả người
ta đã tổng kết lại ba bước quan trọng sau:
- Xác định các khái niệm từ các khái niệm nguyên thuỷ, các quan hệ
nguyên thuỷ và các cá thể ban đầu.


7

- Sử dụng một ngôn ngữ xây dựng khái niệm để hình thành những khái
niệm phức tạp.
- Sử dụng các thủ tục suy luận để rút ra những tri thức đúng đắn về các
khái niệm và các cá thể nếu có thể. Chủ yếu là quan hệ bao hàm giữa hai khái
niệm hoặc quan hệ giữa các cá thể và khái niệm hay giữa một cặp cá thể và một
quan hệ.
Chương này ta sẽ lần lượt tìm hiểu về các vấn đề liên quan đên logic mô
tả. Đầu tiên là các ngôn ngữ định nghĩa khái niệm, tiếp theo là về cơ sở tri thức
được xây dựng bằng logic mô tả như kiến trúc, các thủ tục suy diễn cho các bài
tốn quyết định.

1.2 Ngơn ngữ mơ tả
Các thành phần mô tả là khái niệm nguyên thuỷ, và quan hệ nguyên thuỷ.

Chúng ta quy ước các ký hiệu sử dụng A, và B cho khái niệm nguyên thuỷ, R
cho quan hệ nguyên thuỷ, C và D khái niệm mô tả. Những khái niệm phức tạp
trong logic mô tả được xây dựng bằng ngơn ngữ thuộc tính AL (Attributive
Language) hoặc các ngơn ngữ mở rộng của nó, ta gọi chung các ngôn ngữ này
là các “ngôn ngữ mô tả”. Xuất phát từ những “mô tả cơ sở”, ta sử dụng các
luật xây dựng khái niệm mà ngôn ngữ này hỗ trợ để hình thành nên
những khái niệm mới.
Thơng thường, các khái niệm mới này được viết lại một cách đơn giản
bằng cách sử dụng các “tên” mới. Cịn những “mơ tả cơ sở” mà ta vừa đề cập
tới là những khái niệm nguyên thuỷ hay những quan hệ nguyên thuỷ. Các khái


8

niệm mới được xây dựng từ những mô tả cơ sở này thông qua các luật cú pháp.
Ngôn ngữ AL là ngơn ngữ có luật cú pháp đơn giản nhất. Các ngơn ngữ cịn lại
được sử dụng trong logic mơ tả điều là những ngôn ngữ được mở rộng ra từ
ngôn ngữ cơ bản này.
Những luật cú pháp của ngôn ngữ mô tả AL được liệt kê như sau:
C, D →

A

|

(Khái niệm nguyên thuỷ)



|


(Khái niệm đỉnh)



|

(Khái niệm đáy)

¬A

|

(Phủ định khái niệm)

C∩D

|

(Giao khái niệm)

∀ R.C

|

(Lượng từ với mọi)

∃ R.T

|


(Lượng từ tồn tại)

Bảng 1.1: Luật cú pháp của ngôn ngữ mô tả AL
Để mở rộng khả năng xây dựng những khái niệm phức tạp, người ta
thực hiện việc mở rộng ngôn ngữ AL mà chủ yếu là tăng cường các luật cú
pháp.
Các luật có thể được bổ xung là
Tên
Dạng viết
CUD
Hợp khái niệm
∃ R.C
Lượng từ tồn tại đầy đủ
Giới hạn số
≥ nR hoặc ≤ nR
Phủ định bất kỳ
¬C
Bảng 1.2: Các luật bổ sung

Ký hiệu

U
E
Ν
C


9


Các ngôn ngữ mới được mở rộng từ ngôn ngữ mô tả AL được ký hiệu dưới
dạng một chuỗi như sau

AL [U][E][N][C]
Mỗi chữ cái nằm trong ngoặc vuông sẽ xuất hiện khi mà luật cú pháp
tương ứng với nó có mặt trong ngôn ngữ mô tả mà ta sử dụng. Ta gọi chung
các ngôn ngữ này là họ ngôn ngữ AL.
Ngữ nghĩa của khái niệm trong logic mơ tả có được nhờ vào các phép
thông dịch.
Định nghĩa: Mỗi phép thông dịch I, là một cặp (∆I,.I). Trong đó, ∆I là một
tập khác rỗng, còn
thành một tập AI

.I

là một hàm dịch. Hàm dịch

.I

biến mỗi khái niệm A

∆I, biến mỗi quan hệ (hai ngơi) R thành một quan hệ RI

∆I × ∆I
Đối với các khái niệm phức tạp được xây dựng từ một trong các ngôn
ngữ được xây dựng từ họ ngôn ngữ mô tả AL, hàm dịch được định nghĩa:
┬ I = I
I = ị
( ơ A)I = I \ AI
(C


D )I = CI

DI


10

(∀ R.C)I = {a ∈ ∆I | ∀ b. (a,b) ∈ RI Ỉb ∈ CI
( ∃ R.T)I = {a ∈ ∆I | ∃b. (a,b) ∈ RI
Hai khái niệm C và D là tương đương nhau, ký hiệu là C ≡ D nếu như
ta có CI = DI với mọi phép thơng dịch I . Ký hiệu C có thể thay thế cho cặp
ký hiệu UE . Vì ta có thể dùng các luật hiện có của ngơn ngữ AL cùng với
luật C để xây dựng các luật U và E , chi tiết như sau:
C

D ≡ ¬(¬C

¬D)

∃R.C ≡ ¬ ∀ R.¬C
Nếu ta có các luật U và E thì ta hồn tồn có thể biểu diễn các biểu
thức phủ định của các khái niệm phức tạp về dạng biểu thức khái niệm ở dạng
chuẩn bù mà ở đó, các phép phủ định chỉ áp dụng lên các khái niệm nguyên
thuỷ.
Ví dụ, ta có
¬(C

D) ≡ ¬C


¬D

¬ ∀ R.C ≡ ∃ R.¬C

1.3 Kiến trúc hệ logic mô tả
Như ta đã biết, hệ logic mơ tả là các hệ thống thơng tin có sử dụng logic
mô tả để biểu diễn tri thức về miền của ứng dụng. Các hệ này sử dụng khả
năng biểu diễn mạnh mẽ của logic mô tả kết hợp với các thủ tục suy diễn để
tạo nên khả năng hoạt động của chúng. Nhờ vào các ngôn ngữ mô tả, người
xây dựng có thể xây nên những hệ thống khái niệm của lĩnh vực ứng dụng, tức


11

là thực hiện quá trình phân loại các khái niệm giống như con người. Sự có mặt
của các cá thể giống như những thông tin cụ thể về miền ứng dụng mà hệ
thống có sử dụng.
Hình dưới đây mơ tả kiến trúc chung của một hệ logic mô tả. Hai
thành phần chứa đựng tri thức là “Bộ thuật ngữ”, là nơi chứa đựng các khái
niệm được xây dựng dựa trên sự hỗ trợ của các ngôn ngữ mô tả (TBox), và
“Bộ khẳng định”, là nơi chứa các khẳng định hay cụ thể hơn là các mô tả về
thế giới (ABox). Bên cạnh đó, nhờ các dịch vụ suy diễn mà hệ thống có thể hỗ
trợ sẽ đem lại cho hệ thống khả năng suy luận ra những tri thức đúng đắn để
đạt được mục đích thực sự khi sử dụng logic mô tả trong hệ.

Bảng 1.3: Kiến trúc hệ logic mô tả


12


Như trên hình, ta thấy cơ sở tri thức trong hệ logic mơ tả gồm có hai thành
phần chính là bộ thuật ngữ (TBox) và bộ khẳng định (ABox). Ta sẽ đi sâu về
2 thành phần này.

1.3.1

Bộ thuật ngữ - TBox
Bộ thuật ngữ được sử dụng để lưu trữ các thuật ngữ. Đây các khái niệm

phức tạp được định nghĩa qua các khái niệm nguyên thuỷ dựa trên cú pháp của
ngôn ngữ mô tả mà hệ thống sử dụng. Như ta đã biết, bộ thuật ngữ cung cấp
cho ta các khái niệm mới thông qua các “tên”, thực chất là dạng viết tắt của
các biểu thức khái niệm phức tạp. Nhờ đó, ta biết được các biểu thức quan hệ
giữa các khái niệm với nhau.
Có hai dạng thuật ngữ xuất hiện trong bộ thuật ngữ là định nghĩa khái
niệm và bao hàm khái niệm. Một trong những lưu ý trong bộ thuật ngữ là hiện
tượng xuất hiện chu trình trong các thuật ngữ.
Lấy ví dụ về thuật ngữ chứa chu trình và thuật ngữ khơng chứa chu trình.
Xét một khái niệm :”Người mẹ là người phụ nữ có con ” sẽ đựơc biểu diễn
như sau :

Mother ≡ Woman

∃ hasChild.Person

Đây là một thuật ngữ khơng có chu trình.
Xét một khái niệm khác :”Con người là loại động vật có bố mẹ là con
người”. Đây chính là thuật ngữ có chứa chu trình. Ta sẽ biểu diễn như sau :

Human ≡ Animal


∀hasParent.Human


13

1.3.1.1

Định nghĩa khái niệm:

Mỗi một định nghĩa khái niệm có vế trái là một tên mới được đặt cho
một biểu thức khái niệm phức tạp. Ta hãy xét một ví dụ

Mother ≡ Woman

∃ hasChild.Person

Trong một TBox, mỗi khái niệm chỉ được xuất hiện bên vế trái của một
thuật ngữ không quá một lần. Những khái niệm chỉ xuất hiện ở bên vế phải của
các biểu thức định nghĩa khái niệm được gọi là các ký hiệu gốc, còn những
khái niệm có xuất hiện (khơng q một lần) bên vế trái của một biểu thức khái
niệm được gọi là ký hiệu tên. Ví dụ về Tbox dưới đây liệt kê một loạt các khái
niệm trong gia đình

Woman
Person
Man ≡ Person ¬Woman
Mother ≡ Woman ∃ hasChild.Person
Father ≡ Man ∃ hasChild.Person
Parent ≡ Father Mother

Grandmother ≡ Mother ∃ hasChild.Parent
MotherWithManyChildren ≡ Mother ≥ 3hasChild.Person
MotherWithoutDaughter ≡ Mother ∀ hasChild.¬Woman
Wife ≡ Woman

∃hasHusband.Man

Bảng 1.4 : Các khái niệm trong gia đình
Trong đó chứa các khái niệm trong gia đình. hai khái niệm nguyên
thuỷ là con người “ConNguoi” và giống cái “GiongCai”. Còn quan hệ


14

nguyên thuỷ được sử dụng là có con “Có con”. Chỉ với ba mô tả cơ sở ban đầu,
ta đã xây dựng được thêm nhiều các khái niệm mới tương ứng với với các tên
mới. Để mở rộng khả năng xây dựng những khái niệm phức tạp, người ta thực
hiện việc mở rộng ngôn ngữ AL mà chủ yếu là tăng cường các luật cú pháp.
1.3.1.2

Bao hàm khái niệm

Bên cạnh những định nghĩa khái niệm, ta còn thấy sự xuất hiện của các
thuật ngữ dưới dạng bao hàm khái niệm. Điều này xuất phát từ việc sử dụng
các định nghĩa khái niệm chưa đủ để nói về một khái niệm mới, do đó người ta
sử dụng bao hàm khái niệm để có thể bao trùm tồn bộ khái niệm mới.

Ví dụ :
Với một định nghĩa khái niệm
Woman ≡ Person


Female

Ta có thể nhìn nhận theo một cách khác :

Woman

Person Ỉ đây chính là một bao hàm khái niệm.

Rõ ràng, các thuật ngữ loại này chỉ tạo thêm phức tạp cho việc suy luận.
Một hướng tiếp cận nhằm giải quyết vấn đề đã được tìm ra đó là chuẩn hố.
Nếu Tbox là một bao hàm khái niệm dạng A
bởi một định nghĩa khái niệm có dạng:

Woman ≡ Woman

Person

C thì ta có thể thay thế


15

Khái niệm Woman mới được thêm vào đặc trưng cho những tính chất có
thể phân biệt một người phụ nữ (ứng với khái niệm Woman ) trong mọi người
(ứng với khái niệm Person ). Ta thu được một định nghĩa khái niệm tương đương
với định nghĩa khái niệm đầu tiên.
1.3.1.3

Mở rộng và chuẩn hoá bộ thuật ngữ


Đây là một trong những cơng việc đầu tiên của q trình xử lý
TBox. Mục đích của cơng việc này là có được một bộ thuật ngữ với hai tính chất
sau đây :
• Mọi thuật ngữ trong TBox điều ở dạng định nghĩa khái niệm.
• Vế trái của mọi thuật ngữ là một ký hiệu tên (khái niệm phức tạp), còn về
phải chỉ chứa các ký hiệu gốc (khái niệm nguyên thuỷ).
Do tính chất khơng chứa chu trình trong các biểu thức định nghĩa khái
niệm nên q trình này có tính chất dừng sau một số bước hữu hạn phép thực
hiện. Quá trình mở rộng và chuẩn hoá TBox đều đã được những người nghiên
cứu về logic mô tả xây dựng. Và dưới đây là một mệnh đề đảm bảo việc mở
rộng bộ thuật ngữ là đúng đắn nhờ tính tương đương của bộ thuật ngữ ban đầu và
bộ thuật ngữ sau khi được mở rộng
Mệnh đề :

Gọi T là một bộ thuật ngữ khơng chứa chu trình và T’ là bộ thuật ngữ mở
rộng của nó, khi đó:
• T và T’ có cùng các ký hiệu tên và ký hiệu gốc;


16

• T và T’ tương đương nhau;
Tiếp theo q trình mở rộng bộ thuật ngữ, sẽ đến quá trình chuẩn hố. Q
trình này nhằm chuyển tất cả các bao hàm khái niệm về thành định nghĩa khái
niệm. Mệnh đề sau được coi là cơ sở lý thuyết nhằm đảm bảo về mặt ngữ nghĩa
cho q trình chuẩn hố
Mệnh đề :

Gọi T là một bộ thuật ngữ khơng có chu trình và T là bộ thuật ngữ chuẩn

hố của nó, khi đó:
• Mọi mơ hình của T cũng là mơ hình của T
• Với mỗi mơ hình I của T có một mơ hình I của T mà có cùng miền với I
và chấp nhận với I về các khái niệm và các luật trong T .
Giả sử ta muốn mô tả khái niệm về người đàn ơng chỉ có con cháu trai
(Man who has only male offspring) viết là MOMO. Trong trường hợp ơng ta chỉ
có con trai (Man who has only son) viết là MOS. MOS được định nghĩa khơng
có chu trình như sau:
MOS = Man u ∀hasChild.Man

Cịn đây là định nghĩa đệ quy khái niệm người đàn ông chỉ có con cháu trai:
MOMO ≡ Man u ∀hasChild.MOMO

Chu trình xuất hiện khi ta muốn mơ hình hố cấu trúc đệ quy như trên.


17

Xét tiếp ví dụ đệ quy trong biểu diễn cây nhị phân: Giả sử có tập các đối
tượng là cây (Tree) và các quan hệ nhị phân có cây con (hasBranch) giữa các đối
tượng liên quan giữa một cây và cây con ta có:
BinaryTree ≡ Tree u ≤ 2 hasBranch u ∀hasBranch.BinaryTree.

1.3.2

Bộ khẳng định – ABox

Bên cạnh bộ thuật ngữ TBox, thành phần còn lại của cơ sở tri thức trong
hệ logic mô tả là bộ khẳng định ABox. Bộ khẳng định chứa những chi tiết mô
tả về các thông tin trong miền ứng dụng được nhập vào từ trước được gọi là các

khẳng định.
Như ta đã biết, khái niệm và quan hệ là hai mô tả quan trọng trong miền
ứng dụng của một hệ logic mô tả. Bởi vậy mà ta cũng có hai loại khẳng định
tương ứng, đó là khẳng định khái niệm và khẳng định quan hệ.
Định nghĩa : Khẳng định khái niệm cho biết một cá thể là thuộc khái niệm
nào, còn khẳng định quan hệ thể hiện được mối quan hệ giữa hai cá thể. Ký
hiệu cho khẳng định khái niệm và khẳng định quan hệ là
C (a) và R(a, b)
hoặc được viết dưới dạng : (a : C) và ((a,b):R)
Ví dụ : Sử dụng hệ thống khái niệm gia đình. Giả sử ta có PETER, MARY,
HARRY là tên các cá thể. Khi đó ta có 3 khẳng định như sau :


18

MotherWithoutDaughter(Mary)
hasChild(MARY, PETER)
hasChild(PETER, HARRY)
Bảng 1.5: Các khẳng định trong khái niệm gia đình

ABox trong hình biểu diễn rằng: MARY là một người mẹ khơng có con
gái, MARY có các con là PETER, PETER có con là HARRY.
Về mặt ngữ nghĩa, ta thông qua một phép thông dịch I . Phép thông dịch
I = (ΔI, .I), trong đó hàm dịch .I khơng chỉ tác động lên các khái niệm C và các
quan hệ R mà nó cịn có thể tác động lên các cá thể a để tạo thành một phần tử
aI ∈ ∆I. Có một giả thiết được đặt ra là giả thiết tên duy nhất, nó giả sử rằng với
hai cá thể khác nhau bất kỳ a, b thì ta ln có aI ≠ bI. Một phép thơng dịch I
thoả mãn một khẳng định có dạng (a : C) và ((a,b):R) nếu như ta có aI ∈ CI
(hoặc (aI, bI) ∈ R). Đối với bộ khẳng định ABox, một phép thông dịch I thoả
mãn ABox khi mà phép thông dịch ấy thoả mãn mọi khẳng định có trong

ABox. Khi đó, ta gọi I là một mơ hình của bộ khẳng định ABox.

Hệ biểu diễn tri thức dựa trên logic mô tả có thể thực hiện các dạng suy
luận đặc biệt. Như đã trình bày, hệ cơ sở tri thức bao gồm TBox và ABox có ngữ
nghĩa tương đương với tập hợp các tiên đề trong logic vị từ bậc nhất. Như vậy,
giống như bất kỳ tập hợp tiên đề nào khác, nó cũng chứa tri thức tiềm ẩn mà
bằng suy luận có thể làm cho nó rõ ràng.

1.4

Các bài tốn quyết định trong logic mô tả


19

Hiệu quả chính mà một hệ logic mơ tả mang lại là khả năng cung cấp các
dịch vụ suy diễn. Nếu xét trên một khía cạnh nào đó, ta có thể hiểu như khả
năng cung cấp này là khả năng hệ có thể trả lời các câu hỏi từ phía người sử
dụng. Và đó chính là một phần phát triển của luận văn. Với đầu vào là một
chuỗi, đầu ra xác định xem đó có phải là một câu hay khơng, và sâu hơn nữa,
câu đó là câu hỏi hay câu cảm thán…
Có bốn bài tốn quyết định quan trọng mà ta sẽ nói đến là “bài tốn
thoả”, “bái tốn bao hàm”, “bái tốn tương đương” và “bái tốn khơng giao”.
Các bài toán này được định nghĩa lần lượt như sau, với ký hiệu cho bộ thuật
ngữ TBox là T :
• Bài tốn thoả: Khái niệm C là thoả theo T (satisfiable ) nếu như tồn tại
một mơ hình I của T mà CI ≠ ∅. Ta cũng nói rằng khi đó I là một mơ
hình của C .
• Bài toán bao hàm: Khái niệm C bị bao bởi khái niệm D theo T
(subsumed) nếu như với mọi mơ hình I của T , ta có CI ⊆ DI . Khi đó ta

ký hiệu là C ⊆ T D hoặc T |= C v D.
• Bài tốn tương đương: Hai khái niệm C và D là tương đương theo T
nếu như CI = DI với mọi mơ hình I của T . Khi đó ta viết C ≡T D hoặc T
|= C ≡ D.
• Bài tốn khơng giao: Hai khái niệm C và D là không giao nhau theo T
nếu như CI ∩ DI = ∅ với mọi mơ hình I của T.


20

Ví dụ : Parent ≡ Father

Mother

Có khái niệm Parent bao hàm khái niệm Father và Mother. Còn 2 khái
niệm Parent và Mother là không giao.
Trên thực tế, các hệ logic mô tả thường chỉ cung cấp cơ chế kiểm tra cơ
bản là đối với bài toán bao hàm khái niệm. Điều này đã là đủ để thực hiện các
suy luận còn lại dựa vào mệnh đề sau (giảm về bài toán bao hàm).
Mệnh đề : Chuyển về bài toán bao hàm

Xét hai khái niệm C và D:

• Bài tốn C là khơng thoả ↔ bài tốn bao hàm C bị bao bởi ⊥ .
• Bài tốn C tương đương với D ↔ bài toán bao hàm C bị bao hàm bởi
D và D bị bao hàm bởi C .

• Bài tốn C khơng giao với D ↔ bài tốn bao hàm C Π D bị bao bởi
⊥.
Ngoài ra, nếu một hệ logic mơ tả cho phép áp dụng phép tốn phủ định lên

trên các khái niệm phức tạp thì chỉ cần cài đặt thuật tốn giải quyết bài tốn
khơng thoả là đủ để có thể giải quyết các bài tốn còn lại. Mệnh đề sau là cơ sở
lý thuyết của các hệ này (giảm về bài tốn khơng thoả).
Mệnh đề : Chuyển về bài tốn khơng thoả

Ta xét hai khái niệm C và D.

• Bài tốn C bị bao bởi D ↔ bài tốn C

¬D là khơng thoả.


21

• Bài tốn C tương đương với D ↔ bài toỏn C

ơD l khụng tho v D

ơC

ã Bi toỏn C khơng giao với D ↔ bài tốn C

D khơng thoả.

Vấn đề tiếp theo là loại bỏ bộ thuật ngữ TBox. Bộ thuật ngữ trong các
thủ tục suy diễn chỉ làm phức tạp thêm cho các thủ tục này. Người ta loại bỏ ảnh
hưởng của TBox trong các bài toán quyết định bằng cách sử dụng bộ mở rộng
của TBox. Bộ mở rộng của bộ thuật ngữ chỉ chứa các thuật ngữ là định nghĩa
khái niệm với vế trái là các khái niệm mới (các ký hiệu tên) , còn vế phải là các
khái niệm nguyên thuỷ và/hoặc quan hệ nguyên thuỷ (các ký hiệu gốc). Như vậy,

với một khái niệm C cho trước, thông qua phần mở rộng của TBox, ta có được
một biểu thức khái niệm của C, gọi là khái niệm đầy đủ của khái niệm C , mà
trong đó chỉ chứa các khái niệm nguyên thuỷ và quan hệ nguyên thuỷ.

1.5

Thuật toán

1.5.1

Thuật toán bao hàm cấu trúc

Về ý tưởng, thuật tốn này gồm có hai pha:

• Thuật tốn sẽ thực hiện q trình kiểm tra các các khái niệm đã ở dạng
chuẩn hoá hay chưa. Dạng chuẩn hố được sử dụng là dạng chuẩn bù.



Nếu pha kiểm tra thứ nhất thành công, pha thứ hai mới được thực hiện.
Trong pha này, cấu trúc cú pháp của các khái niệm được so sánh với nhau
nhằm đưa ra câu trả lời. Đây là một thuật toán đơn giản nên nó khơng giải


22

quyết tốt trong các trường hợp phức tạp như khi có phép giao C

D, phủ


định với khái niệm phức tạp ¬C , phép tồn tại ∃ R.C .
Gọi ngôn ngữ FL0 (ngôn ngữ chỉ cho phép thực hiện phép hội (C u D) và
lượng từ với mọi (∀R.C)). Rõ ràng, FL0 và mở rộng bằng khái niệm đáy và phủ
định khái niệm là ngôn ngữ con của AL, một khái niệm mô tả FLo là dạng
chuẩn khi và chỉ khi nó có dạng:
A1 u ... u Am u R1.C1 u ... u Rn.Cn
Trong đó A1,..., Am là các khái niệm khác nhau, R1, ... Rn là các vai trò
khác nhau, cịn C1,...,Cn là các mơ tả khái niệm FLo ở dạng chuẩn. Ta dễ dàng
thấy rằng mô tả bất kỳ có thể chuyển được về một mơ tả ở dạng chuẩn. Thực tế,
mô tả ∀R.(C u D) và (∀R.C) u (∀R.D) là tương đương nhau.
Mệnh đề : Cho dạng chuẩn của mô tả khái niệm FLo:

A1 u ... u Am u ∀R1.C1 u ... u ∀Rn.Cn
và dạng chuẩn của mô tả khái niệm FLo (D):
B1 u ... u Bk u ∀S1.D1 u ... u ∀Sl.Dl
thì C v D khi và chỉ khi phù hợp hai điều kiện sau:
1)

Đối với mọi i, 1 ≤ i ≤ k, tồn tại j, 1 ≤ j ≤ m để Bi = Aj

2)

Đối với mọi i, 1 ≤ i ≤ l, tồn tại j, 1 ≤ j ≤ n để Si = Rj và Cj v Di

Ta thấy rằng tính chất trên của bao hàm là đúng đắn và đầy đủ.


23

Ngơn ngữ mở rộng đơn giản nhất của FLo đó là mở rộng khái niệm đáy (⊥), ký

hiệu là FL⊥.
Một mô tả khái niệm bằng FL⊥ là một dạng chuẩn khi và chỉ khi là ⊥
hoặc có dạng:
A1 u... u Am u ∀R1.C1 u ... u ∀Rn.Cn.
Trong đó A1,..., Am là các khái niệm khác với ⊥, R1,...,Rn là các vai trị, cịn
C1,...,Cn là các mơ tả khái niệm FL⊥ ở dạng chuẩn.
Về ngun tắc, ta có thể tính dạng chuẩn FLo của mô tả (⊥ được xử lý như
một khái niệm bình thường): B1 u ... u Bk u ∀R1.D1 u ... u ∀Rn.Dn. Nếu một
trong số Bi là khái niệm đáy ⊥, thì thay tồn bộ mơ tả này bằng ⊥. Mặt khác, áp
dụng cùng thủ tục đối với Dj. Ví dụ dạng chuẩn FLo của ∀R.∀R.B u A u ∀R.(A
u ∀R.⊥) là

A u ∀R.(A u ∀R.(B u ⊥)
thu được dạng chuẩn FL⊥:
A u ∀R.(A u ∀R.⊥).
Thuật toán bao hàm cấu trúc đối với FL⊥ làm việc giống như đối với FLo, chỉ
khác là khái niệm đáy ⊥ bị bao hàm bởi mơ tả bất kỳ. Ví dụ:

∀R.∀R.B u A u ∀R.(A u ∀R.⊥) v ∀R.∀R.A u A u ∀R.A
khi so sánh đệ quy các dạng chuẩn FL⊥:
A u ∀R(A u ∀R.⊥) và A u ∀R.(A u ∀R.A) cuối cùng dẫn đến sự so sánh ⊥ và
A.


24

Mở rộng FLo bằng phủ định khái niệm có thể được xử lý tương tự. Trong
khi tính dạng chuẩn, các khái niệm bị phủ định được xử lý giống như các khái
niệm thường. Tuy nhiên, nếu một khái niệm và phủ định của nó xuất hiện ở cùng
mức của dạng chuẩn, thì ta thêm vào ⊥. Ví dụ:


∀R.¬A u A u ∀R.(A u ∀R.B)
Trước hết ta biến đổi thành
A u ∀R.(A u ¬A u ∀R.B)
Cuối cùng ta được
A u ∀R.⊥
Đối với các mơ tả phức tạp hơn, thuật tốn bao hàm cấu trúc thường
không đáp ứng được. Đặc biệt, thuật tốn này khơng xử lý phép hợp, phép phủ
định hồn toàn, và lượng từ tồn tại. Để khắc phục những điểm yếu của thuật toán
này, người ta đưa ra một thuật tốn khá hữu dụng đó là thuật tốn tableau.

1.5.2

Thuật tốn tableau
Thuật tốn tableau có ý tưởng được dựa trên việc chuyển một bài toán

quyết định bao hàm thành bài tốn quyết định khơng thoả. Điều đó có nghĩa là ta
giải quyết bài toán C

D nhờ giải quyết bài toán C

¬D là khơng thoả. Ta lại

chú ý rằng ở đây ta khơng đề cập tới sự có mặt của TBox bởi như ta sẽ giải quyết
dựa trên các khái niệm mở rộng, tức là loại bỏ TBox.
Thuật toán này được bắt đầu với bộ khẳng định ABox (ký hiệu gọn là A),
có dạng như sau:



×