Онтологическая модель представления и организации знаний
Учебное пособие для вузов
Покупка
Издательство:
Горячая линия-Телеком
Автор:
Цуканова Нина Ивановна
Год издания: 2015
Кол-во страниц: 272
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
Профессиональное образование
ISBN: 978-5-9912-0454-5
Артикул: 489032.01.01
Систематически изложены такие вопросы, как онтология и ее основ-
ные компоненты; определение и описание классов; назначение и функции
машины вывода (резонера); построение иерархии классов; технология раз-
работки онтологии предметной области; дескрипционные логики, лежащие
в основе онтологий; табло-алгоритм для логики ALC; OWL – язык описа-
ния онтологий; практическое применение онтологий. Приведены примеры;
практические упражнения, выполняемые на компьютере; контрольные во-
просы и задания. Следует отметить практическую направленность учебно-
го пособия – большое внимание уделено процессу создания онтологий с
использованием CASE-средства редактора Protege 4. Книга будет полезна
при изучении курсов «Системы искусственного интеллекта» и «Онтология
знаний».
Для студентов вузов, программистов, специалистов в области искусст-
венного интеллекта и баз данных.
Тематика:
ББК:
УДК:
ОКСО:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Москва Горячая линия – Телеком 2015 Допущено УМО вузов по университетскому политехническому образованию в качестве учебного пособия для студентов высших учебных заведений, обучающихся по направлению подготовки «Программная инженерия» (бакалавриат и магистратура)
УДК 004.82 ББК 73 Ц85 Р е ц е н з е н т ы : доктор техн. наук, профессор Рязанского государственного радиотехнического университета И. Ю. Каширин; доктор техн. наук, профессор Рязанского государственного педагогического университета имени С.А. Есенина В. Н. Ручкин Цуканова Н. И. Ц85 Онтологическая модель представления и организации знаний. Учебное пособие для вузов. – М.: Горячая линия – Телеком, 2015. – 272 с.: ил. ISBN 978-5-9912-0454-5. Систематически изложены такие вопросы, как онтология и ее основные компоненты; определение и описание классов; назначение и функции машины вывода (резонера); построение иерархии классов; технология разработки онтологии предметной области; дескрипционные логики, лежащие в основе онтологий; табло-алгоритм для логики ALC; OWL – язык описания онтологий; практическое применение онтологий. Приведены примеры; практические упражнения, выполняемые на компьютере; контрольные вопросы и задания. Следует отметить практическую направленность учебного пособия – большое внимание уделено процессу создания онтологий с использованием CASE-средства редактора Protege 4. Книга будет полезна при изучении курсов «Системы искусственного интеллекта» и «Онтология знаний». Для студентов вузов, программистов, специалистов в области искусственного интеллекта и баз данных. ББК 73 Адрес издательства в Интернет WWW.TECHBOOK.RU Учебное издание Цуканова Нина Ивановна Онтологическая модель представления и организации знаний Учебное пособие для вузов Компьютерная верстка И. А. Благодаровой Обложка художника О. В. Карповой Подписано в печать 26.11.2014. Формат 60×88/16. Уч. изд. л. 17,00. Тираж 500 экз. ООО «Научно-техническое издательство «Горячая линия – Телеком» ISBN 978-5-9912-454-5 © Н. И. Цуканова, 2014, 2015 © Издательство «Горячая линия – Телеком», 2015
Оглавление Введение....................................................................................6 ГЛАВА 1. Онтология предметной области и ее основные компоненты.....................................................9 Введение...............................................................................9 1.1. Что такое онтология? ....................................................9 1.2. Разработка онтологии..................................................15 Контрольные вопросы .......................................................39 1.3. Определение и описание классов .................................39 Контрольные вопросы .......................................................49 1.4. Использование резонера (машины вывода)................49 Контрольные вопросы .......................................................66 1.5. Построение иерархии классов.....................................66 Контрольные вопросы .......................................................76 1.6. Характеристики объектов (DataProperties) .................76 Контрольные вопросы .......................................................94 Подведем итоги..................................................................94 Контрольные вопросы .....................................................103 ГЛАВА 2. Технология разработки онтологии предметной области..........................................104 2.1. Методология построения онтологии продукта ........105 2.2. Проектирование онтологии на основе концептуальной модели предметной области.................107 Контрольные вопросы .....................................................123 ГЛАВА 3. Дескрипционная логика ...................................125 Введение...........................................................................125 3.1. Общие сведения.........................................................127 3.2. Синтаксис ..................................................................131 3.3. Синтаксис логики ALC..............................................133 3.4. Семантика..................................................................133 3.5. Семантика логики ALC..............................................134 3.6. Связь с логикой предикатов......................................135 3.7. База знаний ................................................................138 3.8. Аксиомы и TBox ........................................................138
Оглавление 4 3.9. Утверждения и ABox .................................................141 3.10. Выразительные ДЛ..................................................142 Контрольные вопросы .....................................................144 3.11. Логический анализ ..................................................144 3.12. Свойства ДЛ ............................................................146 3.13. Разрешимость логики ALC......................................146 3.14. Понятие разрешающего алгоритма.........................149 3.15. Табло-алгоритм для логики без терминологий ......151 3.16. Табло-алгоритм для логики ALC с терминологиями..................................153 3.17. Отличие баз знаний от баз данных .........................160 3.18. Связь с языком OWL................................................165 3.19. Машины вывода и редакторы .................................166 3.20. О вычислительной сложности логики ALC ............167 Контрольные вопросы. ....................................................168 ГЛАВА 4. OWL – язык описания онтологий ...................170 4.1. Основные понятия.....................................................170 4.2. Конструкции языка OWL...........................................171 4.3. Управление онтологиями..........................................193 4.4. Связь OWL с другими технологиями........................199 Контрольные вопросы .....................................................201 ГЛАВА 5. Практическое применение онтологий ............203 5.1. Основные области применения онтологий...............203 5.2. Системы искусственного интеллекта .......................206 5.3. Semantic Web .............................................................208 5.4. Разработка и управление терминологией .................212 5.5. Концептуальное моделирование...............................213 5.6. Системы управления знаниями.................................214 5.7. Интеграция разнородных источников данных.........216 5.8. Спецификация содержимого разнородных источников данных ..........................................................219 5.9. Информационный поиск ...........................................222 5.10. Семантический поиск............................................... 237 5.11. Онтологии в электронной коммерции .................... 240 5.12. Примеры существующих проектов и систем.........241 Контрольные вопросы .....................................................250
Оглавление 5 Заключение...........................................................................251 Библиографический список ...............................................253 ПРИЛОЖЕНИЕ П1. Программа «Семья» в формате, основанном на Манчестерском синтаксисе......................259 ПРИЛОЖЕНИЕ П2. Программа «Семья» в формате, основанном на Функциональном синтаксисе..................266
Наука – не разновидность черной магии. Порой приходится долго блуждать из тупика в тупик, прежде чем будет найдена широкая дорога к научной мысли. Гулд Лоуренс Введение В привычном понимании онтология – это философская категория. В структуре философского знания онтология – это учение о бытии, изучающее фундаментальные принципы бытия, наиболее общие сущности, категории сущего. В последнее время термин «онтология» стал часто встречаться в литературе по информационным технологиям, где его смысл отличается от принятого в философии. В вузах появились дисциплины, в названии которых присутствует этот термин. В результате возникла потребность понять и разобраться, что означает термин «онтология», и какую роль играют онтологии в информационных системах. Данное пособие как раз и посвящено целям описания, толкования и рассмотрения областей применения термина «онтология» как модели предметной области в информационных системах. Назначение и особенности книги. Данное пособие представляет собой учебник, включающий в себя разделы теоретического описания онтологии как модели предметной области, практического создания онтологий с использованием редакторов, разделы описания формальных систем, лежащих в основе онтологии, языков описания онтологий и раздел применения онтологий в информационных системах. В настоящее время в Интернете и в печатных изданиях появилось много публикаций, посвященных этой теме. В большинстве случаев каждая публикация посвящена какому-либо одному вопросу, а литературы, описывающей онтологию, начиная с базовых понятий до практических реализаций мало в силу творческого (пока далекого от стандарта) характера исследований в этой области. В данном пособии сделана попытка соединить большую часть аспектов, связанных с понятием онтологии: определение, формализмы, языки, технологию разработки, практическое создание с помощью редакторов и области применения онтологий. Учебное пособие основано на лекционном курсе, который автор в последние годы читает в Рязанском государственном
радиотехническом университете студентам и магистрантам, обучающимся по направлению: «Программная инженерия». Учебник преследует следующие цели: 1. Познакомить читателя с максимально широким кругом понятий, связанных с онтологией как моделью предметной области. Тем самым, сформировать у студента терминологический запас, необходимый для самостоятельного изучения специальной математической и программистской литературы. 2. Предоставить читателю варианты технологий разработки онтологий и привести примеры их использования, тем самым вооружив читателя правилами проектирования онтологий. 3. Показать возможность использования редакторов (CASEсредств) при создании онтологий. Выполнение упражнений позволит студенту овладеть базовыми понятиями и навыками работы в редакторе в процессе создания онтологий. 4. Познакомить читателя с формальными системами и процедурами вывода новых знаний, позволяющими на языке логики описать онтологию предметной области, выявить противоречия в этом описании и построить иерархию концептов предметной области. 5. С помощью примеров практического использования в информационных системах пояснить назначение онтологий. 6. Познакомить читателя с описанием онтологий на языках Semantic Web. Структура книги. Учебное пособие содержит 5 глав. Первая глава носит практический характер, она посвящена процессу создания онтологии Пиццы в редакторе Protege 4. Но целью этой главы в большей степени является определение понятия онтология и знакомство со всеми базовыми терминами, связанными с онтологией. На примерах легче понять сложные категории. Во второй главе рассматриваются два варианта технологии разработки онтологии предметной области. Очень важно иметь правила или рекомендации, следуя которым любой инженер по знаниям сможет разработать онтологию по заданной предметной области. Такие правила полезны студентам при выполнении лабораторных работ. Третья глава посвящена дескрипционным логикам – формализмам, лежащим в основе онтологий. Дескрипционные логики [45, 62] – это модели представления знаний в онтологиях. С ними
Введение 8 тесно связана и процедура вывода новых знаний. В основе ее лежит один из базовых алгоритмов: либо алгоритм, основанный на принципе резолюции [27], либо табло-алгоритм [55, 60]. Если алгоритму, основанному на принципе резолюции, посвящено много работ на русском языке, то найти литературу на русском языке о таблоалгоритме сложно, хотя он в настоящее время является основным для большинства резонеров – машин вывода. В пособии суть табло-алгоритма раскрывается на примерах. Приводится без доказательства ряд теорем, связанных с алгоритмическими проблемами в онтологиях. Четвертая глава посвящена языкам описания онтологий, ставшим стандартами в области Semantic Web – это OWL, RDF, XML [41, 46, 48, 50]. Рассматривается простой пример описания семьи, его разработка ведется в редакторе Protege 4, а затем описывается на языке OWL. В пятой главе сначала приводится перечень различных областей, где может быть использована онтология предметной области. Этот перечень основан на обзоре публикаций последних лет в области онтологий. Затем рассматриваются более подробно примеры практического использования онтологий и анализируется целесообразность применения онтологии в том или ином случае. В конце книги приводится обширный библиографический список публикаций по теме онтология в информационных системах: на русском языке, на иностранных языках и в электронных ресурсах. Читатель в этом списке может найти интересующую его тему. По ходу изложения материала в конце большинства разделов приведены контрольные вопросы и контрольные задания. Поиск ответов на эти вопросы и выполнение заданий поможет студентам усвоить учебный материал. Благодарности. Автор выражает благодарность рецензентам Каширину И.Ю., Ручкину В.Н., Пылькину А.Н., которые помогли выявить недочеты в пособии, дали хорошие советы по улучшению качества изложения материала. Особую благодарность хочется выразить коллеге Благодаровой И.А. за неоценимую помощь в оформлении рукописи, а также поблагодарить студентов, прослушавших этот курс, за выявление ошибок в тексте.
Человек должен непоколебимо верить, что непостижимое постижимо, иначе он ничего не сможет исследовать. Иоганн Вольфганг Гете Г л а в а 1 ОНТОЛОГИЯ ПРЕДМЕТНОЙ ОБЛАСТИ Введение Данный раздел знакомит читателя с понятием онтология в информационных технологиях на примере разработки простой онтологии Пиццы. В качестве инструмента (CASE-средства) разработки используется редактор онтологий Protege 4. Сначала вводится понятие онтологии предметной области, затем рассматривается процесс создания онтологии, описание свойств предметной области на языке дескриптивной логики и использование резонера (машины вывода) для проверки согласованности онтологии и автоматического вычисления иерархии классов. Материал данного раздела основан на следующих источниках: Matthew Horridge et al. 2011. A Practical Guide To Building OWL Ontologies Using Protégé 4 and CO-ODE Tools, Edition 1.3, published by the University of Manchester, 24 Mar 2011, 108 pp., а также [7-8]. 1.1. Что такое онтология? Онтологии используются для описания знаний о некоторой предметной области. Онтология описывает понятия предметной области, а также отношения, которые имеются между этими понятиями. Онтология, как модель, выражает определенный взгляд (разработчика) на некоторую предметную область и формально может быть описана следующим набором множеств [7]: O = <Х, R, Ф>, где: X – конечное множество концептов (понятий, терминов) предметной области, которую представляет онтология О. Например, для предметной области «Институт» такими понятиями являются студент, группа, факультет, преподаватель, дисциплина и т.д.; R – конечное множество отношений между концептами (понятиями, терминами) заданной предметной области. Например, студент_группа, группа_факультет, студент_факультет и т.д.
Глава 1 10 Здесь имя отношения формируется из имен связываемых этим отношением сущностей и знака подчеркивания _; Ф – конечное множество функций интерпретации, заданных на концептах и/или отношениях онтологии О. Роль функции интерпретации может играть словесное пояснение термина (аннотация), формула для вычисления значения термина, алгоритмическое описание, а также определение в виде логической формулы Отец ≡ Мужчина and родитель_ребенка some Личность. Из всего множества отношений в онтологии выделяется специальный класс – простая таксономия: О = Т° = < X, {is_a}, {}>. Под таксономической структурой понимается иерархическая система понятий, связанных между собой отношением is_a («быть элементом класса» или «быть подклассом класса»). Это отношение (is_a) позволяет организовать структуру понятий онтологии в виде дерева. Отношение is_a имеет фиксированную заранее семантику. Предложение «Элемент А является подклассом класса В», описывается простой логической формулой (импликацией): А В – «Если А, то В». Получаем формальную таксономию. Таким образом, из определения онтологии следует, что основными ее компонентами являются: Классы (Концепты) или понятия, Индивидуальности (экземпляры), Отношения, Функции, Аксиомы. В целом потребность в разработке онтологий объясняется следующими причинами [7]: – совместное использование людьми или программными агентами [59] общего понимания структуры информации; – разработка и управление терминологией; язык описания онтологий (OWL) использовался для поддержки огромных терминологических словарей с сотней тысяч терминов и сложной иерархией [64]; – возможность повторного использования знаний в предметной области [61]; – получение надежного семантического базиса в определении содержания; – отделение знаний в предметной области от оперативных знаний; – получение логической теории, которая состоит из словаря и набора утверждений на некотором языке логики, что позволяет на