Исследование основных подходов к автоматическому отображению онтологий

Анализ существующих программных средств для автоматического отображения онтологий, их практического применения в зависимости от поставленной задачи и сложности входных онтологий. Отображение сложных онтологий с помощью алгоритма повышенной точности.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 14.06.2012
Размер файла 1,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

МАГІСТЕРСЬКА РОБОТА

Дослідження основних підходів до автоматичного відображення онтологій

РЕФЕРАТ

Дипломная работа содержит 88 с., 11 рис., 1 табл., 21 источников, 1 приложение.

Магистерская аттестационная работа посвящена исследованию основных подходов к проблеме автоматического отображения онтологий. В работе рассматриваются задачи устранения структурных неоднозначностей.

Проведен детальный анализ существующих программных средств и методов для автоматического отображения онтологий, рассматривается их практическое применение в зависимости от поставленной задачи и сложности входных онтологий.

ОТОБРАЖЕНИЕ, ОНТОЛОГИЯ, МЕТОД, КОНЦЕПТ, СЕМАНТИКА, НЕОДНОЗНАЧНОСТЬ, ПОДХОД.

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ

1.1 Инструменты для работы с онтологиями

1.2 Инструменты для отображения и объединения

1.3 Сравнительный анализ инструментов работы с онтологиями

1.4 Проекты, использующие онтологии

2. ПОСТАНОВКА ЗАДАЧИ

3. МЕТОДЫ ОТОБРАЖЕНИЯ ОНТОЛОГИЙ

3.1 Ручное отображение онтологий. Методы ручного отображения

3.2 Автоматическое отображение онтологий

3.3 Методы автоматического отображения онтологий

3.4 Проекты, использующие методы ручного и автоматического отображения

4. ИНТЕГРИРОВАННЫЙ ПОДХОД К РЕШЕНИЮ ПРОБЛЕМЫ ОТОБРАЖЕНИЯ ОНТОЛГИЙ

4.1 Критерии подобия концептов онтологий

4.2 Меры близости концептов онтологий

4.3 Семантическое расстояние между концептами онтологий

4.4 Быстрый алгоритм отображения для простых онтологий

4.5 Отображение сложных онтологий с помощью алгоритма повышенной точности

4.6 Апробация интегрированного подхода к отображению онтологий

ВЫВОДЫ

ПЕРЕЧЕНЬ ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

ВВЕДЕНИЕ

Развитие онтологий начинает приобретать более массовый характер, и в настоящее время в этой области есть ряд масштабных разработок. Согласно определению Т. Грубера, онтология - это спецификация концептуализации предметной области [1]. Это формальное и декларативное представление, которое включает словарь понятий и соответствующих им терминов предметной области, а также логические выражения (аксиомы), которые описывают множество отношений между понятиями. Для описания отношений в онтологиях используются весь арсенал формальных моделей и языков, разработанных в области искусственного интеллекта - исчисление предикатов, системы продукций, семантические сети, фреймы и т.п. Таким образом, термин “онтология” оказался близок по значению к термину “искусственный интеллект”, а термин “онтологический инжиниринг” явился синонимом термина “инженерия знаний”. На сегодняшний день существует не менее десятка зарубежных систем, относимых к классу инструментов онтологического инжиниринга, которые поддерживают различные формализмы для описания знаний и используют различные машины вывода из этих знаний. Наиболее известные из них - это Protйgй, CYC, KAON2, OntoEdit. Среди уже разработанных онтологий наиболее известными и объемными являются CYC и SUMO.

Разработано большое количество онтологий в различных предметных областях, но мир очень быстро изменяется, идет развитие новых отраслей, существующие онтологии требуют постоянного пополнения и усовершенствования. На данном этапе появляются идеи использования автоматических и полуавтоматических методов для интеграции онтологий.

Работа посвящена исследованию существующих подходов к отображению онтологий. Отображение онтологий является неотъемлемой частью большинства задач согласования онтологий, таких как слияние, выравнивание онтологий, модификация одной онтологии для достижения однородности с другой и так далее. В работе предоставлен анализ самых известных подходов к проблеме отображения онтологий. Актуальность работы состоит в том, что данное направление интенсивно развивается в современном мире. Многие ученые работают над созданием автоматических и полу-автоматических систем отображения онтологий, которые будут работать с минимальным воздействием на них человеческого фактора. В работе рассмотрены 2 основных алгоритма отображения, протестированы на реальных онтологиях и на основе полученных результатов, даны рекомендации по их использованию, для различных задач и целей.

На сегодняшний день, нет методов полностью автоматического отображения, а под ним предполагают такую организацию этого процесса, при которой первоначальный перечень терминов предметной области и структура их взаимосвязей автоматически выявляются программными средствами на основании статистической обработки результатов лингвистического анализа коллекции текстов, после чего верифицируются и структурируются экспертом в соответствии с его имплицитной моделью знаний и прагматическими требованиями прикладной системы, для которой разрабатывается онтология.

1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ

Понятие онтология сейчас активно применяется в информатике и искусственном интеллекте. Этот термин пришел из философии, где обозначал часть метафизики - учение о всем сущем, о его наиболее общих философских категориях, таких как бытие, субстанция, причина, действие, явление. При этом онтология как наука претендовала на полное объяснение причин всех явлений.

В инженерии знаний под онтологией понимается детальное описание некоторой проблемной области, которое используется для формального и декларативного определения ее концептуализации. Часто онтологией называют базу знаний специального вида, которую можно разделять, отчуждать и самостоятельно использовать в рамках рассматриваемой предметной области.

Онтологии используются для формальной спецификации понятий и отношений, которые характеризуют определенную область знаний. Поскольку компьютер не может понимать, как человек, положение вещей в мире, ему необходимо представление всей информации в формальном виде. Таким образом, онтологии служат своеобразной моделью окружающего мира, а их структура такова, что легко поддаются машинной обработке и анализу. Онтологии снабжают систему сведениями о хорошо описанной семантике заданных слов и указывают иерархическое строение области, взаимосвязь элементов. Все это позволяет компьютерным программам при помощи онтологий делать умозаключения из представленной информации и манипулировать ими.

Онтологии используются также при построении корпуса определений, служащего справочным материалом. В дальнейшем результаты этой работы могут использоваться для сложных процедур обработки естественного языка, например, в снятии омонимии на основе контекста. Онтологии могут использоваться для вывода умозаключений, необходимых для понимания текстов на глубинно-семантическом уровне, что требуется для высококачественного машинного перевода и может служить базой для расширения и уточнения информационного поиска. Глубокий анализ текста необходим и для систем автоматического реферирования. Стоит упомянуть, что также онтологии могут способствовать систематизации понятий. На базе онтологий может осуществляться автоматическое аннотирование и разбор текстов, которое в дальнейшем может использоваться в первую очередь в информационном поиске, а также при различных видах анализа информации.

Существует ряд способов использования онтологий:

- для совместного использования людьми или программными агентами общего понимания структуры информации;

- для возможности повторного использования знаний в предметной области;

- для того чтобы сделать допущения в предметной области явными;

- для отделения знаний в предметной области от оперативных знаний;

- для анализа знаний в предметной области. [1]

Построение онтологии часто не является само по себе конечной целью, обычно онтологии далее используются другими программами для решения практических целей. На данном этапе развития науки существует ряд задач, где применение онтологий может дать хорошие результаты:

- машинном переводе;

- вопросно-ответных системах;

- информационном поиске;

- системах извлечения знаний;

- общих системах ведения диалога между компьютером и человеком;

- системах понимания языка (автоматическое реферирование текста, рубрикация и др.). [2]

Можно упомянуть также системы расширенного консультирования, которые включают в себя несколько уровней работы с информацией и строятся на базе другие приложений.

1.1 Инструменты для работы с онтологиями

Построение онтологий - сложный и занимающий много времени процесс. Чтобы облегчить его, в середине 90-х годов начали создаваться первые среды для процесса разработки онтологий. Они обеспечили интерфейсы, которые позволили выполнять концептуализацию, реализацию, проверку непротиворечивости и документирование. За последние годы число инструментов онтологий резко возросло (сайт консорциума W3C, например, предоставляет список более чем 50 инструментов редактирования).

Инженерию онтологий можно определить как совокупность действий, касающихся:

- процесса разработки онтологий;

- жизненного цикла онтологий;

- методов и методологий построения онтологий;

- набора инструментов и языков для их построения и поддержки.

В настоящее время для создания и поддержки онтологий существует целый ряд инструментов, которые помимо общих функций редактирования и просмотра выполняют поддержку документирования онтологий, импорт и экспорт онтологий разных форматов и языков, поддержку графического редактирования, управление библиотеками онтологий и т.д.

Рассмотрим наиболее известные инструменты инженерии онтологий для построения, редактирования, отображения и объединения онтологий, URL и основные характеристики соответствий между ними (табл. 1.1).

Таблица 1.1 - Инструментальные средства онтологий

Имя

Описание

URL

1

2

3

Создание онтологий

Ontolingua

Поддержка совместной разработки

http://www.ksl.stanford.edu/ software/ontolingua/

WebOnto

Поддержка совместного просмотра

http://webonto.open.ac.uk

Protege

Создание, просмотр, поддержка

http://protege.stanford.edu

OntoSaurus

Web-браузер баз знаний LOOM

http://www.isi.edu/isd/ ontosaurus.html

ODE, WebODE

Создание, методология Methontology

http://delicias.dia.fi.upm.es/ webODE/

KADS22

Проектирование моделей знания по методологии CommonKADS.

http://www.swi.psy.uva.nl/ projects/kads22/index.html

OntoEdit

Разработка и поддержка онтологий

http://www.ontoprise.de/ products/ontoedit

OilEd

Поддержка рассуждения

http://oiled.man.ac.uk

i.com

Поддержка интеллектуального концептуального моделирования

http://www.inf.unibz.it/ ~franconi/icom/

Объединение и отображение онтологий

PROMPT

Приложение объединения к Protege

http://protege.stanford.edu/ plugins/prompt/

Chimaera

Инструмент объединения, на основе редактора онтологий Ontolingua

http://www.ksl.stanford.edu/ software/chimaera/

OntoMerge

Инструмент объединения и рассуждения

http://cs-www.cs.yale.edu/homes/ dvm/daml/ontology-translation.html

OntoMorph

Преобразование символических знаний

http://www.isi.edu/~hans/ontomorph

OBSERVER

Информационная система на основе взаимодействия онтологий

http://lsdis.cs.uga.edu/?mena/ OBSERVER/

FCA-Merge

Метод сравнения онтологий

http://www.aifb.uni-karlsruhe.de/ Forschungsgruppen/WBS/

ONION

Система композиции онтологий

http://www.semanticweb.org/ SWWS/program/full/paper51.pdf

Одним из достоинств онтологии является наличие для них инструментального ПО, обеспечивающего общую доменно-независимую поддержку онтологического анализа. Существует целый ряд инструментов для онтологического анализа, поддерживающих редактирование, визуализацию, документирование, импорт и экспорт онтологий разных форматов, их представление, объединение, сравнение.

Для того чтобы реализовывать различные онтологии, были разработаны языки их представления, имеющие достаточную выразительную мощность и позволяющие пользователю избежать «низкоуровневых» проблем. В таблице А.1, представлены характеристики инструментов построения онтологий.

Система Ontolingua была разработана в KSL (Knowledge Systems Laboratory) Стенфордского университета и стала первым инструментом инженерии онтологий. Она состоит из сервера и языка представления знаний. Сервер Ontolingua организован в виде набора онтологий, относящихся к Web-приложениям, которые надстраиваются над системой представления знаний Ontolingua. Редактор онтологий - наиболее важное приложение сервера Ontolingua является Web-приложением на основе форм HTML. Кроме редактора онтологий Сервер Ontolingua включает сетевое приложение Webster (получение определений концептов), сервер OKBC (доступ к онтологиям Ontolingua по протоколу OKBC) и Chimaera (анализ, объединение, интегрирование онтологий). Все приложения, кроме сервера OKBC, реализованы на основе форм HTML. Система представления знаний реализована на Lisp. [2]

Сервер Ontolingua также предоставляет архив онтологий, включающий большое количество онтологий различных предметных областей, что позволяет создавать онтологии из уже существующих. Сервер поддерживает совместную разработку онтологии несколькими пользователями, для чего используются понятия пользователей и групп. Система включает графический браузер, позволяющий просмотреть иерархию концептов, включая экземпляры. Ontolingua обеспечивает использование принципа множественного наследования и богатый набор примитивов. Сохраненные на сервере онтологии могут быть преобразованы в различные форматы для использования другими приложениями, а также импортированы из ряда языков в язык Ontolingua.

Protйgй - локальная, свободно распространяемая Java-программа, разработанная группой медицинской информатики Стенфордского университета (первая версия - 1987, последняя Protйgй-2.1.1 - июнь 2004). Программа предназначена для построения (создания, редактирования и просмотра) онтологий прикладной области. Её первоначальная цель - помочь разработчикам программного обеспечения в создании и поддержке явных моделей предметной области и включение этих моделей непосредственно в программный код. Protйgй включает редактор онтологий, позволяющий проектировать онтологии разворачивая иерархическую структуру абстрактных или конкретных классов и слотов. Структура онтологии сделана аналогично иерархической структуре каталога. На основе сформированной онтологии, Protйgй может генерировать формы получения знаний для введения экземпляров классов и подклассов. Инструмент имеет графический интерфейс, удобный для использования неопытными пользователями, снабжен справками и примерами. [3]

Protйgй основан на фреймовой модели представления знания OKBC (Open Knowledge Base Connectivity) и снабжен рядом плагинов, что позволяет его адаптировать для редактирования моделей хранимых в разных форматах (стандартный текстовый, в базе данных JDBC, UML, языков XML, XOL, SHOE, RDF и RDFS, DAML+OIL, OWL).

OntoEdit первоначально был разработан в институте AIFB (Institute of Applied Informatics and Formal Description Methods) Университета Karlsruhe (сейчас коммерциализован Ontoprise GmbH) выполняет проверку, просмотр, кодирование и модификацию онтологий. В настоящее время OntoEdit поддерживает языки представления: FLogic, включая машину вывода, OIL, расширение RDFS и внутреннюю, основанную на XML, сериализацию модели онтологии используя OXML - язык представления знаний OntoEdit (OntoEdit's XML-based Ontology representation Language). К достоинствам инструмента можно отнести удобство использования; разработку онтологии под руководством методологии и с помощью процесса логического вывода; разработку аксиом; расширяемую структуру посредством плагинов, а также очень хорошую документацию. [6]

Так же как и Protйgй, OntoEdit - автономное Java-приложение, которое можно локально установить на компьютере, но его коды закрыты. На Архитектура OntoEdit подобна Protйgй (Рис. 1.1).

Существует две версии OntoEdit: свободно распространяемая OntoEdit Free (ограничена 50 концептами, 50 отношениями и 50 экземплярами) и лицензированная OntoEdit Professional (нет ограничений на размер). Естественно, что OntoEdit Professional имеет более широкий набор функций и возможностей (например, машину вывода, графический инструмент запросов, больше модулей экспорта и импорта, графический редактор правил, поддержка баз данных JDBC и т.д.).

OilEd - автономный графический редактор онтологий, разработан в Манчестерском университете в рамках европейского IST проекта On-To-Knowledge. Инструмент основан на языке OIL (сейчас адаптирован для DAML+OIL, в перспективе - OWL), который сочетает в себе фреймовую структуру и выразительность дескриптивной логики (Description Logics) с сервисами рассуждения (Рис. 1.2). Что позволило обеспечить понятный и интуитивный стиль интерфейса пользователя и преимущества поддержки рассуждения (обнаружение логически противоречивых классов и скрытых отношений подкласса). [7]

Из недостатков можно выделить отсутствие поддержки экземпляров. Существующая версия не обеспечивает полную среду разработки - не поддерживается разработка онтологий большого масштаба, миграция и интеграция онтологий, контроль версий и т.д. OilEd можно рассматривать как “NotePad” редакторов онтологий, предлагающий достаточную функциональность, чтобы позволить пользователям строить онтологии и продемонстрировать, как можно использовать механизм рассуждения FaCT для проверки онтологии на непротиворечивость.

В последнее время наблюдается рост популярности редактора OilEd. Он используется как для обучения, так и для исследования. Инструмент свободно распространяется по общедоступной лицензии GPL.

Рисунок 1.1 - Навигация по онтологии и ее редактирование с помощью инструмента OntoEdit

Рисунок 1.2 - Редактирование онтологии с помощью инструмента OilEd

WebOnto - разработан для Tadzebao - инструмента исследования онтологий и предназначен для поддержки совместного просмотра, создания и редактирования онтологий. Его цели - простота использования, предоставление средств масштабирования для построения больших онтологий. [8]

Для моделирования онтологий WebOnto использует язык OCML (Operational Conceptual Modeling Language). В WebOnto пользователь может создавать структуры, включая классы с множественным наследованием, что можно выполнять графически. Все слоты наследуются корректно. Инструмент проверяет вновь вводимые данные контролем целостности кода OCML.

Инструмент имеет ряд полезных особенностей: сохранение структурных диаграмм, раздельный просмотр отношений, классов, правил и т.д. Другие возможности включают совместную работу нескольких пользователей над онтологией, использование диаграмм, функций передачи и приёма и др.

OntoSaurus является Web-браузером для баз знаний LOOM. Он состоит из двух основных модулей: сервера онтологий и Web-браузера для редактирования и просмотра онтологий LOOM с помощью HTML-форм, обеспечивая для них графический интерфейс. OntoSaurus также предоставляет ограниченные средства редактирования, но его основная функция - просмотр онтологий. Но для построения сложных онтологий нужно понимать язык LOOM. Большинство пользователей строят онтологию на языке LOOM в другом редакторе, а затем для просмотра и редактирования импортируют его в OntoSaurus. В OntoSaurus реализованы все возможности языка LOOM. Обеспечиваются автоматический контроль совместимости, дедуктивная поддержка рассуждения и некоторые другие функции. [10]

Конструктор онтологий ODE (Ontological Design Environment), который взаимодействует с пользователями на концептуальном уровне в отличие от инструментов, подобно OntoSaurus, общающихся на символьном уровне. Мотивом для ODE послужило то, что людям проще формулировать онтологии на концептуальном уровне. ODE обеспечивает пользователей набором таблиц для заполнения (концептов, атрибутов, отношений) и автоматически генерирует для них код в LOOM, Ontolingua и FLogic. ODE составляет часть методологии полного жизненного цикла построения онтологии согласно Methontology. Инструмент получил свое дальнейшее развитие в WebODE, который интегрирует все сервисы ODE в одну архитектуру, сохраняет свои онтологии в реляционной базе данных, обеспечивает дополнительные сервисы (машину вывода, построение аксиом, сбор онтологий, генерацию каталогов). [11]

KADS22 - инструмент поддержки проектирования моделей знаний согласно методологии CommonKADS. Онтологии составляют часть таких моделей знаний (другая часть - модели вывода). Модели CommonKADS определены в CML (Conceptual Modeling Language). KADS22 - интерактивный графический интерфейс для CML со следующими функциональными возможностями: синтаксический анализ файлов CML, печать, просмотр гипертекста, поиск, генерация глоссария и генерация HTML. [15]

Дальнейшее развитие в рамках проекта DWQ (Data Warehouse Quality) ведет к инструменту i.com, инструментальному средству поддержки концептуальной стадии проекта интегрированных информационных систем. i.com использует расширенную модель данных сущностей-связей (EER - Extended Entity-Relationship Model) дополнив ее ограничениями многомерной агрегации и промежуточных схем.

Инструмент і.com полностью интегрирован с мощным сервером рассуждения на основе DL. i.com служит главным образом для интеллектуального концептуального моделирования. [16]

1.2 Инструменты для отображения и объединения онтологий

Сегодня онтологии доступны в разных представлениях. Но, что делать, когда мы находим несколько онтологий, которые бы хотели использовать, но они не соответствуют друг другу.

Инструменты объединения онтологий помогают пользователям найти сходство и различие между исходными онтологиями и создают результирующую онтологию, которая содержит элементы исходных онтологий. Для достижения этой цели они автоматически определяют соответствия между концептами в исходных онтологиях или обеспечивают среду, где пользователь может легко найти и определить эти соответствия. Эти инструменты известны как инструменты отображения, выравнивания и объединения онтологий, так как они выполняют сходные операции для процессов отображения, выравнивания и объединения.

Отображение (mapping) онтологии заключается в нахождении семанитечких связей подобных элементов из разных онтологий. Выравнивание (alignment) онтологий состоит в том, чтобы установить различные виды соответствия (или связи) между двумя онтологиями, а затем повторно сохранить исходные онтологии и таким образом, в дальнейшем использовать информацию друг друга. Объединение (merging) онтологий - генерация одной согласованной онтологии из двух исходных [17].

Исследователи разных областей информатики работают над автоматическим или поддерживаемым инструментально объединением онтологий (или иерархии классов, или объектно-ориентированных схем, или схем баз данных - определенная терминология изменяется в зависимости от области применения). Однако и автоматическое объединение онтологий, и создание инструментальных средств, которые бы управляли пользователем в этом процессе, находятся на ранних стадиях развития. В этом разделе представлен обзор некоторых из существующих подходов.

Инструментальные средства, которые имеют дело с нахождением соответствия между онтологиями, классифицируются:

- для объединения двух онтологий с целью создания одной новой (PROMPT, Chimaera, OntoMerge);

- для определения функции преобразования из одной онтологии в другую (OntoMorph);

- для определения отображения между концептами в двух онтологиях, находя пары соответствующих концептов (например, OBSERVER, FCA-Merge);

- для определения правил отображения для связи только релевантных частей исходных онтологий (ONION). [18]

PROMPT - дополнение к системе Protйgй, реализованное в виде плагина, служит для объединения и группировки онтологий. При объединении двух отологий PROMPT создает список предлагаемых операций. Операция может состоять, например, из объединения двух терминов или копирования терминов в новую онтологию. Пользователь может выполнить операцию, выбирая одну из предлагаемых или определяя непосредственно операцию. [18]

PROMPT выполняет выбранную операцию и дополнительные изменения, вызванные этой операцией. Потом список предлагаемых операций модифицируется и создается список конфликтов и возможных решений этих конфликтов. Это повторяется до тех пор, пока не будет готова новая онтология (Рис. 1.3).

Chimaera - интерактивный инструмент для объединения, основанный на редакторе онтологий Ontolingua. Chimaera позволяет пользователю объединять онтологии, разработанные в различных формализмах. Пользователь может запрашивать анализ или руководство от Chimaera в любой момент в течение процесса объединения, и инструмент направит его на те места в онтологии, где требуется его вмешательство. В своих предложениях Chimaera главным образом полагается на то, из какой онтологии прибыли концепты, основываясь на их именах. Chimaera оставляет решение о том, что делать пользователю и не делает никаких предложений самостоятельно. Единственное таксономическое отношение, которое рассматривает Chimaera - отношение подкласс - суперкласс. Chimaera самый близкий к PROMPT. Однако поскольку он использует в своем анализе только иерархию класса, он пропускает многие из соответствий, которые находит PROMPT. Эти соответствия включают предложения по объединению слотов с подобными именами, которые относятся к объединенным классам, объединению доменов слотов, которые были объединены и т. д. [19]

В OntoMerge объединенная онтология есть объединение двух исходных онтологий и набора аксиом соединения. Первый шаг в процессе объединения в OntoMerge состоит в трансляции обеих онтологий к общему синтаксическому представлению на разработанном авторами языке.

Рисунок 1.3 - Пример объединения двух онтологий при помощи инструмента Protйgй и плагина Prompt

Затем инженер онтологии определяет аксиомы соединения, содержащие термины из обеих онтологий. Процесс трансляции экземпляров выглядит следующим образом: все экземпляры в исходных онтологиях, рассматриваются как находящиеся в объединенной онтологии. Затем на основе инструкций в исходных онтологиях и аксиом соединения машина вывода сделает заключение, таким образом, создавая новые данные в объединенной онтологии. OntoMerge предоставляет инструменты для трансляции данных-экземпляров в объединенную онтологию. [20]

OntoMorph определяет набор операторов преобразования, которые можно применить к онтологии. Затем человек-эксперт использует начальный список пар и исходных онтологий для определения набора операторов, которые должны примениться к исходным онтологиям для устранения различий между ними, и OntoMorph применяет эти операторы. Таким образом, совокупность операций может выполняться за один шаг. Однако, человек-эксперт не получает никакого руководства за исключением начального списка пар. [21]

Система OBSERVER применяет DL для ответа на запросы, используя несколько онтологий и информацию об отображении между ними. Вначале пользователи определяют набор межонтологических отношений. Система помогает справиться с этой задачей, находя синонимы в исходных онтологиях. Определив отображения, пользователи могут формулировать запросы в терминах DL с помощью собственной онтологии. Затем OBSERVER использует информацию отображения для формулировки запросов к исходным онтологиям. OBSERVER в значительной степени полагается на тот факт, что описания в онтологиях и запросах являются содержательными. [22]

FCA-Merge - метод для сравнения онтологий, которые имеют набор общих экземпляров или набор общих документов, аннотируемых с помощью концептов исходных онтологий. Основываясь на этой информации, FCA-Merge использует математические методы из Formal Concept Analysis для того чтобы произвести решетку концептов, связывающую концепты исходных онтологий. Алгоритм предлагает отношения эквивалентности и подкласс-суперкласс. Затем инженер онтологии может анализировать результат и использовать его как руководство для создания объединенной онтологии. Однако предположение, что две объединяемые онтологии используют общий набор экземпляров или имеют набор документов, в котором каждый документ аннотируется терминами обоих источников слишком жесткое и на практике такая ситуация происходит редко. В качестве альтернативы, авторы предлагают использовать методы обработки естественного языка для аннотации набора документов концептами из этих двух онтологий. [23]

Система ONION (ONtology compositION) основана на алгебре онтологии. Поэтому, она предоставляет инструменты для определения правил артикуляции (соединения) между онтологиями. Правила артикуляции обычно учитывают только релевантные части исходных онтологий. Для того чтобы предложить соединение, ONION использует и лексические методы, и методы на основе графов. Метод нахождения лексического подобия между именами концептов использует словари и методы семантической индексации, основанные на местонахождении группы слов в тексте. [24]

1.3 Сравнительный анализ инструментов построения, редактирования и отображения онтологий

Инструменты построения онтологий можно разделить на два типа: разработанные для редактирования онтологий на определенном языке онтологий и интегрированные наращиваемые инструментальные сайты (Web-приложения, на основе форм HTML и/или Java-апплетов), большинство из которых не зависит от языка представления.

Следует подчеркнуть, что большинство из рассмотренных инструментальных средств разрабатываются университетскими исследовательскими группами, которые предоставляют открытый код, либо предлагают свободный доступ к функциям. Однако наиболее перспективные из них передаются коммерческим компаниям (например, OntoEdit Professional - лицензированный продукт).

Инструменты OntoEdit, WebODE и KADS22 дают поддержку методологиям построения онтологий, соответственно On-To-Knowledge, METHONTOLOGY и CommonKADS, что не мешает им использоваться в других методологиях или вообще без них.

Касаясь технического аспекта, а именно архитектуры программного обеспечения (локальная, клиент-серверная, n-уровневая), расширяемости, языков программирования на которых реализованы инструменты, способов хранения онтологий (в файлах или базах данных), необходимо отметить следующее.

Более ранние инструменты Ontolingua, OntoSaurus и WebOnto имеют клиент-серверную архитектуру. Protйgй, OntoEdit и OilEd имеют 3-х уровневую архитектуру, где существует четкое разделение между хранением онтологий, модулями бизнес-логики логики приложений и приложениями интерфейса пользователя. Эти инструменты обладают большими возможностями по наращиванию (например, при помощи плагинов). Большинство инструментов хранит свои онтологии в текстовых файлах, что ограничивает размер онтологий. Только Protйgй и WebODE могут хранить свои онтологии в базах данных и таким образом управлять большими онтологиями. Наконец, большинство инструментов реализовано на Java.

Выше уже говорилось о том, что модели знания инструментов определяют компоненты, которые должны использоваться при построении онтологии. Большинство инструментов представляет онтологии, комбинируя фреймы и логику первого порядка (First Order Logic - FOL). Однако это еще не означает, что они могут представлять одни и те же компоненты с одним и тем же количеством информации. Только два из перечисленных инструментов, OilEd и OntoSaurus, основаны на дескриптивной логике (DL).

Далее остановимся на некоторых свойствах редакторов онтологий. Интерфейс пользователя редакторов онтологий может быть Web-приложением, на основе форм HTML (Ontolingua, OntoSaurus и WebODE) и/или Java-апплетов (WebOnto) или локальным приложением (Protйgй, OntoEdit, OilEd).

Все редакторы онтологий за исключением OilEd, Ontolingua и OntoSaurus обеспечивают графические средства редактирования и просмотра онтологий, где классы обычно представлены узлами на графах, а отношения - дугами между ними. Дополнительно к этим графическим функциям, OilEd, OntoEdit Professional, Protйgй и WebODE предоставляют некоторую поддержку в написании формальных аксиом и сложных выражений.

OntoEdit, Ontolingua, OntoSaurus, WebODE и WebOnto поддерживают совместную разработку онтологий, предоставляя отдельным пользователям или группам пользователей разрешение на доступ и написание различных наборов онтологий.

Разнообразие инструментов для отображения и объединения онтологий делает сложным их непосредственное сравнение. Фактически, когда разработчик должен решить вопрос, какой инструмент является наиболее подходящим, все будет зависеть от конкретной задачи. Например, если объединяемые онтологии совместно используют набор экземпляров, то лучше всех может работать FCA-Merge. Если онтологии имеют экземпляры, но совместно их не используют, и многие значения слотов содержат текст, лучшим выбором может стать GLUE. Если только части онтологий должны быть отображены, можно было бы выбрать инструмент ONION. Если онтологии имеют очень ограниченную структуру, а концепты имеют подробные определения на естественном языке (одном), инструментальные средства ISI/USC могут обеспечивать лучшие ответы. Если экземпляры вообще не доступны, и онтологии содержат много отношений между концептами, лучше всех может работать Prompt.

1.4 Проекты, использующие онтологии

В сфере информационного поиска заслуживает упоминания европейский исследовательский проект под названием CROSSMARC. Участники этого проекта делают упор на необходимости широкого использования онтологий для разделения отраслевых и общепонятийных знаний, считая, что это облегчит извлечение информации из различных источников, сузит поисковые запросы и улучшит качество выдаваемых результатов [3]. Эта задача оказывается смежной с задачей автоматической рубрикации текстов, в ходе которой производится распределение текстов по рубрикам на основе автоматических методов и использования онтологий.

В области машинного перевода известна система OntoLearn, используемая при переводе многословных терминов с английского языка на итальянский. Система автоматически выделяет и строит предметные онтологии. Промежуточные онтологические построения используются для прямого машинного перевода [3]. Можно привести также пример системы машинного перевода, разработанной в Университете Sains в Малайзии [4]. Она осуществляет снятие неоднозначности со слов, используя тексты определений и структурную информацию из онтологий.

IAMTC (Interlingual Annotation of Multilingual Text Corpora) можно отнести к системам понимания языка. Этот многосторонний проект занимается аннотацией шести больших параллельных корпусов с целью извлечения межъязыковых соответствий. Система использует 110 000 записей онтологии OMEGA для частеречной разметки и дальнейшего анализа естественного языка. Для понимания естественного языка могут использоваться также аксиомы и умозаключения, содержащиеся в онтологиях, помогает и большой набор отдельных примеров, экземпляров.[5]

Онтологии могут также лежать в основе различных вопросно-ответных систем и способствовать улучшению анализа запросов и точности ответов. Можно привести пример демонстрационной вопросно-ответной системы YAWA [7]. Она по запросу выдает информацию о главах государств и правительств стран мира, так же обладает сведениями о том, кто занимает указанную должность в данной стране. Кроме этих связей, в нее заложены знания о соотношении названия и основной функции (глава государства и/или правительства) высших государственных должностей в отдельно взятой стране в зависимости от типа системы государственного управления. Таким образом, при выдаче ответов по запросу система учитывает заложенные в нее сведения об окружающей действительности: набор понятий, отношений между ними, ограничений на отношения и список конкретных экземпляров.

Существует целое направление работ в сфере электронной коммерции, где онтологии предоставляют классификацию товаров и услуг и обеспечивают наличие стандартизованного представления информации. Таким образом, происходит систематизация понятий области бизнеса, упорядочение их описаний. Онтологии предоставляют эффективный доступ к информации, дают возможность лучше понять данную информацию и, следовательно, произвести её более широкий и сложный анализ [6].

Еще один пример использования онтологий представляет собой система понимания языка, разработанная в НПЦ «Интелтек Плюс». Сейчас уже «создана и внедряется в Совете Федерации Федерального Собрания Российской Федерации первая очередь информационной системы "Семантический контроль текстов редактируемых документов"... Она используется специалистами Управления информационного и документационного обеспечения аппарата Совета Федерации для проверки правильности расшифровки стенограмм и проверки редакций различных типов документов на предмет их соответствия эталонным словарям и базам данных». Эта система занимается поиском несоответствий в текстах редактируемых документов на основе эталонного описания предметной области, содержащегося в онтологии [8]. К таким несоответствиям авторы относят «ошибочные должности сотрудников организаций, ссылки на устаревшие структурные подразделения организаций, неправильные телефонные номера должностных лиц». Таким образом, они стремятся выявить «неэквивалентность факта, выявленного при анализе текста, имеющимся в базе знаний фактам». В данном случае под базой знаний понимается онтология, снабженная конкретными экземплярами. После извлечения знаний из текстов, модуль логического вывода сверяет их с данными в онтологии, проверяя наличие связей между элементами, отслеживая правильность этих связей, и таким образом подтверждает или опровергает достоверность фактов и отмечает нарушение семантических связей.

Онтологии занимают ключевую позицию во многих лингвистических комплексах, так, например, InfoMap широко использует иерархические структуры в работе с текстами на естественном языке. Целью данного проекта являлось извлечение значения слов на базе их употребления в тексте [9]. В рамках данного проекта при группировке понятий и значений используется верхняя зона WordNet, а также анализ корпусов текстов путем извлечения кластеров слов автоматически. Затем эти данные используются для подбора вероятных родовых терминов в группах слов, то есть для формирования таксономий. Также возможно применение результатов данных процедур для сравнения структуры групп в параллельных текстах на разных языках, что позволяет улучшать качество машинного перевода и уточнять переводы слов в рамках многоязычной лексикографии.

Существует большое количество проектов в области медицины, использующих онтологии в своих приложениях. Так, можно привести пример проекта MuchMore, являющего частью InfoMap, описанного ранее, занимающего разработкой методов организации информации на различных языках и в частности медицинской области знания [10] Их исследование основывается на использовании иерархии понятий для предметных областей, и следовательно технологиях извлечения многоязычных терминов и отношений. Их продукт помогает осуществлять поиск документов на различных языках по медицинской области знания. Медицинская область знания очень перспективна в этой сфере, так как для нее уже создано большое количество онтологий и структурированных источников знания, а также присутствует множество текстов на данной области, требующих обработки. Это тексты, описывающие карты больных, случаи заболеваний, общие описания разных болезней и многие другие. Проект MuchMore помогает выстроить взаимосвязи между всеми типами текстов в данной области. В задачи этого исследования входит:

- сокращение «пропасти» между медицинской документацией и многоязычными данными путем автоматического извлечения дескрипторов и составления метаописаний истории болезней для последующего использования в других источниках. Организация информации в онтологии помогает в дальнейшем быстро строить экспертные системы и приложения для работы с данными;

- устранение языкового барьера при поиске информации. Использование онтологий позволяет эффективно искать информацию на нескольких языках, тем самым значительно облегчая работу специалистов. Также это дает возможность сравнивать описания аналогичных случаев на разных языках и проводить более содержательные исследования [10].

Следующее перспективное направление развития онтологий используется при семантической разметке текста. Учет семантических категорий, описанных в онтологии, позволяет сделать разметку корпусов более точной, уменьшить неоднозначность, так как в шаблоны, по которым производится разметка, связаны в категориями в онтологии. Такая семантическая разметка в дальнейшем позволяет проводить семантический анализ текста, различные статистические исследования, извлекать межъязыковые соответствия [11].

Еще одним современным проектом, широко использующим онтологии является компания Онтос, разрабатывающая различные семантические технологии. При помощи их систем, основанных на обработке текстов на естественном языке (NLP), пользователь может генерировать и хранить релевантные знания, необходимые для различных задач. Данные системы ориентированы на пользователя, которому надо обрабатывать большие массивы информации, извлекать структурированную информацию.[12] Для решения данных задач возможно использование продуктов Онтоса, обеспечивающих автоматическую обработку необходимых неструктурированных данных и получения прямого доступа к аналитическим (обработанным) данным. Как упоминается на сайте компании, их системы успешно решают следующие задачи:

- поддержка принятия решений при проведении исследований;

- визуализация информации с помощью семантических сетей;

- автоматическая генерация семантических аннотаций из неструктурированного текста;

- дайджестирование больших документов на базе их семантического содержания;

- резюмирование больших объемов аннотированного текста;

- поддержка мета-данных в соответствии со стандартами RDF/OWL;

- семантический поиск с применением технологии триплетов (Объект -- Отношение -- Объект). [12]

Так, один из продуктов компании, OntosMiner, анализирует текст на естественном языке, используя семантические правила онтологий. Результатом работы данной системы становится распознавание объектов и связей между ними и добавление их как аннотации к соответствующим фрагментам текста. [13]

Еще одним аналогичным проектом является RCO (Russian Context Optimizer). С помощью современных технологий исследователи строят онтологии, семантические представления. Продукты и технологии RCO позволяют решать такие прикладные задачи как составление содержательного портрета текста, извлечение именованных объектов, связей и фактов из массивов неструктурированных данных, анализ тональности текста, выявление заимствований, обнаружение дубликатов. Использование онтологий помогает при поиске заранее неизвестной информации, относящейся к некоторой теме, позволяя выдать пользователю возможные «подсказки» для уточнения запроса. Также онтологии служат основой для решения различных аналитических задач, позволяя исследовать окружение выбранного объекта, находить цепочки и группы связности во множестве объектов. [14]

Также в этой связи стоит упомянуть проект «Галактика ZOOM». Эта система предоставляет различные возможности для специалистов разных уровней: руководителей, аналитиков, маркетологов, специалистов по PR, сотрудников служб безопасности. Как упоминается на сайте, их разработки могут использоваться для поиска информации, выявления сути текста, сравнения документов и исследования документов с учетом динамики во времени. [15]

Онтологии получили широкое распространения и для моделирования организационной структуры предприятий. Онтологическое представление знаний о субъектах экономической деятельности, которые входят в состав какой-либо системы, можно использовать для объединения их информационных ресурсов в единое информационное пространство. Онтология предприятия включает в себя организационную онтологию, описывающую организационно-функциональную структуру предприятия: состав штатного расписания (работники, администрация, обслуживающий персонал), партнеры, ресурсы и т. п. и отношения между ними, а также онтологию по технологиям, описывающую терминологию технологий. Разработанные онтологии позволяют сотрудникам одной отрасли или корпорации использовать общую терминологию и избежать взаимных недоразумений, которые могут усложнить сотрудничество и привести к серьезным убыткам. [16]

В качестве примера практического использования онтологических моделей технологий можно привести систему ONTOLOGIC, предназначенную для создания и поддержки распределенных систем нормативно-справочной информации (НСИ), ведения словарей, справочников и классификаторов и поддержки системы кодирования объектов учета. Онтология обеспечивает непротиворечивое накопление любого количества информации в стандартной структуре классификации. Такой подход гарантирует однозначную идентификацию ресурсов независимо от различных трактовок их наименований разными производителями. При использовании данной системы осуществляется эффективный контроль и верификация данных, проверки корректности, полноты и непротиворечивости данных как на этапе анализа и нормализации существующих данных, так и при занесении новых элементов данных. [17]

2. ПОСТАНОВКА ЗАДАЧИ

Согласно определению Т. Грубера, онтология - это спецификация концептуализации предметной области [1]. Это формальное и декларативное представление, которое включает словарь понятий и соответствующих им терминов предметной области, а также логические выражения (аксиомы), которые описывают множество отношений между понятиями. Для описания отношений в онтологиях используются весь арсенал формальных моделей и языков, разработанных в области искусственного интеллекта - исчисление предикатов, системы продукций, семантические сети, фреймы и т.п. Таким образом, термин “онтология” оказался близок по значению к термину “искусственный интеллект”, а термин “онтологический инжиниринг” явился синонимом термина “инженерия знаний”. На сегодняшний день существует не менее десятка зарубежных систем, относимых к классу инструментов онтологического инжиниринга, которые поддерживают различные формализмы для описания знаний и используют различные машины вывода из этих знаний. Наиболее известные из них - это Protйgй, CYC, KAON2, OntoEdit. Среди уже разработанных онтологий наиболее известными и объемными являются CYC и SUMO.

Разработано большое количество онтологий в различных предметных областях, но мир очень быстро изменяется, идет развитие новых отраслей, существующие онтологии требуют постоянного пополнения и усовершенствования. На данном этапе появляются идеи использования автоматических и полуавтоматических методов для интеграции онтологий.

Основной задачей работы является исследования существующих подходов к отображению онтологий. Отображение онтологий является неотъемлемой частью большинства задач согласования онтологий, таких как слияние, выравнивание онтологий, модификация одной онтологии для достижения однородности с другой и так далее. Актуальность работы состоит в том, что данное направление интенсивно развивается в современном мире. Многие ученые работают над созданием автоматических и полу-автоматических систем отображения онтологий, которые будут работать с минимальным воздействием на них человеческого фактора.

Исходя из поставленной основной задачи исследований, в работе необходимо решить, следующие подзадачи:

- провести сравнительный анализ инструментов для работы с онтологиями: построение и редактирование;

- провести детальный анализ инструментов для отображения и объединения онтологий;

- изучить основные подходы к отображению онтологий;

- проанализировать существующие методы и модели отображения, а также проекты в которых они используются.

Для примера необходимо выделить несколько основных алгоритмов отображения, протестировать на реальных онтологиях и на основе полученных результатов, предоставить детальный анализ по их использованию.

На сегодняшний день, нет методов полностью автоматического отображения, а под ним предполагают такую организацию этого процесса, при которой первоначальный перечень терминов предметной области и структура их взаимосвязей автоматически выявляются программными средствами на основании статистической обработки результатов лингвистического анализа коллекции текстов, после чего верифицируются и структурируются экспертом в соответствии с его имплицитной моделью знаний и прагматическими требованиями прикладной системы, для которой разрабатывается онтология.

3. МЕТОДЫ ОТОБРАЖЕНИЯ ОНТОЛОГИЙ

В основном к задачам отображения подходят с практической точки зрения, в зависимости от поставленной цели перед разработчиком. Поэтому нет единственно правильного определения отображения онтологий. Кудрявцев определяет отображение онтологий (ontology mapping), как деятельность по установлению соответствия между несколькими онтологиями [24]. В работах J. Euzenat и P. Shvaiko отображение рассматривают, как направленный вариант выравнивания онтологий (оntology аlignment). Процесс построения правил отображения понятий одной онтологии в понятия другой, либо как результат этого процесса, то есть, множество правил отображения одинакового направления, таких что элементы отображаемой онтологии присутствуют в нём максимум единожды. [25] На основе выше упомянутых определений, под отображением онтологий будем понимать, процесс, при котором понятия одной онтологии выражаются через понятия другой. Корректно термин отображения рассматривать в двух ракурсах: как процесс отображения одной онтологии в другую или как результат такого процесса, то есть множество функций отображения понятий одной онтологии в понятия другой. [26]

Отображение онтологий является неотъемлемой частью большинства задач согласования онтологий, таких как слияние, выравнивание онтологий, модификация одной онтологии для достижения однородности с другой и так далее.

Модели данных, используемые сегодня в качестве онтологических, либо неформальны, либо включают достаточно простые средства спецификации для возможности использования автоматического формального вывода, довольствуясь описаниями структурных спецификаций понятий и простых ограничений над ними. Поэтому большинство методов, используемых для отображения онтологий, предварительно связывают понятия по вербальной информации (именам понятий, определениям), и затем на основе полученных связей оперируют со структурными спецификациями, оценивая их близость, обнаруживая и устраняя разного рода конфликты.

Проблема отображения онтологий является актуальной с самого начала использования онтологий при создании информационных систем. Анализ состояния исследований соответствующих методов показал, что эта тема исследована до сих пор недостаточно глубоко. Разрабатываемые методы, в основном, неформальны и имеют множество открытых вопросов.

Принципы и методы отображения онтологий остаются предметом дискуссий, при создании систем вопросы отображения онтологий до сих пор предпочитают избегать. Наименее исследованы методы отображения онтологий, разработанных в неоднородных онтологических моделях. Говоря о неоднородных онтологиях, мы подразумеваем, что две (или более) онтологии по-разному описывают одну и ту же предметную область или близкие предметные области с точки зрения разных сообществ. Онтология задаёт подразумеваемую семантику для понятий предметной области и определяет онтологический контекст, в котором работает сообщество. . В результате, семантика понятий в контекстах, описанных разными онтологиями, может быть сходной при различных подходах к описанию их структуры: составу, ограничениям и степени детализации.


Подобные документы

  • Система классов и свойств языка RDFS. Реификация или материализация утверждений. Возможности RDF, RDF Schema в представлении онтологий. Способы представления RDF-описаний. Структура и базовые элементы OWL-онтологии. Языки запросов к RDF-хранилищам.

    презентация [312,1 K], добавлен 01.09.2013

  • Оценка качества поисковых систем. Индексирование по ключевым словам. Внутренние представления запросов и документов на информационно-поисковом языке. Способы улучшения поиска при помощи тезаурусов и онтологий. Ранжированный поиск (vector-space model).

    лекция [31,5 K], добавлен 19.10.2013

  • Проблема выбора товара в Интернете. Типы и свойства онтологий как части концепции Semantic Web. Разработка web-приложения для выбора музыкального инструмента: создание иерархии онтологий для предметной области "Гитара", формирование SPARQL-запроса.

    дипломная работа [2,2 M], добавлен 20.04.2012

  • Тезаурус для автоматического концептуального индексирования как особый вид тезауруса. Подходы к описанию отношений при разработке онтологий. Родовидовое отношение выше-ниже. Семантическое смещение. Формальная онтология. Сравнение поисковых механизмов.

    презентация [721,9 K], добавлен 19.10.2013

  • Формализации в онтологии областей знаний с помощью концептуальной схемы. Определение атрибутов класса и свойств экземпляров. Создание экземпляров класса и DL-Query запросов. Методика использования для разработки онтологии среды разработки Protege.

    курсовая работа [2,0 M], добавлен 18.06.2014

  • Разработка web-сервиса как услуги, предоставляемой пользователю. Продажа товара (автомобилей) в Интернете, проблема выбора. Онтологии как часть концепции Semantic Web. Применение онтологий, их основные типы и свойства. Особенности реализации онтологии.

    курсовая работа [57,4 K], добавлен 17.04.2012

  • Язык запросов SPARQL. Система классов и свойств языка RDFS. Интенсионал и экстенсионал. Парадокс Рассела. Списки, коллекции и контейнеры ресурсов, текстовые комментарии для создания удобных для чтения примечаний. Утверждение об авторстве утверждения.

    презентация [355,8 K], добавлен 19.10.2013

  • Построение баз знаний для семантической сети. Цели создания и язык представления онтологий. Структура исследований в области многоагентных интеллектуальных информационных систем, архитектура агента. Экономическое обоснование разработки базы знаний.

    дипломная работа [1,6 M], добавлен 29.09.2013

  • Построение онтологии предметной области для анализа глобальных процессов на основе информации, получаемой из новостных лент. Средства разработки онтологий, используемых для поиска событий, фактов, извлечённых из СМИ; моделирование экономических рисков.

    курсовая работа [3,4 M], добавлен 27.08.2017

  • Обзор существующих методов межпроцедурного анализа. Получение входных и выходных данных подпрограмм с помощью графа алгоритма. Описание входных и выходных данных подпрограммы в терминах фактических параметров. Определение параллелизма по графу алгоритма.

    учебное пособие [77,5 K], добавлен 28.06.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.