Автор:Загорулько Ю.А., Ахмадеева И.Р., Серый А.С., Шестаков В.К.
Источник: Пятнадцатая национальная конференция по искусственному интеллекту с международным участием. Труды конференции, т.2. – г. Смоленск, 2016. – С. 47-52,
http://www.raai.org/resurs/papers/...
Загорулько Ю.А., Ахмадеева И.Р., Серый А.С., Шестаков В.К. - Построение тематических интеллектуальных научных интернет-ресурсов средствами semantic web. В работе обсуждаются проблемы использования средств технологии Semantic Web при разработке интеллектуальных научных интернет-ресурсов (ИНИР), обеспечивающих содержательный доступ к систематизированным научным знаниям и информационным ресурсам заданной области знаний, а также к средствам их интеллектуальной обработки. Основное внимание уделяется проблемам использования средств Semantic Web при разработке онтологии, хранилища данных и пользовательского интерфейса ИНИР.
В своей повседневной деятельности ученый должен иметь удобный содержательный доступ ко всем интересующим его знаниям в той области, в которой он проводит исследования, ко всем относящимся к данной области информационным ресурсам, а также ко всем разработанным в ней средствам обработки и анализа информации. При этом вся эта информация должна представляться ему в виде сети знаний и данных, как наиболее естественной и удобной форме подачи информации для человека
В такой сети первый слой (слой знаний) составляют понятия моделируемой области знаний, выстроенные в иерархию общее-частное
, а второй (слой данных) – связанные между собой различными отношениями информационные объекты, т.е. экземпляры понятий, представляющие реальные или виртуальные объекты моделируемой области знаний. Например, организации, модели, методы и их реализации в виде webсервисов. Если по такой сети организовать навигацию, то пользователь получит удобный доступ к знаниям и данным.
Для решения указанных выше задач была предложена концепция и архитектура тематического интеллектуального научного интернет-ресурса (ИНИР) [Загорулько 2016], обеспечивающего содержательный доступ к систематизированным научным знаниям и информационным ресурсам определенной области знаний и к средствам их интеллектуальной обработки и анализа.
Такой ресурс представляет собой информационную систему, включающую три уровня: уровень представления информации; уровень обработки информации; уровень хранения и доступа к информации.
Первый уровень поддерживается пользовательским интерфейсом, который обеспечивает представление пользовательских запросов и результатов их обработки, а также навигацию в информационном пространстве ИНИР (сети знаний и данных).
На втором уровне обеспечиваются различные виды поиска и обработки информации. Эти задачи решают модуль поиска информации в контенте ИНИР, а также средства ее аналитической обработки и анализа, реализованные, в том числе, в виде web-сервисов.
Третий уровень обеспечивается хранилищем данных и библиотекой методов доступа к этому хранилищу, реализующих полный набор операций по извлечению, пополнению и модификации знаний и данных.
Согласно предложенной концепции основу ИНИР составляет онтология, которая служит не только для формализации и систематизации различных видов знаний, данных и средств обработки и анализа информации, интегрируемых в ИНИР, но и для организации удобного содержательного доступа к ним.
При реализации основных компонентов ИНИР были использованы средства технологии Semantic Web [Hitzler et al., 2009], хорошо зарекомендовавшие себя при разработке не только интеллектуальных интернетприложений, но и прикладных интеллектуальных систем.
Технология Semantic Web была выбрана, прежде всего, потому, что она предоставляет достаточно удобные и выразительные средства представления знаний и данных, в частности, языки описания онтологий RDF, RDF(S) и OWL [Лапшин, 2010]. Эти языки стали уже стандартными средствами описания онтологий, что обеспечивает возможность понимания и переиспользования онтологий другими разработчиками.
Кроме того, применение языка OWL [Antoniou et al., 2003] позволяет использовать существующие в свободном доступе машины вывода, с помощью которых можно не только выводить новые знания, но и контролировать корректность и целостность всей системы знаний ИНИР.
Другим важным преимуществом применения средств технологии Semantic Web является возможность использования хранилищ данных (RDF-хранилищ), в которых данные представляются в виде множества триплетов (утверждений вида субъект-предикат-объект
), отвечающих известной модели данных RDF. Такая структура обладает большой гибкостью представления данных и знаний, благодаря чему позволяет хранить вместе как описания онтологий и тезаурусов, выполненные на языке OWL, так и контент ИНИР. Как правило, в такие хранилища встроены машины вывода, что дает им дополнительные преимущества.
Важным аргументом в пользу RDF-хранилищ является и тот факт, что для работы с ними можно использовать стандартный язык запросов SPARQL [SPARQL, 2008], не зависящий от конкретной реализации хранилища.
Несмотря на указанные выше неоспоримые преимущества средств технологии Semantic Web, при их использовании возникали проблемы, связанные с тем, что предложенная концепция представления знаний и данных в ИНИР и их визуализации пользователю, не всегда удобно укладывалась в возможности этих средств.
В статье описывается опыт применения средств технологии Semantic Web при построении тематических ИНИР, а также решения возникших при этом проблем.
Чтобы онтология обеспечивала указанные выше функции, она должна обладать высокой выразительностью и гибкостью в представлении разнородных знаний. Как было сказано выше, для построения онтологий используется язык OWL. Однако, создание онтологии для инженеров знаний, а тем более экспертов в моделируемых областях знаний, остается довольно сложным и трудоемким процессом, так как OWL обеспечивает представление только базовых (простых) сущностей. Для облегчения данного процесса, предложен набор оригинальных методик и паттернов разработки онтологий, поддерживающих представление сложных понятий и отношений, а также методология построения онтологии ИНИР на основе представительного множества базовых онтологий.
Использование указанных методик и паттернов не только упрощает разработку онтологий, но и повышает уровень контроля данных, вводимых в онтологию, а также обеспечивает необходимый уровень представления информации конечному пользователю.
Для любого атрибута класса удобно задавать область допустимых значений. Если такая область имеет конечное число значений, ее принято называть доменом. Домен характеризуется названием и множеством элементарных значений. Введение доменов не только позволяет контролировать ввод информации, но и повышает удобство этой операции – инженер знаний или эксперт вместо того, чтобы каждый раз вспоминать (или придумывать) значение того или иного атрибута объекта, просто выбирает его из списка значений, заданного в домене.
Так как в OWL для задания таких доменов нет специальных средств, домены задаются перечислимым классом, т.е. классом, который задается перечислением своих элементов (индивидов). Причем, этот класс является наследником служебного класса «Домен», который, в свою очередь, является наследником класса «Служебный класс».
Примерами доменов являются классы Должность
, Тип организации
, Тип публикации
и Язык публикации
, которые включают соответственно виды должностей в организации, типы организаций, типы и языки публикаций.
При описании научной деятельности часто возникает потребность в представлении атрибутированных отношений между понятиями (объектами). Для этих целей, как правило, используются обычные бинарные отношения, снабженные атрибутами, специализирующими связь между аргументами отношения.
Примером атрибутированного отношения может служить отношение работает в Организации
: работает в Организации (arg1: Персона: Мелентьев .А.
, arg2: Организация: ИСЭМ СО РАН
; <должность: директор, дата начала: 1960, дата окончания: 1973 >).
Так как в языке OWL нет возможности задания атрибутов для отношений, нами был предложен специальный паттерн.
Данный паттерн для представления таких отношений предусматривает введение вспомогательного класса ОтношениеСАтрибутами
, которое является наследником класса Служебный класс
. А для представления конкретного типа отношения вводится класс, являющийся наследником класса ОтношениеСАтрибутами
.
Заметим, что данный паттерн отличается от паттерна qualified relation
[Dodds, 2012], предложенного в сообществе Linked Data, возможностью сохранения порядка аргументов в отношении. В паттерне qualified relation
связи направлены от вспомогательного объекта к объектам-аргументам моделируемого отношения. В предлагаемом паттерне связи направлены от первого объекта-аргумента к вспомогательному, а затем от него ко второму объекту-аргументу. Благодаря этому, сохраняется информация об ориентированности отношения, что важно для представления пользователю полной информации о характере связи между объектами.
Аналогичным образом строятся паттерны многоместных отношений, паттерны для представления событий и др.
Для более удобного представления информации пользователю выполняется настройка визуализации знаний и данных, хранящихся в контенте ИНИР. При настройке визуализации в редакторе онтологии для каждого класса задается шаблон визуализации объектов этого класса и шаблон визуализации ссылок на них.
Шаблон визуализации объектов класса (информационных объектов) включает все атрибуты этого класса и связанные с ним отношения. Различают прямые
(направлены от данного класса к другим классам) и обратные
(направлены от других классов к данному) отношения. При визуализации классов и информационных объектов отношения группируются по этим двум видам.
По умолчанию, атрибуты классов и связанные с ними отношения, в том числе и атрибуты отношений, отображаются в том порядке, в котором они заданы в онтологии. По желанию пользователя этот порядок может быть изменен.
Необходимый порядок атрибутов задается при помощи специально выделенного для этой цели свойства (annotation property) под названием order. Значением этого свойства является число, задающее номер позиции в последовательности атрибутов. Эти свойства задаются для простых значений (datatype property).
Шаблон визуализации ссылки на объект какого-либо класса может включать как атрибуты данного класса, так и атрибуты связанных с ним классов и заданных между ним и другими классами отношений. Существует два вида ссылок — полные и краткие. Полные ссылки используются при отображении списка экземпляров заданного класса, краткие — при ссылке на экземпляр из другого экземпляра. Для полных ссылок выделено свойство link, для кратких — shortlink. Значением этих свойств также является число, задающее порядок компонентов в ссылке. Эти свойства могут быть заданы как для простых значений (datatype property), так и для объектных свойств (object property), т.е. отношений. Значения атрибутов, включенных в ссылку, используются для построения текстового представления ссылки на объект данного класса при его отображении (визуализации) на экране.
Для навигации, поиска и редактирования контента ИНИР необходимо иметь возможность обращаться к хранилищу данных в терминах понятий онтологии. Для этих целей были выделены типы SPARQL-запросов, необходимые для решения указанных задач, и на их основе разработан набор типовых шаблонов. Параметрами таких шаблонов являются идентификаторы классов, экземпляров, связей, идентификаторы значений атрибутов и сами значения.
Шаблоны запросов представляют собой промежуточное звено между механизмом визуализации и хранилищем данных ИНИР; их совокупность образует специализированный язык запросов, где запрос конструируется как интуитивно понятная модель искомого результата. Был составлен набор базовых шаблонов, каждый из которых описывает какой-либо конструктивный элемент онтологии: существуют базовые шаблоны для классов, связей и атрибутов онтологии, а также для их экземпляров.
Формируя дерево из базовых шаблонов, можно составить более сложные запросы. Корнем дерева запроса всегда должен быть шаблон элемента онтологии, являющегося предметом запроса. Например, чтобы получить список классов, нужно сформулировать запрос таким образом, чтобы его корнем был шаблон класса.
Были разработаны алгоритмы трансляции запросов, сформулированных в виде шаблонов, в запросы на языке SPARQL и трансляции результатов запросов в интуитивно понятный формат, который можно использовать при визуализации.
Рассмотрим, к примеру, запрос на получение всех экземпляров заданного класса онтологии. Корнем дерева запроса, которое в данном случае состоит только из одного узла, должен быть шаблон экземпляра класса. В качестве параметра запроса в шаблоне следует определить идентификатор класса (ID). После трансляции данного шаблона в SPARQL получим запрос, представленный на рис. 2.
Результатом такого запроса должен быть список ссылок на экземпляры заданного класса и всех его подклассов. В соответствии с шаблоном визуализации ссылки (п. 1.3) для того, чтобы отобразить ссылку на экземпляр класса необходимо получить значения всех свойств, составляющих ссылку, и расположить их в заданном порядке. Также, требуется извлечение названий всех атрибутов и связей, входящих в шаблон визуализации ссылки. На рис. 2 приведена основная часть запроса, опущены фильтрация результатов и их группировка.
Таким образом, разработанный язык запросов не только позволяет формулировать запросы интуитивно понятным образом, но и скрывает от разработчика пользовательского интерфейса большую часть параметров.
Для навигации по онтологии ИНИР должна быть обеспечена возможность получения всех ее классов. Эти классы извлекаются из хранилища при помощи подсистемы обработки запросов, которая реализует язык, описанный в п. 2.1. При выполнении запроса данная подсистема еще и фильтрует служебные классы, использованные для реализации доменов и атрибутированных отношений (см. п.п.1.1 и 1.2). Результат представляется в виде древовидной структуры.
При выборе пользователем какого-либо класса выполняется запрос на получение всех его экземпляров. Представление списка этих экземпляров зависит от настроек, заданных в онтологии (annotation property link).
При выборе конкретного экземпляра класса выполняется запрос на получение всех его атрибутов, прямых и обратных отношений. Порядок отображения атрибутов, как и отображение названий сущностей, с которыми связан текущий экземпляр, также определяется настройками визуализации (см. п. 1.3).
Пользователю предоставляется возможность поиска объектов определенного класса, обладающих заданными свойствами. При этом он может задать ограничения на значения атрибутов искомых экземпляров и на значения атрибутов, связанных с ними экземпляров, через специальный графический интерфейс.
Чтобы пользователь мог составить корректный поисковый запрос такого типа, через подсистему обработки запросов извлекается информация о классе, экземпляры которого требуется найти. Эта информация включает список всех атрибутов данного класса, с указанием типов допустимых значений (для доменов – список его элементов) и список возможных отношений данного класса с другими классами (как прямых, так и обратных).
Структуру поискового запроса можно представить в виде дерева. Корневым узлом является класс, экземпляры которого требуется найти. Запрос формируется путем указания ограничений на значения атрибутов: строго равно, не равно, больше или меньше определ?нного значения, а также ограничения на вхождение подстроки. Для атрибутов со значениями из домена можно задать только два типа ограничений: строго равно или не равно конкретному элементу из домена. Для одного атрибута можно задать несколько ограничений, в этом случае результатом поиска будут экземпляры, атрибуты которых удовлетворяют сразу всем ограничениям.
В статье рассмотрены опыт использования технологии Semantic Web для построения тематических интеллектуальных научных интернет-ресурсов, возникшие при этом проблемы и подходы к их решению. Особое внимание было уделено проблемам применения средств Semantic Web при разработке онтологии и пользовательского интерфейса ИНИР, а также обеспечения доступа к хранилищу данных. В качестве такого хранилища было использовано RDF-хранилище Jena Fuseki [Fuseki, 2016], поддерживающее стандартный язык запросов SPARQL, редактирование данных и логический вывод.