Модель представления знаний в виде семантической сети

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

Известно, что любую конкретную ситуацию в реальном мире, всегда можно представить в виде совокупности взаимосвязанных понятий. Причем число базовых отношенийне может быть бесконечным (оно заведомо меньше 300); все остальные отношения выражаются через базовые в виде их комбинаций. Эта гипотеза служит основой утверждения о том, что семантические сети являются универсальным средством для представления знаний в интеллектуальных системах.

Объекты предметной области, отображаемые семантической сетью, можно условно разделить на три группы:

— Обобщенный объект соответствует собирательному понятию некоторой абстракции реально существующего объекта, процесса или явления предметной области.

— Индивидный объект – это каким-то образом выделенный единичный представитель класса.

— Агрегатный объект — составной объект, образованный из других объектов, которые рассматриваются как его составные части.

Семантические сети систематизируют функции отношений между понятиями с помощью следующих признаков:

• множество — подмножество (типы отношений «абстрактное — конкретное», «целое — часть», «род — вид»);

• индексы (свойства, имена прилагательные в языке и т.п.);

• отношения «близости»;

• отношения «сходства — различия»;

• отношения «причина — следствие»;

• связи, определяющие тип объектов (это есть или класс-подкласс, иметь частью или часть-целое, принадлежать или элемент-множество и т.п.);

• функциональные связи (определяемые обычно глаголами производит, влияет …);

• количественные (больше, меньше, равно …);

• пространственные (далеко от, близко от, за, под, над …);

• временные (раньше, позже, в течение …);

• атрибутивные связи (иметь свойство, иметь значение…);

• логические связи (и, или, не) и др.

Типы связей между объектами семантических сетей могут быть любыми. Но чаще всего применяются следующие основные связи:

— «род-вид». Наличие связи типа «род-вид» между обобщенными объектами А и В означает, что понятие А более общее, чем понятие В. Например, понятие «животное» — это родовое понятие для объекта «птица». Связь «род-вид» обычно обозначают отношением ako (от англ. a-kind-of – «разновидность»).

— «является представителем». Связь «является представителем» существует обычно между обобщенным и индивидным объектом, когда индивидный объект выступает в роли представителя класса. Например, индивидный объект «овчарка Альма» является представителем обобщенного объекта «овчарка». Связь «является представителем» — отношением is_a (от англ. is a – «является», «есть»).

— «является частью».

Характерной особенностью семантических сетей является обязательное наличие в одной сети трех типов отношений:

— класс — элемент класса;

— свойство — значение;

— экземпляр элемента класса.

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

Модель представления знаний в виде семантической сети

Рисунок 1 – Семантическая сеть «Умение летать»

Для реализации семантических сетей существуют специальные сетевые языки: Lisp, PROLOG и др. Широко известны экспертные системы, использующие семантические сети в качестве языка представления знаний: PROSPECTOR, CASNET, TORUS.

Систематизация отношений конкретной семантической сети зависит от специфики знаний предметной области и является сложной задачей. Особого внимания заслуживают общезначимые отношения, присутствующие во многих предметных областях. Именно на таких отношениях основана концепция семантической сети. В семантических сетях декларативные и процедурные знания не разделены, следовательно, база знаний не отделена от механизма.

Проблема поиска решения в базе знаний типа семантической сети сводится к задаче поиска фрагмента сети, соответствующего некоторой подсети, отвечающей поставленному вопросу. Подобного рода задачи решаются с помощью аппарата теории графов. Следует особо отметить роль фундаментальных признаков связей (рефлексивность, симметричность и транзитивность) в процессе вывода на сети. Так, например, связи вида это есть или иметь частью транзитивны, что позволяет говорить об установлении с помощью этой связи свойств иерархии наследования в сети. Это означает, что элементы более низкого уровня в сети могут наследовать свойства элементов более высокого уровня в сети.

Примером простой семантической сети является описание объекта автомобиль и рядя связанных с ним понятий (рисунок 2). На этой сети присутствует следующая цепочка понятий: «автомобиль имеет частью двигатель», «двигатель имеет частью стартер». В силу транзитивности отношения иметь частью можно вывести следующее утверждение «автомобиль имеет частью стартер». Аналогично можно сделать вполне очевидный вывод, что «Иванов обладает автомобилем» или, что «Mercedes имеет частью двигатель и потребляет топливо».

Модель представления знаний в виде семантической сети

Рисунок 2 -Пример простейшей семантической сети

Основное преимущество этой модели – в соответствии современным представлениям об организации долговременной памяти человека и высокой наглядности представления знаний. В современной практике подобная форма представления получила развитие в самых различных приложениях. Недостатком данной модели является сложность поиска решения и вывода на семантической сети.

Пример решения задачи.Задача. Построить сетевую модель представления знаний в предметной области «Ресторан» (посещение ресторана).

Описание процесса решения. Для построения сетевой модели представления знаний необходимо выполнить следующие шаги:

1) Определить абстрактные объекты и понятия предметной области, необходимые для решения поставленной задачи. Оформить их в виде вершин.

2) Задать свойства для выделенных вершин, оформив их в виде вершин, связанных с исходными вершинами атрибутивными отношениями.

3) Задать связи между этими вершинами, используя функциональные, пространственные, количественные, логические, временные, атрибутивные отношения, а также отношения типа «являться наследником» и «являться частью».

4) Добавить конкретные объекты и понятия, описывающие решаемую задачу. Оформить их в виде вершин, связанных с уже существующими отношениями типа «являться экземпляром», «есть», is_a.

5) Проверить правильность установленных отношений (вершины и само отношение при правильном построении образуют предложение, например «Двигатель является частью автомобиля»).

Решение.

1) Ключевые понятия данной предметной области – ресторан, тот, кто посещает ресторан (клиент) и те, кто его обслуживают (повара, метрдотели, официанты, для простоты ограничимся только официантами). У обслуживающего персонала и клиентов есть общие характеристики, поэтому целесообразно выделить общее абстрактное понятие – человек. Продукцией ресторана являются блюда, которые заказывают клиенты. Исходя из этого, вершины графа будут следующими: «Ресторан», «Человек», «Официант», «Клиент», «Заказ» и «Блюдо».

2) У этих объектов есть определенные свойства и атрибуты. Например, рестораны располагаются по определенным адресам, каждое блюдо из меню имеет свою цену. Поэтому добавим вершины «Адрес» и «Цена».

3) Зададим связи между этими вершинами, используя функциональные, пространственные, количественные, логические, временные, атрибутивные отношения, а также отношения типа «являться наследником» и «являться частью».

4) Добавим знание о конкретных фактах решаемой задачи. Пусть имеется два ресторана: «Вкуснятина» и «Вкусная еда», в первом работает официантка Марина, а во втором официант Сергей. Пётр решил пойти в ресторан «Вкусная еда» и сделал заказ официанту на 2 блюда: картофель фри за 30 р., бифштекс за 130 р. Также известны адреса этих ресторанов и их специфика. Исходя из этого, добавим соответствующие вершины в граф и соединим их функциональными отношениями и отношениями типа «например или являться экземпляром». Полученный в результате граф изображен на рисунке 3.

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

Модель представления знаний в виде семантической сети

Рисунок 3 — Семантическая сеть предметной области «Ресторан»

База знаний


Похожие статьи.

Понравилась статья? Поделиться с друзьями: