Визуальный язык классификаторов и проекций для разработки баз знаний
Исследование языка визуального проектирования и наполнения онтологий для разработки баз знаний. Разработка схемы соответствия предложенного языка элементам языка OWL. Иллюстрация и оценка результатов программной реализации языка в системе ОРГ-Мастер.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 18.01.2018 |
Размер файла | 582,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
ВИЗУАЛЬНЫЙ ЯЗЫК КЛАССИФИКАТОРОВ И ПРОЕКЦИЙ ДЛЯ РАЗРАБОТКИ БАЗ ЗНАНИЙ
Д.В. Кудрявцев (dmitry.ku@gmail.com)
Санкт-Петербургский Государственный
Политехнический Университет,
Л.Ю. Григорьев (griglev@gmail.com)
Бизнес Инжиниринг Групп,
Санкт-Петербург
В работе предлагается язык визуального проектирования и наполнения онтологий для разработки баз знаний. Также в статье приводится схема соответствия предложенного языка элементам языка OWL, иллюстрируется программная реализация языка в системе ОРГ-Мастер, а также описываются результаты внедрения системы в бизнесе и органах государственной власти.
визуальный язык знание программный
ВВЕДЕНИЕ
В настоящее время одним из основных компонентов баз знаний являются онтологии [Гаврилова, 2001], [Davis et al, 2003]. Для представления онтологий в базах знаний используются специальные языки: RDFS [Brickley et al., 2004], OWL [Dean et al., 2004], Gellish [Van Renssen, 2005], CycL [CycL, 2002]. Указанные языки эффективны для решения задач автоматизированной интеграции информации, обмена (interchange) знаниями и выполнения логического вывода (reasoning). Однако для работы разработчика и пользователя базы знаний требуется визуальное представление онтологий, которое может быть реализовано как с помощью специальных визуальных языков (IDEF5 и др.), так и с помощью методов визуализации онтологий, представленных в стандартных машиночитаемых языках [Katifori et al, 2007].
Проблема существующих визуальных методов представления онтологий заключается в том, что основной акцент в них сделан на задаче проектирования онтологии, а важность формата представления знаний для наполнения онтологии экземплярами недооценивается и отдается на откуп разработчикам редакторов онтологий и баз знаний. В результате этого при разработке масштабных баз знаний (более 1000 элементов) в существующих инструментах возникают сложности при наполнение онтологий.
В статье предлагается язык классификаторов и проекций для визуальной разработки баз знаний на основе онтологий, в котором в явном виде задается формат для визуальной работы с экземплярами онтологии.
1. ОБЗОР ВИЗУАЛЬНЫХ МЕТОДОВ ПРЕДСТАВЛЕНИЯ ОНТОЛОГИЙ
В работе [Гаврилова и др., 2008] был представлен комплексный обзор визуальных методов работы со знаниями, в котором онтологии были указаны в качестве одного из способов визуального структурирования знаний. Для визуального представления онтологий могут использоваться специальные визуальные языки, а также методы визуализации онтологий, представленных в стандартных машиночитаемых языках.
1.1 Визуальные языки представления онтологий
В рамках методологии IDEF для построения онтологий был создан язык IDEF5 [Верников, 1999], который включает в себя 2 специальных онтологических языка: схематический язык (Schematic Language-SL) и язык доработок и уточнений (Elaboration Language-EL). SL является наглядным графическим языком, специально предназначенным для изложения компетентными специалистами в рассматриваемой области системы основных данных в форме онтологической информации. Этот язык позволяет естественным образом представлять основную информацию в начальном развитии онтологии и дополнять существующие онтологии новыми данными. EL представляет собой структурированный текстовой язык, который позволяет детально характеризовать элементы онтологии. Основная цель всех этих диаграмм - наглядно и визуально представлять основную онтологическую информацию. Хотя стандарт IDEF5 и создавался специально для графического моделирования онтологий, однако, он имеет очень мало инструментальных средств поддержки и, соответственно, существующих способов взаимодействия с другими методологиями.
Язык UML [Буч и др., 2001] используется для объектно-ориентированного моделирования при разработке информационных систем. Диаграмма классов данного языка традиционно используется для разработки и представления онтологий. Диаграмма классов определяет типы классов системы и различного рода статические связи, которые существуют между ними. На диаграммах классов изображаются также атрибуты классов, операции классов и ограничения, которые накладываются на связи между классами.
Разработчиками системы для работы с концептуальными картами (cmap.ihmc.us) предложено визуальное представление синтаксиса языка OWL c помощью шаблонов, интегрированных в редактор концептуальных карт [Hayes et al, 2005]. Данный визуальный язык представления онтологий реализован в Concept-map Ontology Environment (cmap.ihmc.us/coe/).
1.2 Обзор методов визуализации онтологий
Детальный обзор методов визуализации онтологий сделан в работе [Katifori et al, 2007], в рамках которой выделяется 6 категорий методов визуализации онтологий и рассматриваются из достоинства и недостатки:
Иерархический список (Indented List): многие инструменты визуализации онтологий, в том числе Protege, OntoEdit, Kaon и некоторые другие, предлагают в качестве основного способа визуализации представления в стиле Проводника в Windows. При этом таксономия онтологии представляется как дерево.
Узлы-связи и деревья (Node-link and Tree): методы этой категории отображают онтологию как набор соединяющихся узлов, представляющих иерархию классов в виде вертикально- или горизонтально-размещенного дерева. Пользователю обычно предоставляется возможность разворачивать и сворачивать узлы и поддеревья для управления детализацией информации. 2-х мерная реализация данного метода осуществляется в OntoViz, IzaVis, SpaceTree, 3-х мерная в OntoSphere.
Масштабируемые (Zoomable): методы данной категории отражают иерархию классов и экземпляры через визуальную вложенность объектов (диаграммы Вена, «меньшие коробочки размещаются в больших»). При выборе объекта он увеличивается в размере (zoom-in), позволяя более детально рассмотреть свои компоненты (подклассы и экземпляры). Примеры систем и соответствующих методов: Grokker, Jambalaya, CropCircles.
Заполнение пространства (Space-filling): идея данной группы методов заключается в использовании всего пространства экрана путем разделения пространства каждого узла между его потомками в зависимости от свойств узла, например, количества потомков и т.п. Примеры: TreeMaps, Information Slices.
Фокусирование+контекст (Focus + Context): данная группа техник основана на понятии искажения (distorting) графа с целью фокусировки на определенном узле и представления его контекста (окружении). Фокусный узел отображается в центре, а связанные с ним элементы располагаются вокруг него и их размер уменьшается по мере удаления от фокуса. Для увеличения какого-либо узла пользователь должен сделать его фокусным.
Примеры: Touchgraph / TGVizTab (2-х мерный), 3D Hyperbolyc Tree.
Трёхмерные информационные ландшафты (3D Information Landscapes).
По результатам обзора можно сделать заключение, что в настоящий момент отсутствует визуальный язык или метод представления онтологии, который может быть использован как на этапе разработки онтологии, так и на этапе ее наполнения, который обеспечит также машинную обработку онтологий и позволит работать с масштабными онтологиями (более 1000 элементов).
2. ОПИСАНИЕ ВИЗУАЛЬНОГО ЯЗЫКА КЛАССИФИКАТОРОВ И ПРОЕКЦИЙ ДЛЯ РАЗРАБОТКИ БАЗ ЗНАНИЙ
Визуальный язык классификаторов и проекций содержит следующие элементы:
L :: = <TYPES, CL, PR, TASKS, SPEC >,
где: TYPES - описание типов, позволяющее представить таксономию верхнеуровневых классов, типы связей между классами, значения свойств классов. Каждому типу ставится в соответствие пиктограмма (графический знак).
CL - классификатор, формат ввода нижнеуровневых классов и экземпляров онтологии, их свойств и иерархических связей между ними. Основные типы связей: «класс-подкласс», «часть-целое», «подчиняется» и т.п.;
CL= {CLiname, Onto-CLi, Base-CLi} - классификатор,
где CLiname - имя классификатора; Onto-CLi - свойства классификатора - часть классификатора, задающая состав типов элементов, перечисляемых в классификаторе, перечень их свойств с областями допустимых значений и типы иерархических связей между элементами; Base-CLi - содержание классификатора - часть классификатора, в которой перечисляются и типизируются моделируемые нижнеуровневые классы, значения их свойств и задается древовидная система связей между классами.
PR - проекция, формат ввода связей между экземплярами онтологии, перечисленными в классификаторах. Примеры типов связей: «выполняет», «обеспечивает достижение», «отвечает за»;
PRj = {PRjname, Onto-PRj, Base-PRj} - проекция,
где PRjname - наименование проекции; Onto-PRj - свойства проекции - часть проекции, определяющая состав связей между типами, перечисляемых в классификаторе элементов; Base-PRj - содержание проекции - часть проекции, содержащая множество связей между элементами, связываемых классификаторов.
TASKS - формат спецификации задач по разработке и использованию онтологии (не рассматривается в рамках данной статьи);
SPEC - формат спецификации запросов к онтологической модели (не рассматривается в рамках данной статьи).
Данный язык используется для структурирования и представления знаний, а также для формирования запросов к онтологической модели.
3. СХЕМА СООТВЕТСТВИЯ ЭЛЕМЕНТОВ ЯЗЫКА КЛАССИФИКАТОРОВ И ПРОЕКЦИЙ КОМПОНЕНТАМ ЯЗЫКА OWL
Табл. 1.
Элементы предложенного языка |
Элементы OWL |
|
TYPES |
||
e-typei + sign |
owl:Class + rdfs:label(пиктограмма) |
|
pt-typek+ sign |
owl:DatatypeProperty + rdfs:label(пиктограмма) |
|
rel-typej+ sign |
owl:ObjectProperty + rdfs:label(пиктограмма) |
|
(«является», e-typei1, e-typei2) |
rdfs:subClassOf (owl:Class, owl:Class) rdfs:subPropertyOf |
|
CL |
||
Onto-CL |
||
typeCli |
owl:Class ИЛИ owl:DatatypeProperty ИЛИ owl:ObjectProperty |
|
{(typeCLi, pt-typek, pt-typeVALk)} |
owl:DatatypeProperty (rdfs:domain, rdfs:range) |
|
{(rel-typej, typeCLi1, typeCLi2)} |
owl:ObjectProperty (rdfs:domain, rdfs:range) граф, создаваемый на основе указанной связи должен быть деревом |
|
Base-CL |
||
{ECli} - элементы классификатора |
rdf:ID (Индивиды) ИЛИ owl:DatatypeProperty ИЛИ owl:ObjectProperty |
|
(«имеет тип», ECLi, e-typei) |
rdf:type(Ei, C0i) |
|
(rel-typej, ECi1, ECi2) |
owl:ObjectProperty (E1, E2) получаемый граф, должен быть деревом |
|
PR |
||
Onto-PR |
||
(rel-typej, typeCLi1, typeCLi2,) |
owl:ObjectProperty (rdfs:domain, rdfs:range) Иногда: owl:DatatypeProperty (rdfs:domain, rdfs:range) |
|
Base-PR |
||
(rel-typej, ECi1, ECi2,) |
owl:ObjectProperty (E1, E2) Иногда: owl:DatatypeProperty (E1, E2) |
4. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ ЯЗЫКА КЛАССИФИКАТОРОВ И ПРОЕКЦИЙ В СИСТЕМЕ ОРГ-МАСТЕР
Язык визуального проектирования и наполнения баз знаний реализован в системе ОРГ-Мастер.
Рис. 1. Типы (TYPES) для разработки и визуализации верхнеуровневых классов
Рис. 2. Пример классификатора (CL) бизнес-процессов предприятия
При создании нижнеуровневой онтологии (левое окно на Рис. 2) происходит типизация элементов с помощью верхнеуровневой онтологии (правое окно на Рис. 2). С точки зрения механизма визуализации, устанавливается связь между элементами 2-х иерархических списков.
Для визуализации перекрестных связей между классами используются проекции. Связи в проекции могут быть направленными и ненаправленными, типизированными и нетипизированными.
Рис. 3. Пример проекции (PR), связывающей бизнес-процессы предприятия с целями
5. ВНЕДРЕНИЕ
Предложенный язык и технология визуального проектирования баз знаний используется для представления знаний о предприятии или органе государственной власти в задачах проектирования его организационной структуры, оптимизации бизнес- или административных процессов и формирования организационно-нормативной документации (регламенты деятельности, положения о подразделениях, должностные инструкции) [Григорьев и др., 2008].
С использованием системы разработано более 10 административных регламентов для Федеральной миграционной службы, Федеральной регистрационной службы, Федерального агентства по физической культуре и спорту, Федеральной службы по труду и занятости и других организаций. Коммерческими организациями-пользователями системы являются: Бизнес-Инжиниринг Групп, группа предприятий ГОТЭК, «Группа «Илим», Киришская ГРЭС, ЗАО «Евросиб», ОАО «Иркутскэнерго», ОАО «Газаппарат», «АСТРА Холдинг», Торговый дом «Петровский», Холдинг ПЕКАР и др.
Разработкой и сопровождением модели предприятия (базы знаний) занимаются пользователи бизнес-аналитики, не владеющие специальными знаниями в области представления знаний.
Масштаб создаваемых моделей достигает десятков тысяч элементов, например, классификатор функций на одном из предприятий включал более 20 000 позиций.
ЗАКЛЮЧЕНИЕ
Предложенный в статье визуальный язык представления онтологий основан на использовании иерархических списков [Katifori et al, 2007] и связей между списками. Иерархические списки используются как для представления классов, так и для представления экземпляров.
Основные преимущества визуализации иерархическим списком - простота реализации и привычность для пользователя, поскольку такой же подход используется в многочисленных файловых браузерах (Проводник Microsoft Windows, Total Commander…). Данный метод дает ясное представление имен классов и их иерархии. В отличие от других методов визуализации, в иерархическом списке имена классов не перекрывают друг друга и чтобы их увидеть не нужно наводить курсор на соответствующий объект. Возможность свернуть/развернуть узел - полезное свойство для рассмотрения определенной части иерархии, особенно для масштабных онтологий. Простота таких интерфейсов делает их удобными для быстрого обзора. Основная проблема визуализации иерархическим списком - представление только древовидных структур, но не сетевых. В существующих редакторах онтологий, использующих визуализацию иерархическим списком, нет визуализации перекрестных связей. Они видны только как слоты классов. Однако данная проблема устранена в предложенном языке и технологии визуализации с помощью специального конструкта - проекции.
Таким образом, предлагаемый способ визуализации онтологии позволяет устранить главный недостаток использования иерархических списков, сохранив его преимущества. По простоте и наглядности разработанный инструмент близок средствам когнитивного моделирования (mindmappers, concept mappers), а по объему явно представленной семантики приближается к редакторам онтологий.
БЛАГОДАРНОСТИ
Работа выполнена при финансовой поддержке РФФИ (проект №08-07-00062-а).
СПИСОК ЛИТЕРАТУРЫ
[Буч и др., 2001] Буч Г., Рамбо Д., Джекобсон А. UML: Руководство пользователя. - М.: ДМК Пресс, 2001.
[Верников, 1999] Верников Г. Стандарт онтологического исследования IDEF5. 1999. http://citforum.ncstu.ru/cfin/idef/idef5.shtml.
[Гаврилова, 2001] Гаврилова Т.А. Использование онтологий в системах управления знаниями // Труды международного конгресса «Искусственный интеллект в XXI веке», Дивноморское, Россия. - М.: Физматлит, 2001.
[Гаврилова и др., 2008] Гаврилова Т.А., Гулякина Н.А. Визуальные методы работы со знаниями: попытка обзора // Искусственный интеллект и принятие решений. 2008. № 1.
[Григорьев и др., 2008] Григорьев Л. Ю., Кудрявцев Д. В. Автоматизированная система поддержки организационного проектирования на основе онтологий // Труды Международной конференции AIS/CAD '08, 3-10 сентября 2008 г., пос. Дивноморское, Россия. - М.: Физматлит, 2008.
[Brickley et al., 2004] Brickley D. Guha R.V. RDF Vocabulary Description Language 1.0: RDF Schema W3C Recommendation 10 February 2004 http://www.w3.org/TR/rdf-schema/.
[CycL, 2002] СycL http://www.cyc.com/cycdoc/ref/cycl-syntax.html.
[Davis et al, 2003] Davies J. (Editor), Fensel D. (Editor), van Harmelen F. (Editor), 2003 Towards the Semantic Web: Ontology-driven Knowledge Management, John Wiley and sons Ltd: England, 2003.
[Dean et al., 2004] Dean M., Schreiber G. (eds), van Harmelen F., Hendler J., Horrocks I., McGuinness D., Patel-Schneider P., Stein L., OWL Web Ontology Language Reference. http://www.w3.org/TR/owl-ref/ Перевод: Дмитрий Щербина. OWL, язык веб-онтологий. Руководство. Рекомендация W3C 10 февраля 2004. http://sherdim.rsu.ru/pts/semantic_web/REC-owl-guide-20040210_ru.html.
[Hayes et al, 2005] Hayes P., Eskridge T., Saavedra R., Reichherzer T., Mehrotra M., Bobrovnikoff D. Collaborative knowledge capture in ontologies. K-CAP 2005.
[Katifori et al, 2007] Katifori A., Halatsis C., Lepouras G., Vassilakis C., Giannopoulou E. Ontology visualization methods - a survey. ACM Comput. Surv. 2007. № 39(4).
[NeOn] http://www.neon-project.org/nw/About_NeOn.
[Van Renssen, 2005] Van Renssen A., Gellish: A Generic Extensible Ontological Language. Delft University Press, 2005. http://www.gellish.net/.
Размещено на Allbest.ru
...Подобные документы
Методика разработки и частичная реализация транслятора для языка "С" с использованием языка "С++", производящего разбиение на минимальные неделимые конструкции языка исходной цепочки символов основываясь на лексике языка. Анализ работы программы.
курсовая работа [841,3 K], добавлен 19.03.2012Особенности языка ассемблера. Классификация основных информационных систем. Выбор средств разработки автоматизированной справочной системы. Выбор средства проектирования и разработки приложения. Технические условия работы и порядок работы с программой.
дипломная работа [222,2 K], добавлен 25.03.2013Общее описание и характеристики языка программирования (Ф-язык). Конструкции и элементы данного языка, порядок их взаимосвязи, разновидности и главные функции. Микрооперации Ф-языка, их назначение и особенности реализации. Графические схемы алгоритма.
контрольная работа [67,5 K], добавлен 13.09.2008Особенности разработки автоматизированной справочной системы по основным элементам языка ассемблера, анализ среды Borland Delphi 7.0. Способы определения трудоемкости разработки программного продукта: этапы расчета сметной стоимости, планирование цены.
дипломная работа [3,2 M], добавлен 03.04.2013Использование в операционной системе UNIX языка программирования СИ. Требования к квалификации программиста. Механизм ветвления по условиям, циклы, составные инструкции. Особенности языка СИ. Доступ к памяти компьютера через использование указателей.
презентация [108,6 K], добавлен 22.05.2015Общие данные об основных операторах языка SQL. Интерактивный режим работы. Использование языка SQL для выбора информации из таблиц, для вставки, редактирования и удаления данных в них. Связь между операциями реляционной алгебры и операторами языка SQL.
реферат [146,5 K], добавлен 06.02.2015Разработка программы автоматизации процесса проверки знаний учащихся. Использование языка программирования Borland Delphi 7.0, его свойства, компоненты для работы со строками. Создание обучающих тестов на знание лексики и грамматики английского языка.
курсовая работа [521,0 K], добавлен 06.03.2016Этапы разработки синтаксических и лексических анализаторов, семантических процедур для сканера, а также проектирование алгоритма, реализующего синтаксический анализ методом простого предшествования с помощью языка программирования высокого уровня.
курсовая работа [286,6 K], добавлен 24.09.2010Методика разработки программы по поиску информации из базы данных, содержащей информацию о телевизорах. Использование языка программирования "С++" и среды разработки Qt Creator "С++" - статически типизированного языка программирования общего назначения.
курсовая работа [626,1 K], добавлен 22.12.2011Методы разработки автоматизированных систем. Характеристика языка программирования Delphi и операционной системы Windows. Разработка автоматизированной системы контроля знаний на примере дисциплины "История мира". Этапы разработки программного продукта.
курсовая работа [3,8 M], добавлен 18.05.2014Изучение общей структуры языка программирования Delphi: главные и дополнительные составные части среды программирования. Синтаксис и семантика языка программирования Delphi: алфавит языка, элементарные конструкции, переменные, константы и операторы.
курсовая работа [738,1 K], добавлен 17.05.2010Структура, классификация и требования к реализации компилятора. Проектирование и реализация анализирующей части компилятора языка С++. Способы реализации лексического анализа. Алгоритм работы синтаксического анализатора. Принципы программной реализации.
курсовая работа [774,2 K], добавлен 26.01.2013Построение баз знаний для семантической сети. Цели создания и язык представления онтологий. Структура исследований в области многоагентных интеллектуальных информационных систем, архитектура агента. Экономическое обоснование разработки базы знаний.
дипломная работа [1,6 M], добавлен 29.09.2013Формализации в онтологии областей знаний с помощью концептуальной схемы. Определение атрибутов класса и свойств экземпляров. Создание экземпляров класса и DL-Query запросов. Методика использования для разработки онтологии среды разработки Protege.
курсовая работа [2,0 M], добавлен 18.06.2014Ознакомление со структурой языка программирования Turbo-Pascal 7.0, его алфавитом, выражениями и простейшими конструкциями (метками, идентификаторами). Способы описания арифметических, вещественных, логических и символьных операций в программной среде.
реферат [68,2 K], добавлен 07.02.2011Символьный тип данных как составляющая языка программирования: управляющие символы, лексемы и разделители. Разработка программного обеспечения для практической реализации решения задач, содержащих символьные величины языка программирования Turbo Pascal.
курсовая работа [37,7 K], добавлен 03.05.2012Язык структурированных запросов SQL (Structured Query Language) и его место в сфере доступа к информации в реляционных базах данных. Структура и основные типы данных языка. Синтаксис и семантика главных операторов SQL, последние стандарты языка.
реферат [98,7 K], добавлен 29.03.2012Особенности разработки информационных систем с использованием унифицированного языка моделирования UML. Основные этапы рационального унифицированного процесса разработки информационных систем с примерами и иллюстрациями. Реализация информационной системы.
методичка [950,2 K], добавлен 23.01.2014Назначение языка SQL. Операторы манипулирования данными. Группировка записей, объединение таблиц, многотабличные и вложенные запросы. Добавление, удаление, определение и обновление данных. Типы данных языка SQL. Методики проектирования, ER-моделирование.
реферат [84,8 K], добавлен 15.12.2015Обоснование и выбор методологии проектирования, структурной схемы системы и разработки модели системы. Разработка сетевого плана выполнения работ, расчет технических характеристик. Описание выбора языка программирования, web–сервера и базы данных MySQL.
дипломная работа [719,0 K], добавлен 20.09.2013