слайды доклада - Электронные библиотеки: Перспективные

Download Report

Transcript слайды доклада - Электронные библиотеки: Перспективные

Разработка и
сопровождение
информационных систем,
базирующихся на онтологии
и Wiki-технологии
Шестаков В.К., аспирант НГУ
Научный руководитель: Загорулько Ю.А.
Wiki-технология
Wiki — технология взаимодействия пользователя с веб-сайтом,
предназначенная для коллективной разработки, хранения,
структуризации информации.
Достоинства
• удобство сбора и хранения информации различного
типа
• простота доступа и освоения
Недостатки
• позволяет отслеживать в создаваемых информационных
системах только структурную целостность ссылок, не обеспечивая
при этом логической непротиворечивости и семантической
согласованности используемых в них понятий
• затруднено построение сложных информационных систем (в
том
числе
путем
построения
сложно-структурированной
информационной Wiki-системы на основе нескольких близких по
тематике систем)
Подход к построению ИС
• Идея
предлагаемого
подхода
состоит
в
создании
инструментария, который бы обеспечивал заполнение Wikiсистемы информацией с согласованной системой понятий, а также
предоставлял средства для ее сопровождения и развития.
• Такую семантически согласованную информационную Wikiсистему можно получить, если заполнять ее на основе логически
непротиворечивой онтологии, описывающей предметную область
будущей системы.
• Для контроля, сопровождения, развития и трансформации уже
существующих
информационных
Wiki-систем
в
этот
инструментарий должна входить обратная процедура — метод
извлечения онтологий из Wiki-систем.
Онтология
Онтология — формальная,
концептуализации (Tom Gruber)
явная
спецификация
Онтология обеспечивает:
• строгую формализацию знаний;
• явную концептуализацию предметной области (ПО),
позволяющую описывать семантику данных;
• совместное использование разнородных данных и знаний
в рамках одной системы;
• формирование и фиксацию общего разделяемого всеми
экспертами знания о ПО;
• переиспользование знаний.
Обзор средств создания Wiki-систем с
использованием семантических
технологий
• OntolingeWiki
Создание Wiki-интерфейса по онтологии и визуальная
навигация по нему.
• Semantic MediaWiki
Расширение MediaWiki, добавление семантической
информации за счет расширенной Wiki-разметки.
• BOWiki
Расширение MediaWiki, семантический Wiki-движок,
специализирующийся на био-онтологиях.
• RDFIO
Расширение MediaWiki, импорт произвольных RDF-триплетов.
• LinkedWiki
Расширение MediaWiki, получение данных с внешнего сервиса
и отображение этих данных в Wiki-системе.
Обзор подходов к извлечению
знаний и онтологий из Wiki-систем
• YAGO
Автоматическое построение онтологии верхнего уровня
значительного объема, включающую факты, извлеченные из
Википедии с высокой точностью.
• DBpedia
Извлечение структурированной информации из Википедии и
предоставление доступа к ней.
• Constructing Large-Scale Person Ontology from
Wikipedia
Построение крупномасштабной онтологии людей.
• Harvesting Wiki Consensus – Using Wikipedia
Entries as Ontology Elements
Использование Википедии в качестве среды для разработки
онтологий.
Обзор подходов к извлечению
знаний и онтологий из Wiki-систем
• Corpus Exploitation from Wikipedia for Ontology
Construction
Использование Википедии как источника корпуса текстов для
построения онтологии конкретной предметной области.
• Building and Using Geospatial Ontology in the
BioCaster Surveillance System
Выявление и отслеживание вспышек инфекционных
заболеваний на основе новостных сообщений.
• Wikipedia2Onto --- Adding Wikipedia Semantics
to Web Image Retrieval
Попытка автоматического построения крупномасштабной
мульти-модальной онтологии для классификации вебизображений.
Предлагаемый подход: Onto2Wiki
& Wiki2Onto
Две составляющие:
• Onto2Wiki — отображение онтологии
в Wiki-систему
• Wiki2Onto — извлечение онтологии
из Wiki-системы
Onto2Wiki: общая схема заполнения
информационной Wiki-системы на основе
онтологии
Онтология
предметной
области
Эксперт предметной
области
Onto2Wiki
Эксперты
Wiki
Пользователи
Отличительные особенности
такого подхода
• Получается семантически согласованная
информационная Wiki-система.
• Онтология полностью определяет всю
структуру Wiki-системы
• Независимость от изначальной онтологии,
т.е. есть возможность изменения и
дополнения структуры средствами самой
Wiki-системы.
Средства реализации
Wiki-движок
—
комплекс
программных
средств
преобразования Wiki-разметки в код, предназначенный
отображения в браузере.
Wiki-движок: MediaWiki
Расширение: Semantic MediaWiki
для
для
Wiki-разметка
• Обычная Wiki-ссылка:
[[название_страницы]]
• Свойство (Semantic MediaWiki):
[[имя_свойства::значение_свойства]]
• На странице свойства:
[[Имеет тип::тип]]
Средства реализации
Бот — специальное клиентское приложение для выполнения
заданного набора операций.
•
•
•
•
•
Применение в Википедии:
переименование категорий и статей,
расстановка интервики ссылок,
исправление ссылок,
удаление спама,
и т.п.
Python WikipediaBot Framework — библиотека для
написания ботов на языке Python.
MediaWiki
API
—
специальный
интерфейс
прикладного программирования) для взаимодействия с
MediaWiki-системой.
RDFLib — библиотека Python для работы с RDF.
Onto2Wiki: схема системы
Редактор онтологий
Онтология на языке OWL
Onto2Wiki
Python Wikipediabot Framework + RDFLib
Semantic MediaWiki
MediaWiki
Onto2Wiki: таблица соответствия
Конструкция онтологии
Конструкция Wiki
owl:Class
Категория
rdfs:subClassOf
Подкатегория
owl:NamedIndividual
Страница
owl:ObjectProperty
Свойство с типом
«Страница»
owl:DatatypeProperty
Свойство с соотв. типом
Пример: Технология создания
экспертных систем
Рассмотрим работу Onto2Wiki на примере
построения учебной информационной системы
«Технология создания экспертных систем»:
1. Построение онтологии в редакторе Protégé.
2. Отображение полученной онтологии в Wiki-систему.
Построение онтологии предметной области
Онтология ПО Технология создания
экспертных систем
Пример страницы (экземпляр категории
Литература по ЭС)
Wiki2Onto: извлечение онтологии
из Wiki-системы
• Wiki2Onto — модуль для извлечения
онтологий из Wiki-систем.
• Wiki2Onto обеспечивает извлечение
онтологии из Wiki-систем, построенных как
с использованием расширения Semantic
MediaWiki, так и без него.
Wiki2Onto: схема системы
Онтология на языке OWL
Wiki2Onto
Python Wikipediabot Framework + RDFLib
Semantic MediaWiki
MediaWiki
Wiki2Onto: таблица соответствия
Конструкция Wiki
Конструкция онтологии
Категория
owl:Class
Подкатегория
rdfs:subClassOf
Страница
owl:NamedIndividual
Обычная ссылка
owl:ObjectProperty
«Ссылается на»
Свойство
Зависит от типа
Wiki2Onto: соответствие при
извлечении стандартных типов
Тип свойства
Тип в онтологии
Страница
owl:ObjectProperty
Строка
string
Число
double
Булево
boolean
Дата
dateTime
Текст
string
Код
string
Телефонный номер
owl:Annotation property
URL
owl:Annotation property
Почта
owl:Annotation property
URI аннотации
owl:Annotation property
Отличительные особенности
Wiki2Onto
• Позволяет получить в виде онтологии
структуру конкретной Wiki-системы.
• Может извлекать как явно размеченные
семантические данные, так и другую
имеющуюся в Wiki-системе
информацию.
• Не требует внесения изменений на
стороне сервера.
Пример извлечения онтологии
Заглавная страница
[[Индивид::Человек|Статья о человеке]]
Пример извлечения онтологии
Пример извлечения онтологии
Человек
Его зовут [[Имя::Эдуард]].
Количество сыновей: [[Количество сыновей::2]]
Он [[Женат::false|не женат]].
Родился [[Дата рождения::4 декабря 1976]]
Характеристика: [[Описание::характер стойкий, нордический]]
Пример кода: [[Отрывок кода::<FORM name="form_name">]]
Его телефон: [[Номер мобильного телефона::+7-955-555-55-55]]
Сайт: [[Сайт::http://example.org]]
Электронная почта: [[Электронная почта::[email protected]]]
См. также: [[См также::http://example.com/foaf.rdf|FOAF]]
[[Категория:Люди]]
Пример извлечения онтологии
Название свойства
Тип свойства
Имя
Строка
Количество сыновей
Число
Женат
Булево
Дата рождения
Дата
Описание
Текст
Отрывок кода
Код
Номер мобильного телефона
Телефонный номер
Сайт
URL
Электронная почта
Почта
См также
URI аннотации
Пример извлечения онтологии
Онтология, записанная в нотации Turtle:
@prefix
@prefix
@prefix
@prefix
@prefix
owl: <http://www.w3.org/2002/07/owl#> .
rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
xsd: <http://www.w3.org/2001/XMLSchema#> .
ex: <http://example.org/Ontology100500.owl#> .
<http://example.org/Ontology100500.owl> rdf:type owl:Ontology .
ex:Дата_рождения rdf:type owl:DatatypeProperty .
ex:Женат rdf:type owl:DatatypeProperty .
ex:Заглавная_страница rdf:type owl:NamedIndividual;
:Индивид ex:Человек .
ex:Имя rdf:type owl:DatatypeProperty .
ex:Индивид rdf:type owl:ObjectProperty .
ex:Количество_сыновей rdf:type owl:DatatypeProperty .
ex:Несуществующие_страницы rdf:type owl:Class;
rdfs:comment "Служебный класс"^^xsd:string .
ex:Номер_мобильного_телефона rdf:type owl:AnnotationProperty,
owl:DatatypeProperty .
ex:Описание rdf:type owl:DatatypeProperty .
Пример извлечения онтологии
ex:Отрывок_кода rdf:type owl:DatatypeProperty .
ex:Сайт rdf:type owl:AnnotationProperty,
owl:DatatypeProperty .
ex:См_также rdf:type owl:AnnotationProperty,
owl:DatatypeProperty .
ex:Электронная_почта rdf:type owl:AnnotationProperty,
owl:DatatypeProperty .
ex:Люди rdf:type owl:Class .
ex:Человек :Дата_рождения "1976-12-04T00:00:00"^^xsd:dateTime;
:Женат "false"^^xsd:boolean;
:Имя "Эдуард"^^xsd:string;
:Количество_сыновей "2"^^xsd:double;
:Номер_мобильного_телефона <tel:+7-955-555-55-55>;
:Описание "характер стойкий, нордический"^^xsd:string;
:Отрывок_кода "<FORM name=\"form name\">"^^xsd:string;
:Сайт <http://example.org>;
:См_также <http://example.com/foaf.rdf>;
:Электронная_почта <mailto:[email protected]>;
rdf:type ex:Люди,
owl:NamedIndividual .
Варианты применения подхода
• Контроль качества заполненной на основе
онтологии Wiki-системы в течение всего ее
жизненного цикла.
Wiki
Wiki2Onto
Онтология
Анализ
Варианты применения подхода
• Возможность реинжиниринга информационных Wikiсистем.
Wiki
Onto2Wiki
Wiki2Onto
Онтология'
Онтология
Варианты применения подхода
• Возможность построения предварительных
вариантов онтологий предметных областей на
основе существующих Wiki-систем.
Wiki 1
Wiki 2
Wiki2Onto
Wiki2Onto
Онтология 1
Онтология 2
Онтология
Wiki n
…
Wiki2Onto
Онтология n
Варианты применения подхода
• Возможность построения обобщенной
информационной Wiki-системы на основе нескольких
близких по тематике Wiki-систем.
Wiki 1
Wiki2Onto
Онтология 1
Онтология
Wiki 2
Wiki2Onto
Онтология 2
Onto2Wiki
Wiki
Результаты
• Рассмотрен
подход
к
построению
информационных систем на основе Wikiтехнологии и онтологий предметных
областей.
• Предложены метод заполнения Wikiсистем на основе онтологий и метод
извлечения онтологий из существующих
Wiki-систем.
• Разработан прототип инструментальной
системы.
• Рассмотрены варианты применения этой
системы.