Thông qua định dạng này, các thông tin trong RDF có thể được trao đổi dễ dàng giữa các hệ thống máy tính cũng như các hệ điều hành hay các ngôn ngữ lập trình ứng dụng khác nhau.. Khái ni
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TP HỒ CHÍ MINH
KHOA KHOA HỌC MÁY TÍNH
Mã số: CH1301061
TP Hồ Chí Minh, 2014
Trang 2
Đề tài : TÌM HIỂU WEB NGỮ NGHIÃ, ONTOLOGY VÀ PROTÉGÉ OWL TRONG TÌM KIẾM VĂN BẢN
GV: PGS.TS Đỗ Văn Nhơn HV: Dương Thị Xuân Thoại
Mã số: CH1301061
TP Hồ Chí Minh, 2014
Trang 3MỤC LỤC
Trang 5Tài liệu tham khảo
Lương Quý Tịnh Hà Xây dựng công cụ tìm kiếm tài liệu học tập bằng các truy vấn ngôn
ngữ tự nhiên trên kho học liệu mở tiếng Việt.
Natalya F Noy and Deborah L McGuinness Ontology Development 101: A Guide to
Creating Your First Ontology Stanford University, Stanford, CA, 94305
Lê Thành Nhân, Võ Trung Hùng, Cao Xuân Tuấn, Hoàng Thị Mỹ Lệ MATHIS – Hệ
thống hỗ trợ tạo chú thích và tìm kiếm tài liệu khoa học Tạp chí khoa học và công nghệ, Đại
học Đà Nẵng - Số 4(39).2010
Trần Đình Khang, Vũ Tuyết Trinh, Đỗ Đức Thành, Đỗ Thị Ngọc Quỳnh Một phương
pháp tìm kiếm dựa trên Ontology phục vụ quản lý thông tin khoa học công nghệ Bộ môn Hệ
thống Thông tin, Trường Đại Học Bách Khoa Hà Nội
Phạm Thị Mỹ Phượng, Từ Thị Ngọc Thanh Tìm kiếm ngữ nghĩa ứng dụng trên lĩnh vực
eDoc
Tài liệu hướng dẫn phiên bản mã nguồn mở OVL – Open 1.0
CNET.com,”Web ngữ nghĩa – Tương lai của WWW”,Sưu tầm: Nguyễn Hoài Tưởng
(mailto:nhtuong@cit.ctu.edu.vn), nhtuong,17/4/2007
Đỗ Phúc, Hoàng Kiếm,“Rút trích ý chính từ văn bản tiếng Việt hỗ trợ tạo tóm tắt nội
dung”.
Đồng Thị Bích Thủy, Hồ Bảo Quốc,”Ứng dụng xử lý ngôn ngữ tự nhiên trong hệ tìm kiếm
thông tin trên văn bản tiếng Việt”.
Nguyen Phi Minh Tri, Nguyen Tuan Dang Building a Universal Ontology for Vietnamese
Language Faculty of Computer Science, University of Information Technology.
Sean Bechhofer, Ian Horrocks, Daniele Turi The OWL Instance Store: System
Description Information Management Group, School of Computer Science, The University
of Manchester
Bijan Parsia and Evren Sirin Pellet: An OWL DL Reasoner MINDSWAP Research
Group, University of Maryland, College Park, MD
Thomas R.Gruber Toward Principles for the Design of Ontologies Used for Knowledge
Sharing Stanford Knowledge Systems Laboratory, 701 Welch Road, Building C Palo Alto,
CA 94304, gruber@ksl.stanford.edu
Trang 6L H Phuong, N T.M Huyen, R Azim, H T Vinh A hybrid approach to word
segmentation of Vietnamese texts Proceedings of the 2nd International Conference on
Language and Automata Theory and Applications, LATA 2008, Springer LNCS 5196, Tarragona, Spain, 2008
B E Boser, I M Guyon, and V N Vapnik A training algorithm for optimal margin
classifiers In D Haussler, editor, 5th Annual ACM Workshop on COLT, pages 144-152
Pittsburgh, PA, 1992
Nguyễn Linh Giang, Nguyễn Mạnh Hiển Phân loại văn bản tiếng Việt với bộ phân loại
vectơ hỗ trợ SVM
Boanerges Aleman-Meza, Farshad Hakimpour, I Budak Arpinar SwetoDblp Ontology
of Computer Science Publications LSDIS Lab, Computer Science Department, University
of Georgia, Athens, GA
Olivier Corby, Rose Dieng, C´edric H´ebert, ”A Conceptual Graph Model for W3C
Resource Description Framework”.
Pavlin Dobrev, Albena Strupchanska,Kristina Toutanova, ”CGWorld – from Conceptual
Graph Theory to the Implementation”.
Slim Turki,Christine Aïdonidis,Abdelaziz Khadraoui,Michel Léonard,“Towards
Ontology-Driven Institutional IS Engineering”
Thanwadee Thanitsukkarn, Anthony Finkelstein, “A Conceptual Graph Approach to
Support Multiperspective Development Environments”.
Website tham khảo:
Trang 7http://www.cs.wisc.edu/dbworld/
Trang 8Chương 1 : WEB Ngữ Nghĩa và Ontolog
1 Web ngữ nghĩa (Semantic Web – SW)
1.1 Giới thiệu
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 Mục tiêu của Web có ngữ nghĩa là để phát triển các chuẩn chung và công nghệ cho phép máy tính có thể hiểu được nhiều hơn thông tin trên Web, sao cho chúng có thể hỗ trợ tốt hơn việc khám phá thông tin, tích hợp dữ liệu (dữ liệu liên kết động), và tự động hóa các công việc
1.2 Web ngữ nghĩa là gì?
Web ngữ nghĩa được phát triển bởi Tim- Berners Lee, cha đẻ của WWW, URIs, HTTP
và HTML Theo Ông, ‘‘ Web ngữ nghĩa là sự mởrộng của Web hiện tại, cho phép người dùng có thể truy tìm, phối hợp, sử dụng lại và trích lọc thông tin một cách dễ dàng và chính xác ’’ (Tim- Berners Lee, XML-2000)
1.2.1 Nội dung xây dựng Web ngữ nghĩa
Để xây dựng hệ thống Web ngữ nghĩa thay thế cho World Wide Web hiện tại, các nhà nghiên cứu đang nỗlực và tập trung nghiên cứu với ba hướng chính sau:
Chuẩn hoá các ngôn ngữ biểu diễn dữ liệu (XML) và siêu dữ liệu (RDF) trên Web Chuẩn hoá các ngôn ngữ biểu diễn Ontology cho Web có ngữ nghĩa
Phát triển nâng cao Web có ngữ nghĩa (Semantic Web Advanced Development - SWAD)
Trang 9PGS.TS Đỗ Văn Nhơn CH1301061_Dương Thị Xuân Thoại
1.2.2 Kiến trúc phân tầng của Semantic Web
Hình - Kiến trúc phân tầng của web ngữ nghĩa năm 2006
Trong cấu trúc trên mỗi tầng có một vai trò nhất định:
Tầng Ontology
9
Trang 10Ontology 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
Đảm bảo tính tin cậy của các ứng dụng trên Web ngữ nghĩa
2 RDF Nền tảng của Semantic Web
2.1 Giới thiệu về RDF
RDF là một thành phần quan trọng của Semantic Web, được đặt trên XML, RDF sử dụng cú pháp của XML để biểu diễn thông tin Ngôn ngữ XML dùng để biểu diễn thông tin trong RDF được gọi là RDF/XML Thông qua định dạng này, các thông tin trong RDF có thể được trao đổi dễ dàng giữa các hệ thống máy tính cũng như các hệ điều hành hay các ngôn ngữ lập trình ứng dụng khác nhau
2.2 RDF là gì?
RDF (Resource Description Framework) là một “bộ khung” được sửdụng để mô tả các nguồn tài nguyên trên Internet
2.3 Mô hình RDF
Mô hình cơbản của RDF gồm ba đối tượng sau:
Tàinguyên (Resources): là tất cảnhững gì được mô tả bằng biểu thức RDF
Thuộc tính (Properties): thuộc tính, đặc tính, hoặc quan hệ dùng để mô tả tính chất của tài nguyên
Phát biểu (Statements): mỗi phát biểu gồm ba thành phần sau:
Subject (Tài nguyên): địa chỉ hay vị trí tài nguyên muốn mô tả
Trang 11PGS.TS Đỗ Văn Nhơn CH1301061_Dương Thị Xuân Thoại
Predicate (Vịngữ): xác định tính chất của tài nguyên
Object (Bổngữ): có thể là một giá trị nguyên thủy hoặc cũng có thể là một tài nguyên Mỗi một phát biểu (subject, predicate, object) còn gọi là một bộ ba ( triple)
Ví dụ: Xét phát biểu sau “Sơn có anh là Minh”
Phát biểu trên được phân ra thành các phần sau:
Subject sơn
Predicate has Brother (có anh)
Object Minh
2.4 Đồ thị RDF
Một tập hợp các RDF Triple được gọi là một đồ thị RDF (RDF Graph)
Hình - Mối quan hệ giữa các thành phần trong triple
Vi dụ1: Mô hình hóa cho phát biểu trên
Hình - Mô hình bộ ba Triple
11
Trang 122.5 Namespace
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
2.6 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
2.7 Kiểu dữ liệu có cấu trúc
2.7.1 RDF Container
RDF sử dụng một số phần tử đặc biệt để xây dựng các danh sách, gọi là các “bộ chứa” (RDF Container) Ba phần tử chính được dùng để mô tả các nhóm là rdf:Bag, rdf:Seq và rdf:Alt
2.7.2 RDF Collection
RDF collection cho phép khai báo một tập hợp đóng Cấu trúc của RDF Collection tương tự như một danh sách, có phần tử đầu (rdf:first), phần tử kế (rdf:rest) và phần tử cuối (rdf:nil)
2.8 RDFS (RDF Schema)
RDFS được sử dụng để định nghĩa các nguồn tài nguyên và các lớp Trong RDF, tất cả mọi thứ đều được coi là các nguồn tài nguyên, bản thân các lớp cũng là các nguồn tài
nguyên, nhưng bên trong nó cũng có thể là tập hợp các nguồn tài nguyên khác
RDF/RDFS trước đây được coi là một thành phần cốt yếu để biểu diễn nội dung trong Semantic Web Tuy nhiên, chúng không đủ mạnh để mô tả thông tin một cách chi tiết Cụ thể hơn, chúng không có các ràng buộc cục bộ giữa domain và range, các ràng buộc tồn tại, tập hợp, các thuộc tính bắc cầu nghịch đảo, đối xứng… (các thuộc tính liên quan đến logic),
và đặc biệt là chúng không có chuẩn ngữ nghĩa nên khó hỗ trợ cho suy diễn, lập luận
Trang 13PGS.TS Đỗ Văn Nhơn CH1301061_Dương Thị Xuân Thoại
3 Ontology và ngôn ngữ Web OWL
3.1 Khái niệm Ontology
Ontology cung cấp một bộ từ vựng chung dùng để mô tả một lĩnh vực nghĩa là một loại đối tượng hay khái niệm hiện hữu, cùng với các thuộc tính và quan hệ giữa chúng và lời đặc
tả cho nghĩa của những từ trong bộ từ vựng
Khái niệm ontology được nhiều nhóm nghiên cứu định nghĩa Năm 2002, Bates đề xuất rằng một ontology sẽ được mô tả một cách chính xác hơn (như) là “một sự phân loại, các từ điển chuyên ngành hay là tập các nhóm khái niệm” Một định nghĩa khác của ontology là sự phân loại, các danh mục của các thuật ngữ chỉ mục, hay các cụm thuật ngữ khái Một
ontology là một mô hình của thực tế, nhưng tự nó không là thực tế Bates (trong công bố năm 2002) cũng đề nghị dùng một khái niệm mới thay ontology Theo đó, hệ thống nên được gán một nhãn mô tả chính xác hơn – một sự phân loại, các từ điển chuyên ngành hay là tập các cụm khái niệm (trong công trình của Soegel, năm 1999)
Theo Leger và cộng sự, các ontology cải thiện độ chính xác trong tìm kiếm thông tin
mờ và thuận tiện hoá việc đối thoại đơn-đa ngôn ngữ người-máy bởi diễn giải truy vấn của người dùng thông qua các sự nhận dạng ngữ cảnh và khử nhập nhằng Năm 2003, Guber định nghĩa một ontology là một đặc tả của khái niệm, và giải thích rằng các ontology được
sử dụng trước tiên trong triết học rồi đến trí tuệ nhân tạo Trong ngôn ngữ tự nhiên, một từ
có thể có nhiều nghĩa phụ thuộc trên ngữ cảnh thích hợp Ontology là một tổ chức chặt chẽ
và toàn diện về một hoặc vài miền tri thức, bao gồm các thực thể tương ứng trong miền đó
và các mối quan hệ giữa chúng
Trong ngành khoa học máy tính, ontology là một kho dữ liệu biểu diễn một tập các khái niệm và các quan hệ, dùng đểmô tả, định nghĩa các tính chất của miền (domain)
Ontology cung cấp những từ vựng và cách biểu diễn thông tin cần thiết, phù hợp cho việc giao tiếp tường minh trong một miền tri thức Ontology cải tiến tính chính xác trong tìm kiếm thông tin mờ và làm cho việc đối thoại giữa người và máy dễ dàng hơn bằng cách chú giải câu truy vấn của người dùng thông qua việc xử lý nhập nhằng và xác định ngữ cảnh Trong ngôn ngữ tự nhiên, một từ có thể có nhiều nghĩa phụ thuộc vào ngữ cảnh Theo đó,
13
Trang 14ontology có thể cung cấp ngữ cảnh liên quan để hỗ trợ xác định nghĩa phù hợp cho từ Trong một hệ thống máy tính, ngữ cảnh có thể được biểu diễn hay ràng buộc bởi một ontology, vì thế mô hình ontology hiệu quả trong việc xử lý nhập nhằng về nghĩa của từ trong một câu bất kỳ.
3.2 Các kiểu kiến trúc của Ontology
Trong môi trường mở như Web, các ontology được phát triển và bảo trì một cách độc lập trong môi trường phân tán Do đó hai hệ thống có thể sử dụng hai ontology khác nhau để
mô tả cho hai domain tương tự nhau, vấn đề này được gọi là không thống nhất ontology Có
ba kiến trúc cơ bản nhằm giải quyết vấn đề này, đó là: ontology đơn, đa ontology, và
ontology phức hợp
3.3 Vai trò của Ontology
Danh sách dưới đây sẽ phân tích vai trò của Ontology trong ngữ cảnh ứng dụng Web
có ngữ nghĩa
Chia sẻ sự hiểu biết chung giữa các ứng dụng và con người
Cho phép sử dụng lại tri thức
Đưa ra các giả thiết rõ ràng về miền
Phân tách tri thức lĩnh vực với tri thức thao tác
Phân tích tri thức lĩnh vực Phân tích hình thức của các khái niệm, cần thiết cho việc tái sử dụng và mở rộng Ontology
Trang 15PGS.TS Đỗ Văn Nhơn CH1301061_Dương Thị Xuân Thoại
Các mối quan hệ (Relation): Một mối quan hệ là một thuộc tính có giá trị là một đối tượng nào đó trong Ontology
3.5 Tính chất và các vấn đề liên quan đến Ontology
Các ontology có dạng tổng quát (general ontology) hoặc dạng chuyên biệt (specific ontology) Word Net, EuroWord Net và Cyc là các ví dụ của ontology tổng quát Nhiều ontology chuyên biệt đã được xây dựng, ví dụ như ontology về y khoa và luật pháp Trong tài liệu năm 2003 Buckland phân biệt ba kiểu ontology là:
− Ontology tiên đề: chứa các khái niệm trừu tượng được hợp lý hoá từ các biện giải (reasoning);
− Ontology thuật ngữ: bao gồm cấu trúc của các khái niệm từ vựng (lexicalised
concepts)
− Ontology về lĩnh vực (domain ontology): thể hiện hệ thống tổ chức tri thức dùng cho các mục đích cung cấp tài liệu cho một vấn đề, như là hệ thống Dewey Decimal
Classification (DDC) sử dụng chú thích dạng số để biểu thị số lượng không giới hạn các chủ
đề với chỉ mục ngôn ngữ tiếng Anh cho các số phân loại
Cũng theo Buckland, các kiểu phân biệt nêu trên dẫn đến các phân loại ontology gồm:
− Axiomatic: chứa các khái niệm trừu tượng
− Terminological: gồm cấu trúc của những khái niệm được từ vựng hóa
− Domain: biểu diễn những hệ thống tổchức tri thức dùng cho mục đích lưu trữ, tài liệu)
Kashyap (công bố năm 2001) đề nghị một giải pháp xây dựng ontology từ việc sử dụng lại những thông tin có sẵn dựa trên nền tảng cơ sở dữ liệu quan hệ như các giản đồ(schema), truy vấn của người dùng, từ điển dữ liệu (data dictionary) và từ điển thuật ngữ (the sauri) Tuy công trình này không nêu bật được kết quả thực nghiệm liên quan, nhưng kết quả của nghiên cứu này cho thấy tính khả thi của phương án đề xuất về mặt thực tiễn, đặt cơ sở cho các nghiên cứu khác
Ưu điểm của ontology là tính sẵn sàng, nhiều công cụ phần mềm có sẵn, hỗ trợ hoặc tạo mới ontology Ngoài ra, những ưu điểm hứa hẹn khác như:
15
Trang 16− Có khả năng sẵn sàng cho việc truy cập (theo Bateman, năm 2005)
− Có khả năng chứa số lượng lớn các danh từ riêng, tên cá nhân nơi chốn
− Có nhiều phần mềm trợ giúp tạo tự động và hỗ trợ phát triển của ontology
− Hầu hết các ontology được biểu diễn trong một ngôn ngữ khả chuyển như là XML hoặc các ngôn ngữ phát triển trên nền tảng XML như RDF, OWL Nhờ đó, các tính năng của XML có thể được dùng để thực hiện sự thay đổi trong việc phát triển các ontology
Tuy nhiên, như đã nêu trong phần trên, ontology cũng có một số hạn chế sau:
− Từ vựng không phù hợp giữa từ khóa trong truy vấn và ngữ cảnh, cần một quá trình ánh xạ để xử lý cho trường hợp này
− Sự không tương thích giữa các thuật ngữ (của) truy vấn và các khái niệm trong
ontology Giải pháp xử lý là cần có một quy trình liên kết nhằm giải quyết vấn đềnày
− Nếu một ontology cho một miền cụ thể chưa tồn tại thì phải hao tốn rất nhiều công sức cần thiết cho việc xây dựng ontology từ đầu không chỉ từquan điểm kỹ thuật mà còn từ quy trình rút trích tri thức từ các chuyên gia và sự đồng thuận trong cách nhìn nhận
Ontology cũng được sử dụng cho các nghiên cứu về truy xuất thông tin như tóm lược theo chủ đề (thematic summarisation), khử nhập nhằng nghĩa của từ (word sense
disambiguation), lập chỉ mục, phân loại văn bản, truy vấn hình ảnh, truy xuất thông tin xuyên ngôn ngữ, và mở rộng truy vấn Mô tả chi tiết cho mở rộng truy vấn sẽ được trình bày trong các mục tiếp theo
3.6 Ngôn ngữ OWL
OWL (The Web Ontology Language) là một ngôn ngữ gần như XML dùng để mô tả các hệ cơ sở tri thức OWL là một ngôn ngữ đánh dấu dùng để xuất bản và chia sẻ dữ liệu trên Internet thông qua những mô hình dữ liệu gọi là “Ontology” OWL biểu diễn ý nghĩa của các thuật ngữ trong các từ vựng và mối liên hệ giữa các thuật ngữ này để đảm bảo phù hợp với quá trình xử lý bởi các phần mềm