Tải bản đầy đủ (.docx) (38 trang)

Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng

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 (563.56 KB, 38 trang )

Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Mục Lục
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 1/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
ời Cảm Ơn
Thông qua môn học này, em xin gởi lời cám ơn chân thành đến thầy Đỗ Văn
Nhơn, thầy đã giới thiệu môn học vô cùng thú vị, giới thiệu tiếp cận kiến thức mới
về việc biểu diễn tri thức cho máy và suy luận của chương trình cũng như cách
tiếp cận lập trình.
Những tài liệu thầy giới thiệu, những ý tưởng mở để tìm hiểu thêm kiến thức môn
học, những câu hỏi yêu cầu suy nghĩ và điểm nhấn mạnh của thầy thực sự giúp ích
em trong việc nghiên cứu thêm.
Thông qua bài tiểu luận này, em mong được xem như hệ thống hoá kiến thức và
một số điểm tìm hiểu vấn đề trong môn học Biểu Diễn Tri Thức và Ứng Dụng,
cũng như cách tiếp cận Ontology vào thực tế. Tuy nhiên, do một số hạn chế về
thời gian, cho nên bài báo cáo chắc chắn còn nhiều thiếu sót. Rất mong được sự
hướng dẫn và giúp đỡ của các thầy và các bạn.
Một lần nữa xin cảm ơn thầy hướng dẫn chúng em tận tình trong môn học Biểu
Diễn Tri Thức và Ứng Dụng vừa qua.
Xin cảm ơn !
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 2/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Lời Mở Đầu
Ngày nay, khoa học máy tính và công nghệ thông tin phát triển mạnh mẽ và thâm
nhập vào hầu hết mọi lĩnh vực hoạt động của con người. Nhu cầu về các hệ thống
thông minh đã trở thành một nhu cầu thiết yếu. Đó là lý do ra đời Trí tuệ nhân tạo,
một lĩnh vực của khoa học máy tính chuyên nghiên cứu, phát triển các hệ thống
ngày càng thông minh hơn. Trong đó, biểu diễn tri thức và xây dựng các hệ giải là
một phần cơ bản quan trọng của trí tuệ nhân tạo.
Trong một vài năm gần đây, việc áp dụng ontology như một hình thức biểu diễn
tri thức trong các lĩnh vực ứng dụng khác nhau đã có những bước tiến quan trọng.


Ontology mô tả không chỉ khái niệm và thuộc tính mà còn cung cấp các quan hệ
cũng như các tiên đề phục vụ cho việc suy luận. Ontology có rất nhiều lợi thế như
cho phép thêm ngữ nghĩa vào dữ liệu, quản lý và cập nhật tri thức, tích hợp dữ liệu
cũng như tái sử dụng các thành phần dễ dàng hơn. Nhờ đó, ontology là mô tả
chính thức của một số bộ từ vựng chuyên môn. Công dụng quan trọng nhất của
ontology là biểu diễn tri thức. Ontology đã được sử dụng thành công trong các hệ
thống chuyên gia, mạng ngữ nghĩa… Do hình thức lý thuyết là logic mô tả,
ontology có lợi thế cả về diễn đạt ngữ nghĩa lẫn cơ chế suy luận.
Trong đề tài này tìm hiểu các biểu diễn tri thức thông qua mô hình KIF, cách tiếp
cận mô hình KIF, so sánh với mô hình COKB-ON, áp dụng mô hình KIF vào biểu
diễn ngôn ngữ tự nhiên. Thêm vào đó, thông qua việc sử dụng các lib của open
source để demo chương trình.
Thông qua báo cáo bài thu hoạch và tìm hiểu thêm ontology cũng như mô hình
KIF, em mong muốn mang các ứng dụng của trí tuệ nhân tạo đến gần hơn với
người sử dụng. Do thời gian thực hiện đề tài có hạn, nên cũng không tránh khỏi
những sai xót, em rất mong được sự đóng góp ý kiến quý báo của các Thầy, Cô và
các bạn.
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 3/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
I. Tổng Quan Về Biểu Diễn Tri Thức Và Ontology
Ngày nay, những chương trình ứng dụng thông thường, những ứng dụng
truy xuất database dần dần không đáp ứng hết tất cả các yêu cầu và bài toán đặt ra
của con người. Và việc biểu diễn tri thức và lập luận trong việc xử lý thông tin tự
động trong các hệ thống thông minh ra đời là yêu cầu tất yếu cho các ứng dụng
dạng KBS (Knowledge Base System) , hoặc hệ chuyên gia (Expert System) hoặc
các hệ hổ trợ ra quyết định (Decision System Support) ra đời.
Trong khoa học máy tính và trí tuệ nhân tạo, ngôn ngữ ontology xem như
ngôn ngữ chính quy cho việc nghiên cứu biểu diễn tri thức và lập luận suy diễn.
Chúng cho phép khái quát hóa các kiến thức về các lĩnh vực cụ thể và thường bao
gồm các quy tắc lý luận rằng hỗ trợ chế biến của nhận thức đó. Ngôn ngữ

Ontology thường ngôn ngữ khai báo, gần như luôn luôn khái quát của ngôn ngữ
khung, và thường được dựa trên một trong hai logic lệnh đầu tiên hoặc trên mô tả
logic.
1. Khái niệm Biểu Diễn Tri Thức Ontology
Ontology là một thuật ngữ mượn từ triết học nhằm chỉ khoa học mô tả các
loại thực thể trong thế giới thực và cách chúng liên kết với nhau. Trong khoa học
máy tính, một cách khái quát, Ontology là "một biểu diễn của sự khái niệm hoá
chung được chia sẻ" của một miền nhất định. Nó cung cấp một bộ từ vựng chung
bao gồm các khái niệm, các thuộc tính quan trọng và các định nghĩa về các khái
niệm và các thuộc tính này. Ngoài bộ từ vựng, Ontology còn cung cấp các ràng
buộc, đôi khi các ràng buộc này được coi như các giả định cơ sở về ý nghĩa mong
muốn của bộ từ vựng, nó được sử dụng trong một miền mà có thể được giao tiếp
giữa người và các hệ thống ứng dụng phân tán khác.
Theo lúc ban đầu, ontology được định nghĩa như một cấu trúc bao gồm
những thành phần sau (bởi Gruber 1993; Fensel 2001):
• C – tập các khái niệm (Concept);
• I – tập các thể hiện của khái niệm;
• R – tập các quan hệ hai ngôi được định nghĩa trên C;
• Z – tập các tiên đề, là các công thức logic biểu diễn các ràng buộc toàn
vẹn trong tập các thể hiện và khái niệm.
Một định nghĩa khác cho mô hình Ontology:
Một ontology là một bộ tứ O = (C, P, R, A), trong đó:
• C là một tập các khái niệm được định nghĩa trong một miền. Một khái
niệm thường được xem như một lớp của ontology.
• P là một tập các thuộc tính. Một thuộc tính p ∈ P được định nghĩa như
một thể hiện của một quan hệ ba ngôi có dạng p(c, v, f), trong đó c ∈ C
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 4/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
là một khái niệm ontology, v là một giá trị thuộc tính gắn với c và f định
nghĩa các mặt giới hạn trên v. Một vài mặt giới hạn bao gồm loại (f

t
),
lực lượng (f
c
) và phạm vi (f
r
). Mặt giới hạn f
t
có thể là bất kỳ kiểu dữ
liệu nào được hỗ trợ bởi trình soạn thảo ontology, ví dụ như f
t

{boolean, integer, float, string, symbol, instance, class, …}. Mặt giới
hạn lực lượng f
c
định nghĩa cận trên và cận dưới của số lượng giá trị
thuộc tính. Mặt giới hạn phạm vi fr chỉ định một phạm vi các giá trị có
thể gán cho thuộc tính.
• R = {r | r C × C × R
t
} là một tập các quan hệ ngữ nghĩa hai ngôi được
định nghĩa giữa các khái niệm trong C. R
t
= {một-một, một-nhiều,
nhiềunhiều} là tập các kiểu quan hệ.
• A là một tập các tiên đề. Mỗi tiên đề là một chân lý hoặc luật suy diễn.
Sau đây là một ví dụ kinh điển về mô hình ontology về tập khái niệm và các mối
quan hệ của chúng:
Hình 1: Mô hình ontology về cái nhà
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 5/38

Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Hình 2: Mô hình ontology về làm bánh pizza
Mô tả Logic (Description logics, viết tắt DL) là một họ các ngôn ngữ biểu diễn tri
thức có thể sử dụng để biểu diễn tri thức thuật ngữ của một miền ứng dụng theo
một cách có cấu trúc và được hiểu rõ một cách hình thức. Mặt khác, cái tên logic
mô tả có ý nói đến các mô tả về khái niệm được dùng để mô tả một miền và ngữ
nghĩa dựa trên logic (logic-based semantics) thu được qua việc dịch từ logic mệnh
đề bậc nhất.
Mô tả Logic được thiết kế như là một mở rộng của khung ngữ nghĩa (semantic
frame) và lưới ngữ nghĩa (semantic network), vốn không được trang bị một ngữ
nghĩa dựa trên logic hình thức.
Cú pháp:
• Một tập các ký hiệu mệnh đề dùng để ký hiệu các tên khái niệm (concept
name)
• Một tập các ký hiệu mệnh đề đôi để ký hiệu các tên vai trò (role name);
• Một định nghĩa đệ quy để định nghĩa các thuật ngữ khái niệm từ các tên
khái niệm và tên vai trò các khởi tạo (constructor).
• Trong lôgic mô tả, các tên khái niệm được xem là các khái niệm nguyên tử,
các tên vai trò được coi là các vai trò nguyên tử. Nhìn chung, một khái
niệm đại diện cho tập các cá thể thuộc về nó, và một vai trò đại diện cho
một quan hệ giữa các khái niệm.
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 6/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Cú pháp của một thành viên trong gia đình lôgic mô tả được đặc trưng bởi
định nghĩa đệ quy của nó, các định nghĩa đệ quy này định nghĩa các tạo tử có thể
được dùng để tạo các thuật ngữ khái niệm.
Một số tạo tử thông dụng bao gồm các tạo tử lôgic trong logic bậc nhất như
phép giao (intersection) hay tuyển (conjunction) của các khái niệm, phép hợp
(union) hay hội (disjunction) của các khái niệm, phép phủ định (negation) hay lấy
phần bù (complement) của các khái niệm, hạn chế giá trị (hạn chế với mọi -

universal restriction), hạn chế tồn tại (existential resctriction), v.v Các tạo tử khác
có thể còn bao gồm các hạn chế đối với các vai trò thường thấy trong các quan hệ
nhị phân, ví dụ, tính đảo (inverse), tính bắc cầu (transitivity), chức năng
(functionality), v.v
Ngữ nghĩa:
Ngữ nghĩa của lôgic mô tả được định nghĩa bằng cách giải nghĩa các khái
niệm như là các tập hợp gồm các cá thể, và các vai trò như là các tập gồm các cặp
cá thể.
Các cá thể đó thường được cho là thuộc một miền xác định cho trước. Sau
đó, ngữ nghĩa của các khái niệm và vai trò không nguyên tử được định nghĩa theo
các khái niệm và vai trò nguyên tử. Điều này được thực hiện bằng một định nghĩa
đệ quy tương tự như trong cú pháp.
2. Ứng Dụng Phương Pháp Biểu Diễn Tri Thức với Ontology
a. Mạng ngữ nghĩa (Semantic network)
Một mạng lưới ngữ nghĩa (còn gọi là frame network) là một mạng lưới đại
diện cho mối quan hệ ngữ nghĩa (semantic relationship) giữa các khái niệm
(concept). Điều này thường được sử dụng như là một hình thức biểu diễn tri thức.
Nó là một đồ thị có hướng hoặc vô hướng bao gồm các đỉnh, mà đại diện cho khái
niệm, và các cạnh.
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 7/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Sau này, mạng web ngữ nghĩa (Sematic web) ra đời cũng dựa trên ý tưởng
này. Trong đó, các hệ thống có thể giao tiếp với nhau, phân tích và diễn giải ý
nghĩa của mọi dữ liệu trên site, rồi tập hợp nội dung liên quan từ nhiều nguồn khác
nhau. Ví dụ: một công ty du lịch sẽ biết khách hàng của họ có bao nhiêu đứa con,
công việc, sở thích riêng để tìm ra điểm nghỉ mát lý tưởng nhất cho cả gia đình.
Sau này mạng xã hội web ngữ nghĩa (social sematic web) ra đời, có thể
được xem như là một trang web của hệ thống kiến thức tập thể, có thể cung cấp
thông tin hữu ích dựa trên sự đóng góp của con người và nhận thông tin tốt hơn
khi có nhiều người tham gia. Nó kết hợp công nghệ, chiến lược và phương pháp từ

Semantic Web, phần mềm xã hội và Web 2.0.
Việc tiếp cận ngữ nghĩa thông qua các Ontology thì mềm dẻo hơn vì người
sử dụng có thể lựa chọn bộ từ vựng và các ràng buộc trong các Ontology. Ví dụ,
các ứng dụng trong các miền khác nhau có thể sử dụng các Ontology khác nhau.
Đặc biệt, các Ontology có thể được sử dụng để đặc tả ý nghĩa của các tài nguyên
Web (thông qua các chú thích) bằng cách xác nhận các tài nguyên như các trường
hợp cụ thể của một số khái niệm quan trọng và hay hoặc khẳng định các tài
nguyên có quan hệ với các tài nguyên khác thông qua một số thuộc tính quan
trọng đã định nghĩa trong các Ontology.
b. Hệ nền tảng tri thức (Knowledge based systems)
Hệ nền tảng tri thức dựa trên các công cụ trí tuệ nhân tạo làm việc trong
một lĩnh vực hẹp để cung cấp các quyết định thông minh với sự suy luận. Kiến
thức được mua lại và được đại diện bằng cách sử dụng luật biểu diễn tri thức quy
định, khung và các kịch bản. Những lợi thế cơ bản được cung cấp bởi hệ thống
như vậy là tài liệu hướng dẫn kiến thức, hỗ trợ quyết định thông minh, tự học, lý
luận và giải thích. Hệ nền tảng tri thức là những hệ thống dựa trên các phương
pháp và kỹ thuật trí tuệ nhân tạo và là thành phần cốt lõi của hệ chuyên gia vào
việc ra quyết định khuôn khổ giới hạn nào đó.
c. Hệ chuyên gia (Expert system)
Với năng biểu diễn tri thức và cơ chế suy luận dựa trên logic mô tả,
ontology là mô hình tuyệt vời cho các hệ chuyên gia. So với phương pháp biểu
diễn bằng luật sinh vốn chỉ hỗ trợ quan hệ nếu… thì…, ontology cho phép biểu
diễn tri thức của chuyên gia một cách đa dạng và phong phú hơn qua nhiều loại
quan hệ khác nhau mà người dùng có thể tự định nghĩa.
Dựa trên lý thuyết trí tuệ nhân tạo, một hệ chuyên gia là một hệ thống máy
tính mô phỏng các khả năng ra quyết định của một chuyên gia về con người. Hệ
chuyên gia được thiết kế để giải quyết các vấn đề phức tạp bằng cách lý luận về
kiến thức, giống như một chuyên gia, và không theo thủ tục như lập trình thông
thường. Các hệ thống chuyên gia đầu tiên được tạo ra trong những năm 1970 và
sau đó tăng lên nhanh chóng trong những năm 1980. Hệ chuyên gia là những hình

thức đầu tiên của AI phần mềm thành công.
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 8/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Một hệ thống chuyên gia có một cấu trúc độc đáo, khác nhau từ các chương
trình truyền thống. Nó được chia thành hai phần, một cố định, độc lập của hệ
thống chuyên gia: động cơ suy luận, và một biến: cơ sở tri thức. Để chạy một hệ
chuyên gia, sẽ suy luận các kiến thức cơ bản giống như một con người. Trong
những năm 80, chương trình giao diện để giao tiếp với người sử dụng. Sau này là
chương trình trò chuyện với người sử dụng, cụ thể siri của Apple.
d. Hệ hỗ trợ quyết định (Decision Support System - DSS)
Hệ hỗ trợ quyết định (DSS) là hệ thống thông tin hỗ trợ kinh doanh, hoạt động
tổ chức ra quyết định. DSS phục vụ việc quản lý, hoạt động, và mức độ quy hoạch
của một tổ chức và giúp đỡ để đưa ra quyết định, có thể thay đổi nhanh chóng và
không dễ dàng xác định trước. Hệ hỗ trợ quyết định có thể là một cách trọn vẹn
trên máy vi tính, con người hoặc kết hợp cả hai.
DSS bao gồm các hệ thống dựa trên tri thức. Một DSS được thiết kế là hệ
thống tương tác nhằm mục đích giúp các nhà hoạch định chính sách các thông tin
hữu ích từ sự kết hợp của dữ liệu thô, tài liệu, và kiến thức cá nhân, hoặc mô hình
kinh doanh để xác định và giải quyết vấn đề và đưa ra quyết định. Ví dụ ứng dụng
hỗ trợ quyết định có thể thu thập và trình bày bao gồm: hàng tồn kho của các tài
sản thông tin (bao gồm cả nguồn dữ liệu di sản và quan hệ, hình khối, kho dữ liệu,
và các siêu thị dữ liệu), so sánh số liệu bán hàng từ một thời kỳ và tiếp theo, dự
kiến con số doanh thu dựa trên giả định doanh số bán sản phẩm.
d. Các lợi ích và ứng dụng khác của Ontology
- Ontology là hệ biểu diễn ngữ nghĩa nên cung cấp khả năng hiểu tri thức cho
máy tính, tạo điều kiện xây dựng các hệ thống xử lý tự động.
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 9/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
- Ontology có khả năng tích hợp. Điều này cho phép những Ontology về các
miền thông tin khác nhau có thể tích hợp, trộn lẫn, ánh xạ với nhau, tạo sự liên

giao tiếp giữa các ứng dụng khác nhau.
- Ontology có thể dùng lại. Điều này giúp cho việc xây dựng Ontology mới
được giảm nhẹ công sức, đồng thời tạo ra khả năng mở rộng dịch vụ của các ứng
dụng một cách dễ dàng nhất là dịch vụ Web (Web services)
- Ontology có thể được chia sẻ bởi nhiều ứng dụng, không phụ thuộc nền hệ
điều hành. Một ứng dụng trên hệ Unix có thể hoàn toàn sử dụng dữ liệu trong
Ontology được xây dựng bởi ứng dụng trên hệ Windows.
- Ontology có thể giải quyết vấn đề đa ngôn ngữ. Các ứng dụng có thể xử lý
dữ liệu được viết bởi các ngôn ngữ khác nhau (ví dụ tiếng Anh và tiếng Pháp) một
cách giống nhau với một Ontology ánh xạ các thuộc tính của các ngôn ngữ này
đến cùng một ngữ nghĩa. Ví dụ của ứng dụng này là trong tìm kiếm đồng thời trên
nhiều ngôn ngữ.
- Ontology biểu diễn ngôn ngữ dựa trên logic. Mọi thứ được phát biểu chính
xác, rõ ràng trên ngôn ngữ tự nhiên nào đều biểu diễn được logic. Nhiều thứ khó
có thể nắm được ý nghĩa 1 cách rõ ràng thì khó có thể biểu diễn trên logic (như
tình yêu, thơ ca ). Tuy nhiên, bất cứ thứ gì có thực hiện trên máy tính bằng ngôn
ngữ lập trình đều có thể biểu diễn logic. Các ontology thường dùng biểu diễn các
khái niệm bằng các ngôn ngữ dựa trên logic.
- Ontology biểu diễn theo ngữ nghĩa con người nên người dùng hoàn toàn hiểu
được và có thể soạn thảo, tinh lọc, tùy biến Ontology theo ý muốn. Điều này giúp
tạo ra các ứng dụng thông minh, mang tính tùy biến cao, là hướng phát triển của
tương lai.
Các ứng dụng Ontology có thể biểu diễn ngôn ngữ tự nhiên
- Conceptual Graphs (CGs): được John F. Sowa (Sowa 1976) sử dụng để biểu diễn
mô hình của ngôn ngữ tự nhiên vào ngôn ngữ được trình bày như logic mà con
người có thể đọc dễ dàng.
- Knowledge Interchange Format (KIF): thiết kế nhằm phân tách cú pháp và tập ký
tự trao đổi trong các hệ máy tính và có thể áp dựng biểu diễn ngôn ngữ tự nhiên.
Các biểu diễn CGs và KIF đều có thể chuyển đổi lẫn nhau và ngược lại. CGs dễ
cho người đọc và biểu diễn nhiều thứ hơn nhưng khó cho máy tính thực hiện, còn

KIF thì ngược lại. Vì vậy các ontology thường dùng kết hợp giữa 2 cách trên.
Ví dụ:
Để biểu diễn câu “John đi đến Boston bằng xe bus”
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 10/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Ta có:
4 khái niệm: [Người: John], [Đi], [Thành Phố: Boston], [Xe bus]
3 quan hệ: (nhân viên), (đích đến), (phương tiện)
Sau đây là quy tắc biểu diễn các khái niệm và các quan hệ
Biểu diễn bằng CGs:
[Đi: *x] [Người: ‘John’ *y] [Thành phố: ‘Boston’ *z] [Xe bus: *w]
(Nhân viên ?x ?y) (Đích đến ?x ?z) (Phương tiện ?x w)
Biểu diễn bằng KIF:
(exist ((?x Đi) (?y Người) (?z Thành Phố) (?w Xe buýt))
(and (Tên ?y John) (Tên ?z Boston)
(Nhân viên ?x ?y) (Đích đến ?x ?z) (Phương tiện ?x ?w)))
Từ cách biểu diễn trên, ta thấy các suy luận có thể hiện thực được bằng cách
chuyển đổi graph thành công thức logic bằng cách có bộ suy diễn.
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 11/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
II. Mô Hình KIF
1. Giới thiệu
KIF (Knowledge Interchange Format) là một ngôn ngữ chính thức cho việc trao
đổi kiến thức giữa các chương trình máy tính khác nhau (computer-oriented
language) (được viết bởi các lập trình viên khác nhau, ở những thời điểm khác
nhau, ngôn ngữ khác nhau…).
KIF có ý định như ngôn ngữ chính cho sự tương tác với người sử dụng của con
người và nó có thể được sử dụng cho mục đích này. Ngoài ra, có thể tương tác với
người dùng bằng hình thức các ứng dụng như đồ thị, biểu đồ, bảng biểu, sơ đồ,
ngôn ngữ tự nhiên

Thông thường, khi một chương trình đọc một cơ sở kiến thức trong KIF, nó
chuyển đổi các dữ liệu đang có vào hình thức nội bộ kiểu định dạng của riêng
mình (danh sách, mảng, tập hợp,…). Tất cả các tính toán được thực hiện bằng
cách sử dụng các phương thức nội bộ và có thể sử dụng nội bộ khi chương trình
cần phải giao tiếp với một chương trình khác.
Áp dụng mô hình KIF có thể biểu diễn ngôn ngữ tự nhiên, và cũng được dung
trong việc biểu diễn tri thức cho Postscript, postscript thường được sử dụng bởi
các chương trình định dạng văn bản và đồ họa trong việc truyền đạt thông tin về
các tài liệu đến máy in. Postscript là một dạng có thể biểu diễn, lưu trữ và phục hồi
được trong nhiều lĩnh vực, nó cũng là một ngôn ngữ lập trình có thể đọc được và
do đó tạo điều kiện cho việc phát triển độc lập của các chương trình thao tác tri
thức.
Chính vì mô hình KIF có các thành phần như sau:
- Mô hình với thành phần khái niệm và thành phần quan hệ
- Ngôn ngữ đặc tả
Nên mô hình KIF cũng chính là một dạng khái niệm Ontology.
2. Tính năng và đặc điểm mô hình KIF
Các tính năng chung quan trọng sau đây cho định nghĩa của KIF:
a. Ngôn ngữ khai báo có ngữ nghĩa (declarative semantics):
Có thể hiểu được ý nghĩa của các biểu thức trong ngôn ngữ mà không cần một
trình thông dịch nào cho các thao tác biểu hiện. Bằng cách này, KIF khác các ngôn
ngữ khác được dựa trên các thông dịch viên cụ thể như Emycin và Prolog.
b. Ngôn ngữ biểu thị được toàn diện (logically comprehensive):
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 12/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Nó cung cấp cho sự biểu hiện của câu tùy ý bằng các vị từ. Bằng cách này, nó
khác với ngôn ngữ truy vấn cơ sở dữ liệu quan hệ (bị hạn chế bởi phép toán giới
hạn) và Prolog (được giới hạn mệnh đề Horn).
b. Ngôn ngữ cung cấp cho việc biểu diễn tri thức cho một tri thức khác
(Metaknowledge):

Cho phép chúng ta biểu diễn tri thức một cách tường minh và cho phép chúng ta
giới thiệu tri thức mới mà không thay đổi ngôn ngữ.
Ngoài ra, còn các đặc điểm tuyệt vời của KIF như sau:
a. Chuyển dịch (Translatability): KIF cho phép chuyển đổi kiến thức cơ bản
khai báo từ các ngôn ngữ biểu diễn tri thức gốc.
b. Dễ đọc (Readability): KIF có thể dùng như là một ngôn ngữ để tương tác với
con người, con người dễ đọc tạo điều kiện cho việc sử dụng nó trong mô tả ngữ
nghĩa ngôn ngữ đại diện, sử dụng nó như một ngôn ngữ xuất bản ví dụ như kiến
thức cơ bản, sử dụng của nó trong việc hỗ trợ kiến thức cho con người
c. Tính khả dụng (Useability): tuy là ngôn ngữ đại diện, nhưng KIF sử dụng
được như ngôn ngữ giao tiếp. Cụ thể biểu diễn kiến thức trong otology và các kiến
thức cơ bản.
3. Tìm hiểu mô hình KIF
Theo lý thuyết của các mô hình ontology:
O = {C, R, A
0
}
Với C (Concept): là tập các khái niệm, đơn vị của nhận thức và nền tảng tri thức.
R (Relation): là tập các quan hệ nội tại và các quan hệ các đối tượng
A
0
(Axiom): tập các tiền đề ban đầu
Thì mô hình KIF cũng có có những đặc điểm này và cụ thể hóa thêm nữa
a. Khái niệm (Conceptualization)
Kiến thức chuẩn hóa của mô hình KIF cũng bao gồm các niệm như sau:
- Đối tượng (Objects)
- Tính năng (Functions)
- Quan hệ (Relations)
 Đối tượng (Objects):
Các khái niệm về đối tượng được sử dụng ở đây khá rộng. Đối tượng có thể

cụ thể (ví dụ như một nguyên tử carbon cụ thể, Mặt Trời, …) hoặc trừu
tượng (ví dụ như số 2, các thiết lập của tất cả các số nguyên, các khái niệm
về công lý, các khái niệm toán học,…). Đối tượng có thể là nguyên tố hoặc
composite (ví dụ như một mạch điện).
Mục đích khác nhau của một ngôn ngữ đại diện khai báo KIF là việc bao
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 13/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
gồm các đối tượng cơ bản nhất định này, ta lấy ví dụ khái niệm toán học:
- Tất cả các số thực
- Tất cả các số phức.
- Tất cả các danh sách hữu hạn của tập đối tượng
- Tất cả các tập của các đối tượng.
 Chức năng (Functions):
Chức năng là một loại mối tương quan giữa các đối tượng. Đối với tất cả
các dãy hữu hạn của các đối tượng (được gọi là các đối số), một chức năng
liên kết một đối tượng duy nhất (gọi là giá trị). Một chức năng được định
nghĩa là một tập hợp các danh sách hữu hạn của các đối tượng, một cho mỗi
sự kết hợp của các đối số có thể. Ví dụ, hàm chứa một danh sách có các số
nguyên
 Quan hệ (Relations):
Mối quan hệ là một loại mối tương quan giữa các đối tượng. Một mối quan
hệ là một tập hợp danh sách hữu hạn của các đối tượng tùy ý (có thể độ dài
khác nhau). Ví dụ, quan hệ nhỏ hơn các phần tử trên danh sách, cho thấy
thấy thứ tự nhỏ hơn.
b. Cú pháp KIF
Cú pháp của First-Order KIF (tạm dịch KIF theo thứ tự dịch từ trên xuống),
được mô tả bằng 3 lớp:
- Lớp 1: là các ký tự cơ bản (basic characters) của ngôn ngữ
- Lớp 2: là các từ (lexemes) bao gồm các ký tự ở lớp 1 kết nối với nhau
- Lớp 3: là các biểu thức ngữ pháp (grammatically legal expressions) bằng

cách kết nối các lexemes với nhau
Ký tự nonterminal*: có nghĩa xuất hiện không lần hoặc nhiều lần
Ký tự nonterminal+: có nghĩa xuất hiện một lần hoặc nhiều lần;
Các ký tự space, tab, return tham khảo đến các ascii codes 32, 9, 13
Cú pháp của KIF sử dụng dạng biên dịch BNF.
BNF (Backus Normal Form Backus-Naur Form) là một trong kỹ thuật cho ngữ
pháp phi ngữ cảnh (context-free grammars), thường được sử dụng để mô tả cú
pháp của ngôn ngữ được sử dụng trong máy tính, chẳng hạn như ngôn ngữ lập
trình máy tính, định dạng tài liệu, giao thức truyền thông, kỹ thuật cho các văn
bản ngữ pháp ngữ cảnh chính hình thức.
 Ký tự (Characters):
Ký tự của KIF phân loại gồm chữ hoa, chữ thường, chữ số, ký tự chữ cái,
các ký tự đặc biệt, khoảng trắng, và các ký tự khác.
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 14/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
<alpha> ::= A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S |
T | U | V | W | X | Y | Z | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r |
s | t | u | v | w | x | y | z
<digit> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
<marker>::= @|#|?|`|.|=|/|[|:|%
<other> ::= !|$|%|&| * | + |,| - | ; | ] | ^ | _ | { | } | ~ | > | '
<white> ::= <space> | <tab> | <return> | <linefeed> | <page>
<lexbreak> ::= <white> | ( | ) | “ | \
<wordchar> ::= <alpha> | <digit> | <marker> | <other>
 Từ (Lexemes):
Chuỗi các từ (Character Strings):
Một chuỗi các từ là một loạt các ký tự trong dấu ngoặc kép. Ký tự escapes
\ để cho phép bao gồm dấu ngoặc kép và ký tự \ chính nó.
<stringchar> ::= <wordchar> | <white> | (|)
<docstring> ::= “<stringchar>*”

Từ (Words):
Word là một ký tự hoặc ký số theo sau bởi wordchar hợp lệ
<word> ::= {<alpha> | <other>} <wordchar>
<wordbody> ::= <wordchar>+
Biến đối tượng (Object Variables):
Biến đối tượng là 1 từ (word) mà đầu tiên là dấu ?
<objvariable> ::= ?<word>
Toán Tử (Operators):
Toán tử được sử dụng trong việc kết nối, xử lý các biểu thức để biểu diễn
một câu phức tạp
<sentop> ::= = | not | and | or | implies | iff | forall | exists
Hằng số (Constants):
Tất cả các word đều gọi constants
<constant> ::= <word> - <objvariable> – <sentop>
 Biểu thức (Expressions):
Biểu thức trong KIF có thể là namespace N bao gồm đệ quy của các từ
(Word). Thành phẩn của namespace biểu diễn thông qua biểu thức
(expression) gồm:
o Term (objvariable – “Object Variable”, ObjTerm - “Object Term”,
FnTerm – “Function Term”)
o Sentence
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 15/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
o Constant
 Term:
Object Variables:
Biến đối tượng là 1 từ (word) mà đầu tiên là dấu ?
<objvariable> ::= ?<word>
Object Term:
Term đối tượng bao gồm tập các biến đối tượng hoặc hằng số hoặc các

cụm chức năng .
<objterm> ::= <objvariable>|<constant>|<fnterm>
Function Term:
Term chức năng bao gồm sự kết hợp các object term lặp lại nhiều lần và
đặt trong dấu ngoặc đơn.
<fnterm> ::= (<objterm> <objterm>*)
 Sentence:
Câu (sentence) theo chuẩn BNF bao gồm 4 loại:
<sentence> ::= <atomsent>|<logsent>|<quantsent> | (<sentence>
<docstring>)
Atomic Sentence (atomsent):
Atomic sentence bao gồm 1 hoặc nhiều các object term hoặc là
equation sentence
<atomsent> ::= (<objterm>+) | <equalsent>
Equation Sentence (equalsent):
Equation sentence bao gồm toán tử = và 2 object term
<equalsent> ::= (= <objterm> <objterm>)
Logical Sentence (logsent):
Cú pháp của câu dạng logic bao gồm các phép toán logic kết nối các
sentence với nhau, như toán tử not biểu thị cho việc phủ định, and cho
phép kết nối, or cho phép phân chia…
<logsent> ::= (not <sentence>)|
({and|or} <sentence>*)|
({implies|iff} <sentence> <sentence>)
Quantified Sentence (quantsent):
Cú pháp của câu dạng qualified bao gồm các phép toán forall , hoặc
exist cho các biến và các câu
<quantsent> ::= ({forall|exists}(<objvariable>*) <sentence>)
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 16/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng

 KIF Module:
KIF Module là một tập các sentences. KIF module không phải thể hiện
thứ tự các sentence nên thứ tự không quan trọng.
Các biểu thức cho việc quản lý module như sau:
<specialname> ::= %<wordbody>|documentation
<restriction> ::= :<word>
<importname> ::= #<wordbody>
<quote> ::= `<wordbody>'
<docform> ::= (documentation [<word>] <docstring>)
c. Ngữ nghĩa của KIF
 Nguyên tắc cơ bản:
Nền tảng ngữ nghĩa của KIF là các khái niệm bao gồm term của các đối
tượng object và các mối quan hệ giữa các object đó. Bất kỳ tên nào
trong tập bao đóng cũng có thể được sử dụng như là tên một function
hay là một mối quan hệ. Ngữ nghĩa phải được gán vào giá trị nào đó của
biểu thức (expression) thông qua chức năng và mối quan hệ với nhau
cũng như nội tại của chính nó.
Với KIF, các mối quan hệ và các chức năng là các object trong một tập
vũ trụ luận (universe of discourse, là tập hợp các phần tử khác rỗng).
KIF sử dụng một ngữ nghĩa cơ bản cộng một phần mở rộng với tất cả
các đối tượng trong miền. Bản chất của việc mở rộng liên kết với một
đối tượng xác định loại đối tượng đó là: quan hệ (relation) là phần mở
rộng đó là tập hợp của n-tuple, chức năng (function) là một lớp học đặc
biệt của quan hệ có phần mở rộng là chức năng, và cá nhân (individuals)
có phần mở rộng là empty.
Ta cùng nhau tìm hiểu ngôn ngữ First-Order KIF.
Ngôn ngữ KIF được biểu diễn bằng các thành phần cơ bản như sau:
 Các khái niệm:
E : tập các phần tử đơn lẻ trong tập vũ trụ
O : tập vũ trụ luận (universe of discourse, là tập các phẩn tử khác

rỗng các khái niệm)
R : tập quan hệ trong tập vũ trụ
ext : hàm mở rộng (extension function)
i : hàm suy diễn (interpretation function)
s : hàm giá trị về ngữ nghĩa (semantic value function)
t : hàm thỏa mãn (satisfaction function)
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 17/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
L
I
: ngôn ngữ suy luận
L
KIF
: ngôn ngữ First-Order KIF
λ
e
: cú pháp mapping λ
e
: L
I
 L
KIF
từ biểu thức trong L
I
thành câu trong
L
KIF
λ
i
: cú pháp mapping λ

i
: L
KIF
L
I
từ biểu thức trong L
KIF
thành câu trong
L
I
.
O
n
: các chuỗi có chiều dài n các thành viên
O* : tất cả các chuỗi
<>: chuổi có độ dài bằng 0
cc(s
1
, ,s
n
) : nối các dòng s
1
…s
n
.
v : biến (variable)
: từ quan hệ (relation word)
: số hạng (term)
: câu(sentence)
: từ trong namespace

 Ngữ nghĩa của ngôn ngữ First-Order KIF:
 Hàm mở rộng (extension function):
Với sự duy diễn I, hàm mở rộng có các đặc tính sau:
 Ngữ nghĩa cho term:
Với tập duy diễn I, hàm mở rộng ngữ nghĩa có các đặc tính sau cho mỗi
loại:
Giá trị ngữ nghĩa của biến đối tượng (object variables):
Giá trị ngữ nghĩa của biến đối tượng v là đối tượng được gán đến biến
trong tập suy diễn I
Giá trị ngữ nghĩa của hằng số (constants):
Giá trị ngữ nghĩa của hằng số s là đối tượng được gán đến hằng số trong
tập suy diễn I
Giá trị ngữ nghĩa của số hạng hàm (function term):
Nếu là một hàm, thì là duy nhất với như
trong tập suy diễn I;
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 18/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Ngược lại:
 Ngữ nghĩa hàm thỏa mãn cho câu (satisfaction function for
sentences):
Với tập duy diễn I, hàm thỏa mãn có các đặc tính sau cho mỗi loại:
Phương trình (equation):
Một phương trình là true nếu và chỉ nếu các số hạng trong phương trình
tham khảo cùng đối tượng trong tập vũ trụ luận của tập suy diễn I
Câu cơ bản (atomic sentences):
Một câu cơ bản là true nếu và chỉ nếu bộ dữ liệu của các đối tượng như
nhau từ giá trị các đối số là thành viên của tập hợp của bộ dữ liệu trong
mở rộng quan hệ biểu thị bằng mối quan hệ hằng trong tập suy diễn I.
Phủ định (not):
Một phủ định (negation) là true nếu và chỉ nếu câu phủ định là false

trong tập suy luận I.
Hoặc (or):
Một sự tách rời (disjunction) là true nếu và chỉ nếu ít nhất 1phân đoạn là
true trong tập suy luận I.
Và (and):
Một sự liên kết (conjunction) là true nếu và chỉ nếu mọi liên kết là true
trong tập suy luận I.
Kéo theo (implies):
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 19/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Nếu mọi số hạn vế thứ nhất trong phép kéo theo là true, thì phép kéo
theo được xem toàn bộ true nếu và chỉ nếu vế thứ hai là true trong tập
suy luận I. Nếu bất kỳ số hạn vế thứ nhất trong phép kéo theo là false,
thì phép kéo theo được xem toàn bộ true bất chấp giá trị vế thứ hai trong
tập suy luận I
Iff:
Tương đương là true nếu và chỉ nếu tất cả các đối số có giá trị chân trị
như nhau trong tập suy luận I.
Tồn tại (exists):
Một câu định lượng là tồn tại là true nếu và chỉ nếu 1 câu nhúng vào là
true đối với một số giá trị của các biến đã đề cập trong tham số đầu tiên
Forall:
Một lượng tất cả là true nếu và chỉ nếu 1 câu nhúng là true đối với tất cả
các giá trị của các biến được đề cập trong tham số đầu tiên.
 Sự tương thích ngữ nghĩa của ngôn ngữ KIF:
Những mệnh đề sau đây đặc tả điều kiện ngữ nghĩa cho việc xây dựng
hệ thống suy diễn tương thích với chuẩn KIF
Tính bền vững (soundness):
Một hệ thống suy diễn I có sự tương thích ngữ nghĩa đơn giản với L
KIF


nếu và chỉ nếu có tồn tại một phép mapping như vậy cho
mỗi câu mà I quyết định để có thể thỏa mãn với module
, có tồn tại như là và được thỏa
mãn bởi tất cả mô hình
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 20/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Tính đầy đủ (completeness):
Một hệ thống suy diễn I có sự tương thích ngữ nghĩa mạnh mẽ với L
KIF

nếu và chỉ nếu có tồn tại một phép mapping như vậy
cho mỗi câu và module , nếu có thể thỏa
mãn bởi tất cả mô hình của T thì I quyết dịnh có thể thỏa mãn với
module
 Sự tương thích cú pháp của ngôn ngữ KIF:
Những mệnh đề sau đây đặc tả điều kiện ngữ nghĩa cho việc xây dựng
hệ thống suy diễn tương thích với chuẩn KIF
Tương thích cú pháp đầy đủ (Full Syntactic Conformance):
Một hệ thống suy diễn I có sự tương thích cú pháp đầy đủ với KIF nếu
và chỉ nếu có sự tương thích ngữ nghĩa đơn giản với L
KIF
Tương thích giới hạn cú pháp (Restricted Syntactic Conformance):
Một hệ thống suy diễn I có sự tương thích giới hạn cú pháp với KIF nếu
và chỉ nếu có tồn tại một ngôn ngữ con như là I có sự tương
thích ngữ nghĩa đơn giản với
Tương thích mở rộng cú pháp (Expanded Syntactic Conformance):
Một hệ thống suy diễn I có sự tương thích mở rộng cú pháp với KIF nếu
và chỉ nếu có tồn tại một ngôn ngữ con như là I có sự tương
thích ngữ nghĩa đơn giản với

 Ngữ Pháp Phi Ngữ Cảnh cho First-Order KIF
<alpha> ::= A | B | C | D | E | F | G | H | I | J | K | L | M |
N | O | P | Q | R | S | T | U | V | W | X | Y | Z
a | b | c | d | e | f | g | h | i | j | k | l | m |
n | o | p | q | r | s | t | u | v | w | x | y | z
<digit> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
<marker>::= @|#|?|`|.|=|/|[|:|%
<other> ::= !|$|%|&| * | + |,| - | ; | ] | ^ | _ | { | } | ~ | > | '
<white> ::= <space> | <tab> | <return> | <linefeed> | <page>
<lexbreak> ::= <white> | ( | ) | “ | \
<wordchar> ::= <alpha> | <digit> | <marker> | <other>
<stringchar> ::= <wordchar> | <white> | (|)
<docstring> ::= “<stringchar>*”
<word> ::= {<alpha> | <other>} <wordchar>
<wordbody> ::= <wordchar>+
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 21/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
<objvariable> ::= ?<word>
<sentop> ::= = | not | and | or | implies | iff |
forall | exists
<constant> ::= <word> - <objvariable> – <sentop>
<objterm> ::= <objvariable>|<constant>|<fnterm>
<fnterm> ::= (<objterm> <objterm>*)
<sentence> ::= <atomsent>|<logsent>|<quantsent>
| (<sentence> <docstring>)
<equalsent> ::= (= <objterm> <objterm>)
<atomsent> ::= (<objterm>+) | <equalsent>
<logsent> ::= (not <sentence>)|
({and|or} <sentence>*)|
({implies|iff} <sentence> <sentence>)

<quantsent> ::= ({forall|exists}(<objvariable>*) <sentence>)
<specialname> ::= %<wordbody>|documentation
<restriction> ::= :<word>
<importname> ::= #<wordbody>
<quote> ::= `<wordbody>'
<docform> ::= (documentation [<word>] <docstring>)
4. Dùng KIF biểu diễn tri thức trong ngôn ngữ tự nhiên
Mô hình KIF ontology có thể dung biểu diễn các ngôn ngữ tự nhiên, sau đây là
một số ví dụ:
The mother of Charles is either Elizabeth or Ann.
(forall (?x)
(=> (mother Charles ?x)
(or (= ?x Elizabeth)
(= ?x Ann))))
Everyone’s age must be greater than 0.
(forall (?x)
(greater (age ?x) 0))
Nobody can be both a brother and a sister.
(forall (?x ?y)
(=> (brother ?x ?y)
(not (sister ?x ?y))))
Every person has a mother.
(forall (?x)
(=> (person ?x)
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 22/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
(exists (?y)
(and (person ?y)
(mother ?x ?y)))))
Two people are siblings if and only if they are brother or sister.

(forall (?x ?y)
(=> (and (person ?x)
(person ?y))
(<=> (sibling ?x ?y)
(or (brother ?x ?y)
(sister ?x ?y)))))
III. So sánh mô hình KIF với mô hình COKB-ON
Sau đây là bảng so sánh mô hình KIF và COKB-ON cơ bản:
KIF COKB-ON
Thành
phần
● O: Tập khái niệm
● Ext: các hàm
● : các word
● : các term
Ngoài ra còn các khái
niệm khác bổ sung
tập trên cho KIF như
phần trên
● C: Các khái niệm
Các khái niệm C có thể chi tiết (Df, Attrs,
F, Facts, Rules):
Df: tập các sự kiện định nghĩa khái niệm
Attrs: tập các thuộc tính khái niệm
F: tập các quan hệ tính toán
Facts: tập các sự kiện của khái niệm đó
Rules: tập suy diễn các thuộc tính liên
quan đến bản thân khái niệm
● H: quan hệ phân cấp trên một loại khái
niệm

● R: quan hệ trên các loại khái niệm
Quan hệ được định nghĩa trên 3 thành
phần sau: C, Df, Facts
● Funcs: hàm hay quy tắc tính toán trên các
loại khái niệm
● Ops: tập các toán tử trên các khái niệm
● Rules: luật suy diễn trên các khái niệm và
sự kiện
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 23/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Như bảng so sánh trên, ta thấy mô hình KIF là mô hình cơ bản so với COKB-ON,
chính vì vậy KIF có nhiều hạn chế so với mô hình COKB-ON nhưng cũng cơ bản
biểu diễn tri thức có giới hạn cho một số lĩnh vực.
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 24/38
Bài Thu Hoạch Chuyên Đề - Mô Hình KIF Ontology Và Ứng Dụng
Thông qua việc tìm hiểu KIF, giúp ta hiểu rõ hơn cách thức biểu diễn tri thức cơ
bản nền tảng cho việc tìm hiểu các ontology khác sau này.IV. Tổng Quan
Chương Trình Biểu Diễn KIF
Chương trình BDTT_demo được viết bằng ngôn ngữ Java mục đích biểu diễn tri
thức cho máy tính thông qua ngôn ngữ tự nhiên và mô phỏng cách thức suy luận
của nó, bao gồm các phần như sau:
- File config.properties
- Các class Java hiện thực chương trình
Chương trình này hiện thực bằng cách sử dụng công cụ như sau:
- Ngôn ngữ lập trình: Java sử dụng Eclipse tool
- Sử dụng lib jtp open source của đại học Standford, một trong những đại học
hàng đầu nghiên cứu và hiện thức trí tuệ nhân tạo.
1. Ngôn ngữ lập trình
Sau đây là cấu trúc chương trình mô tả ngắn gọn các thành phần của Project:
Chi tiết các file, class như sau:

- File config.properties: chứa thông tin các biểu diễn tri thức ngôn ngữ tự nhiên
bằng mô hình KIF
SV: Nguyễn Võ Ngọc Huy (CH1101091) Trang 25/38

×