Лекция 7:
ОНТОЛОГИЯ
Основные определения
Определение термина «онтология» зависит от контекста и целей его
использования
•
Онтоло́гия (от греч. οντοσ — сущее, то, что
существует и λογος — учение, наука) — раздел
философии, изучающий проблемы бытия, наука о бытии
•
Онтология – это
формальная спецификация концептуализации, которая имеет место в некотором
контексте предметной области
(Gruber, 1993).
Концептуализация представляет собой описание понятий, а также всю
информацию, имеющую отношение к понятиям (свойства, отношения, ограничения,
аксиомы, утверждения), необходимую для описания и решения задач в избранной
предметной области.
Концептуальная модель - система концептов и отношений предметной
области.
Концепт
- понятие, отражающее некоторый конкретный или абстрактный объект реального
мира
Формально онтология состоит из понятий (терминов, организованных в
таксономию), их описаний и правил вывода.
Таксономия (от греч. taxis -
расположение, строй, порядок и nómos - закон), теория
классификации и систематизации сложноорганизованных областей
действительности
Определение онтологии
Онтология – это
подробная спецификация структуры определенной проблемной области;
Онтология включает в себя
словарь (т.е. список логических констант и предикатных символов) для
описания предметной области и набор логических высказываний,
формулирующих существующие в данной проблемной области ограничения и
определяющих интерпретацию словаря;
Онтология предлагает словарь
для представления и обмена знаниями по интересующей проблеме и набор
связей и свойств, которые определены между имеющимися в ее словаре
неделимыми сущностями.
Аспекты интерпретации термина “онтология”
•
Философское
понятие (какие свойства являются общими
для всего сущего?)
•
Неформальная
концептуальная система (базис для определенной БЗ)
•
Формальный
взгляд на семантику (формализация
семантических структур)
•
Спецификация
концептуализации (в рамках
ИИ-сообщества)
•
Представление
концептуальной системы через логическую теорию (характеризуемую формальными свойствами или только ее
назначением)
•
Словарь
(используемый логической теорией)
•
Спецификация
логической теории (метауровневая)
Онтология (в
информатике) —
это
попытка всеобъемлющей и детальной формализации некоторой области знаний с
помощью концептуальной схемы. Обычно такая схема состоит из иерархической
структуры данных, содержащей все релевантные классы объектов, их связи и правила
(ограничения), принятые в этой области
Онтологии – базы знаний специального вида, которые
могут «читаться» и пониматься, отчуждаться от разработчика и/или физически
разделяться их пользователями. Это формально представленные знания на базе
концептуализации (описания множества объектов и понятий, знаний о них и связей
между ними) (Гаврилова, Хорошевский)
Модель онтологии
Формально онтология определяется
как
O = <X,R,F>,
где
•
X -
конечное множество понятий (концептов) предметной области,
•
R -
конечное множество отношений между понятиями,
•
F -
конечное множество функций интерпретации, заданных на концептах и/или
отношениях.
При R=0 и F=0 онтология трансформируется в простой словарь. Пример –
индексы поисковых машин
Модель онтологической
системы
Z=<O, P, M> , где
•
O – онтология верхнего уровня (метаонтология)
(содержит общие понятия и отношения, не зависящие от предметной области -
«объект», «свойство», «значение» и т.п.);
•
P – множество предметных онтологий и онтологий задач
предметной области (с учетом предпочтений пользователя);
•
M – модель машины вывода данной
онтологической системы (например, для изменения критериев релевантности поиска
или критериев формирования репозитория).
Модель онтологической системы позволяет описывать
взаимосвязь онтологий разных уровней
Классификация онтологий
•
метаонтология – содержит общие понятия и отношения, не зависящие от
предметной области («объект», «свойство», «значение» и
т.п.);
•
предметная
онтология – содержит понятия,
описывающие конкретную предметную область и отношения, семантически значимые для
данной предметной области;
•
онтология задач
(и методов) – содержит в качестве
понятий типы решаемых задач, а отношения специфицируют декомпозицию задач на
подзадачи;
•
прикладная
онтология (онтология приложения) –
описывает концепты, зависящие как от предметной области, так и от
задач
•
сетевая
онтология – используется для описания
конечных результатов действий, выполняемых объектами предметной области или
задачи.
Другие классификации:
•
по уровню
детализации
•
по “природе” предметных областей
•
по степени
разработки и сопровождения
Основные направления применения
онтологий
•
Формализованное представление
знаний
–
организация общей и
предметной терминологии
–
описание предметных
областей для совместного использования человеком и компьютером
–
индексирование,
фильтрация и классификация формализованных знаний
–
приобретение,
структурирование знаний и формирование новых знаний
•
Семантическая интеграция информационных
ресурсов (Формирование единого сетевого
пространства знаний)
•
Обеспечение возможности поиска нужной
информации (индексирование, фильтрация
и классификация формализованных знаний)
Практическое применение
онтологий
•
Порталы
•
Системы
автоматизированного сбора информации
•
Управление
корпоративными информационными ресурсами
•
Обучающие
системы
•
Мультимедийные энциклопедии и коллекции
•
Взаимодействие
электронных бытовых устройств
Направления развития
онтологий
•
совершенствование
способов доступа к знаниям
•
развитие средств
разработки онтологий
•
совершенствование
методов автоматического вывода онтологий
•
развитие средств представления
•
развитие средств взаимодействия онтологий
Языки представления онтологий
•
традиционные языки
спецификации онтологий (LOOM,
OKBC, OCML, Flogic, LBase)
•
специальные языки
спецификации онтологий (Ontolingua, CycL, SHOE)
•
языки
основанные на Web-стандартах (UPML, DAML, OIL, XODL, XML, RDF, RDFS, OWL)
Выбор языка зависит от целей
разработки онтологии
OWL (Web
Ontology Language) – язык Web-онтологий
Основное назначение OWL – для использования приложениями,
которые должны не только представлять информацию человеку, но и обрабатывать ее.
OWL спроектирован для хранения и отображения
большого количества разнородной информации и знаний, а также для поддержки
семантики и связей между этими знаниями.
OWL
предназначен для описания классов и отношений
между ними, которые присущи для Web-документов и приложений
Коллекции онтологий
•
(KA)2 (Knowledge Annotation Initiative of the Knowledge Acquisition Community) – Аннотация знаний сообществом приобретения знаний
(разрабатываются онтологии организаций, проекта, личности, направления
исследований, публикаций, событий, исследовательских продуктов, тсследовательских групп) Инструментарий – Ontobroker
•
SHOE (Simple HTML Ontology
Extensions)) – осуществляет аннотацию Web-страниц семантической информацией
•
CYC – ориентация на создание мультиагентной базы знаний всех общих понятий, включая
семантическую структуру терминов и связей между ними
•
TOVE (Toronto Virtual Enterprise Project)- предметно ориентирована на представление модели
корпорации
•
Plinius – предназначена для полуавтоматического извлечения
знаний в области химии
Критерии разработки онтологий (Gruber)
•
Ясность-
онтология должна эффективно описывать смысл определяемых терминов.
•
Согласованность- онтология
должна быть согласованной, определения и выводимые утверждения должны быть
непротиворечивыми.
•
Расширяемость-
онтология должна предусматривать возможность определения новых терминов без
необходимости пересмотра существующих определений.
•
Минимум влияния
кодирования-
концептуализация должна быть специфицирована на уровне знаний вне зависимости от
конкретного способа кодирования.
•
Минимальное
онтологическое соглашение- для онтологии должен быть достигнут минимальный объем
словаря, достаточный для описания знаний, которые предполагается совместно
использовать.
Жизненный цикл онтологий
Планирование (задачи, ресурсы,
сроки)
Разработка
–
Спецификация –
определяет цели создания, предполагаемое использование и потенциальных
пользователей
–
Концептуализация – обеспечивает структурирование предметных
знаний
–
Формализация –
трансформирует концептуальную модель в формальную или
вычислительную
–
Реализация –
вычислительная модель программируется на соответствующем языке представления
знаний
–
Проверка
- включает в себя идентификацию и
редактирование неопределенных терминов; выявление конфликтов и
несогласованностей; проверку онтологии на полноту; идентификацию семантических
различий между двумя терминами в различных онтологиях; синтаксический анализ;
анализ таксономии; семантическую оценку
Поддержка (одновременно с разработкой)
– приобретение знаний, оценка онтологии, интеграция при построении новой
онтологии с использованием существующих
Уровни формализации онтологии
Основные этапы разработки онтологий:
•
определение классов
в онтологии (понятий в рассматриваемой предметной
области);
•
определение слотов
(свойств и атрибутов каждого понятия);
•
описание
допускаемых значений этих слотов и ограничений, наложенных на
слоты.
•
отображение
иерархии классов (подкласс – надкласс);
•
определение других
отношений между классами.