Следует отметить, что границы прагматического уровня понимания текста весьма условны и размыты (как и само понятие прагматического уровня). На этом уровне понимание текста Т означает обеспечение возможности получения агентом В из информации, содержащейся в данном тексте, ответов на множество различных вопросов типа: что, зачем, почему, как и т.п. На этом уровне часто возникает ситуация полупонимания, когда, например, агент В понимает, что ему сообщил агент А с помощью текста Т, но не понимает, зачем он это сделал и т.п.
Таким образом, понять текст Т, значит, совместить его в нашем сознании с одним из допустимых (возможных) вариантов корректного информационного заполнения слотов тех фреймов, которые отражают наши предварительные знания о свойствах сущностей, о которых идет речь в тексте Т. Проще говоря, понятно только лишь то, что на всех уровнях соответствует (не противоречит) ранее усвоенным знаниям всех типов. Именно поэтому более легко понимаются чисто информационные тексты, в которых, используя известные понятия, описываются некоторые ситуации или события, и более трудно понимаются образовательные и научные тексты, в которых вводятся новые понятия.
В заключение отметим, что приведенные выше рассуждения в большей степени объясняют феномен непонимания, а уже затем понимание определяется опосредованно как отсутствие непонимания. Такой подход справедлив ровно постольку, поскольку справедливо правило двойного отрицания. (Не все признают универсальную справедливость этого правила.)
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Minsky M. A framework for representing knowledge // MIT-AI Laboratory Memo 306, 1974.
2. Компьютерная лингвистика и интеллектуальные технологии / Труды международной конференции Диалог'2003. Протвино, 2003.- М.: Наука.
3. Ivanova E. Representation of formal logical knowledge by the means of natural language. Proceedings of the Ninth International Conference «Speech and Computer» SPECOM'04, Saint-Petesberg, 2004. P. 433-437.
4. Розенталь Д.Е., Голуб И.Б., Теленкова М.А. Современный русский язык.- 5-е изд.- М.: Айрис-пресс, 2003.- 448 с.
С.А. Котеленко
ФОРМАЛЬНОЕ ОПИСАНИЕ ОНТОЛОГИЙ НА ОСНОВЕ НЕЧЁТКОЙ ГИПЕРГРАФОВОЙ МОДЕЛИ ДАННЫХ
Введение
Онтологии играют существенную роль в многочисленных приложениях, задачей которых является интеллектуальная обработка данных в сети. Для этих приложений онтологии являются источником точного, формального описания знаний. Под описанием знаний в данном случае понимается задание понятий (термов, концептов) и отношений между ними. Вопрос формального описания онтологий тесно связан с механизмом вывода, предоставляющим возможность получить ответ на вопрос о связанности определённых понятий друг с другом. Проблема описания онтологий и разработки механизма вывода осложняется необходимостью работать с нечёткими понятиями и отношениями.
1. Понятие онтологии
Понятие онтологии достаточно размыто, поэтому имеет смысл дать некоторые пояснения и ввести определение онтологии применительно к информационным системам.
В философском смысле можно дать определение онтологии, как частной системе категорий, относящейся к некоторой области знаний. Такая система не должна зависеть от определённого языка. Данное определение ввёл ещё Аристотель, обращая внимание на то, что онтология должна оставаться неизменной, независимо от языка, на котором она описана или с помощью которого задана. С другой стороны, наиболее распространённое использование онтологий в теории ИИ демонстрирует, что онтология является продуктом инженерной разработки, которая строится на основе некоторого словаря, описывающего заданную реальность плюс множество явных допущений о значениях сущностей в словаре [2]. Множество допущений (предположений) обычно принимают форму в соответствии с логикой первого порядка, когда сущности задаются как унарные или бинарные предикаты, называемые соответственно концептами и отношениями. В самом простом случае онтология есть некая иерархия концептов, связанная определёнными отношениями; в более сложном случае необходимо рассматривать также аксиоматику онтологии для выражения определённых типов отношений между концептами и накладывающей ограничения на интерпретацию сущностей.
2. Нечёткая гиперграфовая модель данных
Для формального описания онтологии введём несколько понятий и обозначений.
Онтология, безусловно, является очень сложной структурой данных, для описания которой необходим специальный математический аппарат [2]. В данной статье предлагается использовать декларативный подход к обработке онтологических знаний на основе использования нечёткой гиперграфовой модели данных. Будем считать, что все рассматриваемые онтологии являются нечёткими (детерминированная онтология - частный случай нечёткой).
Пусть X = {х },/ е I = {1,2,3,...,п} - конечное множество и Е = {е}, 7 е J = {1,2,3,..., т} - семейство нечётких подмножеств в X. Тогда пара Н = (X, Е) называется нечётким ориентированным гиперграфом, если е ^ 0,] е J и . = X, при этом элементы х,X,...,X е X являются вершинами
jеJ
гиперграфа, а множество Е, состоящее из ,ёг,...,ёт - множество нечётких рёбер гиперграфа [3]. Степень принадлежности вершины х ребру е. называется степенью инцидентности вершины х и ребра и обозначается /ле (х).
Нечётким генеральным концептом будем называть группу сущностей, связанных между собой определённым типом отношений и образующих устойчивое понятие в заданной предметной области.
Нечёткий генеральный концепт объединяет группу сущностей, каждая из которых входит в генеральный концепт с некоторой степенью принадлежности.
Таким образом, нечёткий генеральный концепт можно рассматривать как ребро нечёткого гиперграфа; вершины, входящие в обобщённое ребро, образуют нечёткий генеральный концепт. Однако при задании онтологии важен порядок
элементов, характер отношений между сущностями и направление отношений. Поэтому в нечёткую гиперграфовую модель данных вводится нечёткий ориентированный гиперграф первого рода.
Нечётким ориентированным гиперграфом первого рода Н/ = (X, П) называется пара множеств, в которой X = {х1},г е I = {1,2,...,п} - множество вершин; П = {С},7 е J = {1,2,...,т} - множество нечётких ориентированных рёбер, причём
каждое ребро =<<л (х)/X >,<Л (X)/X >,...,<Л (X )/X >> есть расплывчатый кортеж в X [3]. При этом некоторая вершина х е X может встречаться в кортеже dj неоднократно, при этом л (X) может иметь различные значения в зависимости от места х в кортеже.
Каждое нечёткое ребро dj гиперграфа Н может быть представлено нечётким ориентированным графом & (С.) = (X,{/.), который имеет то же множество вершин, что и гиперграф Н . В свою очередь, гиперграф Н = (X, П) однозначно представляется нечётким вершинным ориентированным графом. Следовательно, любая нечёткая онтология может быть представлена в виде нечёткого вершинного ориентированного графа О ^X(Н) = (X,и) = ^(5(^) (рис. 1).
Рис. 1. Нечёткий вершинный ориентированный граф с выделенной областью генерализации (спецификации)
Назовём такой граф нечётким онтологическим графом О)(Н). Семантические отношения между сущностями внутри заданного нечёткого концепта могут иметь различный характер и направления; в работе [7] предложено задавать их в виде следующего множества:
Я = {ШТ, СИЯ, СБУ, ТМР, ЮС,...}.
То есть множество атомарных понятий A связано между собой множеством отношений R. Тогда множество правильно составленных термов языка описания онтологий Ь может быть определено следующим образом:
• если х є А , то х є Ь;
• если х є Ь, г є Я и у є Ь, г = 1,...,п , то х[г : уг '■ Уп] є Ь.
Основное отношение онтологии - это простое таксономическое отношение
включения; на этой основе можно обобщить понятие транзитивности на все отношения между правильно составленными термами.
Использование онтологического графа О(Н) позволяет ввести понятие ориентированного нечёткого маршрута М (х, у) на онтологии между какими-либо вершинами (понятиями) х, у є X . Таким образом, ориентированный нечёткий маршрут есть нечёткий маршрут по дугам графа от вершины х к вершине У [3]:
Используя понятия нечёткого маршрута и прочности маршрута, введём понятие функции близости между отдельными сущностями.
Функция близости 5/т(х, у) должна обладать следующими свойствами:
• sim: ^ х W ^ [0,1], где W- универсум концептов (онтология);
• 57т( х, у) = 1 только в том случае, когда х = у.
• sm(х,y) < sm(х,z), если т(х,у) < т(х, г), где т - прочность маршрута.
Если две сущности могут быть связаны двумя и более маршрутами, то в качестве функции близости принимается максимальная для возможных маршрутов.
В результате каждый отдельный терм может быть отображен в виде нечёткого множества вида
Для заданного маршрута смежные вершины могут быть связаны двумя рёбрами (на графе О~(Н )). Для этого случая вводим понятия генерализации и специ-
хИи (х1 , ха )хаМи (ха , X (ху , У) ^ X , X X є Х .
Т + = 1/Т + ят(Т,Т)/Т +... + ыт(Т,Гп)/Т .
фикации.
Т2
Тз
Для заданного маршрута М(х, у) для случая, рассмотренного на рис. 2, понятие множества s(M), g(M) специализаций и генерализаций соответственно:
s(M) = |{i|M,\R* ^М\ |
g(M) = |{,|M,.+1 ->\ ^м\ \
ЕслиM1, M2,...Mm - все возможные маршруты, которые соединяют термы x и y, то функция близости между ними с учётом понятий генерализации и спецификации будет следующей:
sim(x, у) = max{^s(pJ), rg (pj)},
j=1,...,m
где а и у - соответствующие веса нечёткого ориентированного графа O(H) •
3. Онтологический язык
Для работы с онтологической нечёткой гиперграфовой моделью (ОНГМД) данных необходимо разработать язык, который позволял бы не только формально задавать онтологию, но и описывать запросы к ней. В этом смысле можно проследить аналогию с языком SQL, который не только задаёт структуру реляционной базы данных, но организовывает соответствующие запросы. Если рассматривать ОНГМД как основу для построения, то и онтологический язык должен соответствующим образом отражать такие структуры данных.
Назовём онтологическим языком (ОЯ) L =< ent(L), rel(L),SL> гиперграф типов с типами сущностей в качестве вершин, с типами отношений в качестве гиперрёбер и вершинными функциями или функциями сигнатуры языка [1]. Типы сущностей могут быть или типами объектов (концептов), или типами данных. Каждый тип отношений в дальнейшем типизируется по сигнатуре. Внешняя форма (сериализация) для типа отношений р е rel(L) с сигнатурой SL (р) = а есть строка
описания типа "р : (ах )хеапу(8(р)) " •
Морфизм языка < e, r >: L ^ L' есть морфизм гиперграфа, состоящий из функции типа сущности (функции вершины):
n: node(d) ^ node(O') или e: T(L) ^ T(L') в нотации (ОЯ)
и функции ребра (функции типа отношения)
e: edge(O) ^ edge(O') или r : R! (L) ^ R! (L') в нотации (ОЯ),
где R - некоторое отношение между сущностями T языка L.
Подобные допущения позволяют сделать вывод, что онтологический язык -это язык декларативного типа, в котором предикаты формируют сущности и отношения. Рассмотрим следующий простой граф:
Facility - hasprototype - Facility
Слова «Facility» представляют типы сущностей, а отношения (типы отношений) «hasprototype» устанавливают связи между сущностями. Этот совершенно простой граф может быть записан в соответствующей логической нотации:
(3x)(3y)(Facility(x) л Facility(y) л hasprototype(х, у)) .
Таким образом, онтологический язык - это язык декларативного типа, который, с одной стороны, сочетает в себе возможность корректного отображения ги-
перграфовых структур, а, с другой стороны, даёт возможность разрабатывать механизм вывода на основе логических конструкций, в частности, на основе логики предикатов. В данной работе для этой цели предлагается использовать онтологический язык на основе XML.
Технология XML является основой для разработки многочисленных языков декларативного типа. Сама по себе модель данных XML является графовой моделью, отображающей данные иерархического типа. В данной работе в качестве базовой структуры использовался язык OXML, разработанный компанией Ontoprise [5].
Для использования языка OXML при работе с ОНГМД необходимо дополнить язык рядом элементов и атрибутов в соответствии с принципами, изложенными в [4]. Функционально онтологический язык может быть разбит на две части: язык описания онтологии и язык запросов.
Любое онтологическое описание должно начинаться с элемента <ontology>, который является корнем дерева XML документа. Пространство имён - важнейшее понятие XML, задаётся URI:
<ontology xmlns=http://kotelenko.port5.com/schemaFOML/core>.
Пространство имён (namespace) задаёт в определённой формальной форме все элементы онтологического языка - Fuzzy Ontology Markup Language (FOML). Элементы задаются и формально описываются в соответствии со спецификацией XML Schema. Именно поэтому в заголовке любого онтологического описания следует указывать пространство имён для XML Schema:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsi="http://www.w3.org/2001/XMLSchema".
Кроме того, во избежание проблем с совпадающими названиями сущностей, необходимо задать пространство имён и для каждого онтологического описания. Например:
xmlns:fuzzyont= "http://www.femp.tsure.ru/KEIIK/kotel.htm/o12.oxml".
4. Структура описательной части FOML
Общая структура языка в его описательной части внутри элемента <ontology> содержит набор элементов и их атрибутов. Формальная структура онтологического описания может быть представлена в следующем виде:
<?xml version=”1.0”, encoding=”UTF-8”?>
<ontology>
<concept id=”fuzzyont:university” abstract=”false>
<subconceptOf concept=”fuzzyont:education ” fm=”0.75”/>
<relation id=”fuzzyont:school”,mnge=”xsd:strmg”fw = ”0.4”/> <relation id=”fuzzyont:campus”fw=”0.8”/>
<term id=”fuzzyont:article”>
<subTermOf term = ”fuzzyont:publication ”/>
<relation id=”author minCard=”1 ”, maxCard=”n”/>
</term>
<axiom id=”fuzzyont:federalUniversity” enabled=”true”>
<text language=”prolog”>
reporting(X, Z): -state(Z),fmance (Z,X).
</text>
</concept>
</ontology>
Каждый рассматриваемый концепт в такой структуре представляет собой сложный тип данных. Атомарные или примитивные типы (например, строковый, численный, дата, время) напрямую определяются XMLSchema; кроме того, эта спецификация определяет правила образования новых типов из элементарных.
Отношения задаются элементом <relation>, который может быть использован на уровне элемента <ontology>, на уровне <concept> и на уровне <term>. Количество возможных отношений с другими сущностями в пределах концепта определяется специальными атрибутами minCard и maxCard. Базовые свойства того или иного отношения задаются специальным элементом <algebraicProperty property =”P”/>, где P может принимать значения из множества {symmetric, reflexive, transitive, asymmetric, irreflexive}, т.е. из множества свойств, задаваемых реляционной алгеброй. Например, рассмотренное выше отношение R1 - WRT может быть задано в следующем виде:
<relation id=”fuzzyont:smilarityWRT” domain=”fuzzyont:university”> <algebraicProperty property=”reflexive ”/>
<algebraicProperty property=”symmetric”/>
<algebraicProperty property=”transitive ”/>
</relation>
Концепция ОНГМД предполагает как нечёткий характер концептов в двояком смысле. С одной стороны, отдельные сущности входят в нечёткий концепт с некоторой степенью принадлежности, а с другой стороны, сами отношения между сущностями (термами), образующими данный концепт, носят нечёткий характер, что определяется весовым коэффициентом отношения. Более того, сами нечёткие генеральные концепты нечётко связаны друг с другом. Отношения устанавливаются весовыми коэффициентами, показывающими степень связанности между сущностями (концептами).
Ещё одной важнейшей особенностью языка FOML является возможность моделировать сложные отношения между концептами и экземплярами в онтологии. Для этого вводится специальный элемент <axiom>, который содержит подэ-лемент <text>. Этот подэлемент, в свою очередь, включает фрагмент текста на одном из языков, основанных на логических формулах. В данном исследовании по ряду причин, которые требуют отдельного самостоятельного пояснения, предлагается использовать язык Prolog.
Очень часто при задании онтологии требуется формальное задание предикатов, которые в данном случае можно рассматривать как n-арные ассоциации [5]. Для задания предикатов используется элемент <predicate>.
<predicate id: "fuzzyont:workrecords" arity=”3 ”>
<type term=”fuzzyont:name”/>
<type term=”fuzzyont:record”/>
<type term=”xsd:date”/>
</predicate>
Заключение
Разработка второй части ОЯ - языка запросов находится в исследовательской фазе. Предлагается использовать с этой целью язык Пролог, который позволяет применять формальный метод поиска цели на основе метода резолюции. Можно показать, что декларативная форма FOML может быть преобразована в набор ло-
гических программ - предикатных формул. В этом случае использование языка Пролог естественным образом реализует механизм вывода по нечёткой онтологии.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. RobertE. Kent. The Model Theory of Onto Logic. In: Proceedings of ISKO 6: Dynamism and Stability in Knowledge Organization. Toronto, 2000.
2. Nicola Guarino, Christopher Welty. Towards a methodology for ontology based model engineering.- LADSEB/CNR, Padova, Italy.
3. Малышев Н.Г., Берштейн Л.С., Боженюк А.В. Нечеткие модели для экспертных систем САПР.- М.: Энергоатомиздат, 1991.
4. Котеленко С.А. Использование модели нечёткого графа для описания нечётких данных в спецификации OWL // Известия ТРТУ. Тематический выпуск «Интеллектуальные САПР». Материалы Международной научно-технической конференции «Интеллектуальные САПР».- Таганрог: Изд-во ТРТУ, 2004.
5. Reference for users and developers of OXML - the XML - based Ontology Representation language for OntoEdit, Ontoprise GmbH, Karlsruhe, 2003.
6. Guarino N. Formal Ontology and Information Systems In: Proceedings of FOIS’98, Amsterdam, IOS Press, pp.3-15.
7. Troels Andreasen, Henrik Bulskov, Rasmus Knappe. On Ontology-based querying. Department of Computer Science, Roskilde University, 2003.
8. Blue M, Bush B., Puckett J. Applications of Fuzzy Logic to Graph Theory / Energy and Environmental Analysis Group Report, Los Alamos National Laboratory, 1997.
Э.М. Котов
МОДЕЛИ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ И ПРЕДСТАВЛЕНИЕ ТЕКСТА В ФОРМЕ СЕМАНТИЧЕСКОЙ СЕТИ
При рассмотрении вопроса классификации информационных систем можно выделить два класса, в зависимости от способа хранения и обработки информации.
1. Документальные системы. Их основное назначение - работа с информационными массивами, представленными в словесной форме. Одним из основных примеров здесь могут выступать информационно-поисковые системы.
2. Фактографические системы. В данном классе информация представляется в виде специальных структур, например, баз данных под управлением СУБД. К подобному классу можно отнести системы обработки данных, системы анализа и принятия решений. Обработка данных в фактографических системах сводится к вводу, хранению, сортировке данных и т.д.
Можно утверждать, что наибольшее распространение на сегодняшний день имеет представление информации в виде текстовых документов, а не структурированных данных.
Документальные базы данных выделяются в один тип, называемый «информационно-поисковые системы». Они занимаются решением главной задачи -обработки запросов, как правило, сформулированных на естественном языке, посредством выполнения процедуры поиска [1].
Можно выделить следующие четыре основные модели представления знаний:
1. Продукционная. Модель основана на наборе правил, и знания представляются в виде предложений типа:
если (A), то (B),