logo
Базы знаний интелл

8.2.2. Модели онтологии и онтологической системы

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

Под формальной моделью онтологии О будем понимать упорядоченную тройку вида:

О = Х, , Ф,

где

X — конечное множество концептов (понятий, терминов) предметной области, которую представляет онтология О;

 — конечное множество отношений между концептами (понятиями, терминами) заданной предметной области;

Ф — конечное множество функций интерпретации (аксиоматизация), заданных на концептах и/или отношениях онтологии О.

Заметим, что естественным ограничением, накладываемым на множество X, является его конечность и непустота. Иначе обстоит дело с компонентами Ф и Â в определении онтологии О. Понятно, что и в этом случае Ф и Â должны быть конечными множествами. Рассмотрим, однако, граничные случаи, связанные с их пустотой.

Пусть Â =  и Ф = . Тогда онтология О трансформируется в простой словарь:

О = V = Х, {}, {}.

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

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

Другой вариант соответствует случаю Â = , но Ф  . Тогда каждому элементу множества терминов из X может быть поставлена в соответствие функция интерпретации f из . Формально это утверждение может быть записано следующим образом. Пусть

Х = Х1 Х2,

причем

X1 X2 = ,

где X1 — множество интерпретируемых терминов; Х2 — множество интерпретирующих терминов.

Тогда

такие что

где f  Ф.

Пустота пересечения множеств Х1 и Х2 исключает циклические интерпретации, а введение в рассмотрение функции k аргументов призвано обеспечить более полную интерпретацию. Вид отображения f из Ф определяет выразительную мощность и практическую полезность этого вида онтологии. Так, если предположить, что функция интерпретации задается оператором присваивания значений (Х1 : = Х2, где X1 — имя интерпретации Х2), то онтология трансформируется в пассивный словарь Vp:

О = Vp = X1  Х2, {}, {: = }

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

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

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

Для представления модели онтологии, которая нужна для решения задач обработки информации в Интернете, очевидно, требуется отказаться от предположения  = .

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

Для этого введем в рассмотрение специальный подкласс онтологии — простую таксономию следующим образом:

О = Т0 = < X, {is_a}, {}>.

О

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

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

Результаты анализа частных случаев модели онтологии приведены в таблице 8.1.

Таблица 8.1.

Классификация моделей онтологии

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

• представления множества концептов X в виде сетевой структуры;

• использования достаточно богатого множества отношений , включающего не только таксономические отношения, но и отношения, отражающие специфику конкретной предметной области, а также средства расширения множества Â;

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

Тогда можно ввести в рассмотрение модель расширяемой онтологии и исследовать ее свойства. Однако, учитывая техническую направленность данной книги, мы не будем делать этого здесь, а желающих познакомиться с такой моделью отсылаем к работе [Maikevich et al., 1999J. Как показано в этой работе, модель расширяемой онтологии является достаточно мощной для спецификации процессов формирования пространств знаний в среде Интернет. Вместе с тем и эта Модель является неполной в силу своей пассивности даже там, где определены соответствующие процедурные интерпретации и введены специальные функции пополнения онтологии. Ведь единственной точкой управления активностью в такой модели является запрос на интерпретацию определенного концепта. Этот запрос выполняется всегда одинаково и инициирует запуск соответствующей процедуры. А собственно вывод ответа на запрос и/или поиск необходимой для этого информации остается вне модели и должен реализовываться другими средствами.

У

Под формальной моделью онтологической системы X будем понимать триплет вида:

O = Ometa, {Od&t}, int

где

Оmeta — онтология верхнего уровня (метаонтология);

d&t } — множество предметных онтологий и онтологии задач предметной области;

intf — модель машины вывода, ассоциированной с онтологической системой O

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

Использование системы онтологии и специальной машины вывода позволяет решать в такой модели различные задачи. Расширяя систему моделей (Оd&t}, можно учитывать предпочтения пользователя, а изменяя модель машины вывода, вводить специализированные критерии релевантности получаемой в процессе поиска информации и формировать специальные реггозитории накопленных данных, а также пополнять при необходимости используемые онтологии.

В модели SO имеются три онтологические компоненты:

• метаонтология;

• предметная онтология;

• онтология задач.

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

Предметная онтология Odomain содержит понятия, описывающие конкретную предметную область, отношения, семантически значимые для данной предметной области, и множество интерпретаций этих понятий и отношений (декларативных и процедурных). Понятия предметной области специфичны в каждой прикладной онтологии, но отношения — более универсальны. Поэтому в качестве базиса обычно выделяют такие отношения модели предметной онтологии, как part_of, kind_of, contained_in, member_pf, see_also и некоторые другие.

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

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

X see_also Y:

see_also member_of Relation {

if ( (X is_a Notion) & (Y is_a Notion) & (X see_also Y) )

if (Operation connected_with X)

Operation connected_with Y

};

Заметим, что и отношение see_also «не вполне» транзитивно. Действительно, если предположить, что (X1 see_also Х2) & (Х2 see_also X3), то можно считать, что (XI see_also ХЗ). Однако по мере увеличения длины цепочки объектов, связанных данным отношением, справедливость транзитивного переноса свойства connected_with падает. Поэтому в случае отношения see_also мы имеем дело не с отношением частичного порядка (как, например, в случае oтношения is_a), а с отношением толерантности. Однако для простоты это ограничение может быть перенесено из определения отношения в функцию его интерпретации. Анализ различных предметных областей показывает, что введенный выше набор отношений является достаточным для начального описания соответствующих онтологии. Понятно, что этот базис является открытым и может пополняться в зависимости от предметной области и целей, стоящих перед прикладной системой, в которой такая онтология используется.

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

Рис. 8.6. Взаимосвязь между онтологиями онтологической системы

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

• с активацией понятий и/или отношений, фиксирующих решаемую задачу (описание исходной ситуации);

• определением целевого состояния (ситуации);

• выводом на сети, заключающемся в том, что от узлов исходной ситуации распространяются волны активации, использующие свойства отношений, с ними связанных. Критерием остановки процесса является достижение целевой ситуации или превышение длительности исполнения (time-out).