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

LiveInternetLiveInternet

Рубрики

Поиск по дневнику

Подписка по e-mail

Постоянные читатели

Статистика

8.Представление знаний. Фреймовая модель.

Фрейм — это абстрактный образ для представления некоего стереотипа восприятия.

Фрейм — это некоторая структура для представле­ния знаний, которая при ее заполнении соответствующими значе­ниями превращается в описание конкретного факта, события или ситуации.

Фреймовую модель можно считать более специализированной по отношению к сетевой. Она основана на принципе кластеризации (фрагментация) знаний.

Классификация фреймов

  1. Различают фреймы-образцы, или прототипы, хранящиеся в базе знаний, и фреймы-экземпляры, которые создаются для отображения реальных фактических ситуаций на основе поступающих данных.
  2. Модель фрейма является достаточно универсальной, поскольку позволяет отобразить все многообразие знаний о мире через:
    • фреймы-структуры, использующиеся для обозначения объектов и понятий (заем, залог, вексель);
    • фреймы-роли (менеджер, кассир, клиент);
    • фреймы-сценарии (банкротство, собрание акционеров, празднование именин);
    • фреймы-ситуации (тревога, авария, рабочий режим устройства) и др.

Основной структурной единицей фрейма является слот.

Пример фрейма: руководитель

Тип значения слота

age ( dama , рожден)

Способ получения значения

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

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

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

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

  • слот-указатель родителя данного фрейма (is-a);
  • слот-указатель дочерних фреймов;
  • слот для ввода имени пользователя;
  • слот для ввода даты определения фрейма;
  • слот для ввода даты изменения фрейма и т.д.

Имя слота должно быть уникальным в пределах фрейма.

Пример сети фреймов приведен на рис. 7. На нём понятие ученик наследует свойства фреймов ребенок и человек, которые находятся на более высоких уровнях иерархии. Если будет задан вопрос «Любят ли ученики сладкое?», то следует ответ «да», так как этим свойством обладают все дети, что указано во фрейме ребенок. Наследование свойств может быть частичным, например «возраст» для учеников не наследуется из фрейма «ребенок», так как явно указан в собственном фрейме.

Плюсы и минусы модели

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

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

Источник

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

Фреймовая модель представления знаний – была предложена М.Минским в 1979 г. как структура знаний для восприятия пространственных сцен. Эта модель, как и семантическая сеть, имеет глубокое психологическое обоснование.

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

Читайте также:  Подчинение как способ выживания

Фреймом называется также и формализованная модель для отобра­же­ния образа.

В качестве идентификатора фрейму присваивается имя фрей­ма. Это имя должно быть единственным во всей фреймовой системе.

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

Структуру фрейма можно представить так:

(имя 1-го слота: значение 1-го слота),

(имя 2-го слота: значение 2-го слота),

(имя N-го слота: значение N-гo слота).

Ту же запись представим в виде таблицы, дополнив двумя столбцами.

Таблица 5.1 – Структура фрейма

способ получения значения

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

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

Модель фрейма является достаточно универсальной, поскольку позволяет отобразить все многообразие знаний о мире:

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

Важнейшим свойством теории фреймов является заимствованное из теории семантических сетей наследование свойств. И во фреймах, и в се­ман­тических сетях наследование происходит по AKO-связям (A-Kind-Of = это). Слот АКО указывает на фрейм более высокого уровня иерархии, от­ку­да неявно наследуются, то есть переносятся, значения аналогичных сло­тов.

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

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

Имя фрейма. Оно служит для идентификации фрейма в системе и должно быть уникальным. Фрейм представляет собой совокупность слотов, число которых может быть произвольным. Число слотов в каждом фрейме устанавливается проектировщиком системы, при этом часть слотов определяется самой системой для выполнения специфических функций (системные слоты), примерами которых являются: слот-указатель родителя данного фрейма (IS), слот-указатель дочерних фреймов, слот для ввода имени пользователя, слот для ввода даты определения фрейма, слот для ввода даты изменения фрейма и т.д.

Имя слота. Оно должно быть уникальным в пределах фрейма. Обычно имя слота представляет собой идентификатор, который наделен определенной семантикой. В качестве имени слота может выступать произвольный текст. Например, = Главный герой романа Ф.М. Достоевского «Идиот», = Князь Мышкин. Имена системных слотов обычно зарезервированы, в различных системах они могут иметь различные значения. Примеры имен системных слотов: ISA, HASPART, RELATIONS и т.д. Системные слоты служат для редактирования базы знаний и управления выводом во фреймовой системе.

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

U (Unique) — значение слота не наследуется;

Читайте также:  Характеристика географического способа видообразования

S (Same) — значение слота наследуется;

R (Range) — значения слота должны находиться в пределах интервала значений, указанных в одноименном слоте родительского фрейма;

O (Override) — при отсутствии значения в текущем слоте оно наследуется из фрейма верхнего уровня, однако в случае определения значения текущего слота оно может быть уникальным. Этот тип указателя выполняет одновременно функции указателей U и S.

Указатель типа данных. Он показывает тип значения слота. Наиболее употребляемые типы: frame — указатель на фрейм; real — вещественное число; integer — целое число; boolean — логический тип; text – фрагмент текста; list — список; table — таблица; expression — выражение; lisp — связанная процедура и т.д.

Значение слота. Оно должно соответствовать указанному типу данных и условию наследования.

Демоны. Демоном называется процедура, автоматически запускаемая при выполнении некоторого условия. Демоны автоматически запускаются при обращении к соответствующему слоту. Типы демонов связаны с условием запуска процедуры. Демон с условием IFNEEDED запускается, если в момент обращения к слоту его значение не было установлено. Демон типа IFADDED запускается при попытке изменения значения слота. Демон IFREMOVED запускается при попытке удаления значения слота. Возможны также другие типы демонов. Демон является разновидностью связанной процедуры.

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

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

Приведем несколько примеров фреймовых описаний.

Источник

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

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

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

Фрейм — это модель (абстракция 1 , минимально возможное описание) реальной или воображаемой сущности (объекта, события, ситуации, явления, процесса и т.д.). Определение фрейма, данное М. Минским: «Фрейм – это единица представления знаний, запомненная в прошлом, детали которой при необходимости могут быть изменены согласно текущей ситуации».

Эта модель, как и семантические сети, имеют глубокое психологическое обоснование. В психологии и философии известно понятие абстрактного образа. Например, произнесение вслух слова «комната» порождает у слушающих образ комнаты: «жилое помещение с четырьмя стенами, полом, потолком, окнами и дверью, площадью 6-60 м 2 ». Из этого описания ничего нельзя убрать (например, убрав окна, мы получим уже чулан, а не комнату), но в нем есть «дырки» или «слоты» — это незаполненные значения некоторых атрибутов — например, количество окон, цвет стен, высота потолка, покрытие пола и др. [19].

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

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

Модель фрейма является достаточно универсальной, поскольку позволяет отобразить все многообразие знаний о мире через:

— фреймы-структуры, использующиеся для обозначения объектов и понятий (компьютер, автомобиль, вексель);

Читайте также:  Способы ведения деловых отношений

— фреймы-роли (менеджер, кассир, клиент);

— фреймы-сценарии (банкротство, собрание акционеров, празднование именин);

— фреймы-ситуации (тревога, авария, штатный режим работы устройства) и др.

В общем случае фрейм задается следующими параметрами [2]:

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

2. Имя слота. Представляет собой идентификатор атрибута сущности, который наделен определенной семантикой. Должно быть уникальным в пределах фрейма. В качестве имени слота может выступать произвольный текст (например, «Количество студентов в группе», «Возраст») или зарезервированное обозначение. Примеры имен системных слотов (зарезервированных обозначений): IS-A (это), PART-OF (является частью), RELATIONS (относиться к) и т.д. Системные слоты служат для редактирования БЗ и управления выводом во фреймовой системе.

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

— по умолчанию (англ. default) от фрейма-образца;

— через наследование от родительского фрейма, указанного в слоте IS-A (AKO);

— по умолчанию или через наследование, но в случае необходимости значение слота может быть изменено (англ. override — заменить)

— значение слота для всех фреймов-экземпляров одного типа должно быть уникальным (англ. unique);

— значение слота для всех фреймов-экземпляров одного типа должно находиться в пределах, указанных для слота во фрейме-образце (англ. range — диапазон)

— по формуле, указанной в слоте;

— по формуле, указанной в слоте;

— явно из диалога с пользователем и т.п.

4. Тип данных. Определяет тип значения слота. Наиболее употребляемые типы: frame — указатель на фрейм; real — вещественное число; integer — целое число; boolean — логический тип; text — фрагмент текста; list — список; table — таблица; expression — выражение; lisp — присоединенная процедура и т.д.

5. Значение слота. Должно соответствовать указанному типу данных и условию наследования.

6. Демон. Демоном называется присоединенная процедура, автоматически запускаемая при выполнении некоторого условия. Демон с условием IF-NEEDED (англ. needed – нужно, необходимо) запускается, если в момент обращения к слоту его значение не было установлено. Демон типа IF-ADDED (англ. added – добавлять) запускается при попытке создания фрейма-экземпляра. Демон IF-REMOVED (англ. removed – удалять) или IF-DELETED (англ. deleted – удалять) запускается при попытке удаления значения слота. Возможны также другие типы демонов.

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

На рис.6.1. приведен пример фреймового представления фрагмента базы знаний.

Рис.6.1. Пример фреймового представления

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

Основные понятия фреймовой и объектно-ориентированной моделей

Фреймовая модель Объектно-ориентированная модель База данных
Фрейм
(фрейм-образец)
Класс Таблица
Фрейм-экземпляр Объект
(экземпляр класса)
Строка
Слот Атрибут Столбец
Демон Событие
(с методом его обработки)
Триггер
Присоединенная процедура Метод Хранимая процедура

Существуют специализированные языки представления знаний на основе фреймовой модели, примерами которых являются: FRL (Frame Representation Language), KRL (Knowledge Representation Language), фреймовая «оболочка» Kappa и др. Известны также экспертные системы фреймового типа: ANALYST, TRISTAN и т.д.

1 Абстракция (лат. abstractio – отвлечение) – форма познания, основанная на мысленном выделении существенных свойств и связей предмета и отвлечении от других, частных его свойств и связей. При этом «существенное» и «частное» должны рассматриваться с точки зрения решаемой задачи (предметной области).

6.2. Примеры описания предметной области с помощью фреймовых ЯПЗ

FRL (Frame Representation Language).

Источник

Оцените статью
Разные способы