0 wiki технологии

39
Разработка и сопровождение информационных систем, базирующихся на онтологии и Wiki- технологии

Upload: kewpan

Post on 18-Aug-2015

17 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 0 wiki технологии

Разработка и сопровождение

информационных систем, базирующихся на онтологии

и Wiki-технологии

Page 2: 0 wiki технологии

Wiki-технология

Wiki — технология взаимодействия пользователя с веб-сайтом, предназначенная для коллективной разработки, хранения, структуризации информации.

Достоинства•удобство сбора и хранения информации различного

типа•простота доступа и освоения

Недостатки•позволяет отслеживать в создаваемых информационных

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

•затруднено построение сложных информационных систем (в том числе путем построения сложно-структурированной информационной Wiki-системы на основе нескольких близких по тематике систем)

Page 3: 0 wiki технологии

Подход к построению ИС

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

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

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

Page 4: 0 wiki технологии

Онтология

Онтология — формальная, явная спецификация концептуализации (Tom Gruber)

Онтология обеспечивает:•строгую формализацию знаний;•явную концептуализацию предметной области (ПО),

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

знаний в рамках одной системы;•формирование и фиксацию общего разделяемого всеми

экспертами знания о ПО;•переиспользование знаний.

Page 5: 0 wiki технологии

Обзор средств создания Wiki-систем с использованием семантических

технологий• OntolingeWiki

Создание Wiki-интерфейса по онтологии и визуальная навигация по нему.

• Semantic MediaWikiРасширение MediaWiki, добавление семантической информации за счет расширенной Wiki-разметки.

• BOWikiРасширение MediaWiki, семантический Wiki-движок, специализирующийся на био-онтологиях.

• RDFIOРасширение MediaWiki, импорт произвольных RDF-триплетов.

• LinkedWikiРасширение MediaWiki, получение данных с внешнего сервиса и отображение этих данных в Wiki-системе.

Page 6: 0 wiki технологии

Обзор подходов к извлечению знаний и онтологий из Wiki-систем• YAGO

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

• DBpediaИзвлечение структурированной информации из Википедии и предоставление доступа к ней.

• Constructing Large-Scale Person Ontology from WikipediaПостроение крупномасштабной онтологии людей.

• Harvesting Wiki Consensus – Using Wikipedia Entries as Ontology ElementsИспользование Википедии в качестве среды для разработки онтологий.

Page 7: 0 wiki технологии

Обзор подходов к извлечению знаний и онтологий из 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Попытка автоматического построения крупномасштабной мульти-модальной онтологии для классификации веб-изображений.

Page 8: 0 wiki технологии

Предлагаемый подход: Onto2Wiki & Wiki2Onto

Две составляющие:• Onto2Wiki — отображение онтологии

в Wiki-систему• Wiki2Onto — извлечение онтологии

из Wiki-системы

Page 9: 0 wiki технологии

Onto2Wiki: общая схема заполнения информационной Wiki-системы на основе

онтологии

Онтология предметной

области Wiki

Эксперты ПользователиЭксперт предметной области

Onto2Wiki

Page 10: 0 wiki технологии

Отличительные особенности такого подхода

• Получается семантически согласованная информационная Wiki-система.

• Онтология полностью определяет всю структуру Wiki-системы

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

Page 11: 0 wiki технологии

Средства реализацииWiki-движок — комплекс программных средств для

преобразования Wiki-разметки в код, предназначенный для отображения в браузере.

Wiki-движок: MediaWiki

Расширение: Semantic MediaWiki

Page 12: 0 wiki технологии

Wiki-разметка

• Обычная Wiki-ссылка:[[название_страницы]]

• Свойство (Semantic MediaWiki):[[имя_свойства::значение_свойства]]

• На странице свойства:[[Имеет тип::тип]]

Page 13: 0 wiki технологии

Средства реализацииБот — специальное клиентское приложение для выполнения

заданного набора операций.

Применение в Википедии:•переименование категорий и статей,•расстановка интервики ссылок,•исправление ссылок,•удаление спама,•и т.п.

Python WikipediaBot Framework — библиотека для написания ботов на языке Python.

MediaWiki API — специальный интерфейс прикладного программирования) для взаимодействия с MediaWiki-системой.

RDFLib — библиотека Python для работы с RDF.

Page 14: 0 wiki технологии

Onto2Wiki: схема системы

Редактор онтологий

Онтология на языке OWL

MediaWiki

Semantic MediaWiki

Python Wikipediabot Framework + RDFLib

Onto2Wiki

Page 15: 0 wiki технологии

Onto2Wiki: таблица соответствия

Конструкция онтологии Конструкция Wiki

owl:Class Категория

rdfs:subClassOf Подкатегория

owl:NamedIndividual Страница

owl:ObjectProperty Свойство с типом «Страница»

owl:DatatypeProperty Свойство с соотв. типом

Page 16: 0 wiki технологии

Пример: Технология создания экспертных систем

Рассмотрим работу Onto2Wiki на примере построения учебной информационной системы «Технология создания экспертных систем»:

1.Построение онтологии в редакторе Protégé.

2.Отображение полученной онтологии в Wiki-систему.

Page 17: 0 wiki технологии

Построение онтологии предметной области

Page 18: 0 wiki технологии

Онтология ПО Технология создания экспертных систем

Page 19: 0 wiki технологии
Page 20: 0 wiki технологии
Page 21: 0 wiki технологии
Page 22: 0 wiki технологии
Page 23: 0 wiki технологии

Пример страницы (экземпляр категории Литература по ЭС)

Page 24: 0 wiki технологии

Wiki2Onto: извлечение онтологии из Wiki-системы

• Wiki2Onto — модуль для извлечения онтологий из Wiki-систем.

• Wiki2Onto обеспечивает извлечение онтологии из Wiki-систем, построенных как с использованием расширения Semantic MediaWiki, так и без него.

Page 25: 0 wiki технологии

Wiki2Onto: схема системы

Онтология на языке OWL

MediaWiki

Semantic MediaWiki

Python Wikipediabot Framework + RDFLib

Wiki2Onto

Page 26: 0 wiki технологии

Wiki2Onto: таблица соответствия

Конструкция Wiki Конструкция онтологии

Категория owl:Class

Подкатегория rdfs:subClassOf

Страница owl:NamedIndividual

Обычная ссылка owl:ObjectProperty «Ссылается на»

Свойство Зависит от типа

Page 27: 0 wiki технологии

Wiki2Onto: соответствие при извлечении стандартных типов

Тип свойства Тип в онтологии

Страница owl:ObjectProperty

Строка string

Число double

Булево boolean

Дата dateTime

Текст string

Код string

Телефонный номер owl:Annotation property

URL owl:Annotation property

Почта owl:Annotation property

URI аннотации owl:Annotation property

Page 28: 0 wiki технологии

Отличительные особенности Wiki2Onto

• Позволяет получить в виде онтологии структуру конкретной Wiki-системы.

• Может извлекать как явно размеченные семантические данные, так и другую имеющуюся в Wiki-системе информацию.

• Не требует внесения изменений на стороне сервера.

Page 29: 0 wiki технологии

Пример извлечения онтологии

Заглавная страница

[[Индивид::Человек|Статья о человеке]]

Page 30: 0 wiki технологии

Пример извлечения онтологии

Page 31: 0 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]]

[[Категория:Люди]]

Page 32: 0 wiki технологии

Пример извлечения онтологии

Название свойства Тип свойства

Имя Строка

Количество сыновей Число

Женат Булево

Дата рождения Дата

Описание Текст

Отрывок кода Код

Номер мобильного телефона Телефонный номер

Сайт URL

Электронная почта Почта

См также URI аннотации

Page 33: 0 wiki технологии

Пример извлечения онтологии

@prefix owl: <http://www.w3.org/2002/07/owl#> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .@prefix 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 .

Онтология, записанная в нотации Turtle:

Page 34: 0 wiki технологии

Пример извлечения онтологии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 .

Page 35: 0 wiki технологии

Варианты применения подхода

• Контроль качества заполненной на основе онтологии Wiki-системы в течение всего ее жизненного цикла.

Wiki Wiki2Onto Онтология

Анализ

Page 36: 0 wiki технологии

Варианты применения подхода

• Возможность реинжиниринга информационных Wiki-систем.

Wiki

Wiki2Onto

Онтология

Onto2Wiki

Онтология'

Page 37: 0 wiki технологии

Варианты применения подхода• Возможность построения предварительных вариантов онтологий

предметных областей на основе существующих Wiki-систем.

Wiki 1

Wiki2Onto

Онтология 1

Онтология

Wiki 2

Wiki2Onto

Онтология 2

Wiki n

Wiki2Onto

Онтология n

Page 38: 0 wiki технологии

Варианты применения подхода

• Возможность построения обобщенной информационной Wiki-системы на основе нескольких близких по тематике Wiki-систем.

Wiki 1 Wiki2Onto Онтология 1

Wiki 2 Wiki2Onto Онтология 2

Онтология Onto2Wiki Wiki

Page 39: 0 wiki технологии

Результаты• Рассмотрен подход к построению

информационных систем на основе Wiki-технологии и онтологий предметных областей.

• Предложены метод заполнения Wiki-систем на основе онтологий и метод извлечения онтологий из существующих Wiki-систем.

• Разработан прототип инструментальной системы.

• Рассмотрены варианты применения этой системы.