Как создать правильную онтологию. Часть I.

Источник: Лаборатория интеллектуальных систем ИТМО




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

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

Помимо указанных двух стандартных отношений используются также генеалогии (ведущее отношение «отец-сын»), причинно-следственные отношения (ведущее отношение «if-then»), атрибутивные структуры и др.

После того, как определен тип онтологии, вводятся остальные компоненты (классы, атрибуты, экземпляры, правила, ограничения, аксиомы и т.д.). Однако в любой иерархии понятий рано или поздно возникает необходимость использования абстракций, и здесь могут возникнуть определенные сложности и противоречия. Самый простой способ избежать этих проблем — это использовать стандартные онтологии верхнего уровня или общие онтологии (upper ontology). Эти онтологии являются, своего рода, шаблонами или моделями, применимыми для создания на их основе множества прикладных или специализированных онтологий (domain-specific ontology). Общие онтологии содержат базовый глоссарий (тезаурус), в терминах которого могут быть описаны понятия и объекты предметной области. Ниже приведены наиболее известные общие онтологии.

Cyc (производное от «encyclopedia») — это всеобъемлющая (comprehensive) онтология, разрабатываемая с 1985 года компанией Cycorp, Inc. База знаний Cyc разделена на микротеории (Mt), коллекции концепций и фактов принадлежащих одной конкретной области знаний. В отличие от полной базы знаний, всякая микротеория должна быть свободной от противоречий. Микротеории могут быть организованы в иерархию и наследоваться одна от другой.

Basic Formal Ontology (BFO), разработанная Barry Smith, состоит из серии «подонтологий» различного уровня детализации. Онтологии разделены на две разновидности: SNAP (snapshot)-онтологии, описывающие сущности (например, трехмерные объекты), и SPAN-онтологии, описывающие происходящие во времени процессы. Т. о. BFO представляет собой единую инфраструктуру для работы с трех- и четырехмерными описаниями действительности. Между двумя типами онтологий определены отношения, позволяющие использовать BFO для работы как со статическими/пространственными (static/spatial), так и с динамическими/временными (dynamic/temporal) объектами и понятиями.

DOLCE — Descriptive Ontology for Linguistic and Cognitive Engineering, разработанная Nicola Guarino в лаборатории прикладных онтологий (Laboratory for Applied Ontology), представляет собой первый модуль из библиотеки WonderWeb. DOLCE предоставляет ясный когнитивный базис, нацеленный на описание лежащих в основе естественного языка и здравого смысла онтологических категорий. Пожалуй, DOLCE неплохое начало для большинства прикладных задач.

DnS (Descriptions and Situations), разработанная Aldo Gangemi в той же лаборатории (LOA, Rome), является конструктивистской (constructivist) онтологией, расширяющей описательные возможности DOLCE. DnS не накладывает ограничений на тип постулируемых сущностей и отношений ни с точки зрения спецификации предметной области, ни с точки зрения общей онтологии (верхнего уровня). Текущая OWL-реализация DnS включает DOLCE в качестве базового словаря верхнего уровня.

Как DOLCE, так и DnS в основном предназначены для работы с социальными сущностями, такими как организации, коллективы, планы, нормы и информационные объекты.

General Formal Ontology (GFO), разработанная Heinrich Herre и исследовательской группой Onto-Med, является реалистической (realistic) онтологией, интегрирующей процессы и объекты. Эта онтология включает как таксономические иерархии, так и их аксиоматизацию. К особенностям GFO относятся, среди прочего, учет сохраняемости (persistence) и временной модели (time model). Различие между типами endurants (objects) и perdurants (processes) определено в GFO с помощью специальной категории persistant. Для временной модели используются такие примитивы GFO, как интервалы (time intervals) и наследуемые временные пределы (time boundaries).

IDEAS, разработанная IDEAS Group, является экстенсиональной (extensional) 4D онтологией высшего порядка (higher-order). В основе данной онтологии лежит методология BORO. IDEAS не предназначена для использования в рассуждениях или выводе; ее назначение — построение точных моделей бизнеса.

Suggested Upper Merged Ontology (SUMO) — это еще один проект по созданию всеобъемлющей (comprehensive) свободной онтологии. Проектом руководит Adam Pease. В рамках проекта разработаны многочисленные специализированные (прикладные) онтологии. Также SUMO снабжена множеством ссылок на WordNet.

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