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



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

· объекты, которые действуют;

· и объекты, над которыми эти действия выполняются.

Все связи понятий, событий и свойств с действием (глаголом) называют падежами или падежными отношениями, которые относятся к классу лингвистических отношений. Обычно рассматривают следующие падежи (табл. 5.1).

Таблица 5.1

Таблица основных лингвистических отношений (падежов).

Падеж Лингвистическое (падежное) отношение, определяющее связь действия с:
агент - предметом, являющимся инициатором действия
объект - предметом, подвергающимся действию
источник - размещение предмета перед действием
приемник - размещение предмета после действия
время - моментом выполнения действия
место - местом проведения действия
цель - действием другого события


Так, например, семантическая структура знания о событии:

 «Директор завода «Салют» остановил 10.10.13 цех №4,

 чтобы заменить оборудование»

может быть представлена в виде, аналогичном тому, что приведен на рис. 5.16.

 


Рис. 5.16. Пример семантической сети, описывающей события.

 

Особенность семантической сети как модели представления знаний состоит в единстве базы знаний и механизма вывода. При формировании запроса к базе знаний (БЗ):

· строится семантическая сеть, отражающая структуру запроса;

· вывод обеспечивается за счет сопоставления общей сети БЗ и сети для запроса.

Рассмотрим пример семантической сети, которая отражает иерархию подчиненности сотрудников некоторой организации организации (рис. 5.17).


Рис. 5.17. Семантическая сеть «Подчиненность сотрудников организации».

Приведенные связи показывают подчиненность первого сотрудника. Остальные сотрудники связываются через вершины сети «руководит 2», «руководит 3» и т.д.

Запрос: «Кто руководит Сидоровым?» может быть представлен как фрагмент общей сети. Например, он может иметь вид подсети, приведенной на рис. 5.18.


Рис. 5.18. Семантическая подсеть «Кто руководит Сидоровым?».

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

Наряду с методом сопоставления, в семантических сетях используется метод перекрестного поиска, при котором осуществляется:

· поиск отношения между понятиями;

· ответ на запрос формируется путем обнаружения вершины, в которой пересекаются дуги, идущие из друг вершин.

 

Фреймы

Фрейм — это минимально возможное описание сущности какого-либо явления, события, ситуации, процесса или объекта. Минимально возможное означает, что при дальнейшем упрощении описания теряется его полнота, оно перестает определять ту единицу знаний, для которой оно предназначено.

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

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

Фрейм имеет почти однородную структуру и состоит из стандартных единиц, называемых слотами. Каждая такая единица — слот — содержит название и свое значение. Изображается фрейм в виде цепочки:

Фрейм =<слот 1>,<слот 2> , ... , <слот N>

Фреймы подразделяются на два типа:

- фреймы-прототипы (или классы),

- фреймы-примеры (или экземпляры).

Фреймы-прототипы используются для порождения фреймов-примеров.

В качестве примера рассмотрим фрейм для понятия «взятие»:

фрейм «Взятие»: (Субъект, X1); (Объект, Х2); (Место, Х3); (Время, Х4); (Условие, Х5).

В этом фрейме указаны имена слотов (субъект, объект и т.д.), но вместо их значений стоят переменные (X1, Х2 и т.д.). Такой фрейм называется фреймом-прототипом, или протофреймом.

Протофреймы хранят знания о самом понятии. Например, понятие «взять» связано с наличием слотов с указанными именами. Взятие осуществляет X1 в месте Х3 во время Х4, если выполнено условие Х5. Берет X1 нечто, обозначенное как Х2. Подставляя вместо всех переменных конкретные значения, получим конкретный факт-описание:

фрейм «Взятие»: (Субъект, Робот); (Объект, Деталь); (Место, Приемный бункер) (Время, Х4); (Условие, В бункере есть деталь, а у робота ее нет).

В нашем примере, наверное, основными для фрейма «взятие» можно считать слоты с именами «субъект» и «объект».

Фреймы, в которых обозначены все основные слоты (они каким-либо образом помечаются в описании фрейма), называются фреймами- экземплярами, или экзофреймами.

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

Чтобы представить семантическую сеть в виде совокупности фреймов, надо уметь представлять отношения между вершинами сети. Для этого также используются слоты фреймов. Эти слоты могут иметь имена вида «Связь Y», где Y — имя того отношения (его тип), которое устанавливает данный фрейм-вершина с другим фреймом-вершиной.

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

PROLOG ПРОЛОГ

Пролог реализован практически для всех известных операционных систем и платформ (в том числе для Java и .NET). В число операционных систем входят OS для мейнфреймов, всё семейство Unix, Windows, ОС для мобильных платформ.

Архитектура

Многие современные реализации языка имеют внутреннее расширение за счет ООП-архитектуры. Кроме проприетарных решений также существуют свободные реализации Пролога. В 1996 году был принят стандарт ISO, получивший название ISO/IEC JTC1/SC22/WG17.

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

Синтаксис

Термы

Программа на Прологе описывает отношения, определяемые с помощью предложений. Как и в любом другом языке, ориентированном на символьные вычисления, предложения выстраиваются из термов, которые в свою очередь подразделяются на атомы, числа, переменные и структуры. Атом записывается со строчной буквы или заключается в кавычки, когда требуется запись с прописной буквы.

 atom

 'Atom'

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

 X is 2 + 2.

Структуры представляют собой совокупности термов, заключенные в круглые скобки, в том числе и другие структуры. Структура обозначается именем (функтором), которое располагается перед круглыми скобками.

 book('Название', '2009', 'Спб', authors('Первый автор', 'Второй автор')).

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

 List = [a, b, [c, d], e].

Правила

В чистом Прологе предложения ограничиваются Дизъюнктами Хорна

 Вывод :- Условие.

и читаются как: Заголовок ИСТИНА, если Тело ИСТИНА. Тело правила содержит ссылки на предикаты, которые называются целями правила. Встроенные предикаты ,/2, означающий оператор с двумя аргументами, определяющий конъюнкцию целей и ;/2 определяющий дизъюнкцию.

Факты

Предложения с пустым Телом называются Фактами. Пример факта:

 Кот(Иван).

оно эквивалентно правилу:

 Кот(Иван) :- ИСТИНА.

Критика

Пролог критикуется в первую очередь за неполную декларативную природу. Создание программ в полностью декларативном стиле практически невозможно, требуется прибегать к процедурным приёмам, что приводит к резкому возрастанию сложности создания и отладки программ, а также плохой контролируемости промежуточных результатов.[2] Другим часто подвергаемым критике свойством языка является отсутствие типизации. В языке предопределён порядок обхода дерева решений в глубину и стандартизированы операторы, позволяющие вмешиваться в этот процесс (такие как оператор отсечения ! или ветвления ->) и не позволяющие распараллелить программу, задействовав в поиске решения несколько процессоров или узлов сети.


 


Дата добавления: 2020-04-25; просмотров: 152; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!