Перейти к содержанию

Онтология

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

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

Содержание:

 

Элементы онтологии

Составными частями онтологии являются: классы (англ. Classes/Concepts), свойства (англ. Properties/Roles/Slots), ограничения на свойства (англ. Facets/Role restrictions/Restrictions). Онтология вместе с набором экземпляров (англ. Instances/Individuals) образуют базу знаний предметной области.

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

Пример.  Понятие «люди», вложенное понятие «человек». Чем является «человек» — вложенным понятием, или экземпляром (индивидом) — зависит от архитектуры и детализации онтологии. 

Экземпляры (англ. Instances/Individuals) — это объекты, основные нижнеуровневые компоненты онтологии; могут представлять собой как физические объекты (люди, дома, планеты), так и абстрактные (числа, слова). 

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

Пример. Объект класса Автомобиль имеет такие свойства:
Название,
Число дверей,
Двигатель,
Коробка передач.

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

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

Предположим, что в онтологии автомобилей присутствует два объекта — автомобиль Автомобиль-моделиА и Автомобиль-модели-Б. 
Пусть Автомобиль-модели-Б это модель-наследник Автомобиль-модели-А, тогда отношение между Автомобиль-модели-А и Автомобиль-модели-Б определим как атрибут «isSuccessorOf» со значением «Автомобиль-модели-А» для объекта Автомобиль-модели-Б. 

 

Онтология предметной области

Специализированные (предметно-ориентированные) онтологии — это представление какой-либо области знаний или части реального мира. В такой онтологии содержатся специальные для этой области значения терминов. К примеру, слово «поле» в сельском хозяйстве означает участок земли, в физике — один из видов материи, в математике — класс алгебраических систем.

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

1. Определение области охвата онтологии.
2. Наметить задачи, для которых будет использоваться проектируемая онтология.
3. Создать список используемых понятий.
4. Определить классы и иерархию классов.
5. Определить свойства классов.
6. Определить ограничения для свойств.
7. Наполнить классы экземплярами. (Это не всегда относят к дизайну онтологии).

 

Web Ontology Language

OWL — язык описания онтологий для семантической паутины. Язык OWL позволяет описывать классы и отношения между ними, присущие веб-документам и приложениям. OWL основан на более ранних языках OIL и DAML+OIL и в настоящее время является рекомендованным консорциумом Всемирной паутины.

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

 

Пример описания онтологии

Графическое представление онтологии

Графическое представление онтологии

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

  • Условие выполнения действия (обозначается ромбом)

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

  • Вариант получения продукта (обозначается треугольником)

В тех случаях, когда для получения продукта требуется более одного составляющего, следует использовать треугольник. К нему можно подводить стрелочки (эти стрелочки подписываются название действия, которое надо выполнить над сырьем) от требуемых составляющих (сырья) продукта. А от треугольника можно вести стрелочки (эта стрелочка не подписывается) к тому, что будет получено после осуществления всех необходимых действий. Например, чтобы получить копьё нужно плавить железо и обработать балки.

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