Мультизадачное использование прикладной онтологии
*****@***ru, *****@***ru
На примере онтологии «Планиметрия», разработанной на общих принципах построения онтологий, проиллюстрирована возможность комплексирования разномодальных подсистем: концептуального распознавания, анализа ЕЯ-текстов, решения задач, синтеза ЕЯ-текстов и концептуального синтеза изображений. Онтология здесь выступает в качестве связующего звена (интерфейса) между подсистемами. На взгляд авторов такое рассмотрение комплексирования позволяет говорить о возможном подходе к разработке интегральной системы искусственного интеллекта.
Введение
Искусственный интеллект пережил несколько фаз своего развития. Было время, когда он рассматривал в комплексе многие задачи в составе единой системы. Потом большинство направлений «разошлись по своим квартирам», образуя не только свои области, но и свои конференции. Сейчас, по-видимому, настала время «собирать камни». Доводом для этого является проведение в марте 2008 года конференции «Artificial General Intelligence» в Мемфисе, США. Один из авторов этой работы [1] был практически единственным представителем Росси на этом форуме. Главная цель этой конференции - постановка задачи создания такой системы искусственного интеллекта, которая бы объединяла в себе наработки в различных направлениях для комплексного рассмотрения «общего» искусственного интеллекта, способного решать многие задачи человеческой деятельности. Такой взгляд не является чем-то новым, он просто характеризует настоящий момент развития этой области, новую волну, приток свежих кадров, а, возможно, и новую эгиду, флаг, под которым необходимо поднять исследования в этой области как организационно, так и финансово. Такой «всплеск» сродни проекту построения ЭВМ пятого поколения, который мы наблюдали во второй половине двадцатого века. Эта цель амбициозна, но она является большим стимулом для интенсификации исследований в искусственном интеллекте. Многое для достижения этой цели зависит от того, каким образом комплексировать множество различных подсистем в целостную систему ИИ. В данной работе рассматриваются моменты коплексирования через призму единой прикладной онтологии для создания интерфейса между различными подсистемами, которые решают свои задачи с учетом их специфики.
1. Структура прикладной онтологии
Сегодня в теории принято классифицировать онтологии по степени зависимости от задач или прикладной области, по языку представления онтологических знаний и его выразительным возможностям и другим параметрам [2, 3]. Особое место занимают онтологии верхнего уровня (описывают наиболее общие концепты: пространство, время, материя, объект, событие, действие и т. д.) [4]. Прикладные онтологии описывают концепты, которые зависят как от онтологии задач, так и от онтологии предметной области. Онтологический инжиниринг при этом подразумевает [3]: определение классов понятий в онтологии; наведение таксономии на классах (подкласс – класс - надкласс); разработку структур понятий и ситуаций; определение свойств понятий и значений этих свойств; процедуры вывода и преобразования ситуаций.
В качестве иллюстраций выбрана прикладная онтология «Планиметрия», которая достаточно прозрачна, и кроме этого на ней можно рассматривать сравнительно широкий комплекс разномодальных интеллектуальных систем: концептуальное распознавание изображений геометрических фигур, анализ текстов геометрических задач, собственно планирование решения геометрических задач, синтез на естественном языке текстов и вопросов и концептуальный синтез изображений геометрических фигур. Наличие воображения позволяет экстраполировать данную онтологию до практически значимых моделей знаний, где комплексно решаются в более широком объеме эти и другие интеллектуальные задачи.
1.1. Определение классов понятий
В онтологии «Планиметрия» рассматриваются основные понятия: Треугольник, Параллелограмм, Трапеция, Овал, Плоская Кривая и другие концепты, которые участвуют в структурных описаниях.
В центре онтологии находятся классы. Класс Плоская Фигура представляет все объекты планиметрических фигур. Конкретные Плоские Фигуры – экземпляры этого класса. Конкретный треугольник – это экземпляр класса Треугольник. Класс может иметь подклассы, которые представляют более конкретные понятия, чем надкласс. Например, класс Треугольник разделяется на подклассы Прямоугольный, Равносторонний и Равнобедренный Треугольник.
1.2. Наведение таксономии
Отношения между классами и подклассами понятий организуются в виде таксономии или таксономической иерархии. Для представления таксономии используется отношение является_видом (A Kind Of). Фрагмент таксономии для онтологии «Планиметрия» представлен на рис.1.
Рис. 1. Фрагмент таксономии в онтологии «Плоская геометрическая фигура»
1.3. Структуры понятий и ситуаций
Один объект может составлять часть другого объекта – это привычно для описания окружающего нас мира. Глаза – это часть лица, Крыло или Кабина – часть Самолета, а данная статья – часть трудов конференции. Для отображения таких видов взаимоотношений целого и частей служат три вида понятий. Составные понятия, в которых используется отношение является_частью (PartOf). Для таких понятий бывает достаточным только перечисление частей, например, оглавление для трудов конференции. Там, где важны отношения между частями, служат структурные понятия. Для выделения структуры используется отношение имеет_структуру (Have_Str). Пример фрагмента структуры понятия Треугольник в виде n-арной семантической сети (семантического гиперграфа)1 представлен на рис. 2. Встречаются такие составные объекты, которые имеют различимые части, но не имеют конкретной структуры. Для таких объектов вводится понятие совокупности с отношением группа_из (BunchOf). Например, если три треугольника обозначить как Тре-к1, Тре-к2, Тре-к3, то выражение BunchOf ({Тре-к1, Тре-к2, Тре-к3}) обозначает составной объект, частями (но не элементами) которого являются три треугольника. Этот объект может использоваться как обычный, хотя и не структурированный объект.
Ситуация – это такие описания, которые «компонуются» из некоторого множества взаимосвязанных определенным образом понятий. Такие описания возникают в процессе формирования результата на поступление входной информации. Иногда такого рода описания (скажем, в зависимости от частоты их появления) могут оформляться в онтологии в качестве некоторого сложного понятия. Например, Вписанная в треугольник окружность есть ситуация, полученная из описания треугольника, в который добавили описание окружности с определенными ограничениями (окружность с такими параметрами, при которых она касается трех сторон треугольника). Такая ситуация в области планиметрии запомнена в качестве структурного понятия Вписанная (в Треугольник) Окружность.

Рис. 2. Фрагмент структуры понятия Треугольник
Полная структурная часть понятия может оказаться не столь наглядной, как хотелось бы. Для этого предусматривается возможность при разработке и отладке онтологии представлять эти структуры в виде нескольких стратов – структур, в которых присутствуют базовые элементы, а в остальных частях определены разные компоненты. На рис.2 для наглядности понятие Треугольник определено в виде структуры трех отрезков прямых, соединенных концевыми точками. Хотя полная структура понятия Треугольник включает биссектрисы, медианы и высоты треугольника (см. рис. 3, где в структуре треугольника представлены понятия Угол, а на рис. 4 – понятие Медиана).
1.4. Определение свойств и значений свойств
Каждое понятие онтологии имеет свойства: это может быть обозначение класса Параллелограмм ABCD, его Площадь или Периметр. Каждое свойство может быть задано конкретным значением или способом (формулой, реализуемой с помощью присоединенной процедуры) вычисления данного значения свойства. На рисунке интегральными свойствами понятия Треугольник являются Площадь и Периметр. Значения этих свойств для экземпляра понятия подсчитываются по формулам F1 и F2, которые реализуются процедурами при означенных (конкретных, числовых) значениях свойств внутренних понятий Треугольника: длин сторон или длины одной стороны и соответствующей высоты. В представлении на языке семантической сети эти свойства связываются с соответствующими понятиями отношениями: имеет, имеет_длину, имеет_значение и т. п. Отметим, что некоторые целостные свойства понятия могут быть представлены как внутри структуры этого понятия, так и в виде интегрального его свойства. В данном примере таким свойством является зависимость сторон треугольника, которая описывается формулой F3 (гиперграфовое преставление позволяет выделять такие n-ки внутри структуры как подструктуры).
1.5. Определение отношений
При разработке и при использовании любой онтологии необходимо определиться с перечнем применяемых отношений и их свойствами. На сегодняшний день нет общепринятого полного перечня отношений за исключением десятка общезначимых отношений (например, A Kind Of, PartOf и др.).
Тем не менее, всю совокупность отношений в онтологии можно разделить на три класса: общезначимые (см. выше), логические (И, ИЛИ, НЕ и т. д.) и специфические для данного приложения. Ниже в таблице приведены примеры специфических отношений, используемых в онтологии «Планиметрии».
Таблица 1. Специфические отношения в онтологии «Планиметрия»
образует | исходит_из |
имеет_длину | делит_пополам |
вычисляется_по_формуле | является_внутренней_точкой |
соприкасается_в_концевой_точке | параллельно |
совпадает | перпендикулярно |
1.6. Процедуры вывода на прикладной онтологии
Использование онтологии как модели предметной области определяется некоторым множеством процедур вывода, которые кратко рассмотрены ниже.
Категории или классы объектов необходимы для организации базы знаний с целью использования информации о наследовании. Если известно, что все экземпляры класса Многоугольник имеют площадь, и утверждается, что Треугольник является подклассом класса Многоугольник, а Равнобедренный Треугольник является подклассом класса Треугольник, то каждый равнобедренный треугольник имеет площадь. Если объект принадлежит к нескольким классам, то в этом случае мы имеем множественное наследование. Таким примером в данной онтологии служит Квадрат, который одновременно принадлежит и к понятию Прямоугольник и к понятию Ромб.
Важная особенность семантических сетей – способность представлять заданные по умолчанию значения для классов понятий. Это позволяет естественно вводить исключения. Заданные по умолчанию значения находятся с помощью процедуры наследования, поскольку эта процедура следует по связям, направленным вверх от самого объекта, и останавливается, как только находит искомое значение. Значение по умолчанию перекрывается более конкретным значением. Например, площадь любого треугольника подсчитывается по формуле 1/2 ас hac (значение по умолчанию), а для прямоугольного треугольника площадь можно подсчитать по более простой формуле 1/2 ac bc (более конкретное значение).
Еще одна общая форма вывода: использование обратных связей. Например, связь имеет_длину является обратной по отношению к является_длиной. Это означает, что имеет место высказывание:
∀p, s имеет_длину (p, s) ⇒ является_длиной (s, p).
Возможно, излишне хранить информацию и о прямой, и об обратной связи. Тем не менее, с точки зрения приобретения и использования знаний удобно иметь доступной эту информацию в явном виде. Система приобретения знаний может автоматически заполнить в описаниях и прямое и обратное отношение, обеспечивая полноту и согласованность базы знаний.
Выразительная мощность семантических сетей проявляется, если ввести присоединенные процедуры – метод, с помощью которого осуществляется вызов специальной процедуры, предназначенной для обработки определенных отношений. Примером такой процедуры является упоминаемая выше процедура вычисления по формуле.
При оперировании с конкретными экземплярами понятий реализуется процедура означивания. По входной информации некоторые переменные в описании структуры понятия принимают либо конкретные значения, либо значения, которые необходимо найти по условиям задачи. Например, если во входных данных относительно понятия Равнобочная Трапеция указаны длина одного из оснований и боковой стороны, то процедура означивания предполагает задание в структуре этого понятия вместо переменных (длины основания и боковой стороны) их конкретные значения.
Фрагменты онтологии, включая структуры и свойства понятий, при решении конкретных задач становятся материалом для описания ситуации, которая определяется входными данными. В дополнение к этим фрагментам онтологии предполагается введение понятий и связей, определяемых входными условиями (текстом геометрической задачи). Это реализуется с помощью процедур дополнения. Рассмотрим некоторые из этих процедур на следующем примере. Пусть задан текст геометрической задачи № 1:
Площадь треугольника, один из углов которого равен разности двух других, равна площади квадрата, сторона которого совпадает с одной из сторон этого треугольника. Найти углы данного треугольника.
В описании понятия Треугольник никакой информации о «разности двух углов» и о «равенстве этой разности третьему углу» быть не может. А ситуация, описывающая данный текст должна ее включать. В этом случае подключаются процедуры дополнения, которые на основе присутствия знания в онтологии о понятии Разность (x, y) и о связи равно модифицируют описание ситуации введением соответствующих узлов и дуг, как это представлено на рис. 3. Данный рисунок иллюстрирует процедуры дополнения для понятий Треугольник и Квадрат и процедуры частичного означивания. Выделенные узлы и жирные связи отображают те объекты, которые представлены в тексте задачи. Знак вопроса при значениях понятий Угол определяет то, что эти значения необходимо найти в процессе решения геометрической задачи.

Рис. 3. Частично означенная структура ситуации «Треугольник и Квадрат» для геометрической задачи
При любом языке представления знаний необходимой процедурой является сопоставление описаний. Это либо сравнение по образцу (pattern matching), либо поиск изоморфизма графов. Последняя процедура, описанная в [5], предполагает сопоставление семантического представления текста геометрической задачи со структурными фрагментами предметной онтологии. Результат такого сопоставления представлен на рис. 3., где понятия углов треугольника, их значений и понятие одной из сторон этого треугольника (выделенные узлы) сопоставлены с фрагментами семантического описания текста задачи.
На построенной таким образом прикладной онтологии рассмотрим работу каждой из подсистем.
2. Концептуальное распознавание изображений
Концептуальное распознавание/анализ изображения предполагает получение описания заданного изображения или его части в виде концептуального представления. Обычно, задача анализа изображений характеризуются тем, что на изображении присутствует одновременно целый ряд произвольно или упорядоченно расположенных зрительных объектов.
При заданном изображении необходимо построить его описание или, в частном случае, отнести предъявленное изображение к одному из заданных классов.
Решение задачи целенаправленного и контекстного распознавания [6] предполагает не только структурность самих объектов распознавания, наличие их структурных описаний в онтологии, но и контекст распознавания.
В описаниях классов указываются элементы, образующие изображения объектов данного класса, и отношения между этими элементами. С каждым исходным элементом ассоциируется процедура выделения этих элементов непосредственно на изображении. Алфавит исходных элементов включает понятия Точка, Отрезок, Дуга и т. д. Алфавит отношений включает различные группы, например, контактные (соприкасается, пересекает), пространственные (правее, справа внизу, следует за), метрические (имеет длину, имеет толщину) и др. Алфавиты исходных элементов и отношений открыты и могут быть расширены без перестройки системы распознавания.
Таким образом организованная модель позволяет выполнять совместную интерпретацию как элементов изображения в составе распознаваемых объектов, так и самих объектов в составе более крупных образований. В этом случае процесс распознавания управляется контекстом, что дает повышение надежности распознавания.
Иерархическая структура модели позволяет в процессе распознавания реализовывать целенаправленное взаимодействие двух стратегий: “сверху-вниз” (от модели к изображению) и “снизу-вверх” (от изображения к модели).
Сам процесс анализа изображения носит итеративный характер:
- выдвижение гипотезы о присутствии в определенном месте изображения представителя того или иного класса распознаваемых объектов; проверка выдвинутых гипотез; принятие решений (текущих и окончательных) о справедливости той или иной гипотезы.
Критерием окончания процесса распознавания является отсутствие непроверенных гипотез и/или отсутствие на изображении нерассмотренных элементов.
Проверка гипотез сводится к целенаправленному поиску непосредственно на входном изображении совокупности элементов, удовлетворяющих описанию данного класса распознаваемых объектов.
Сегментация изображения на отдельные элементы (фрагменты), а также интерпретация этих элементов осуществляются непосредственно в ходе распознавания (этапы предварительной сегментации и описания отсутствуют) и проводятся в рамках проверяемой гипотезы.
Решение о справедливости гипотезы может быть пересмотрено на последующих этапах процесса распознавания, если этого потребует контекст более высокого уровня, чем объект, связанный с данной гипотезой.
3. Понимание текстов на ЕЯ
Тексты геометрических задач представляют собой набор связных предложений. Они включают простые и сложные предложения, неполные предложения (с анафорами и эллипсисами) и имеют другие неопределенности, свойственные естественному языку.
Под пониманием геометрических задач будем подразумевать такое их представление на языке прикладной онтологии, которое будет являться связным, означенным и дополненным описанием ситуации, представленной текстом. Проиллюстрируем для текста геометрической задачи те структуры ситуаций, которые должны быть получены в результате лингвистического анализа с использованием данной онтологии.
Геометрическая задача № 2:
Найдите площадь треугольника, две стороны которого равны 6 и 8, а медиана, заключенная между ними, равна 5.
На рис. 4. представлена означенная структура ситуации, соответствующая тексту задачи, где l1 = 6, l2 = 8, l4 = 5 являются означенными элементами. Полученное представление является связным (связность выделенных элементов определяется существующими связями в структуре понятия Треугольник и связью им_структуру). Этот результат, конечно, содержит больше информации, чем представлено в тексте. Такая «избыточность», на наш взгляд, является существенным моментов процесса понимания текста при наличии предметной онтологии.

Рис. 4. Означенная структура понятия Треугольник для геометрической задачи
4. Планирование
Под планированием подразумевается процесс выработки последовательности действий, позволяющих достичь цели.
Первым шагом в решении задачи является формулировка цели с учетом текущей ситуации и показателей производительности. Формулировка задачи представляет собой процесс определения того, какие действия и состояния следует рассматривать с учетом некоторой цели. Определение такой последовательности называется поиском. Любой алгоритм поиска принимает в качестве входных данных некоторую задачу и возвращает решение в форме последовательности действий. После нахождения решения могут быть осуществлены действия, рекомендованные алгоритмом. Такая реализация осуществляется на стадии выполнения.
Разнообразие методов планирования, сред, в которых оно осуществляется, и эвристик, используемых в процессе планирования, позволяют очень ограниченно проиллюстрировать задачу на примере выбранной онтологии.
Например, для геометрической задачи № 2 следующая последовательность действий дает решение задачи: переход по связи вычисляется_по_формуле; выполнение расчета по этой формуле и подстановка конкретного значения периметра.
5. Синтез текстов
Задача синтеза текстов на ЕЯ заключается в построении (генерировании) текста на базе онтологических представлений по структурным описаниям.
Полный синтез фраз ЕЯ предполагает этапы семантического синтеза, синтаксической интерпретации, синтаксического синтеза, морфологического синтеза и форматирования (графематический синтез).
Результат семантического синтеза – это онтологическая структура, разбитая на фрагменты, соответствующие будущим фразам. Остальные этапы являются специфическими для лингвистического синтезатора и здесь не обсуждаются, т. к. выходят за рамки данной статьи.
Иллюстрацией синтеза текста может быть перефразировка задачи № 2, построенная на основе структуры, изображенной на рис. 4:
Найти площадь треугольника. Сторона АС равна 6, сторона АВ равна 8. Медиана угла ВАС равна 5.
В данном случае этот текст отличается от формулировки задачи № 2. Часть информации была привнесена из самой онтологии (обозначения сторон и медианы) и установить лингвистическую эквивалентность первоначальной формулировки задачи и ее перефразировки достаточно трудно. Но если при этом использовать поясняющий рисунок, сгенерированный самой системой, человеку можно легко сопоставить оба текста. По той же структуре (см. рис. 4) эту задачу может выполнить подсистема концептуальной машинной графики.
6. Концептуальная машинная графика
Задача концептуальной графики заключается в визуализации концептуальных описаний объектов на основе онтологических структур. Системы, решающие данную задачу, состоят из собственного планировщика и визуализатора. Планировщик на основе структуры объекта и базы графических примитивов строит экземпляры графической сцены или преобразовывает графические объекты на сцене. Он также вычисляет габариты и координаты всех составляющих сцену объектов и передает эту информацию на вход визуализатора.
Визуализатор воспроизводит сгенерированные экземпляры графической сцены на экране дисплея с помощью системы машинной графики.
Выше рассмотренную перефразировку на ЕЯ можно дополнить следующим поясняющим рисунком (см. рис. 5.). И тогда проблема неоднозначности различных формулировок будет для человека снята.
Рис. 5. Поясняющий перефразировку на ЕЯ рисунок
7. Некоторые особенности взаимодействия подсистем
Динамика развития отдельных систем и методов ИИ позволяет предполагать, что получить новый качественный результат в исследованиях возможно только на уровне комплексирования подсистем. Только тогда появляются новые возможности в работе интегральной системы.
Например, если на входе системы заданы задача на ЕЯ и одновременно дан поясняющий рисунок, то разномодальное восприятие не только позволяет семантически контролировать процесс понимания условий задачи, но и разрешать неопределенности при анализе.
Поясним это на примере задачи № 3:
Дан прямоугольник ABCD со стороной AB, равной 25 см., и диагональю 47 см.
и поясняющий рисунок (см. рис. 6). Для системы анализа изображения существует неопределенность: она может рассматривать эту фигуру как два прямоугольных треугольника с общей гипотенузой или как прямоугольник с одной диагональю. Помогает разрешить эту неопределенность анализ текста условия задачи.
Рис. 6. Поясняющий задачу рисунок
Более того, распознавание фигуры вместе с текстовыми обозначениями (такие системы существуют, см. например, [7]) позволяет при означивании структуры ситуации корректно ее описывать. Такой процесс более адекватен человеческому восприятию/пониманию задач.
После получения плана решения интегральная система может проиллюстрировать процесс решения, выдав человеку описание плана на ЕЯ и проиллюстрировав его рисунком, визуализация которого реализуется подсистемой концептуальной машинной графики. А это уже воплощение функции объяснения, которую считает одной из необходимых функций интеллектуальной системы [8].
Таким образом, в понимании задачи, ее решении и выполнении участвуют практически все подсистемы комплекса. То есть, каждая подсистема решает не только свою узкую задачу и представляет результат только на своем языке, а участвует совместно с другими подсистемами, представляя результат и на едином концептуальном языке прикладной онтологии.
Литература
1. Alexander Voskresenskij. Text Disambiguation by Educable AI System. The First Conference on Artificial General Intelligence, AGI-08, 1-3 March, 2008, Memfis. P. Wang et al. (Eds.), IOS Press, 2008, p 350-361.
2. Формирование прикладных онтологий // Труды ХХ национальной конференции по Искусственному Интеллекту с международным участием – КИИ-2006, т. 2 – М.: Физматлит, 2006.
3. , . Онтологии в корпоративных системах. // Корпоративные системы, №1, 2006.
4. Рассел Стюарт, Норвиг Питер. Искусственный интеллект: современный подход, 2-е изд.: Пер. с англ. – М.: Издательский дом «Вильямс», 2006. 1408 с.
5. Использование гиперграфов в лингвистической трансляции // Труды Международного семинара "Диалог'99" по компьютерной лингвистике и ее приложениям. – М., 1999, с. 315-320.
6. , , Управляемый контекстом целенаправленный анализ изображения на основе использования семантической сети // Вопросы радиоэлектроники, сер. ОТ, вып. 1. – М., 1980, с. 50-58.
7. Система IcadGT www.
8. Десять "горячих точек" в исследованиях по искусственному интеллекту //Интеллектуальные системы (МГУ). - Т.1, вып.1-4., 1996, с.47-56.
1 К сожалению, используемые языки для разработки и уточнений онтологий (например, Schematic Language или Elaboration Language [3]) мало приспособлены для описания предлагаемых структур понятий «Планиметрия».


