Марвин Минский - Фреймы для представления знаний
В своей теории М.Минский не проводит границы между теорией человеческого мышления и теорией построения "думающей" машины (искусственного интеллекта). Он считает, что и процесс мышления человека основан на наличии в его памяти каким-то образом материализованного огромного набора разнообразных фреймов, с помощью которых человек осознает зрительные образы (фреймы визуальных образов), понимает слова (семантические фреймы), рассуждения, действия (фреймы-сценарии), повествования (фреймы-рассказы) и т.д. Процесс понимания при этом сопровождается выбором из памяти соответствующего фрейма, у которого терминалы уже заполнены заданиями отсутствия, и приспособлением его к текущей ситуации. Если это не удается, то из памяти выбирается новый более подходящий к ситуации фрейм. В случае, когда и этот фрейм не достаточно хорошо согласуется с ситуацией и поиски нового не приводят к удаче, происходит приспособление наиболее отвечающего ситуации фрейма, который был обнаружен в процессе поиска.
2.1. Фрейм - визуальный образ
В качестве простейшего примера, иллюстрирующего представление знаний с помощью фреймов, рассмотрим приведенную в работе М.Минского возможную систему фреймов для элементарного зрительного образа - куба. В соответствии с использованным в работе А.Гузмана(1967) символическим представлением тел правильной формы с помощью "областей" и "связей" между ними можно допустить, что результатом разглядывания куба является структура, подобная показанной на рис.П1а. Эту структуру можно идентифицировать с фреймом куба при разглядывании его с соответствующей позиции. Области A, E и B являются терминалами фрейма, задания для которых соответствуют возможным деталям или обозначениям на видимых с данной позиции гранях куба. Если позиция наблюдения куба перемещается вправо, то грань А исчезает из поля зрения и становится видимой грань С.
Если бы потребовалось провести полный анализ этого нового визуального образа, необходимо было бы:
1) утратить знания о грани А,
2) повторно воспринять (с помощью соответствующих "вычислений") образ грани В,
3) воспринять образ новой грани С.
Однако, поскольку известно, что произошло перемещение позиции наблюдения вправо, можно сохранить знания о грани В в виде задания терминалу левой грани нового фрейма куба, соответствующего новой позиции наблюдения. Кроме того, чтобы сохранить знания и о грани А, можно ввести дополнительный терминал невидимой грани, относящийся к этому новому фрейму, как это показано на рис.П1б.
При возвращении на начальную позицию наблюдения оказывается возможным восстановить визуальный образ куба без каких-либо новых "вычислений". Для этого достаточно "вызвать" из памяти первый фрейм. Очевидно, полезно сохранить знания и о грани С, для чего можно ввести дополнительный терминал этой невидимой грани в первом фрейме (рис.П1б).
Можно продолжить эту процедуру построения системы фреймов, соответствующую перемещению точки наблюдения вокруг куба. Это привело бы к получению более широкой системы фреймов, в которой каждый фрейм соответствует своей позиции наблюдения куба. На рис.П1в показана система фреймов, состоящая из трех фреймов, каждый из которых представляет визуальный образ, получающийся в одной из трех позиций наблюдения. Две из этих позиций соответствуют перемещению вправо и влево на 45° относительно третьей позиции; указатели между фреймами соответствуют перемещениям точки наблюдения. Важно обратить внимание на выявленное в этом примере важное свойство представления ситуации с помощью системы фреймов. Оно состоит в том, что различные фреймы, входящие в систему, используют один и тот же терминал, соответствующий одной и той же физической черте, которая видна из различных позиций наблюдения. Это позволяет заранее сосредоточить в одном месте информацию о свойствах известных объектов независимо от позиций наблюдения, которых, особенно для предметов сложной формы, может быть очень много. В результате экономится память и сокращается процесс восприятия при изменении позиций наблюдения, так как память уже располагает необходимой информацией и время затрачивается лишь на "извлечение" ее из памяти.
Сами же системы фреймов, по-видимому, сформированы в памяти не для визуальных образов каждого возможного предмета, а для обычно используемых "основных форм", которые, вступая в различные комбинации, образуют системы фреймов для новых случаев. Это создает дополнительные возможности экономии памяти. Так же, как и в случае отдельных заранее сформированных терминалов, принадлежащих фрейму, наличие в памяти заранее заготовленного набора систем фреймов ускоряет процесс восприятия, так как новый образ не приходится строить заново, а только извлекать его из памяти и "приспосабливать" к действительности.
2.2. Фрейм-сценарий
Отмеченные свойства, позволяющие экономить память и время восприятия, очевидно, могут проявляться и при представлении невизуальных знаний о мире. Действительно, системы невизуальных фреймов, например описываемых ниже фреймов-сценариев, можно представить как одно из возможных понимании предмета обсуждения; например, электрогенератор можно представить как механическую и как электрическую системы. Любые знания о мире можно представить себе в виде некоторых общих универсальных фрагментов, которым соответствуют свои системы фреймов и из которых можно формировать новые системы фреймов, соответствующие некоторым новым представлениям.
Представление знаний о мире с помощью фреймов оказывается весьма плодотворным при объяснении механизмов понимания человеком естественного языка, рассуждении, повествований, наблюдаемых действий другого лица и т. д. По-видимому, оно будет полезным и при разработке искусственных механизмов реализации вышеперечисленных функций с помощью ЭВМ.
В работе М.Минского в этом случае предлагается строить знания о мире в виде фреймов-сценариев. Фрейм-сценарий по М.Минскому представляет собой типовую структуру для некоторого действия, понятия события и т. п., включающую характерные элементы этого действия понятия, события. Например, фрейм-сценарий для события, состоящего в праздновании дня рождения ребенка, включает следующие элементы, которые можно трактовать как узлы фрейма, заполненные заданиями отсутствия:
Одежда: воскресная, самая лучшая;
Подарок: должен понравиться.
Для объяснения быстрого понимания человеком ситуации, представляемой сценарием, в работе Р.Шенка, Р.Абельсона(l975) предлагается отождествлять терминалы фрейма-сценария с наиболее характерными вопросами, обычно связанными с этой ситуаций. Ответы на эти вопросы полезно получить для понимания данной ситуации. По существу фрейм-сценарий в этом случае является собранием вопросов, которые необходимо задать относительно некоторой гипотетической ситуации, и способов ответа на них.
Для фрейма-сценария - дня рождения ребенка в число таких вопросов войдут следующие:
Что должны надеть гости?
Выбран ли подарок для ребенка?
Понравится ли ему подарок?
Где купить подарок?
Где достать денег? и т. д.
Для того чтобы попять действие, о котором рассказывается или которое наблюдается, человек часто вынужден задать такие вопросы:
"Кто осуществляет действие (агент)?",
"Какова цель действия (намерение)?",
"Каковы последствия (эффект)?",
"На кого это действие влияет (получатель)?",
"Каким образом оно произведено (инструмент)?".
Относительно понимания вещей, отличающихся от действий, задают несколько иные вопросы, и эти вопросы могут быть значительно меньше локализованы, чем в случае понимания действий, например: "Почему они говорят это мне?", "Каким образом я могу выяснить больше об X?", "Каким образом это поможет в решении проблемы?" и т.д. По рассказу спрашивают, какова тема, каково отношение автора, какое главное событие, кто является главным героем и т. д. По мере того, как на каждый вопрос дается предварительный ответ, из памяти могут вызываться новые фреймы, соответствующие ситуациям, которые возникают в результате ответов на вопросы. Вопросы - терминалы этих новых фреймов становятся в свою очередь активными.
Следует отметить, что число вопросов, связанных с фреймом неопределено, и на первый взгляд кажется, что для понимания ситуации их может быть очень много. Однако на практике оказывается достаточным задать весьма мало вопросов, чтобы разобраться в ситуации.
Разные люди могут задавать разное число вопросов относительно одной и той же ситуации. Число и характер этих вопросов в большой степени зависят от базы знаний относительно обсуждаемого объекта у того или иного индивидуума. Может оказаться, что полное понимание не будет достигнуто из-за отсутствия у человека необходимой системы фреймов, объединяющих знания об обсуждаемом предмете.