UANET: Портал знаний от лаборатории СЕТ (Киев, Украина)

Ув. читатели  SHCHERBAK.NET, представляю вашему вниманию один из интереснейших проектов по созданию Semantic Web-ориентированных приложений  в UANET. Этим проектом является система Freshknowledge, предназначенная для управления Веб-контентом на семантическом уровне.

Freshknowledge является разработкой лаборатории  CЕТ НТУУ «КПІ» и представляет администратору (владельцу) сайта всесторонние возможности по управлению структурой сайта.

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

К теме этого портала знаний и технологий, с помощью которых он создан, мы еще неоднократно вернемся. Следите за обновлениями ))

Кроме того, в рамках установленных партнерских отношений между лабораторией SET и  SHCHERBAK.NET будет создано ряд инициатив по популяризации Semantic Web среди украино- и русскоязычного Интернет-сообщества.

Области научных интересов лаборатории СЕТ: искусственный интеллект в образовании, Web, модели представления знаний, дистанционное образование, системы управления содержимым сайта, семантическое моделирование контента и тому подобное.

База знаний DMOZ – основа для приложений Semantic Web

Open Directory Project (ODP, Открытый Каталог (ODP)), также известный как  DMOZ (от одного из своих первых доменных имён directory.mozilla.org) — многоязычный свободный каталог ссылок на сайты всемирной паутины, принадлежащий AOL и поддерживаемый сообществом добровольных редакторов.

deepdmoz7a

Итак, чем может быть полезен DMOZ для нас – разработчиков приложений Semantic Web?

Ответ прост – Все содержимое DMOZ доступно в виде троек RDF, при чем отдельно можно получить доступ как к структуре каталога, так и к его содержимому.

Структура каталога DMOZ представляет собой мультиязычный набор иерархически организованных категорий. Причем русскоязычная часть хорошо проработана и может быть использована для разработки специализированных русскоязычных приложений. Отмечу, что каталог, как и его русскоязычная ветвь, активно развивается. Загрузить наиболее  «свежую» структуру и содержимое DMOZ (Open Directory RDF Dump) можно отсюда!

Кроме того, хотел обратить внимание читателей SHCHERBAK.NET на то, что DMOZ мультиязычный каталог, а дамп этого каталога в виде RDF представляет собой наглядный пример как можно связывать понятия на различных языках в виде единой онтологии.


SHCHERBAK.NET одобрен и зарегистрирован в DMOZ.

Развитие семантического веба выводит на первый план задачи, о которых многие специалисты по искусственному интеллекту, включая, собственно, и меня,  стали забывать. А это задачи, связанные с анализом ествественно-языковых текстов, при чем анализ зачастую проводится на основе онтологий или для построения онтологий. В этом плане мне показались интересными статьи Евгения Рабчевского по автоматическому формированию онтологий:

Автоматическое построение онтологий

Проектирование экспертных систем технической поддержки на основе онтологий

Автоматическое построение онтологий для тематических поисковых систем


Хочу выразить благодарность Евгению Рабчевскому от себя и читателей сайта SHCHERBAK.NET за интересные материалы! :grin: Кроме того,  я надеюсь, что идеи, выраженные в статьях, получат дальнейшее развитие…

Автоматическое построение онтологий

Рабчевский Евгений

Пермский Государственный Университет

Введение

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

Однако задачи пользователей требуют более систематизированного и настраиваемого механизма интеграции распределенных и разнородных знаний в целостную картину предметной области.

Необходимо заметить, что оригинальная спецификация WWW [1] разрабатывалась именно для решения задачи интеграции научных материалов.

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

Стандарты Semantic Web

В Интернет используется множество языков представления данных, основанных на XML. В рамках проекта Semantic Web, для представления данных, имеющих графовую структуру, консорциум W3 разработал язык RDF (Resource Definition Framework – Среда Описания Ресурса). RDF предоставляет средства для записи триплетов, троек данных – субъект – предикат – объект. Объект и субъект соответствуют узлам графа, а предикат или свойство – направленной дуге графа. Дуга направлена от субъекта к объекту. Каждый из элементов триплета называют RDF ресурсом и идентифицируют с помощью URI идентификаторов.

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

Для машинного представления различных предметных областей в Интернет, используются онтологии и словари. Онтология – спецификация концептуализации [3], или явное, формальное описание предметной области. Как и в объектно-ориентированном описании, онтология состоит из классов и их экземпляров. У классов и экземпляров выделяются свойства, на свойства могут накладываться логические ограничения.

Поисковой системой SWOOGLE [4] на сегодня проиндексировано свыше 10 тысяч онтологий и словарей, доступных в Веб. Онтологии используются научными сообществами – для описания терминологии [5], в электронной коммерции – для описания товаров и услуг [6], и в других приложениях Интернет. Из-за своей популярности онтологии стали использоваться и в качестве баз знаний локальных интеллектуальных систем.

Для описания онтологий, доступных через Веб, созданы языки RDFS [7] (RDF Schema – RDF Схема) и OWL [8] (Ontology Web Language – Язык Сетевых Онтологий). В качестве своих базовых элементов данные языки используют RDF ресурсы. RDFS используется для записи словарей, а OWL – онтологий. Сетевые онтологии предоставляют более выразительные возможности по сравнению с RDF словарями, например логические операции над классами и логические ограничения свойств.

Постановка задачи

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

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

Для решения данной задачи был сформирован корпус англоязычных текстов, относящихся к теме Semantic Web.
Ресурсы корпуса представляют собой спецификации технологий Semantic Web с сайта
W3 консорциума.

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

Построение семантической карты ресурса

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

1. формировался набор пар «текст – конструкция языка OWL»;

2. по набору выявленных пар «текст – OWL конструкция» выявлялись правила, позволяющие автоматизировать процесс отображения текста в соответствующую OWL конструкцию;

Семантическая карта строится в два этапа, на первом строится формальная семантическая OWL конструкция, на втором происходит привязка полученной конструкции к конкретной предметной области.

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

Рассмотрим несколько правил:

1. «Сложный предмет» или «noun1 + noun2» (два подряд идущих существительных),
например словосочетание «ontology editor».

Проанализируем данный пример. Можно предположить существует целый класс абстрактных редакторов – Editor. Этот класс характеризуется тем, что все его экземпляры обладают неким характерным для этого класса свойством. В данном случае, это то, что они все что-либо редактируют. Назовем это характерное свойство mainPropertyOfEditor. Доменом этого свойства является класс Editor. Определим диапазон этого свойства, как класс RangeOfMainPropertyOfEditor. Выделим класс OntologyEditor, который будет подклассом класса Editor. При этом значение свойства mainPropertyOfEditor для подкласса OntologyEditor имеет строго определенное значение – экземпляр класса RangeOfMainPropertyOfEditor, индивид Ontology. Данные утверждения можно представить следующим OWL кодом:

<owl:Class rdf:ID=»Editor»> <rdfs:comment rdf:datatype=»http://www.w3.org/2001/XMLSchema#string»>класс абстрактных редакторов</rdfs:comment>

</owl:Class>

<owl:Class rdf:ID=»RangeOfMainPropertyOfEditor»><rdfs:comment rdf:datatype=»http://www.w3.org/2001/XMLSchema#string»>диапазон характерного свойства реадактора (редактируемый объект)</rdfs:comment>

</owl:Class>

<owl:Class rdf:ID=»OntologyEditor»>

<rdfs:subClassOf>

<owl:Restriction>

<owl:onProperty>

<owl:ObjectProperty rdf:ID=»MainPropertyOfEditor»/>

</owl:onProperty>

<owl:hasValue>

<RangeOfMainPropertyOfEditor rdf:ID=»Ontology»/>

</owl:hasValue>

</owl:Restriction>

</rdfs:subClassOf>

<rdfs:comment rdf:datatype=»http://www.w3.org/2001/XMLSchema#string»

>класс редакторов онтологий</rdfs:comment>

<rdfs:subClassOf rdf:resource=»#Editor»/>

</owl:Class>

<owl:ObjectProperty rdf:about=»#MainPropertyOfEditor»>

<rdfs:domain rdf:resource=»#Editor»/>

<rdfs:range rdf:resource=»#RangeOfMainPropertyOfEditor»/>

<rdfs:comment rdf:datatype=»http://www.w3.org/2001/XMLSchema#string»

>характерное свойство редактора (редактирует)</rdfs:comment>

</owl:ObjectProperty>

2. «Предмет с определением» или «adjective + subject», например словосочетание «abstract syntax». Для записи соответствующего OWL кода необходимо провести рассуждения, аналогичные приведенным в предыдущем примере.

3. Простое предложение, subject1 + verb + preposition + subject2 (подлежащее, сказуемое, предлог, дополнение), например «Ontology’s incorporate information about

4. subject1 + are + subject2 + that + verb + preposition + subject3 (подлежащее, are/is, дополнение, that, сказуемое, предлог, дополнение), например предложение «Decision Engineering is an emerging discipline that focuses on developing tools».

Отдельно выделяются правила, которые сами не строят семантическую конструкцию, но определяют, каким образом (к каким словам) применять правила, непосредственно выявляющие семантические конструкции. Например, правило «Если сложный предмет состоит из трех и более простых, то нужно применять правило «noun1 + noun2» начиная с конца».

Рассмотрим правило из примера 2, в котором по аналогии с примером 1 были бы введены свойство mainPropertyOfAbstract и класс RangeOfMainPropertyOfAbstract. Данные конструкции введены чисто формально, используя некие законы языка, однако данное свойство и класс имеют определенную семантику. Так определение Abstract характеризует некую особенность предмета Syntax. В данном случае эту особенность можно назвать, например как «степень детализации».

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

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

Слово Характерное свойство
Abstract Степень детализации
Editor Редактирует

Предполагается представить данный источник знаний в виде RDF представления WordNet подобного ресурса [9] компьютерной лингвистики.

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

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

Онтология «Semantic Web»

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

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

- каждое понятие дополнялось экспертным определением;

- выявлялись триплеты, содержащие найденные понятия;

- для каждого понятия и триплета фиксировался ресурс-источник.

Для оценки программной реализации метода автоматического построения онтологии предполагается обработать исследуемый корпус полученным программным средством и сравнить результаты с онтологией, полученной ручным способом. Создан RDF словарь для хранения результатов ручной разработки онтологии. Словарь представляет собой модель для хранения понятий с их определениями, триплетов и оригинальных источников понятий и триплетов.

Семантическая разметка,  RDF/A, GRDDL

RDF графы и онтологии на их основе могут размещаться в отдельных Веб ресурсах, например файлах или RDF хранилищах, доступ к которым осуществляется через RDF сервера. Также  RDF графы могут встраиваться в другие XML документы, например в XHTML. Встраивание RDF данных в XHTML используется для спецификации семантики (семантической разметки) контента.

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

Рабочая группа развертывания Семантического Веба W3 консорциума разработала технологию RDF/A [10], которая позволяет встраивать RDF данные в XHTML. RDF/A является одним из множества микроформатов [11] или диалектов языков, расширений языка HTML, в котором определяется, каким образом использовать конструкции языка HTML, чтобы интерпретировать записанный таким образом HTML код, как RDF данные.

Существуют микроформаты для записи таких словарей, как vCard, DC, RDF Calendar, RSS, GeoInfo. Все указанные словари записываются в виде RDF графов, RDF/A является микроформатом для записи непосредственно RDF синтаксиса, и может быть использован для записи терминов любых RDF словарей, например тех же vCard, DC, RDF Calendar, RSS, GeoInfo.

Ниже следует пример использования терминов словаря набора данных DC (словарь DC описывает мета свойства электронных документов) в XHTML.

<head profile=»http://www.w3.org/2003/g/data-view»>

<link rel=»schema.DC» href=»http://purl.org/dc»/>

<meta name=»DC.Title» xml:lang=»en» lang=»en» content=»Использование терминов словаря DC в XHTML коде» />

</head>

Данный XHTML соответствует триплету субъектом которого является URI самого ресурса, предикатом – свойство Title, описанное в словаре DC по адресу http://purl.org/dc, объектом – строка «Использование терминов словаря DC в XHTML коде». Вставка такого RDF триплета в заголовок HTML страницы позволит соответствующим приложениям понять, что название документа – «Использование терминов словаря DC в XHTML коде». При этом это название может отличаться от того, которое представлено пользователю с помощью тега <title>. Таким образом, в XHTML можно вставлять любые RDF графы. Использование профиля profile= необходимо для возможности указания значения «transformation» у тега rel, что необходимо для указания ссылки на механизм GRDDL извлечения (см. следующий абзац).

Для извлечения RDF данных из различных микроформатов W3 консорциум разработал технологию GRDDL [12] (Gleaning Resource Descriptions from Dialects of Languages – Извлечение Описания Ресурса из Диалектов Языков). Для работы GRDDL-скреперов (программ, извлекающих RDF данные из XHTML) в XHTML коде необходимо указать ссылку на механизм извлечения:

<link rel=»transformation» href=/>

Механизм извлечения основан на технологии преобразования XML документов XSLT[18], в данном случае XHTML преобразуется в RDF.

Литература

1. Tim Berners-Lee, World Wide Web: Proposal for HyperText Project. 1990. //http://www.w3.org/Proposal.html

2. Сообщество Semantic Web // http://www.w3.org/2001/sw

3.Gruber, T.R. (1993) A translation approach to portable ontology specifications. Knowledge Acquisition. Vol. 5.

4. Swoogle – Semantic Web Search Engine. // http://swoogle.umbc.edu/

5.Е.М. Бениаминов  «Алгебраические методы в теории баз данных и представлении знаний». М.: Научный мир, 2003.

6.Реестр товаров и услуг ООН. // http://www.unspsc.org/.

7.RDF Schema 1.0, Язык описания RDF словарей. Рекомендация W3C 10 Февраля 2004. // http://www.w3.org/TR/rdf-schema/

8. Язык OWL. // http://www.w3.org/2004/OWL/

9. RDF/OWL представление WordNet, Рабочий документ W3C 19 Июня 2006 http://www.w3.org/TR/wordnet-rdf/

10. Встраивание RDF в XHTML RDFa. Рабочий документ W3C 12 марта 2007. //http://www.w3.org/TR/xhtml-rdfa-primer

11. Сообщество пользователей микроформатов. http://microformats.org/

12. Рабочая группа GRDDL http://www.w3.org/2001/sw/grddl-wg/

Инициатива “Локализация редактора онтологий Protege [ua, ru]”

В рамках этой инициативы планируется перевести интерфейс редактора онтологий Protege на украинский и русский языки.

Первым шагом стал перевод базового интерфейса Protege и подготовка неофициального файла локализации на русском языке.

Подробнее

Ув. читатели SHCHERBAK.NET, вашему вниманию предлагаются материалы статьи «Semantic Web как новая модель информационного пространства Интернет» авторов  Ф.И. Андон, И.Ю. Гришановой и В.А. Резниченко.

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

Полную версию статьи читаем здесь !

Щербак Сергей: Статья мне очень понравилась и я ее особенно рекомендую тем, кто хочет максимально быстро погрузится в  мир семантического веба (обязательна для прочтения).

От имени читателей SHCHERBAK.NET хочу выразить благодарность  Ирине Гришановой за предоставление материалов интересной статьи!

Зарождение сообщества веба данных…

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

Служебная информация в RDF

Блуждая по Хабрахабру, наткнулся на пост, в котором авторы рассуждали на тему, как добавить информацию об авторе триплета в RDF. Идея проста – RDF представляет собой совокупность триплетов, но эти триплеты могут быть добавлены различными авторами. Вопрос: Как добавить информацию об авторе триплета. Как авторы правильно заметили, если информацию об авторе вынести в отдельное хранилище или таблицу, то проблем нет. Но что, делать, если не хочется привлекать сторонние средства? Одним из вариантов было предложено ввести свойство «hasAuthor» в корень объектной иерархии.

Но этот подход имеет свои недостатки. Представьте себе, некоторый объект, например, ягода вишня. Что у нас получается -«вишня» как экземляр класса Ягода, у которой автор Вася Пупкин – как то глупо звучит. И вообщем-то и не в Васе дело, а в том, что автор ягоды вишни Вася. Если мое рассуждение верно, тогда вынос hasAuthor в корень объектной иерархии ничего не дает, так как всегда будут существовать объекты для которых отношение hasAuthor не будет иметь смысла.

Хотя, например, в редакторе онтологий Protege есть наборы служебных классов, выполняющие подобные функции, которые не отображаются в основном дереве представления RDF

А решение задачи, как оказалось в результате моих рассуждений на Хабрахабре, очень простое.

В RDF нет языковых конструкций для установления авторства триплетов, но такие средства есть в Dublin Core.

Таким образом, рассматривая Dublin Core, как расширение RDF, мы можем легко ввести понятие авторства информации (триплета).

Вы можете сказать, а чем же отличается введение понятия авторства через Dublin Core от введения нового отношения hasAuthor?

А все просто – когда мы вводим новое отношение hasAuthor мы имеем ягоду вишню автора Васи, а при использовании дублинского ядра мы такого не имеем, как минимум потому, что у описания Dublin Core другое пространство имен и как результат описание некоторого объекта через Dublin core идет как описание объекта в некоторой другой семантической плоскости. А самое интересное – при проведении логического вывода мы не нарушим ни одного канона онтологий – ягоды будут успешно собраны и проданы потенциальному клиенту, а агенты будут также иметь возможность взглянуть на автора информации.

А может я не прав?

Как создать приложение Semantic Web?

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

Cначала давайте определимся, что будем понимать под приложением Semantic Web.

Итак, если приложение построено с использованием таких средств Semantic Web, как XML,  RDF, OWL, SPARQL, то такое приложение будем называть приложением Semantic Web первого типа.

В случае, если приложение реализует идеи Semantic Web, как концепции,  тогда такое приложение назовем приложением Semantic Web второго типа.
Read the rest of this entry »

Owlgres – масштабируемый OWL2 DL-Lite Reasoner

Для обработки онтологий в стандарте OWL 2 можно использовать reasoner Owlgres.  Кстати, reasoner – это подсистема логического вывода; OWL 2 – следующая версия Web Ontology Language.

Чем Owlgres хорош? Во-первых, это опенсорсный продукт (а учитывая то, что он распространяется и по коммерческой лицензии,  есть вероятность, что проект быстро не погибнет). Во-вторых, в Owlgres поддерживается высокоскоростной логический вывод на основе дескриптивной логики. Высокая скорость поддерживается за счет реализации Owlgres поверх реляционной СУБД PostgreSQL.

Кстати, идея реализации онтологий на OWL (или других языках) поверх реляционных баз данных не нова. Вы уже слышали, на страницах моего сайта о Oracle Spatial… Кроме того, это оказывается и не так уже и сложно, когда есть математическая модель онтологий и навыки проектирования реляционных баз данных. Сложность скорее в той рутинной работе, которую нужно сделать, чтобы учесть все ньюансы OWL и LBASE.

В качестве языка запросов к онтологии OWL в Owlgres используется SPARQL-DL.

И, напоследок, уже доступна альфа-версия Owlgres, которую можно использовать как Sparql-точку доступа для создания, например, «умных» сайтов или web-сервисов.

PS. Помниться был еще один подобный проект по хранению онтологий в  Postgress (правда академический), но о нем уже года полтора ничего не слышно, а жаль – можно было бы сравнить, например, производительность.  И лицензия для использования была там получше ))

Если у вас есть информация о подобных проектах, пишите в коментариях ))

Что же такое онтология?

Потратив некоторое время на поиски материалов в интернете, я получил набор определений понятия «онтология».

Так, что же говорит нам интернет об онтологиях?

Read the rest of this entry »

Web-онтологии и задачи дистанционного обучения

В основе web-онтологии лежат свойства, классы, объекты и ограничения, реализующие представление об объектах, как о множестве сущностей, характеризуемых некоторым набором свойств. Эти сущности состоят между собой в определенных отношениях и объединяются по определенным признакам (свойствам и ограничениям) в группы (классы). В результате полного описания объектов и их свойств любая предметная область может быть представлена как сложная иерархическая база знаний, над которой можно будет осуществлять «интеллектуальные» операции, такие как семантический поиск и определения целостности и достоверности данных.

Читать далее

Применение web-онтологий в задачах дистанционного обучения

Е.А. Жыжырий, С.С. Щербак

В статье рассмотрены проблемы дистанционного образования связанные с организацией эффективного распределенного доступа к учебным ресурсам в Интранет/Интернет – средах и предложено решение на основе онтологического подхода и технологий Semantic Web.

1. Введение

Увеличение объема профессиональных знаний и высокая динамика развития информационных технологий порождает большое количество сетевых образовательных средств и продуктов. в последнее время наибольший интерес представляет Интернет-обучение. Многие учебные заведения занимаются разработкой сетевых образовательных средств, в том числе, дистанционных курсов, ориентированных на использование в Интернет. Основным препятствием в процессе создания интернет-ориентированных дистанционных курсов является недостаточная стандартизация сетевых учебных средств, технологических образовательных систем, отсутствие методик адаптации к международным стандартам в сфере технологий обучающих информационных систем [1].

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

2. Интероперабельные образовательные сетевые системы

Одним из главных требований к образовательным сетевым системам является обеспечение высокого уровня интероперабельности (interoperable), то есть возможности взаимодействия с другими различными системами, что крайне важно при создании распределенных учебных сред в Intranet/Internet сетях. Большинство из них реализует это требование за счет открытости интерфейсов доступа к своим сервисам и/или путем использования единого формата для обмена данными, а именно XML и связанной с ним объектной модели представления документов DOM (Document Object Model), осуществляя, если необходимо, XSL-преобразования. Такой подход позволяет решить задачу синтаксической интероперабельности. К сожаленью, для организации взаимодействия между различными образовательными системами в Интранет/Интернет сетях в большинстве случаев недостаточно обеспечения только синтаксической интероперабельности. Это обусловлено прежде всего, тем что одну и ту же информацию можно синтаксически по-разному представить, и, как следствие может возникнуть естественный барьер между системами. На сегодняшний день практически не существует образовательных систем решающих эту задачу за счет использования единого представления данных предметной области, а именно, используя единый словарь (таксономию) с описаниями используемых данных (онтологию). Именно проблема отсутствия четких семантических определений мешает объединению образовательных систем различных производителей. После составления такого словаря для представления данных предметной области можно с легкостью использовать язык web-онтологий OWL (Ontology Web Language), который является одним из самых последних разработок консорциума W3C в направлении Semantic Web для организации высокого уровня синтаксической и семантической способности приложений к взаимодействию.

3. Web-онтологии в учебном процессе

В основе web-онтологий лежат свойства, классы, объекты и ограничения, реализующие представление об объектах, как о множестве сущностей, характеризуемых некоторым набором свойств. Эти сущности состоят между собой в определенных отношениях и объединяются по определенным признакам (свойствам и ограничениям) в группы (классы). В результате полного описания объектов и их свойств предметная область будет представлена как сложная иерархическая база знаний, над которой можно будет осуществлять «интеллектуальные» операции, такие как семантический поиск и определения целостности и достоверности данных.

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

4. Web – онтология “Учебная дисциплина” – спецификация компонентов учебных дисциплин и материалов

В основу web–онтологии “Учебная дисциплина” были положены основные принципы, используемые для структуризации лекций, практических занятий и т.п. в “обычном” учебном процессе. В соответствии с этими принципами была сформирована структура и выделены основные компоненты учебных курсов (рис.1).

Согласно принципам Semantic Web, процесс создания электронных документов разбивается на две части: 1. Создание web – онтологии документа, содержащей некоторые термины, понятийные структуры и т.п.

2. Визуализация содержимого онтологии, т.е. получение содержимого онтологии в некотором виде и формате.

Таким образом, в web-онтологии определяется смысл используемых понятий, характерных для конкретной дисциплины, т.е. специфицируется объекты предметной области, а с помощью языков трансформаций и форматирования – XSLT и XSL-Fo получается визуальное представление содержимого онтологии в необходимом формате, например HTML, DOC и т.п.

Язык трансформаций XSLT позволяет выполнять трансформации структурированных документов, написанных на XML-подобных языках, например, OWL. Результатом трансформаций является некоторый набор данных, форматирование которого можно осуществить с помощью XSLT-Fo.

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

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

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

В ходе работы над задачею, были выделены основные объекты, представленные на рис. 2. Объекты, представленные на рис. 2 являются базовыми компонентами учебной дисциплины, которые составляют основу нашей онтологии. Фрагмент онтологии учебной дисциплины на языке OWL представлен на рис. 3.

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

В контексте разработки онтологии мы рассматривали учебные материалы как некоторое упорядоченное множество экземпляров объектов предметной области, отобранных по некоторому критерию, визуализация средствами XSLT которых давала возможность получать разнообразные представления информации в различных форматах, например: гипертекстовая страница или набор таких страниц (HTML); документ XML; документ формата PDF.

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

Выводы

В данной статье была разработана web-онтология ”Учебная дисциплина” и предложена технология разработки web – ориентированных учебных ресурсов для поддержки дистанционного образовательного процесса.

Литература
1.http://www.webuniver.ru
2.RDF Premier http://www.w3.org/TR/rdf-primer/
3.Спецификация языка XSLT http://www.w3.org/TR/xslt
4.Проект Semantic Web http://www.w3c.org/sw
5.Спецификация языка RDFS http://www.w3c.org/rdfs
6.Кэй М. XSLT. Справочник программиста. – Пер. с англ. – СПб.: Символ-Плюс, 2002. – 1016 с.: ил.
7.Shelley Powers. Practical RDF.- O’Reilly, 2003.- 350 c.

Рисунки


Структура и основные компоненты учебных курсов

Рис.1. Структура и основные компоненты учебных курсов


Концептуальная схема онтологии Учебная дисциплина

Рис.2. Концептуальная схема онтологии «Учебная дисциплина»

Фрагмент онтологии Учебная дисциплина в среде Protege2000

Рис.3. Фрагмент онтологии «Учебная дисциплина в среде Protege»

Интеллектуализация обработки информации на основе технологий Semantic Web

С.С. Щербак

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

1. Введение

С каждым днем количество пользователей сети Интернет увеличивается, существуют миллионы серверов, предоставляющих различного рода электронные документы. Эффективность компьютерного анализа электронных документов оставляет желать лучшего. Становиться все более очевидным отсутствие эффективных методов извлечения и формализации знаний с электронных документов, для дальнейшего, с учетом смысла, анализа. При чем такая ситуация наблюдается как при анализе текстовых – неструктурированных или слабоструктурированных, так и в табличных – структурированных с помощью таблиц электронных документах. Не стоит также опускать немаловажный фактор большой гетерогенности источников электронных документов. Над решением этих проблем работают множество исследовательских коллективов. Текущее состояние интеллектуальной обработки электронных документов заключается в создании семантически интероперабельной (способной к взаимодействию) среды для “интеллектуальных” программ. Эта среда получила название – Semantic Web

2. Web, основанный на понимании информации

На сегодняшний день информация для людей и компьютеров готовиться отдельно. Для людей в виде текста, картинок, и звуков, для машин в виде специальных кодов. Semantic Web предусматривает объединение этих разных видов информации в единую структуру, где каждому элементу “человеческой” информации будет соответствовать машинный код в виде специального смыслового тэга (метаданные). Все тэги должны составлять единую иерархическую структуру RDF, на основе которой и будет работать Semantic Web. Метаданные будут в обязательном порядке включать сведения о том, как, где и кем была создана данная информация и как она структурирована. Таким образом, унифицированное представление информации в Semantic Web плюс набор механизмов “понимающих” смысловые теги, заложенных в эту информацию обеспечат компьютерную обработку информации с учетом ее семантики.

Росту популярности и широкому внедрению технологий Semantic Web способствует стандартизация консорциумом W3C синтаксической и семантической разметки электронных документов, особенно технологий XML, RDF/RDFS и OWL, поддерживающих синтаксическую и семантическую совместимость.

Кроме того, среда Semantic Web обеспечит классификацию информации, что сделает совместную работу людей и компьютеров на порядок более эффективной.

В основе Semantic Web лежат следующие концепции:

1. Расширяемый язык разметки XML.
2. RDF – формат описания ресурсов.
3. Онтологии, определяющие термины и отношения между ними.

3. Расширяемый язык разметки XML

За последние несколько лет широкое распространение получила технология XML(eXtended Markup Language). К достоинствам которой можно отнести:

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

2. Развитые средства синтаксического анализа унифицированного представлений электронных документов.

3. Кроссплатформенность и совместимость с гипертекстовой средой Интернет. 4. Возможность разметки документов произвольной структуры.

Правильно составленные XML – документы содержат сбалансированное дерево вложенных открывающих и закрывающих тегов, каждый из которых может включать в себя несколько пар “атрибут-значение”. Поскольку фиксированного словаря тегов, равно как и набора их допустимых комбинаций не существует, теги могут определятся независимо от приложения. В XML это делается с помощью определяемых пользователем словарей тегов в виде схем XML или DTD(определения типа документа), накладывающих ограничения на используемые теги и указывающих, каким образом должна быть организована их вложенность внутри документа. Схемы XML или DTD задают грамматику, которая указывает допустимые комбинации и вложения имен тегов, имен атрибутов и т.д.

Как технология Semantic Web XML обеспечивает общую синтаксическую спецификацию для представления информации. Кроме того, наличие средств для синтаксического разбора и обработки информации, выраженной в XML синтаксисе, интегрированность в средства коммуникации Интернет, позволяет обеспечить естественную среду для развития и практического применения, рассматриваемых ниже, онтологий, выраженных в XML-синтаксисе, для обработки и обмена онтологиями в среде WWW.

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

4. Формализация и обработка знаний на основе онтологического подхода

В рамках Semantic Web Интернет рассматривается как распределенная база знаний. Для работы с распределенными знаниями в Интернет, нужны специальные методы представления и обработки, распределенных по всемирной паутине WWW знаний. Задача заключается, прежде всего, в том, чтобы адаптировать методы и средства, разработанные в искусственном интеллекте для знание – ориентированных систем, в новую проблемную область. В рамках такого подхода сегодня внимание различных исследователей привлекают онтологии, как средство построения распределенных и неоднородных систем баз знаний на основе Интернет. Вопросам, связанным с формализацией знаний, компьютерному анализу знаний посвящено множество работ [1-3]. Достоинствами онтологий являются их потенциальные свойства для решения таких задач, как формализация, интеграция, обмен знаниями и их повторное использование. Это заключение основывается на предположении о том, что если общая схема представления и использования знаний, – то есть онтология, – явно определена для работающих с ней “интеллектуальных” приложений как общий ресурс, то этот ресурс, возможно, разделять между “интеллектуальными” приложениями и многократно его использовать [1].

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

Формально записанные знания в онтологии составляют семантическую основу – базу знаний, для компьютерного анализа информации, кроме того, онтологии предоставляют возможность семантического взаимодействия между “интеллектуальными” приложениями независимо от их индивидуальных особенностей, структуры информации и областей применения.

В рамках Semantic Web получили широкое распространение языки описания знаний в онтологиях, основанные на XML – RDF, RDFS, OWL.

Формат описания ресурсов представляет собой возможность выражения метаданных о ресурсах в терминах “объект-атрибут-значение”. Последовательно выраженные RDF – графы цепочек описаний метаданных позволяют выразить в “Машино – понимаемом” формате семантические описания ресурсов. Словарь терминов [понятий], используемых в семантических описаниях RDF задается с помощью схемы RDF – RDFS. Усилиями сообщества Web разработчиков и консорциума W3C была разработана более продвинутая версия RDFS – язык Web онтологий(OWL), в которую добавлена возможность более выразительного описания классов и отношений между ними.

Основанный на языке LBASE, в качестве ядра которого используется хорошо понимаемая логика первого порядка, OWL представляет собой одно из наиболее развитых средств семантического описания ресурсов. Существует три разновидности OWL – OWL Lite, OWL DL, OWL Full.

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

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

OWL Full предназначен для пользователей, которые нуждаются в максимальной выразительности и синтаксической свободе RDF без вычислительных гарантий.

Для организации программной обработки семантических описаний используется декларативный язык запросов RDF Query, наиболее полной реализацией которого является программный обработчик Jena от Hewlett-Packard. Jena содержит реализации наиболее общих методов для работы с моделями онтологий, таких как навигация и обработка моделей онтологий в виде RDF- троек, наборов ресурсов со свойствами и т.д. Следует отметить также то, что Jena обеспечивает возможности построения модели данных онтологии, нахождения различий между моделями, интеграции онтологий и т.п.

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

5. Модель интеллектуальной системы обработки информации, построенной на основе технологий Semantic Web.

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

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

Таким образом, анализ электронного документа сводиться к следующим, последовательно выполняемым шагам, как изображено на Рис.1.

Результатом анализа является семантически размеченный документ, т.е. документ в котором выделены семантические объекты, идентифицированы основные взаимосвязи. В качестве языка семантической разметки может выступать может выступать один из языков, применяемых в Semantic Web для описания метаинформации об объектах, например, формат описания ресурсов RDF/RDFS или OWL. Наиболее целесообразным представляется генерация семантической разметки в формате, совместимом с языком описания знаний онтологии предметной области, что создаст естественную среду для интеграции полученных семантических описаний в онтологию предметной области.

Моделирование процесса анализа документов на основе технологий Semantic Web позволил построить модель программной системы обработки информации электронных документов, изображенную на рис.2.

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

Для управления проектом онтологии представляется целесообразным применение программного комплекса Protege-2000[4], представляющего собой исключительно мощное средство для создания и поддержки онтологий, использующее OKBC – совместимый интерфейс управления знаниями[5], что позволяет Prot?g?-2000 использовать единый интерфейс для работы с различными языками семантической разметки. Кроме того, благодаря возможности расширения функциональности программного комплекса Protege-2000 за счет добавления соответствующих плагинов – встраиваемых функциональных модулей, можно эффективно управлять содержимым онтологии, так использование встраиваемого плагина, построенного на основе пакета Jena от Hewlett Packard позволяет Protege-2000 манипулировать различными онтологиями с целью интеграции, например, с проектом онтологии верхнего уровня, а также выполнять различные задачи по трансформации онтологии с одного языка описания знаний в другой, генерации различных представлений и т.д.

Выводы

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

Литература

1. Neches R., Fikes R., Finin T., Gruber T., Patil R., Senator T., Swartout R. Enabling Technology for Knowledge Sharing // AI Magazine.- Vol. 12.- № 3, Fall 1999.
2. Berners-Lee T. Weaving the Web.- Harper, San Francisco, 1999.
3. Проект Semantic Web http://www.w3c.org/sw
4. Проект Prot?g? http://prot?g?.stanford.edu
5. Open Knowledge Base Connectivity (OKBC) http://www.ai.sri.com/~okbc/
6. Shelley Powers. Practical RDF.- O’Reilly, 2003.- 350 c.
7. RDF/XML Syntax Specification http://www.w3.org/TR/rdf-syntax-grammar
8. RDF Premier http://www.w3.org/TR/rdf-primer/
9. Спецификация языка RDFS http://www.w3c.org/rdfs

Рисунки


Анализ документа на  основе онтологии предметной области

Рис 1. Анализ документа на основе онтологии предметной области


Модель  интеллектуальной системы обработки информации

Рис. 2. Модель интеллектуальной системы обработки информации

Филатов В.А., Щербак С.С., Хайрова А.А

Введение

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

Современное состояние дел в отдельных областях компьютерных наук диктует необходимость привлечения методов инженерии знаний для решения широкого класса практических задач. Ярким примером тому является инициатива Semantic Web, основная цель которой – наделить огромные массивы данных, опубликованных в сети Internet большей осмысленностью, повысить удобство работы с этой информацией. Одним из главных достижений проекта Semantic Web стала разработка стандарта описания онтологий – OWL (Ontology Web Language), благодаря чему множество инженеров по знаниям, программистов и экспертов получили возможность использовать общие правила представления, хранения и обработки онтологий.

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

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

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

В начало

Актуальность и цель работы

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

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

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

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

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

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

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

В начало

Семантическое описание данных

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

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

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

Ресурсом называют все, что описывается средствами RDF. Это может быть обыкновенная Web-страница или какая-то ее часть, например, отдельный элемент HTML или XML разметки, являющийся частью описываемого документа. Также ресурсом может быть целая коллекция страниц, например, отдельно взятый Web-сайт. И, наконец, в качестве ресурса может выступать нечто, не являющееся доступным непосредственно через Интернет, например, произвольный предмет из мира вещей. Одним словом, все, чему можно приписать некоторый URI (универсальный идентификатор) или URI с добавлением внутреннего имени объекта (имени якоря в HTML) может стать ресурсом и быть описано при помощи RDF.

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

Согласно спецификации, значение свойства может иметь один из двух типов. Первый – это ресурс, задаваемый некоторым URI. Второй тип – литерал – есть некоторое текстовое значение характеристики. Впрочем, литерал может выражать собой значение любого примитивного типа данных, присутствующего в XML. Его тест также может содержать в себе некую разметку, например, XML, но отличительной особенностью такой разметки является то, что она не обрабатывается RDF-процессором и воспринимается как обычная строка.

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

В начало

Описание технологий для разработки и сопровождения онтологий

Статус рекомендации W3C и наличие готовых интероперабельных программных решений делают технологии Semantic Web более привлекательными, чем другие технологические решения инженерии знаний.Ключевым моментом данного подхода является то, что кроме ресурсов в нашей базе данных хранятся так же метаданные для описания объектов хранилища и управления ими, метаданные описаны с помощь языка RDFS (рис. 1).

Модель хранения метаданных

Рисунок 1 – Модель хранения метаданных

Данный подход основан на технологии Oracle Spatial 10g. Oracle Spatial – это технология СУБД Oracle Database 10g, включающая дополнительные возможности по обработке пространственных данных для поддержки пространственных сервисов, различного рода ГИС-приложений, предназначенных для обработки или предоставления информации о местонахождении объектов и других информационных систем.

СУБД Oracle 10g включает поддержку RDF/RDFS, давая возможность разработчикам приложений использовать преимущества платформы семантической организации данных. Прикладные разработчики могут дополнять значение к данным и метаданным, определяя новые наборы термов и отношений между ними. Эти наборы термов (”онтологии”) более приспособлены для осуществления запросов и анализа, основанного на семантическом подходе, чем обычные наборы данных. Онтологические наборы данных, часто содержащие миллионы элементов данных и отношений между ними, которые могут быть сгруппированы в триплеты, используя новую RDF модель данных. Oracle допускает расширение биллионам триплетов для удовлетворения требований большинства приложений. Какие же собственно принципы хранения RDF в Oracle Spatial 10g?

  • RDF данные хранятся как направленный, логический граф;

  • Субъекты и объекты отображаются как узлы, а предикаты как связи, у которых субъект является начальным узлом, а объект конечным;

  • Связи представляют из себя полный RDF триплет.

  • Oracle Spatial RDF Модель данных

  • RDF Модель данных поддерживает три типа объектов базы данных:

  • Модель (RDF граф, состоящий из набора триплетов);

  • База правил (набор правил);

  • Индекс правила (направленный RDF граф).

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

  • Основными преимуществами использования Oracle Spatial 10g:

  • Интегрирование данных из разных источников без применения программирования;

  • Поддержка децентрализованного управления данными;

  • Поддержка всех RDF типов данных;

  • SQL поиск и восстановление RDF моделей;

  • Осуществление запросов к RDF моделям, с использованием схемы графа;

  • Сочетание запросов RDF с другими SQL операторами;

  • Логический вывод, основанный на RDFS (RDF схемы) правилах;

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

В начало

Разработка элементов программного обеспечения системы

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

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

При разработке инструментальной среды разработчика онтологий мы постарались нивелировать минусы аналогов и перенять их достоинства. Любой объект онтологии имеет графическое представление (не только классы и индивиды, но и свойства, связи и др.). Система является независимым приложением, которое способно выступать в качестве сервера онтологий. В настоящее время редактор полностью поддерживает конструкции языка описания онтологий RDF, ведется работа по расширению ее возможностей до языка OWL. На рис. 2 приведена архитектура приложения.

Архитектура разработанной системы

Рисунок 2 – Архитектура разработанной системы

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

Заметим, что каждый экземпляр в мире онтологий является членом класса THING, т.о. каждый определенный нами класс автоматически является подклассом Thing.

Работа пользователя в системе начинается с создания новой модели данных. В данной модели пользователь может создавать свою собственную онтологию предметной области и в дальнейшем редактировать ее не затрагивая другие модели. В тоже время он имеет возможность в любой момент изменить текущую модель данных и приступить к сопровождению другой онтологии или вообще удалить модель из базы (рис. 3.1).

Для создания онтологии после создания модели пользователь переходит на следующую вкладку «Классы». В левой части страницы расположена иерархия классов в виде дерева реализованного посредством технологии ajax.

При выборе любого класса в правой части окна отображаются свойства, принадлежащие данному классу, а так же экземпляры относящиеся к нему (рис. 3). Здесь имеется возможность добавления и удаления класса. Так же на этой странице пользователь может привязывать свойства к выбранному классу и добавлять или удалять экземпляры класса. Все изменения заносятся в базу в качестве RDF – триплетов.

Представление классов, их экземпляров и свойств

Рисунок 3 – Представление классов, их экземпляров и свойств

На закладке «Свойства» отображается дерево свойств, опять же таки реализация основана на технологии ajax. В данном дереве отображены родительские отношения свойств друг другу, т.е. иерархия свойств. При выборе любого свойства отображается дерево экземпляров, показывающее их отношения между собой по данному свойству (рис. 4).

Окно отображения иерархии свойств и отношения экземпляров по свойству

Рисунок 4 – Окно отображения иерархии свойств и отношения экземпляров по свойству

На данной странице имеется возможность добавления нового свойства, удаления свойства и его редактирование. В редактировании свойства пользователь может изменить тип свойства (float, string, int, class), классы к которым данное свойство может быть привязано, а также родителей свойства (рис. 5).

Окно редактирования свойства

Рисунок 5 – Окно редактирования свойства

Реализована возможность пользователя самостоятельно разрабатывать запросы к базе данных. Здесь мы можем совмещать обычные sql запросы с sparql запросами. Рассмотрим следующий пример: узнать все базы данных относящиеся к классу пространственным базам данных и получить дату создания базы из другой таблицы. Данный запрос будет выглядеть следующим образом:

SELECT database_inf.createdate FROM database_inf, TABLE(SDO_RDF_MATCH(

‘(?m rdf:type :Spatial_database) (?m :nameOfDatabase ?name)’,

SDO_RDF_Models(’bk_sw_model’),

null,

SDO_RDF_Aliases(SDO_RDF_Alias(”,sm_pkg.user_alias)),

null)) t WHERE sm_pkg.user_alias||database_inf.name=t.NAME

С помощью функции SDO_RDF_MATCH мы получаем доступ к нашей базе данных RDF триплетов. Первым параметром является основа sparql запроса, в котором мы конкретно указываем, что хотим получить, второй параметр – это модель к которой мы обращаемся. Третьим параметром является база правил, с помощью которой существует возможно производить логический вывод .Четвертый параметр – это пространство имен модели. Пятый параметр – это фильтр, который является одним из параметров sparql запроса. Рекомендуется для начала использовать null, т.к. для использования фильтра его нужно добавить в базу правил, которая будет реализована в следующей версии приложения.

Вся онтология определенной области, как упоминалось ранее хранится в базе данных в виде RDF триплетов. Но триплеты хранящиеся в какой-то определенной базе никакой пользы не несут, т.к. основой Semantic Web являются поисковые агенты, на запросы которых они получают своего рода описание определенного ресурса в виде текстового файла, описанного на owl либо, как в нашем случае на RDF языке. В нашей системе реализован модуль, который выдает часть RDF документа, описывающего запрашиваемый объект, по запросу интеллектуального агента или другой системы (запрос производится посредством http протокола). Модуль так же предоставляет список всех объектов, информация о которых хранится в системе

Адрес по которому агент из базы запрашивает rdf документ выглядит следующим образом:

http://<ИМЯ_ХОСТА>/<DatabaseAccessDescription>/<НАЗВАНИЕ_ПРОЦЕДУРЫ>< ПАРАМЕТРЫ ЗАПРОСА>

В результате запроса http://localhost/apex/swagent?p=bk_sw возвращается следующий rdf-документ:

<?xml version=”1.0″?>

<rdf:RDF

xmlns:rdf=”http://www.w3.org/1999/02/22-rdf-syntax-ns#”

xmlns:rdfs=”http://www.w3.org/2000/01/rdf-schema#”

xmlns:model=”http://swhost.kture/swstore/dbl#”>

<rdf:Description rdf:about=”http://swhost.kture/swstore/dbl#bk_sw”>

<rdf:type rdf:resource=”http://swhost.kture/swstore/dbl#Spatial_database”/>

<model:model rdf:resource=”http://swhost.kture/swstore/dbl#relational_mode”/>

<model:nameOfDatabase>bk_sw</model:nameOfDatabase>

</rdf:Description>

</rdf:RDF>

В начало

Выводы

В данной статье был рассмотрен способ хранения больших и стабильных онтологий, с использованием технологии Spatial СУБД Oracle 10. Использование Oracle Database 10g для управления данными, которые размечены с помощью языка семантической разметки, позволяет выделить ряд преимуществ по сравнению с подходами управления основанными на файлах или на специализированных базах данных. Прежде всего это низкий риск, высокое качество, производительность и безопасность.

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

  • хранение данных в файлах;

  • низкая производительность;

  • разработка дополнительных алгоритмов для удобства хранения метаданных;

  • избыточность.

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

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

Основными преимуществами разработанной системы являются:

  • удобное хранение онтологий в реляционной базе данных;

  • предоставление сервером доступа к онтологии через web-сервис, сохранение и извлечение онтологии из хранилища;

  • отсутствие необходимости реализации конвертера из формата RDF в реляционную схему и наоборот;

  • использование объектной модели онтологий, которая представляет понятия и отношения из онтологии в удобном для пользователя объектно-ориентированном виде;

  • удобный пользовательский интерфейс;

  • предоставление описания объекта в текстовом виде на запрос пользователя.

Одним из недостатков системы является сложность внедрения. Формат RDF обладает высокой сложностью и не рассчитан на применение рядовыми пользователями Internet. Так же данный формат не позволяет описать предметную область в полном объеме, поэтому в будущем будет предусмотрена поддержка описания онтологий посредством языка OWL.

Многим web-разработчикам и программистам бывает сложно освоить RDF и OWL. Кроме того, сам смысл концепции ещё не доведён до широких кругов пользователей. Работа по популяризации Semantic Web ещё не доведена до конца, не хватает практических примеров.

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

В начало

Список литературы

1. Филатов В.А., Хайрова А.А. Технология организации образовательных web-сервисов на основе XMLDB, HTMLDB, ORACLE SPATIAL // Міжнародний науково – технічний журнал «Інформаційні технології та комп’ютерна інженерія» – Вінниця: ВНТУ. – 2007г. – Вип. 1(18) – с. 240 – 247.

2. Филатов В.А., Хайрова А.А. Исследование методов и инструментальных средств для разработки образовательных web – сервисов.// 11-й Международный молодежный форум «Радиоэлектроника и молодежь в ХХІ веке». – Харьков: ХНУРЭ, 2007. – с. 387.

3. Berners-Lee, T. , Hendler, J., Lassilla O. The Semantic web – A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities // Scientific American, May 2001.

4. Гаврилова Т.А., Хорошевский В.Ф. Базы знаний интеллектуальных систем: Учебник для вузов. – СПб: «Питер», 2000.

5. Хайрова А.А. Использование XML-ориентированных технологий для разработки и поддержки образовательного WEB-портала // Программа и материалы XIII Международной студенческой научной конференции «Высшая школа Украины перед вызовами XXI столетия» (8 апреля 2006г.). – Харьков. НУА, 2006. – с. 134.

6. Collins H. Enterprise knowledge portals: next generation portal solutions for dynamic information access, better decision making and maximum results. – N.Y.: AMACOM, 2003. с. 403.

7. Ternier, S., Duval, E., Vandepitte, P. LOMster: Peer-to-peer Learning Object Metadata. In: P.Barker and S. Rebelsky (eds.) Proceedings of ED-MEDIA’2002 – World Conference on Educational Multimedia, Hypermedia and Telecommunications, Denver, CO, June 24-29, 2002, AACE – pp.1942-1943.

8. Щебрак С.С., Хайрова А.А. Розроблення освітніх web-сервісов як ефективна стратегія розвитку мереженого навчання //Наукова – практична конференція «Інформатизація бізнесу очима молодих: прогресивні технології, наука, підприємництво» (17 – 18 травня 2007р.).Харьков: ХНЕУ, 2007. – с. 73 – 74.

9.www.oracle.com/technology/tech/semantic_technologies

10. L. Stojanovic, J. Schneider, A. Maedche, S. Libischer, R. Studer, Th. Lumpp, A. Abecker, G. Breiter и J. Dinger. The role of ontologies in autonomic computing systems. – IBM Research Journal. 2004.

11. Xavier Lopez, Susie Stephens, Jeam Ihm, Jayant Sharma, Melliyal Annamalai, Omar Olonso. Semantic Data integration for the Enterprise. March 2006.

В начало