Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Conspekt.doc
Скачиваний:
11
Добавлен:
31.08.2019
Размер:
1.39 Mб
Скачать

3.10.2Семантические сети

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

  1. is–a (есть или является) (Мухтар есть собака)

  2. has part of (характеризует отношение между частью и целым)

Представим фразу - “все ласточки птицы”, в виде следующего графа.

Фраза “Ласточка Юко-птица” может быть представлена:

добавим также фразу, что “все птицы имеют перья” .

Добавим новые объекты

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

has part of

Падежн.

рамка

В семантических сетях выделяют следующие основные виды отношений:

  • лингвистические (агент – лицо, объект, произв.действие) объект – то над чем производится действие; инструмент – то чем выполняется действие; условие – т.е. предпосылка, причина, способствующие осуществлению действия; место – место совершения действия.

  • теоретикомножественные (включение во множество).

  • логические (логические операции).

  • кватифицированные (связанные с применением логики предикатов 1-го порядка).

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

Все ласточки изучаются, но конкретно Юко может не изучаться.

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

Например:

Чем владеет Юко?

агент

объект

= гнездо

3.10.3 Представление знаний фреймами

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

(<имя фрейма>{(<имя слота><значение><процедуры>)}…)

Для наглядности фреймы часто представляют в виде таблиц.

<имя фрейма>

<имя слота>

Указатель

наследов.

Тип

значение

Если

добавлено

Если

удалено

Если

нужно

is-a

U,S,R

Pointer

A

дочерн.

List

присоед.

процедура

Lisp

AVE

<имя фрейма> и <имя слота> - это уникальные идентификаторы.

Среди слотов существуют системные слоты, которые создает сама фреймовая система.(дата создания, владелец, комментарии…).

Фреймы могут образовывать иерархические структуры, и для этого использовать слот is-a, он указывает на фрейм родитель. Аналог - слоты, котрые указывают на дочерние фреймы. Со слотом всегда связана какая-либо процедура (если она создана на Lisp, то ее тип Lisp, а значение – имя.

Указатель наследования используется в том случае, когда фреймы образуют иерархическую структуру. В нем указывается, какие свойства родителей наследует дочерний фрейм:

U – означает, что значение слота является уникальным, и это свойство не может быть позаимствованно у родительского слота;

S – значение слота такое же как у родителя;

R – означает диапазон. И этот диапазон задан фреймом родите-лем. Соответственно свойства слота могут находиться только в данном диапазоне.

Cо слотом могут быть связаны два типа процедур:

  • процедуры слуги;1

  • процедуры демоны.

Процедуры слуги – это обычные процедуры, которыезапускаются по мере необходимости.

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

Процедура “Если добавлено” запускается автоматически, если слот приобретает какое-либо значение. Процедура “Если удалено” запускается автоматически, если удалено значение из слота. Процедура “Если нужно” запускается, когда происходит обращение к слоту и требуется выяснить его значение, а значение еще не определено. Некотрые из клеточек таблицы могут быть пустыми. В качестве значения слота может быть имя другого фрейма.

Рассмотрим следующий пример иерархической структуры фреймов.

Это родительский фрейм, который может быть незаполненным. Этот фрейм только обозначил слоты.

Конференция

Дата

Место

Тема

Выступление

Цель

Спонсоры

Тема

ИИ

Тема

Автом-ка

Дата

25-30.10.99

Место

Львов

Тема

Выступл.

Вывод в семантических (фреймовых) сетях осуществляется с помощью 3-х механизмов:

  1. Механизма наследования;

  2. С помощью процедур демонов.

  3. С помощью присоединенных процедур, путем передачи сообщений.

Рассмотрим 3-й способ:

АА (имя)

ВВ

is-a

FRAME

A

Рассчет

LISP

Вычислить

is-a

FRAME

B

X

LIST

10,30,20,25

LISP

AVE

Предполагается, что в ходе поиска идет обращение к слоту “рассчет” и вызывается процедура “вычислить”, внутри которой имеется некоторая процедура MSG, которая обращается к процедуре рассчета фрейма ВВ и вычисляется процедура AVE. Т.е. происходит обмен сообщениями между слотами.

Поиск осуществляется следующим образом:

  1. Осуществляется запрос фреймов сети.

  2. Запрос начинает сопоставляться с некоторым фреймом А. Такое сопоставление может быть успешным или неуспешным. Если сопоставление неуспешно начинается движение по сети фреймов по одному из алгоритмов поиска (в глубину, в ширину, равных цен). Определяется тот узел, который дает max-ум совпадений, запускается и выполняется процедура демон. Если не хватает информации, то осуществляется движение по сети от фрейма к фрейму, посылая запросы и получая ответы на запросы.

Фреймово представление знаний объединяет декларативный и процедурный подходы.

Рассматривая модели представления знаний, можно отметить, что в каждом подходе при выводе знаний из БЗ присутствует процедура сопоставления с образцом.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]