Теория фреймов относится к психологическим понятиям, касающимся понимания того, что мы видим и слышим. Эти способы восприятия трактуются с последовательной точки зрения, на их основании осуществляется концептуальное моделирование.
Для осознания того факта, что заданная информация в этих областях имеет единственный смысл, человеческая память должна быть способна увязывать эту информацию со специальными концептуальными объектами. Иначе информацию не удастся систематизировать.
В основе теории фреймов лежит восприятие фактов посредством сопоставления информации, полученной извне, с конкретными элементами и значениями, а также с рамками, определениями для каждого концептуального объекта в нашей памяти.
Структура, представляющая эти рамки, называется фреймом. Так как между различными концептуальными объектами существуют некоторые аналогии, то образуется иерархическая структура с классифицирующими и обобщающими свойствами типа “абстрактное — конкретное”.
Сложные объекты эквивалентны фреймовым сетям. Каждый фрейм дополняется связанными с ним факторами и процедурами, обеспечивающими выполнение запросов друг к другу.
Теория фреймов, скорее, теория постановки задач, чем результативная теория.
Марк Мински в 1975 году в своей работе “Framework for Representing Knouledge in the Phychology of Computer Vision” описал основы теории фреймов.
Суть теории: когда человек попадает в новую ситуацию, он вызывает в своей памяти основную структуру, именуемую фреймом. Фрейм (рамка) – это единица представления знаний, запомненная в прошлом, детали которой могут быть изменены согласно текущей ситуации. Каждый фрейм может быть дополнен различной информацией, которая может касаться способов применения данного фрейма, последствий этого применения, действий, которые необходимо выполнить, если не оправдается прогноз. Каждый фрейм можно рассматривать как сеть, состоящую из нескольких вершин и отношений.
Верхний уровень – факт, касающийся состояния объекта, который считается истинным.
Следующие уровни – множество терминальных слотов, которые должны быть заполнены конкретными значениями и данными.
В каждом слоте задаётся условие, которое должно выполняться при установлении соответствия между значениями (слот или сам его устанавливает или создаётся более мелкая составляющая фрейма.)
Простое условие называется меткой и может содержать требования, например, чтобы соответствие устанавливал пользователь, чтобы было достаточно полное описанное значение, чтобы был указатель специальной составляющей фреймов.
Сложные условия указывают отношения между фактами, соответствующими нескольким терминалам. Соединив множество фреймов, являющихся отношениями, можно построить фреймовую систему. Наиболее важный результат такого построения проявляется в возможности преобразования фреймов в одной системе. Фреймы используются для экономичного проведения различных расчетов и обработки изображений.
При анализе видимого объекта различные фреймы родной системы описывают его с различных углов зрения, и преобразование от одного фрейма к другому показывает результат перехода от одного пункта наблюдения к другому. Что касается фреймов, не связанных со зрительными ощущениями, то различие между фреймами одной системы указывает на какие-либо действия, причинно-следственные отношения или изменение концептуальной точки зрения и т. п. В одной системе различные фреймы могут иметь общие терминалы. Это серьезный момент, на который следует обратить внимание, поскольку благодаря ему возможно связывание информации, полученной с различных точек зрения.
Основные особенности фреймовой теории проявляются в возможности прогнозирования и включения других процессов. Несколько терминалов одного фрейма обычно заранее определяются значениями по умолчанию. Следовательно, даже когда не задана подробная информация, касающаяся некоторого места, данный фрейм все равно будет довольно информативен. Этот метод можно широко использовать для представления информации общего характера, анализа множества сходных задач, отработки техники решения задач логическими методами, а также он может служить полезным средством распространения фреймовых систем. Поскольку значение по умолчанию не связано жестко с терминалом, его можно легко заменять на новую информацию, например для более точного согласования с соответствующей ситуацией. Следовательно, значение по умолчанию может использоваться в качестве переменной, либо в специальных случаях выводов на основании фактов, либо в общепризнанных случаях. Кроме того, оно может использоваться вместо логических ограничителей.
Фреймовые системы связаны с информационно-поисковыми сетями. Если фрейм-кандидат не соответствует текущей проблеме, другими словами, если установление соответствия с терминалом не вполне отвечает условию метки, такая сеть задает другой фрейм. С помощью подобной межфреймовой структуры можно представлять знания, касающиеся фактов, сходств и другой информации, полезной для понимания. Когда некоторый фрейм выбирается в качестве единицы представления некоторого состояния, то в процессе согласования во все терминалы каждого фрейма подставляются такие значения, чтобы выполнялись условия в соответствующих местах. Подобный процесс согласования управляется информацией, дополняющей фрейм (эта информация касается обработки непредвиденных ситуаций), а также целью системы в текущий момент времени. Далее, в случае если процесс согласования закончился неуспехом, использование полученной при этом информации представляет определенный интерес.
Данное изложение может показаться трудным для понимания, поэтому поясним его на простом примере.
На рис. 3.1 показана связь фрейма с дополнительной информацией. Фрейм этою типа описывает только одни концептуальный объект, а дополнительная информация — это специфичная конкретная информация для каждого фрейма. Важным в данном примере является то, что имеется некоторый физический объект, называемый комнатой, некоторый концептуальный объект, называемый состоянием внутри этой комнаты, а также то, что дополнительная информация касается не только этих объектов, но и специфического управления ими.
Фрейм — основная структурная единица памяти, структура данных для представления некоторой ситуации. Примеры: - ситуация в некоторой комнате; - момент ухода на празднование дня рождения ребенка. Дополнительная информация — информация, которой дополняется каждый фрейм. Примеры: - информация о способе обращения с данным фреймом; - информация о следующем действии; - информация о действии, которое надо выполнить, если данное предположение не оправдалось |
Рис. 3.1. Связь фрейма с дополнительной информацией
На рис. 3.2 показан пример фреймового представления составной арки. В данном случае фрейм представлен в виде семантической сети. Однако поскольку фрейм состоит из множества терминальных слотов, то отношения между ними описываются с помощью их значений. Условия, ограничивающие значения, также добавляются к соответствующему слоту. Кроме того, поскольку детали А, В и С представлены другими фреймами, то слот фрейма арки дополнен указателями этих фреймов.
|
a — фрейм-арка; б — арка |
На рис. 3.3 показан пример фреймовой системы, касающейся углов зрения арки. В данном случае за первый угол зрения принят вид спереди на арку. Если повернуть ее на 90° по часовой стрелке, как показано на позиции 2, будут видны только детали А и В. Когда мы рассматриваем некоторый объект, например под углом зрения 2, то вызвав из памяти фрейм угла зрения 1, можно предположить, что данный объект является аркой. Таким способом компенсируется тот факт, что деталь С не видна, если при повороте на 90о этого объекта против часовой стрелки его вид совпадает с фреймом угла зрения 1, предположение было правильным. В противном случае вызывается другой фрейм и проводится его сопоставление. В данном случае может быть использован указатель сходства.
Ниже рассмотрены основные свойства фреймов.
1) Базовый тип. При эффективном использовании фреймовой системы, подобной показанной на рис. 3.3, можно добиться быстрого понимания сущности данного предмета и его состояния, однако для запоминания различных позиций в виде фреймов необходима память. Поэтому только наиболее важные объекты данного предмета запоминаются в виде базовых фреймов, на основании которых строятся фреймы для новых состояний. При этом каждый фрейм содержит слот, оснащенный указателем подструктуры, который позволяет различным фреймам совместно использовать одинаковые части. Такая подструктура не изменяется при изменении угла зрения. Благодаря этому свойству, возможно представление и использование информации, полученной в различное время и с различных участков, в качестве независимой информации, связанной с данным углом зрения (т.е. в качестве знаний).
2) Процесс сопоставления. Процесс, в ходе которого проверяется правильность выбора фрейма, называется процессом сопоставления. Обычно этот процесс осуществляется в соответствии с текущей целью и информацией (значениями), содержащейся в данном фрейме. Другими словами, фрейм содержит условия, ограничивающие значения слота, а цель используется для определения, какое из этих условий, имея отношение к данной ситуации, является релевантным.
В итоге процесс сопоставления фрейма осуществляется следующим образом:
а) сначала с помощью предположения и интуиции выбирается некоторый базовый фрейм; с помощью знаний, основанных на выявленных особенностях, релевантности или с помощью подфреймов, предполагаемых наиболее релевантными, данный фрейм сам подтверждает или не подтверждает свою релевантность.
При этом в соответствии с текущей целью определяется, какое ограничение слота следует использовать при сопоставлении. При подтверждении процесс сопоставления завершается.
В противном случае:
б) если в данном фрейме имеется слот, в котором возникла ошибка, касающаяся, например, условия согласованности с информацией, заданной по умолчанию, то необходима информация, обеспечивающая присваивание надлежащего значения данному слоту. Например, если в процессе сопоставления фрейма “угол зрения 1”, показанного на рис. 3.3, в качестве информации задаются только детали А, В, то для данною фрейма необходима информация, касающаяся детали С. Присваивание требуемой информации данному слоту должно не противоречить ограничениям слота и ожиданиям. Если сопоставление оканчивается неуспехом даже при следующих обстоятельствах (в качестве примера):
- поле зрения справа,
- должна быть видна деталь С; если не видно, повернуть вправо на 90о,
- деталь А подпирается деталью В,
- нет соединения В с А, то
в) в качестве последнего шага управление передаётся другому надлежащему фрейму из этой системы. Если и этот фрейм не подходит, то управление передаётся соответствующему фрейму из другой фреймовой системы. В таком процессе используется информация о преобразовании (например, о перемене угла зрения, изменении места и т. п.). Если и это сопоставление оканчивается неуспехом, то это означает, что задача не имеет решения.
Рассмотренный выше процесс сопоставления касался только одного фрейма, но и в сложных визуальных или текстовых объектах аналогичный процесс следует вводить в полный процесс обработки.
3) Иерархическая структура. Фрейм обычно соответствует представлению общего понятия с классификационной иерархической структурой; как показано на рис. 3.4. Особенность такой иерархической структуры заключается в том, что информация об атрибутах, которую содержит фрейм верхнего уровня, совместно используется всеми фреймами нижних уровней, связанных с ним. Например, атрибут “животное передвигается” является общим и для птиц, и для канарейки, которая находится на самом нижнем уровне.
Если бы человеческая память имела подобную структуру, то можно было бы систематизировать и запоминать схожие понятия, избегать лишних сложностей, касающихся информации об атрибутах, и добавлять новые понятия или знания в соответствующие позиции в этой иерархии (обучение). При этом упрощалось бы обнаружение противоречий в знаниях и управление последовательностью, и если можно было бы понять, что это птица даже без использования конкретных знаний (например, что это “курица”), то заметно повысилась бы гибкость системы, например, появилась бы возможность получения выводов на основании знании о птицах и животных (рис. 3.4). (Следует отметить, что такая иерархическая структура свойственна не только для представления знаний фреймами. Например, в языке представления знаний, объединяющем фреймы и продукционные системы, иногда используется часть такой структуры в качестве базы данных продукционной системы. В данном случае такую систему также можно назвать фреймовой. Однако, хотя она значительно мощнее продукционной системы, но по своей универсальности уступает универсальной фреймовой системе.)
4) Межфреймовые сети. Запоминание концептуального объекта, имеющего классификационную иерархическую структуру, легко поясняется фреймовой моделью. Однако, как уже было сказано выше, если “процесс сопоставления” окончился неуспехом, возникает необходимость поиска фрейма, подобного предыдущему. Такой поиск, осуществляемый с использованием указателей различия, возможен благодаря соединению фреймов, описывающих объекты с небольшими различиями, с данными указателями и образованию сети подобных фреймов.
На рис. 3.5 показан пример так называемой сети Уинстона. Если при сопоставлении фрейма “стул” выяснилось, что объект слишком велик и у него отсутствует спинка, то с помощью указателя различия ищется фрейм “стол”. Если окажется, что объект слишком широк и отсутствует спинка, можно выполнить эффективный поиск фрейма “скамейка” с помощью другого указателя различия.
В данном примере были рассмотрены указатели различия, однако семантические сети можно строить с помощью всевозможных других указателей и с их помощью с высокой эффективностью выполнять различные выводы. (В таких случаях следует считать, что фреймовая система включает семантическую сеть.)
5) Значение по умолчанию. Когда человек рассматривает нечто и думает о том, что бы это значило, или мысленно представляет себе что-то и думает, что бы это значило, то данный процесс можно представить как распределение конкретных значений между терминальными слотами фрейма. При этом в случае мысленного представления пределы, касающиеся распределения этих значений, широки. В таких случаях предполагаемое значение называется значением по умолчанию. Например, при чтении предложения “Таро взял мяч” воображение читателя рисует не абстрактный мяч, а вполне конкретный, например мяч для игры в теннис или гольф. Кроме того, этот мяч должен в его сознании обладать определенными атрибутами, например, размером, цветом и массой, значения которых подразумеваются по умолчанию. Несомненно, эти значения вызываются ассоциативно на основании личного опыта читателя. Подобные значения по умолчанию слабо связаны со слотами, и далее они постепенно заменяются на достоверную информацию.
Это основывается на следующем предположении: “Пока не распределены терминальные значения, решение о занесении в долговременную намять не принимается. До этого момента во фрейме хранится значение по умолчанию, хотя и слабо связанное с ним”. Выводы, получаемые на основании значений по умолчанию, называются выводами по умолчанию. По этим выводам можно продолжить получение вывода и восполнить недостатки заданной информации. Эта функция обычно расширяет возможности системы, в то же время существует опасность получения неправильных выводов на основе ошибочных представлений.
Вывод по умолчанию выполняет весьма важную функцию при распознавании образов или речи. Например, если видна только часть образа, то, заменив оставшиеся части значениями по умолчанию, можно обрисовать полный образ. Точно так же, используя значение по умолчанию, можно восстановить смысл контекста, из которого выхвачены отдельные предложения. В качестве примера рассмотрим следующий текст:
Ханако приглашена на день рождения Таро.
Она полагала, что он любит заводить юлу.
Она направилась в свою комнату и потрясла копилку.
Копилка не издала никакого звука.
Из подобного текста мы можем без труда восстановить полное содержание. Для этого необходимо понять в целом, о чем говорится в приведенных предложениях. Можно легко понять, что главной темой первого предложения является некий день рождения. Сосредоточившись вокруг фрейма, касающегося дня рождения, и действуя далее подобным образом, можно подходящим способом присваивать значение слотам и выстроить цепочку фреймов:
день рождения ® подарок ® юла ® юлы нет ® купить ® деньги ® копилка ®
® потрясти ® звука нет ® денег нет ® обратиться к матери ® и т. д.
Здесь выделенные места или значения по умолчанию устанавливают связь между фреймами, в приведенных предложениях они отсутствуют. Когда используется такой способ вывода, предполагается, что кроме значений по умолчанию, существуют эффективно действующие межфреймовая сеть и демоны.
6) Отношения “абстрактное — конкретное” и “целое — часть”. Рассмотренная выше иерархическая структура основывается на отношениях “абстрактное — конкретное”, однако, помимо такого типа структур, существуют и другие, основанные на отношениях “целое — часть”.
Отношения “абстрактное — конкретное” характерны тем, что на верхних уровнях, как показано на рис. 3.4, расположены абстрактные объекты (концепты), а на нижних уровнях — конкретные объекты, причем объекты нижних уровней наследуют атрибуты объектов верхних уровней. Эти отношения еще называют отношениями типа IS-A или KIND-OF. Такие названия объясняются формами записи “канарейка IS-A птица” (канарейка есть птица) и “канарейка KIND-OF птица” (канарейка — это разновидность птиц).
Ещё одно отношение “целое — часть” касается структурированных объектов и показывает, что объект нижнего уровня является частью объекта верхнего уровня. Например, стена является структурным элементом аудитории, однако она не является аудиторией, поэтому объект “стена” не наследует атрибут “аудитория”, являющийся объектом верхнего уровня. Скорее наследование атрибутов выполняется на основании отношения IS-A типа “тело – стена — стена аудитории — стена аудитории А”. Заметим, что в теории фреймов Минского рассматривались оба типа этих отношений, однако разделения их, подобно приведенному здесь, сделано не было.
Практическое применение во фреймовых системах получили лишь отношения “абстрактное — конкретное”. Тем не менее, иногда требуется описывать и управлять структурированным объектом, например в САПР, поэтому в таких случаях не обойтись без обработки отношений типа “целое — часть”. При этом составляющие системы описываются отношениями IS-A, а структура — отношениями PART-OF. Однако в отношениях тина PART-OF нельзя использовать наследование атрибутов, из-за чего не видны преимущества модели представления знаний фреймами. В таких случаях необходимы другие методы.