ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ ДЛЯ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ - Студенческий научный форум

XI Международная студенческая научная конференция Студенческий научный форум - 2019

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ ДЛЯ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ

Кривчиков В.С. 1, Зайцева Т.В. 1, Пусная О.П. 1
1Белгородский государственный национальный исследовательский университет
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Человек для решения какой-либо задачи использует собственные и другие знания. Для выполнения той же работы с помощью компьютера необходимо этим знаниям придать определенную форму, чтобы представить их в компьютере, а также составить программу для компьютера, решающую задачу с использованием знаний.

Представление знаний – это множество соглашений по синтаксису и семантике, согласно которым описываются объекты.[1]

В настоящее время существует большое количество методов представления знаний, одним из которых является использование семантических сетей.

Семантическая сеть представления знаний – это ориентированный граф, в узлах которого находятся имена объектов, а стрелки указывают на отношения между ними.

Вершины – это объекты, дуги – это отношения. Основными видами отношений в семантической сети являются:

IS-A (принадлежит);

PART OF (является частью);

OWN (владеет).

Пример семантической сети представлен на рисунке 1.

Рисунок 1. Пример семантической сети

Для автоматизированного построения семантической сети была выполнена программная реализация данного метода представления знаний. В основе полученной программы лежит база данных, логическая модель (в нотации IDEF1X) которой представлена на рисунке 2.

Рисунок 2. Логическая модель базы данных

Как видно из модели, база данных включает три сущности: типы связей («справочник» типов связей), объекты (содержит список объектов) и связи объектов (отражает отношения между объектами путем сохранения ссылки на дочерний и родительский объект и ссылки на тип связи).

Для работы с базой данных было создано клиентское Windows Desktop приложение на языке C#. Данное приложение позволяет добавлять и удалять объекты, устанавливать соотношения между ними, а также автоматически строить семантическую сеть на основе содержащейся в базе данных информации. Главная форма программы представлена на рисунке 3.

Рисунок 3. Главная форма программы

На данной форме расположены все основные элементы управления: список объектов, в который выводятся все объекты, имеющие хотя бы один дочерний объект; копки управления.

Для создания объектов и связей, а также удаления объектов были созданы отдельные формы. Форма создания объекта состоит из поля ввода и кнопки «Сохранить». В поле ввода записывается название объекта. После нажатия кнопки «Сохранить» происходит проверка существования объекта в базе и в случае его отсутствия сохранение нового объекта.

Удаление объекта происходит путем выбора его из выподающего списка. Данный подход был выбран для более точной индексации объектов и для того чтобы охватить все объекты, а не только те, что имеют дочерние и выводятся в списке на главной форме. Общий вид формы удаления объекта представлен на рисунке 4.

Рисунок 4. Форма удаления объекта

Создание связей между объектами осуществляется путем выбора из выпадающих списков объекта, типа связи и дочернего объекта. После чего необходимо сохранить связь в базу данных нажатием кнопки «Сохранить». Общий вид формы создание связей представлен на рисунке 5.

Рисунок 5. Форма создание связи

Форма демонстрации семантической сети изначально пустая. Все объекты выставляются программно. Для показа узлов используется элемент Label, для демонстрации связей используется System.Drawing.Line. Красным цветом обозначены связи Part of, зеленым – Is-A. Другие типы связей в текущей реализации предусмотрены не были. Цвет линий назначается программно. Для первых трех типов связей (по идентификатору в базе данных) предусмотрены зеленый, красный и синий цвета соответственно. Для остальных различные их производные. Всего предусмотрено 50 цветов. Общий вид формы демонстрации семантической сети с семантической сетью «Панорамное изображение» представлен на рисунке 6.

Рисунок 6. Форма демонстрации семантической сети

Таким образом была получена программа для автоматизированного построения семантических сетей на основе базы знаний (роль которой выполняет база данных MySQL). Полученная реализация построена на клиент-серверной архитектуре, что позволяет множеству пользователей работать с единой базой. В дальнейшем программа может быть доработана, а именно добавлено разграничение прав на создаваемые объекты, добавление ролей пользователей и другого функционала.

Полученная реализация, в отличии от существующих аналогов, выполняет автоматизированное построение семантической сети на основе понятий и связей между ними.

Список литературы

Методы представления знаний [Электронный ресурс] / Режим доступа: https://studfiles.net/preview/5584677/page:6/

Руководство по программированию на C# [Электронный ресурс] / Режим доступа https://msdn.microsoft.com/ru-ru/library/67ef8sbd.aspx

Windows Forms [Электронный ресурс] / Режим доступа https://msdn.microsoft.com/en-us/library/dd30h2yb%28v=vs.110%29.aspx

Просмотров работы: 93