1 Варианты использования онтологий для решения прикладных задач Тузовский А.Ф. Институт «Кибернетический центр Томского политехнического университета» 2 План доклада 1. Понятие онтологических приложений. 2. Существующие классификации вариантов использования онтологий. 3. Классификация на основе базовых методов работы с онтологией. Пример простой RDFS онтологии и RDF метаданных 4 Определение онтологического приложения • Под онтологическим приложением, чаще всего, понимается прикладная программа, которая использует и получает основные преимущества от онтологии [Uschold]. • Хотя концепция Semantic Web вначале рассматривалась, как расширение текущей инфраструктуры Web сети, теперь общепринято называть программное обеспечение, основанное на онтологиях, «SW application», даже если оно не предназначено для работы в глобальном масштабе (например, интранет приложение) и не интегрирует существующее содержание web сети [Mike]. 5 Онтологические приложения № Англоязычный термин Встречае Возможный русскоязычный термин мость в 1. semantic web application 2. SW application приложение семантической паутины СП приложение 32300 3. ontology-based software 4. ontology application основанное на онтологиях программное обеспечение онтологическое приложение семантическое приложение основанное на онтологии приложение 9850 5. semantic application 6. ontology-based application Google 36300 8160 6380 520 6 Основания классификации вариантов использования онтологий 1. 2. 3. 4. 5. по областям применения по сценариям использования по процессам работы со знаниями по типам программных систем по типам конечных приложений (прикладных программ) 6. по базовым методам использования онтологий ▫ ▫ Методы работы с онтологической моделью Методы работы с метаданными 7 Онтологическая база знаний Описание онтологий Метаданные + (контекстные + контентные) • ontology knowledge base (3720) • semantic knowledge base (911) • semantic repository (4680) 8 Семантические метаданные sk1 si1 … sim ri1 rij rim si ri1 ri2 … rin Контекстные метаданные skn 9 (1) Классификация по областям использования [Fensel, 2003] 1. Корпоративный интранет и Управление знаниями; 2. E-Commerce (B2B, B2C); 3. Информационный поиск; 4. Порталы и Web сообщества. 10 (2) Сценарии использования [Ushold] 1. Поддержка независимых от приложений онтологий (Neutral Authoring) 2. Онтологии в качестве спецификаций (Ontology as Specification) 11 Сценарии использования (2) 3. Общий доступ к информации (Common Access to Information) Коммуникация между людьми; Доступ к информации используя совместную онтологию Доступ к данным посредством отображения онтологий Совместно используемые сервисы (Shared Services) 12 Сценарии использования (3) 4. Основанный на Онтологиях Поиск (Ontology-Based Search) Основа для семантически структурированного и организованного хранилища информации Оказание помощи в формулировке запросов Автоматическая разметка и классификация документов 13 (3) Классификация по поддерживаемым процессам работы со знаниями [Mike] 1. Поддержка процесса коммуникацией • • общение между сотрудниками разных подразделений интерфейс для организации поиска в архиве документов 2. Поддержка процесса интеграции • • семантический портал организационная (корпоративная) память 3. Поддержка процесса логического вывода • • • Интеграция разнородных источников информации Использования онтологий в качестве спецификаций Мультиагентные системы 14 Использование онтологий в приложениях [Mike] Логический вывод Повышение формальности Интеграция Коммуникация Более сложные приложения 15 (4) Классификация по типам программных систем • семантический браузер ("semantic browser” 5060) • семантический портал ("semantic portal” 21000) • мульти-агентные системы (“semantic multi agents” 36900) • семантические сервисы (“semantic services” 63200) • семантические гриды (“semantic grids” 53500) • semantic wiki (51200) • semantic blogging (16800) 16 (5) Классификация по приложениям конечных пользователей [TopQuadrant] 1. Аннотирование Автоматическая разметка контента (Automated Content Tagger) - Тэги автоматически вставляются в документ на основе программного анализа информации, обычно используя методы анализа естественного языка. Заранее определенная таксономия или онтология терминов и понятий используется для организации проведения анализа. Аннотирование контента (Content Annotator) – Пользователям предоставляет возможность добавления аннотаций к электронному контенту. Под аннотациями понимаются: комментарии, заметки, пояснения и семантические тэги. 17 Приложения конечных пользователей (2) 2. Поиск Основанный на понятиях поиск (Concept-based Search) – Для предоставления возможностей точного и использующего понятия поиска, специфического для интересующей пользователя области, используя представление знания в разных источниках знаний (информации), как структурированных, так и не структурированных. Поиск, учитывающий контекст (Context-Aware Retriever) Улучшенные поисковые запросы (Enhanced Search Query) Поиск экспертов (Expert Locator) Навигационный поиск (Navigational Search) 18 Приложения конечных пользователей (3) 3. Информационная поддержка пользователей Системы автоматического ответа на вопросы (Answer Engine) Виртуальный консультант (Virtual Consultant) Доставка информации с учетом интересов пользователя (Interest-based Information Delivery) 4. Интеллектуальный интерфейс Динамический пользовательский интерфейс (Dynamic User Interface) Автоматическое форматирование (документирование) (Generative Documentation) Семантическое генерирование форм и Классификация результатов (Semantic Form Generator and Results Classifier) 19 Приложения конечных пользователей (4) 3. Информационная поддержка пользователей Системы автоматического ответа на вопросы (Answer Engine) Виртуальный консультант (Virtual Consultant) Доставка информации с учетом интересов пользователя (Interest-based Information Delivery) 20 Приложения конечных пользователей (5) 3. Выявление связей и шаблонов (Connection and Pattern Explorer) 4. Семантическое поиск и объединение сервисов (Semantic Service Discovery and Choreography) 5. Семантическая интеграция данных (Semantic Data Integrator) 6. Поддержка проектирования новой продукции (Product Design Assistant). 21 (6) Классификация по базовым методам использования онтологий 1. Методы работы с онтологической моделью 2. Методы работы с онтологической базой знаний 3. Методы работы с семантическими метаданными 22 Семантические метаданные sk1 si1 … sim ri1 rij si ri1 ri2 … rin rim Контекстные метаданные skn Реификация sk2 si Контентные метаданные sk1 23 Семантические метаданные онтологической модели Мi = {Mki (), Mci()} , где Mki () – контекстные метаданные, описывающие взаимосвязи понятия с другими понятиями или литералами, Mki() = (r1(сi, v1) ∧ r2(сi , v2) ∧ … ∧ rr(сi , vr)), Mci() – контентные метаданные, описывающие знания, которые содержатся в экземпляре понятия. Mсi() = ({r1(с1, v1), k1} ∧ {r2(с2, v2), k2} ∧ … ∧ {pk(сk, vk), kk}), где - ri - предикат (отношения) из онтологии ; - si – экземпляр или понятие онтологии ; - vi - экземпляр или литерал; - ki - важность данного утверждения для объекта i. 24 Типы триплетов в контентных метаданных • <C, R, C>, <I, R, I>, <C, R, I>, <I, R, V>, <C, R, NULL>, <C, NULL, NULL>, <I, R, NULL>, <I, NULL, NULL>, где • C – понятие; I – экземпляр понятия; R – связь; A – атрибут; V – значение атрибута (текстовое или числовое). 25 Общая схема использования онтологий для решения практических задач Уровень приложения Уровень онтологий Промежуточный уровень Навигация между экземплярами понятий или ресурсами Поиск ассоциаций между экземплярами понятий в метаданных Системы логического вывода Оценка семантического подобия между контекстными и контентными метаданными. DIG Онтология RDFS/OWL Онтологическая база знаний (RDF Triple Store) RDF Редактор контекстных метаданных Экземпляры понятий SPARQL Поиск семантически близких понятий или ресурсов RDF Аннотирование (контекстные метаданных) Ресурсы информации и знаний Классификация на основе описания иерархии рубрик Разметка текстов для задания связи с понятиями или ресурсами Интеграция разнородных баз данных и информации 26 [1] Классификация по базовым методам работы с онтологической модели • • • • поиск отображений (mapping) слияние (merging & aligning) объединение верификация 27 [2] Классификация по базовым методам работы с онтологической базой знаний • онтологические базы знаний • поиск триплетов в хранилище (SPARQL) • логический вывод (reasoners) 28 Хранение триплетов в базе данных RDF "Triple Store" Subject Predicate Object Хранилище триплетов это: - База данных с тремя колонками, но миллионами и миллиардами строк Может потребоваться специальный компьютер. Основные показатели: - Время получения триплетов в приложение. - Время сохранения триплетов в БД. - Время перехода к нужному элементу. Примеры проектов: •Kowari •3Store •Sesame See: http://simile.mit.edu/reports/stores/ 29 Существующие онтологические базы знаний 1. Коммерческие ▫ ▫ Oracle RDF Gateway (Intellidimension) 2. Свободно распространяемые ▫ ▫ ▫ ▫ Sesame Kowari 3Store ... 3. Специальные 30 Язык запросов SPARQL Язык запросов SPARQL, стандартизирован в 2008 г. W3C – аналог SQL для RDBMS. Пример запроса “вывести названия всех документов, созданных Петром Ивановым” на SPARQL: PREFIX PREFIX SELECT WHERE dc: <http://purl.org/dc/elements/1.1/> foaf: <http://xmlns.com/foaf/0.1/> ?title { ?document foaf:name “Петр Иванов”. ? document dc:title ?title} 31 Возможности СУБД Oracle 11g по работе с семантикой 32 Архитектура системы RDF Gateway 33 Deductive Database Engine • RDF Gateway имеет мощную дедуктивную СУБД (deductive database engine), которая изначально проектировалась для поддержки RDF. • Полу-структурированная организация данной системы идеально подходит для выполнения запросов и хранения RDF триплетов. • Имеет встроенную систему дедуктивного логического вывода. • Данная система выполняет восходящую (bottom-up) обработку запросов, которые интегрируются по всем заданным источникам данных. Возможности логического вывода системы обеспечивают поддержку синтаксиса декларативных правил RDFQL. • Данная система реализует хранение в файлах собственной структуры с возможностью полнотекстового поиска, устраняя необходимость во внешней СУБД. 34 Архитектура системы Sesame Приложение HTTP / SPARQL protocol HTTP Server Приложение Прикладные методы API доступа к хранилищу SPARQL RDF Model RDBMS 35 Реляционная схема онтологической базы знаний 36 Компонентная архитектура онтологической базы знаний 37 [3] Классификация по базовым методам работы с семантическими метаданными • семантическое аннотирование (semantic annotation 83700) • семантическая навигация (semantic navigation - 8560) • выявление семантических ассоциаций (semantic association - 20300) • семантический поиск (semantic search - 562 000) • семантическая классификация (semantic classification - 27800) • семантическая разметка (semantic tagging - 39 700) • семантическая интеграция (semantic integration 136 000) 38 Семантическая аналитика • Автоматический анализ семантических метаданных • Углубленный анализ и поиск разнородных объектов знаний - миллионы сущностей и явных взаимосвязей • Выявление осмысленных сложных взаимосвязей • Области приложения ▫ Оценка террористических угроз ▫ Борьба с отмыванием денег ▫ Соответствие финансового состояния 39 Определение семантической близости • Семантическая связанность ▫ Между объектами имеются различные последовательности свойств и сущностей (семантические пути) • Семантическое подобие ▫ Между утверждениями в описании объектов имеется семантическое сходство 40 Семантическая связанность • Сложные взаимосвязи между объектами ▫ Последовательность свойств соединяющих промежуточные экземпляры семантически связанные э1 p1 э2 p2 э3 p3 э5 э4 p4 41 Пример связанности • Рассмотрим три утверждения: 1) 2) 3) • Человек (P1) участвовать_в Мероприятие (M1) Организация (O1) инициирует Мероприятие (M1) Организация (O1) руководить Человек (P1) Экземпляры: P1 участвовать_в O1 инициировать M1 руководить P2 42 Навигация 43 Варианты реализации навигация ▫ в виде графа ▫ в виде табличных форм 44 Оценка близости (подобия) метаданных • Семантическое подобие контекстных метаданных • Семантическое подобие контентных метаданных 45 Схема семантического пространства Онтология Понятие4 Понятие1 Понятие3 Метаописание Объекта1 Метаописание Объекта2 Понятие N Понятие 2 46 Два понятия c1 и c2 являются семантически близкими, если [Gonzalez-Castillo] 1. c1 является эквивалентным c2 или 2. c1 является подпонятием c2 или 3. c1 является суперпонятием понятия s, и s включается в c2 или 4. c1 является подпонятием прямого суперпонятия c2, чье пересечение с c2 является выполнимым (satisfiable). 47 Описание «степеней близости» 48 Понятия близкие понятию x (3) c0 Не соответствует Не соответствует d1 c1 (3) Аналогичен c2 (3) x (2) (2) c5 c7 d3 (2) c6 c3 (4) с4 d4 49 Оценка семантической близости контекстных метаданных Понятия с и d являются семантически сопоставимыми, если выполняется утверждение дескриптивной логики: Match (c, d) = { c, d C | (1) (c d) | (2) (c d) | (3) ( s C | s c s d) | (4) ( s C | parent (c, s) d s K ╞ (с d) ) (5) }, где parent (c, s) определено как истина если s с { t C | с t с t с = t t = s}, иначе ложь. Проверка этих условий возможно путем формирования запросов к системе логического вывода дескриптивной логики. 50 Оценка семантической близости контентных метаданных Ф( M ck , M cl ) sim(T , T ), i Ti M ck T j M cl sim Ti , T j sim (ci , rj , ik kl ),(cx , r y , iz kw ) ( j simC (ci , cx ) simR (rj , ry ) simI (ik , iz ) 3 ) f ( kl , k w ) • simС(ci, ck) - семантическая близость понятий; • simR(ri, ry) - семантическая близость отношений онтологий; • simI(ik, iz) - семантическая близость контекстных метаданных экземпляров понятий; • f(kl, kw) – функция учета коэффициентов важности утверждений. 51 Оценки близости семантических метаданных • • • • • близость понятий (множество C); близость экземпляров понятий (множество I); близость отношений (множество R); близость атрибутов (множество A); близость конкретных значений - литералов (множество V). 52 Вычисление семантической близости элементов онтологии • Методы основаны на определении сотипности (cotopy) понятий в иерархии онтологии C ANC (ci ) c j C | PC (c j , ci ) c j ci simC (ck , cl ) C ANC (ck ) C ANC (cl ) С0 C ANC (ck ) C ANC (cl ) С1 С3 С6 С2 С5 С4 С7 С9 С8 С10 С11 53 Использование алгоритмов оценки семантической близости Онтология Поисковый Запрос Рубрика Поиск Классификация Документ близость Рекомендации Специалист 54 Решение прикладных задач на основе оценки семантической близости 1. Семантический поиск ресурсов на основе описания запроса в виде набора метаданных 2. Классификация ресурсов на основе описания иерархической структуры с использованием метаданных 3. Формирование рекомендаций для специалистов на основе описания профилей в виде контентных метаданных 55 Семантическая интеграция Контентные метаданные Контекстные метаданные 56 Использованные ссылки [Ushold] Uschold M., Jasper R. A Framework for Understanding and Classifying Ontology Applications. 2000. [Fensel, 2003]Fensel D. Ontologies: A Silver Bullet for Knowledge Management and Electronic Commerce (2nd ed.). - Springer-Verlag, Berlin, 2003. - 162 c. [Mike] M ika P., Akkermans H. Towards a New Synthesis of Ontology Technology and Knowledge Management. Free University Amsterdam VUA), 2004. [TopQuadrant] TopQuadrant Technology Briefing Semantic Technology (Version 1.2, March 2004) [Gonzalez-Castillo]Gonzalez-Castillo, Javier, David Trastour, and Claudio Bartolini, Description Logics for Matchmaking Services. Bristol, HP Laboratories Bristol HPL-2001-265, Bristol, 2002. http://www.hpl.hp.com/techreports/2001/HPL-2001-265.html. 57 Спасибо за внимание!