ОРГАНИЗАЦИЯ ЭФФЕКТИВНОГО ПОИСКА

НА ОСНОВЕ ОНТОЛОГИЙ

О.И. Россеева, Ю.А. Загорулько

Российский НИИ Искусственного Интеллекта,

Институт систем информатики СО РАН

 

Источник: http://www.dialog-21.ru/Archive/2001/volume2/2_49.htm

 

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

ВВЕДЕНИЕ

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

Порожденный указанными выше проблемами информационный кризис еще больше подогрел интерес к разработке интеллектуальных механизмов поиска информации в сети Internet. С другой стороны, Web стал рассматриваться как потенциальная база знаний, для работы с которой нужны специальные методы представления и обработки знаний и запросов. Разумным здесь кажется применение методов и средств, разработанных в области искусственного интеллекта. В рамках такого подхода внимание различных исследователей сейчас привлекают онтологии (Майкевич98;Khoroshevsky98).

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

ЧТО ТАКОЕ “ОНТОЛОГИЯ”?

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

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

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

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

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

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

Методология построения онтологий (Ushold,Gruninger96;Ushold,King95) предполагает рассмотрение следующих важных вопросов:

1.      Обозначение целей и области применения создаваемой онтологии. Для этого необходимо определить для чего создается онтология, и как она будет в дальнейшем использоваться.

2.      Построение онтологии

2.1.   Фиксирование знаний о предметной области, которое включает в себя:

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

b)     создание точных непротиворечивых определений для каждого основного понятия и отношения;

c)      определение терминов, которые связаны с этими терминами и отношениями;

d)     окончательное согласование всех выше названных этапов.

2.2.   Кодирование, которое подразумевает

a)      разделение совокупности основных терминов, используемых в онтологии, на отдельные классы понятий;

b)     выбор или разработку специального языка для представления онтологии;

c)      непосредственно задание фиксированной концептуализации на выбранном языке представления знаний.

ПРИМЕНЕНИЕ ОНТОЛОГИЙ

В настоящее время существует множество проектов, в основу которых положены онтологии. Рассмотрим некоторые системы, которые были созданы для того, чтобы обеспечить совместное использование различных видов знаний (Gruber93; Ushold,Gruninger96; Ushold, King95; Luke и др.99; Fikes, Farquhar97; Guarino99; Takeda и др.98).

Сyc является проектом Корпорации Микроэлектроники и Компьютерных технологий (MCC) в Техасе. Данный проект предоставляет основу для систем, реализующих механизм рассуждений, при помощи создания онтологий для широкого круга приложений, зависящих от конкретной предметной области. Cyc включает в себя огромные многоконтекстные базы знаний, эффективные механизмы вывода, набор средств для вывода и ряд специальных прикладных модулей. База знаний, основу которой составляет ядро из 1,000,000 простых утверждений, фиксирующих непротиворечивые знания о мире, содержит также правила вывода и управляющие правила; машина вывода может применяться для получения новых утверждений. Знания в Cyc представляются на специально разработанном декларативном языке CycL в виде утверждений логики первого порядка. Онтологии, лежащие в основе Cyc, организованы в наборы модулей, называемые микротеориями. Каждая такая микротеория фиксирует знания и утверждения о некоторой отдельной области, например, о пространстве, времени, причинности. При чем для одной области может существовать множество микротеорий, в которых отражаются различные взгляды и предположения, сделанные людьми, моделирующими эту область. В этом смысле, Cyc не является монолитной онтологией, а представляет собой сеть микротеорий для множества областей, объединение которых охватывает разные онтологические сообщества, сформировавшиеся в этих областях.

Целью проекта TOVE (Toronto Virtual Enterprise) является создание модели данных, которая должна:

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

2) дать точное и по возможности непротиворечивое определение значения каждого термина на основе логики первого порядка;

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

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

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

Общей целью проекта Enterprise Project является улучшение и там, где необходимо, замена существующих методов моделирования при помощи набора средств, позволяющих интегрировать различные методы и средства. Построение этого набора основывается на онтологии для моделирования предприятия. Главной целью Enterprise Project является создание таких инструментальных средств, которые помогут зафиксировать и проанализировать данные для того, чтобы определить и сравнить действия, направленные на удовлетворение коммерческих требований. Эти инструментальные средства будут обеспечивать управление задачами пользователей, помогая им осуществлять моделирование деятельности предприятия. С помощью этих средств станет возможным 1) фиксирование и описание предметной области; 2) определение задач и требований (согласующихся с онтологией); и 3) определение и оценка вариантов решений и альтернативных проектов, реализация выбранной стратегии. При независимой разработке инструментальных средств возможно использование разной терминологии, что в свою очередь может привести к конфликтам и неоднозначности при их интегрировании. Для решения этой проблемы была построена онтология, в которой задан набор часто используемых и общепринятых терминов, таких как деятельность, процесс, организация, стратегия, маркетинг.

KACTUS является Европейским проектом в рамках проекта ESPIRIT, цель которого заключается в построении методологии многократного применения знаний о технических системах во время их жизненного цикла. Данная методология необходима для того, чтобы использовать одни и те же базы знаний для проектирования, оценки, функционирования, сопровождения, перепроектирования и обучения. KACTUS поддерживает интегрированный подход, включающий производственные и инженерные методы и методы инженерии знаний, на основе создания онтологической и вычислительной основы для многократного использования полученных знаний параллельно с различными приложениями технической области. Это достигается при помощи построения онтологии предметной области и их многократного использования в различных прикладных областях. Кроме этого, в KACTUS делается попытка объединить эти онтологии с существующими стандартами как, например, STEP, применяя онтологии, там, где возможно фиксирование данных об области. Основным формализмом в KACTUS является CML (Conceptual Modeling Language). KACTUS предоставляет комплекс инструментальных средств, который является интерактивной средой для просмотра, редактирования и управления онтологиями. Инструментарий KACTUS предоставляет среду, в которой можно экспериментировать с теоретическими результатами (например, организовывать библиотеки онтологий, преобразовывать данные между онтологиями, делать преобразования для различных онтологических формализмов), а также осуществлять практические действия (например, просмотр, редактирование и уточнение онтологий в разных формализмах).

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

SHOE (Simple HTML Ontology Extensions) позволяет авторам аннотировать свои Web страницы, внося в них, таким образом, семантическое содержание. Основным компонентом SHOE является онтология, которая содержит информацию о некоторой области. Используя эту информацию, средства поиска и построения запросов обеспечивают более релевантный ответ на запрос по сравнению с существующими поисковыми машинами, так как предоставляется возможность включать в Web страницы знания, которые интеллектуальные агенты могут действительно прочитать. Для этого SHOE дополняет HTML набором специальных тэгов для представления знаний, отличных от тэгов HTML. SHOE позволяет находить знания с помощью таксономий и правил вывода, существующих в онтологии.

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

ПРИМЕНЕНИЕ ОНТОЛОГИИ ДЛЯ ОРГАНИЗАЦИИ ПОИСКА В INTERNET

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

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


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

1)     формирование поискового образа релевантного документа;

2)     построение запроса к поисковой системе;

3)     формирование списка релевантных документов.

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

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

1)     набор терминов, которые должны включаться в документ;

2)     набор характеристик документа;

3)     набор требований к результату поисковой системы, таких как количество документов и т.п.

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


Рис.2. Фрагмент иерархии понятий предметной области.

 


В онтологии для предметной области представление знаний (Рис.2) механизм вывода на онтологии может осуществляться на основе таких представленных в ней отношений между понятиями как Синоним, Основа, Ассоциация, Род-вид, Часть-целое, Это, Средство_для.

            Рассмотрим несколько примеров, демонстрирующих применение онтологии для формирования запроса.

Пример 1.Если пользователя интересуют документы, содержащие информацию о моделях представления знаний, то данный запрос может быть расширен понятиями, которые связаны с требуемым понятием отношением Род_вид, т.е. являются моделями представления знаний.

Запрос = “Какие существуют модели представления знаний?”

Род_вид (Модель,Продукционная),

Род_вид (Модель,Сетевая),      

Род_вид (Модель,Фреймовая),  

Запрос = “ Продукционная модель Ú Семантическая сеть Ú Фрейм ”

Пример 2.Если запрос пользователя содержит в себе понятие семантическая сеть, то он дополняется синонимичным понятием ассоциативная сеть, которое связано с требуемым понятием отношением Синоним.

Запрос = “… Семантическая сеть …”

Синоним (Семантическая сеть, Ассоциативная сеть)

Запрос = “… (Семантическая сеть Ú Ассоциативная сеть)…”

Пример 3.Отношение Ассоциация «дополняет» запрос пользователя такими понятиями, которые по той или иной причине, могут вызывать у пользователя ассоциации. Так, например, некоторые исследователи под понятием Система представления знаний имеют в виду Экспертную систему.

Запрос = “… Система …”

Ассоциация (Система, Экспертная система)

Запрос = “… Ú Экспертная система…”

Пример 4.Отношение Часть-целое также дополняет запрос, добавляя в него понятия. Например, если пользователь интересуется понятием присоединенная процедура, то с помощью этого отношения в строку запроса добавляется термин фрейм.

Запрос = “… Присоединенная процедура …”

Часть_целое (Присоединенная процедура,Фрейм)

Запрос = “… Присоединенная процедураÙФрейм ”

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

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

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

На основе представленных в онтологии отношений между описанными терминами осуществляется вывод на следующих этапах:

1)     построение поискового образа документа, релевантного запросу;

2)     формирование запроса для поисковой системы на основе построенного образа документа;

3)     проверка соответствия результатов работы поисковой системы образу релевантного документа.

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

1)     спецификацию языка запроса на естественном языке;

2)     построение онтологии;

3)     выбор средств анализа результатов поиска;

4)     создание интерфейса между онтологией и пользователем; этот интерфейс должен обеспечивать настройку онтологии на конкретного пользователя, построение и ввод запроса на ЕЯ, просмотр результатов запроса;

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

ЗАКЛЮЧЕНИЕ

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

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

Предполагается использовать данный подход для разработки эффективной системы поиска в сети Internet, легко настраиваемой на выбранную предметную/проблемную область.

ЛИТЕРАТУРА

Н.В. Майкевич.(1998) От информационного пространства к пространству знаний. Онтологии в Интернет. //Труды конференции КИИ`98, Пущино, Россия. - С.152-158.

V.F. Khoroshevsky. (1998) Knowledge v. s. data spaces: how an applied semiotics to work on web. //Proceedings of CAI’98, Pushchino, Russia, - С. 7-16.

Thomas R. Gruber. (1993) Towards Principles for the Design of Ontologies Used for Knowledge Sharing, International Workshop on Formal Ontology, March, Padova, Italy.

Mike Ushold, Michael Gruninger (1996) Ontologies: Principles, Methods and Applications, Knowledge Engineering Review, Volume 11,Number 2.

Mike Ushold, Martin King (1995) Towards a Methodology for Building Ontologies, Workshop on Basic Ontologica Issues in Knowledge Sharing.

Sean Luke, Jeff Helfin, James Hendler (1999), Applying Ontology to the Web: A Case Study, http://www.cs.umd.edu/projects/plus/SHOE/iwann99.pdf

Richard Fikes, Adam Farquhar (1997) Large-Scale Repositories of Highly Expressive Reusable Knowledge, http://www-ksl.stanford.edu/yearindex.html#1997.

Nicola Guarino (1999) OntoSeek: Content-Based Access to the Web, IEEE Intelligent Systems, May/June , pp. 70-80.

H. Takeda, M. Takaai, and T. Nishida (1998) Collaborative development and Use of Ontologies for Design, Proceedings of the Tenth International IFIP WG 5.2/5.3 Conference PROLAMAT 98, September 9-10-11,12,Trento, Italy.

Ю.А. Загорулько, И.Г. Попов (1997) Описание сложных предметных областей на основе интеграции средств представления знаний. // Труды международного семинара Диалог'97 по компьютерной лингвистике и ее приложениям, Москва, -С. 110-115.