Страница 122
• запросы к информации на Web-страницах и вывод ответов на базе онтологических знаний.
Онтологический инжиниринг — одно из основных направлений, в рамках которого предполагается, что сообщество (КА)2 должно создать свою собственную и достаточно общую систему онтологии на основе использования средств Ontolingua [Farquhar et al., 1996]. В настоящее время уже разработано воесемь онтологии, которые могут рассматриваться как разделы общей онтологии — онтология организации (organization ontology), проекта (project ontology), личности (person ontology), направления исследований (research-topic ontology), публикаций (publication ontology), событий (event ontology), исследовательских продуктов (research-product ontology) и исследовательских групп (research-group ontology). При этом разработка примеров онтологии осуществляется и управляется участниками проекта — так называемыми провайдер-агентами («provider agents»), а размещаются эти онтологии на их Web-страницах. Такие страницы аннотируются с использованием нового типа HTML-тегов (ONTO), информация в пределах которых обрабатывается специальной компонентой, работающей на основе онтологии, — системой Ontocrawler. В рамках этой компоненты, в зависимости от «богатства» используемой онтологии, может выводиться новая информация, релевантная запросам, но не присутствующая явно на Web-страницах в сети Интернет.
Сама система Ontocrawler разрабатывается в рамках отдельного проекта инициативы (КА)2 — проекта Ontobroker [Fensel et al, 1998], который, собственно, и интересен с точки зрения обсуждения средств представления и обработки онтологических знаний.
Средства спецификации онтологии в проекте Ontobroker
В Ontobroker имеются три основные подсистемы: интерфейс формулирования запросов (query interface), машина вывода ответов (inference engine) и собственно машина доступа к Интернет-ресурсам — «червяк» (Webcrawlef), используемый для накопления требуемых знаний из этой среды.
Для спецификации онтологии разработан специальный язык представления знаний. Подмножество этого языка служит и для формулировки запросов, а язык аннотирования — для «обогащения» Web-документов онтологической информацией. Все эти компоненты и обсуждаются ниже.
Формализм запросов
Формализм запросов ориентирован на фреймовое представление онтологии, в рамках которого, как и обычно, определены понятия экземпляров, классов, атрибутов и значений.
Схема O:C[A-»V] означает, что объект О является экземпляром класса С с атрибутом А, имеющим значение V. Важно, что в каждой позиции такой схемы могут использоваться не только константы, но и переменные или выражения. Для примера, запрос вида
FORALL R <R:Researcher
предполагает поиск всех объектов, являющихся экземплярами класса Researcher. Если предположить, что идентификатором объекта служит URL домашней страницы специалиста, в качестве результата по этому запросу будет выдан список соответствующих Интернет-ссылок.
Понятно, что это простейший запрос. Обычно же в запросе определяется поисковый образ объектов, обладающих определенными свойствами. Так, если необходимо найти всех специалистов по фамилии Иванов и при этом выдать в качестве результата их имена и электронные адреса, то приведенный выше запрос можно модифицировать следующим образом:
FORALL Obj, FN, ЕМ <-
Obj:Researcher[firstName->>FN;
lastNamе->>"Иванов"; email->>EM].
В качестве ответа при этом могут быть получены значения переменных:
Obj = http://www.anywhere.ru/~ivanov/
FN = Иван
ЕМ = mailtg:ivanov@anywhere. ru
Имеются в языке Ontobroker и средства вывода значений свойств. Так, некоторые из атрибутов объекта могут задавать отношения, свойства которых известны машине вывода. Для примера, в запросе вида
FORALL Obj.CP <-
Obj:Researcher[lastNarn8 ->>"Иванов"; cooperatesWith->>CP],
атрибут cooperatesWith является отношением, обладающим свойством симметричности. Это означает, что даже если у объекта, описывающего специалиста по фамилии Иванов, свойства cooperatesWith нет, Ontobroker выведет его, если в онтологии представлен объект, описывающий другого специалиста, который имеет такое свойство со значением «Иванов»,
В рассматриваемом языке представления онтологических знаний присутствуют и другие правила вывода значений атрибутов, эксплицитно не представленных в Web-документах. При этом понятно, что язык запросов Ontobroker может использоваться и для формирования репозиториев с информацией, удовлетворяющей заданным ограничениям:. И более того, с помощью запросов можно получать и метаинформадию: запрос вида
FORALL Att, T <Researcher[Att=>>T]
вернет в качестве результата имена всех атрибутов класса Researcher и связанных с ним классов.
В самой системе Ontobroker поддерживаются два типа интерфейсов при формировании запросов — текстовый (для экспертов) и графический (для пользователей). Первый из них предполагает, что запросы формулируются непосредственно во входном языке описания онтологии. Понятно, что при этом знание синтаксиса языка Ontobroker и знакомство с онтологией, для которой запрос формулируется, должны у эксперта присутствовать.
Проблема знания синтаксиса решается в данном случае, как, впрочем, и в большинстве других инструментальных средств нового поколения^ за счет диалогов, управляемых системой (system-driven dialogue). Пользователю выдается соответствующая панель, где могут быть определены (путем выбора из меню) компоненты запроса и связки между ними. Такой подход обеспечивает синтаксическую корректность и однозначность интерпретации запроса.
Обсуждение Базы знаний интеллектуальных систем
Комментарии, рецензии и отзывы