Фреймовая модель
Семантические сети
Модели представления знаний
Семантическая сеть- это ориентированный граф, вершины которого - понятия, а дуги - отношения между ними.
Понятиями обычно выступают абстрактные или конкретные объекты, а отношения - это связи типа: "это" ("is"), "имеет частью" ("has part"), "принадлежит", "любит".
Можно ввести несколько классификаций семантических сетей. Например, по количеству типов отношений:
- однородные (с единственным типом отношений);
- неоднородные (с различными типами отношений).
Наиболее часто в семантических сетях используются следующие отношения:
- связи типа "часть-целое" ("класс-подкласс", "элемент-множество" и т.п.);
- функциональные связи (определяемые обычно глаголами "производит", "влияет"...);
- количественные (больше, меньше, равно...);
- пространственные (далеко от, близко от, за, под, над...);
- временные (раньше, позже, в течение...);
- атрибутивные связи (иметь свойство, иметь значение...);
- логические связи (и, или, не) и др.
ловить змей |
животные |
есть |
дышать |
двигаться |
кожа |
птицы |
Рыбы |
крылья |
перья |
жабры |
чешуя |
попугай |
секретарь |
пиранья |
говорить |
опасная |
рис.1 Фрагмент семантической сети, описывающей предметную область «животные».
Виды отношений: 1–«часть-целое», 2–«подкласс-класс», 3–«имеет свойство», 4–«умеет».
Проблема поиска решения в базе знаний типа семантической сети сводится к задаче поиска фрагмента сети, соответствующего некоторой подсети, соответствующей поставленному вопросу.
Преимущества сетей: 1) модель адекватно отображает представления о мире, 2) позволяет работать не с полностью определенными знаниями.
Недостатки: Чем сложнее модель, тем больше сеть, тем сложнее поиск.
Эта модель ориентирована на использование языка LISP.
Frame (рамка) является единицей представления информации об объекте, который можно описать некоторой совокупностью понятий и сущностей.
Фрейм имеет внутреннюю структуру, состоящую из множества элементов, называемыми слотами. Слоты могут быть разного типа (числа, тексты, математические соотношения) и содержать не только конкретное значение, но и имя процедуры, позволяющей вычислить её по некоторому алгоритму.
В слоте может размещаться ссылка на другой фрейм, что позволяет строить иерархическую структуру фреймов и обеспечивать наследование свойств родовых объектов.
<имя_фрейма>
<имя_слота 1> (<значение_слота 1>)
<имя_слота 2> (<значение_слота 2>)
…
<имя_слота n> (<значение_слота n>)
Имеются 2 типа фреймов: фреймы-прототипы (пустые фреймы, описывающие понятия) и фреймы-экземпляры (описывают конкретные объекты).
Например, фрейм-прототип «студент» может быть задан следующим образом:
студент
ФИО (<значение_слота 1>)
группа (<значение_слота 2>)
предмет (<значение_слота 3>)
оценка (<значение_слота 4>)
Фрейм-экземпляр, описывающий конкретного студента:
студент
ФИО (Иванов Иван Иванович)
группа (401)
предмет (ИИС)
оценка (отл.)
Важнейшим свойством теории фреймов является заимствованное из теории семантических сетей наследование свойств. И во фреймах, и в семантических сетях наследование происходит по АКО-связям (A-Kind-Of = это). Слот АКО
указывает на фрейм более высокого уровня иерархии, откуда неявно наследуются, т.е. переносятся, значения аналогичных слотов.
Для работы с фреймами был разработан язык FRL (Frame Representation Language).
Преимущества фреймовских систем:
- фреймовое представление позволяет описывать и управлять сложными знаниями больших объемов на основе описания концептуальных объектов;
- в целях увеличения гибкости системы, декларативные и процедурные знания концептуальных объектов комбинируют;
- при решении сложных проблем используют комбинации управления выводом.
Недостатки: громоздкость, сложность модификации вида родовых отношений.