Разделы
Счетчики
Приложение к русскому изданию
Ф.М.Кулаков
Глава 1. Суть проблемы представления знаний
Глава 2. Характерные особенности фрейм-подхода к проблеме представления знаний
Глава 3. Способ формализации фреймов
Предлагаемая советскому читателю книга известного американского ученого Марвина Минского посвящена одной из наиболее важных и сложных проблем, обсуждаемых ныне в рамках исследований по "искусственному интеллекту", - проблеме представления знаний в памяти ЭВМ. Суть ее заключается в том, что любое "осмысленное" поведение искусственной системы в условиях реального внешнего мира требует наличия у этой системы специально организованной модели этого мира. Данные ряда фундаментальных наук и в первую очередь психологии, генетики, цитологии позволяют утверждать, что способность к информационному моделированию, к внутреннему воссозданию окружающей обстановки является основополагающей и необходимой в жизни и деятельности не только человека, но и животных. Создание искусственного интеллекта является целью бурно развивающегося нового научного направления, вся история которого свидетельствует в пользу правильности модельного подхода к решению данной проблемы. Особую значимость приобретают вопросы представления знаний о свойствах, характеристиках и закономерностях реальных внешних сред для построения робототехнических систем, обладающих широкими функциональными возможностями и высокой степенью автономии. Подобные кибернетические устройства, именуемые, интегральными роботами, разрабатываются как комплексные системы, способные воспринимать и анализировать информацию о внешнем мире, принимать самостоятельные решения и формировать управляющие воздействия для исполнительных органов с целью реализации принятых решений. Очевидно, что модель мира робота должна отражать совокупность объектов и отношений реального мира, существенных для решения некоторого множества задач, на которые нацелен робот.
Сложность решения проблемы представления чрезвычайно велика, и это объясняется в первую очередь недостатком наших знаний о механизмах человеческого мышления. Результаты, полученные при изучении человеческого интеллекта, оказывают все большее влияние на решение проблемы искусственного интеллекта. Последние в свою очередь помогают ученым глубже понять принципы работы человеческого мозга.
Существует несколько направлений исследований в области искусственного интеллекта, отличающихся, в частности, своими подходами к проблеме представления знаний.
Наиболее известные методы машинного представления знания: логистический, теоретико-графовый, а также метод, использующий для описания мира вектор-функции, определенные на нормированных пространствах.
Логистический метод, используемый, например, при построения такой известной системы для решения задач, как STRIPS (P.Файкс, Н.Нильсон, 1973), основан на привлечении языка исчисления предикатов первого порядка для формирования модели внешнего мира, на использовании понятий пространства состояний, а также методов доказательства теорем и эвристических методов как основных механизмов поиска решений. Модель в данном случае представляет собой систему аксиом - предложений языка исчисления предикатов первого порядка, определяющую всю совокупность объектов, характеристик и свойств внешнего мира робота, существенных для его функционирования. В случае относительно простых, статических сред системы аксиом выглядят достаточно компактно, а существующие поисковые процедуры (такие, как метод резолюций и его модификации, эвристика "анализа целей и средств" и др.) оказываются мощным средством для выработки планов действий. Но как только возникает задача создания машинной модели реальной, динамичной, недетерминированной внешней среды, то логистический подход оказывается несостоятельным вследствие резкого усложнения, как самих конструкций моделей, так и формализованного представления в них смысловых отношений между элементами внешней среды.
Кроме того, с усложнением внешнего мира число формализующих его аксиом лавинообразно растет, что приводит не просто к громоздкости машинной модели окружающей среды, но к ряду принципиальных трудностей. Они связаны, во-первых, с выбором только того подмножества из всего множества аксиом, которое имеет непосредственное отношение к решаемой в данный момент времени задаче, и, во-вторых, с активизацией и выполнением лишь тех дедуктивных процедур, которые существенны для получения конечного результата. Проблема заключается совсем не в том, чтобы из множества выведенных отобрать нужные теоремы, а в том, чтобы не выводить ненужных.
Аналогичные по характеру трудности возникают при использовании теоретико-графового метода, в рамках которого модель внешнего мира представляется в виде графа, узлы которого соответствуют возможным состояниям внешней среды, а дуги - возможным действиям, переводящим систему из одного состояния в другое.
Ограничены возможности описания реального мира и с помощью вектор-функций, определенных на нормированных пространствах, что имеет место в случае методов, использующих основные положения теории автоматического управления (Ф.М.Кулаков,1976).
Одним из возможных путей решения проблемы явился подход, предполагающий использование семантических связей между понятиями, включенными в модель внешнего мира и учет прагматики внешнего мира. Это нашло свое отражение в исследованиях советских ученых, например, П.М.Амосова в области развития М-сетей, Д.А.Поспелова, В.Н.Пушкина и Ю.И.Клыкова по ситуационному управлению, а также ряда зарубежных специалистов, в том числе Р.Шенка по теории семантической зависимости (conceptual dependency), Дж.Уилкса в области семантики предпочтений (preference semantics), Ч. Ригера по теории семантических наложений (conceptual overlays) и др.
Наиболее значительной среди появившихся за последние годы была теория фреймов (frames) M. Минского, привлекшая к себе пристальное внимание специалистов в области искусственного интеллекта (Р.Шенк, Р.Абельсон,1975; Дж.Лаубш,1975; Дж.Майлопулос, П.Коэн, А.Борджида, Л.Шугар,1975; Д.А.Поспелов,1976; Д.А.Поспелов, Е.Н.Ефимов,1977; Н.Н.Перцова,1977 и др.). Впервые теория была опубликована в 1974 г.
В своей теории М.Минский отказался от попыток формировать модель внешнего мира на основе разрозненных, отдельных фактов или понятий. Центральным моментом является его утверждение о том, что любая машинная модель, отражающая сложности реального мира, должна строиться в виде достаточно большой совокупности определенным образом сформированных данных - фреймов, представляющих собой модели стереотипных (часто повторяющиеся) ситуации. Ситуация понимается здесь в обобщенном смысле, т. е. это может быть действие, рассуждение, зрительный образ, повествование и т.д. Фрейм представляет собой не одну конкретную ситуацию, а наиболее характерные, основные моменты ряда близких ситуаций, принадлежащих одному классу. В переводе с английского frame означает скелет, остов, рамка, что лишний раз подчеркивает общность представленных в нем сведений о моделируемом явлении. Графически фрейм можно изобразить в виде сети, состоящей из узлов и связей между ними. Каждый узел представляет собой определенное понятие, которое - и в этом заключается основной смысл теории - может быть, а может и не быть задано в явном виде. В последнем случае оно может быть конкретизировано в результате процесса согласования данного фрейма с некоторой конкретной ситуацией, имеющей место во внешнем мире. Незаданные в явном виде узлы называются терминалами. Они образуют нижние уровни графовой структуры, тогда как на верхних уровнях располагаются понятия, которые всегда справедливы в отношении представляемой данным фреймом ситуации. Таким образом, совокупность заданных в явном виде узлов - понятий образует основу для "понимания" любой конкретной ситуации из определенного для данного фрейма класса ситуаций. "Понимание" происходит путем конкретизации терминалов и согласования возможных для каждого из них понятий с вполне определенной, существующей во внешнем мире обстановкой. Центральным моментом является использование одних и тех же терминалов различными фреймами, что позволяет координировать информацию, собираемую из разных источников. Группы связанных между собой фреймов объединяются в системы, которые могут отражать действия, причинно-следственные связи, изменения понятийной точки зрения и т. д.
В своей теории М.Минский не проводит границы между теорией человеческого мышления и теорией построения "думающих" машин (искусственного интеллекта). Он полагает, что процессы человеческого мышления базируются на хранящихся в его памяти материализованных, многочисленных запомненных структурах данных - фреймах, с помощью которых человек осознает зрительные образы (фреймы визуальных образов), понимает слова (семантические фреймы), рассуждения, действия (фреймы-сценарии), повествования и т.д. Процесс понимания при этом сопровождается активизацией в памяти соответствующего фрейма и согласованием его терминальных вершин с текущей ситуацией. В случае неудачи из памяти с помощью сети поиска информации, объединяющей системы фреймов, "выбирается" другой фрейм, терминалы которого, возможно, окажутся между собой в более подходящих отношениях применительно к той же рассматриваемой ситуации.
Процесс последовательной замены одного фрейма другим особенно наглядно проявляется в таких областях человеческого мышления, как понимание естественного языка, рассуждение, вывод по аналогии и др. Это следует из наших интуитивных представлений о процессе мышления, который начинается с наводящих на мысль, но несовершенных образов, прогрессивно заменяемых лучшими, но всё еще несовершенными идеями.
Представление знаний о мире с помощью систем фреймов оказывается весьма плодотворным во многих областях исследований по искусственному интеллекту, начиная от понимания естественного языка и кончая проблемами машинного восприятия слуховых и зрительных образов. Подтверждением тому служат многочисленные работы таких известных специалистов в области искусственного интеллекта, как Р.Шенк, Р.Абельсон, Ч.Ригер, Е.Чарняк, Дж.Уилкс и др., посвященные конкретизации и развитию теории фреймов.
Весьма обнадеживающим является использование концепции фрейма и применительно к задаче построения информационно-управляющего комплекса манипуляционного робота. Исследования в этом управлении проводятся в Ленинградском научно-исследовательском вычислительном центре АН СССР под руководством В.М.Пономарева и Ф.М.Кулакова.
Вместе с тем следует отметить, что подход М.Минского к решению проблемы представления знаний не лишен недостатков. В частности, человек способен понять не только известные, но и новые ситуации, к чему фреймы пока еще не приспособлены. Видимо, разработка механизмов машинного "понимания" новых фактов на 5азе системы фреймов точно так же, как и развивающихся во времени действий, еще впереди.
Существует еще целый ряд вопросов, которые не затрагиваются автором в данной книге. Например, проблема принятия решений на базе системы фреймов, в том числе проблема планировании действий робота. Однако это не следует понимать как недостаток данной работы, поскольку автор ставил перед собой цель изложить в ней общие вопросы теории фреймов и дать толкование ее основных положений.
Своеобразное изложение автором материала довольно трудно для восприятия. Именно поэтому книга дополнена настоящим материалом, в котором сделана попытка краткой интерпретации работы М.Минского. Этот материал не претендует на полное отображение всех идей настоящей книги, а имеет более конкретный характер благодаря включению в него примеров некоторых приложений теории фреймов. Примеры взяты из работ Р.Шенка(1975), Р.Абельсона(1973), И.Ригера(1975), а также составлены автором настоящего приложения.
Чтобы сделать изложение материала этого приложения замкнутым, понятным без обращения к переводу книги, в него включены в сжатой форме некоторые фрагменты перевода. Хотелось бы отметить, что весьма сложная форма изложения материала первоисточника в сочетании с еще не устоявшейся терминологией серьезно затрудняли перевод. В связи с этим считаю своим приятным долгом выразить благодарность В.М.Пономареву, Д.А.Поспелову, и В.Л.Стефанюку за ценные советы в процессе работы над книгой.
Глава 1.
Суть проблемы представления знаний
Проблема представления знаний является тем ключевым пунктом, через который проходят пути к достижению успеха, пожалуй, во всех направлениях исследований по искусственному интеллекту, начиная от проблем понимания естественного языка и кончая проблемами машинного восприятия зрительных образов и речи.
Очевидная первопричина сложности создания машинной модели реального мира кроется в бесконечном многообразии этого мира.
Действительно, представим себе, что такую модель необходимо создать для робота, предназначенного для выполнения неограниченного набора приказов человека и функционирующего в среде неограниченной вариативности. Если попытаться решить задачу "в лоб", путем представления модели мира в виде набора программ. каждая из которых соответствует последовательности возможных действий робота при выполнении одного из приказов, осуществляемых с учетом конкретных условий внешнего мира робота (состояния внешней среды), то возникают по крайней мере две непреодолимые трудности, обусловленные бесконечным многообразием реального мира. (Под условиями внешнего мира понимается не только мир, воссоздаваемый сенсорами робота, но и априорные знания о закономерностях реального мира).
Первая из них связана с необходимостью наличия в памяти ЭВМ неограниченного набора программ, каждая из которых рассчитана на выполнение приказа при определенном состоянии внешней среды.
Вторая трудность порождена необходимостью соотнести данный приказ оператора и состояние внешней среды робота с конкретной программой из этого неограниченного набора, ответственной за выполнение данного приказа в конкретной внешней ситуации, и выбрать эту программу из памяти за приемлемое весьма ограниченное время.
Иными словами, речь идет о машинном "понимании" за ограниченные отрезки времени языка приказов и "языка сенсоров", с помощью которых воспринимаются те особенности внешнего мира, которые важны для выполнения приказа. И если в отношении "понимания" языка приказов можно несколько уменьшить трудности за счет, например, использования приказов однозначного толкования, то в отношении понимания "языка" сенсоров это сделать невозможно.
Приведенные трудности объясняют нереальность создания модели реального мира таким путем. Несмотря на это, такой подход всё же несет одно ценное свойство. По крайней мере, на интуитивны уровне ясно, что каждую из программ, ответственную за выполнение данного приказа, можно построить так, чтобы учесть все необходимые для выполнения приказа особенности внешнего мира робота, причем реального внешнего мира со всем его многообразием и сложностью, что невозможно при использовании известных подходов из-за принципиальной ограниченности средств описания внешнего мира, характерных для этих подходов.
Конечно, ограниченность машинной памяти не позволит иметь большого количества таких программ, но в случае маловариативных сред и невысоких требований к диапазону функциональных возможностей робота реально получение приемлемых технических решений.
Очевидный путь, позволяющий, по-видимому, несколько уменьшить трудности создания машинной модели реального мира, лежит через кардинальное уменьшение числа входящих в модель программ при сохранении общего объема знаний о мире, содержащихся в этой модели.
Это можно было бы осуществить, если бы удалось определенным образом упорядочить, структурировать программы, образующие модель.
С этой целью, во-первых, полезно найти и выделить в разнообразных возможных действиях общие универсальные фрагменты, с помощью которых можно компоновать эти действия. Очевидно, из т таких универсальных фрагментов в пределе можно скомпоновать (1!+2!+3!+…+ m!) разнообразных действий. Если даже ограничить число используемых для описания действия фрагментов величиной m , т.е. имеет место колоссальный выигрыш в использовании памяти, тем больший, чем больше т.
Во-вторых, необходимо стремиться так построить программы, входящие в модель реального мира для робота, чтобы каждая из них была способна формировать широкий набор (в пределе бесконечный) разнообразных действий, варьируемых, например, в зависимости от характера информации, собираемой определенной группой сенсоров, или от модификации приказов.
Глава 2
Характерные особенности фрейм-подхода к проблеме представления знаний
2.1. Фрейм - визуальный образ2.2. Фрейм - сценарий
Одним из возможных новых путей организации машинной модели реального мира является подход, развиваемый М.Минским. В соответствии с этим подходом знания о мире - машинная модель реального мира - должны быть представлены в памяти ЭВМ в виде достаточно большой совокупности определенным образом структурированных данных, представляющих собой стереотипные ситуации. Эти структуры запомненных данных получили название "фреймы". В случае возникновения конкретной ситуации, например, необходимости совершить роботом, управляемым ЭВМ, определённое действие, воспринять с помощью сенсоров, связанных с ЭВМ, какой-то зрительный образ и т.д., из памяти ЭВМ должен быть выбран фрейм, соответствующий данному классу ситуаций и согласован с рассматриваемой конкретной ситуацией из этого класса путем изменения подробностей, т.е. путем конкретизации данных из набора, которые могут удовлетворить выбранный фрейм.
Так как фрейм можно представить себе в виде сети, состоящей из узлов и связей между ними, то каждый узел должен быть заполнен своим "заданием", представляющим собой те или иные характерные черты ситуации, которой он соответствует. В общем случае во фрейме можно выделить несколько уровней, иерархически связанных друг с другом. Узлы фрейма, принадлежащие к верхним уровням, представляют собой более общие вещи, которые всегда справедливы в отношении предполагаемой ситуации. Эти узлы уже заполнены своими заданиями. Например, узел самого верхнего уровня фрейма обычно заполнен названием ситуации, т. е. названием зрительного образа (это может быть, например, "куб"), названием действия (например, "уборка комнаты"). Узлы нижних уровней по большей части не заполнены своими заданиями. Такие незаполненные узлы называют терминалами. Они должны быть заполнены конкретными данными, представляющими собой их возможные задания в процессе приспособления фрейма к конкретной ситуации, из того класса ситуаций, который представляет данный фрейм. Каждый терминал может устанавливать условия, которым должны отвечать его задания. Простые условия устанавливаются "маркерами", которые могут потребовать, например, чтобы заданием терминала было какое-то лицо, какой-то предмет достаточной величины, какое-то элементарное действие или "указатель" на какой-то другой фрейм, представляющий собой другую, обычно более частную ситуацию и называемый субфреймом. Более сложные условия могут устанавливать связи между заданиями для нескольких терминалов.
Группа фреймов может объединяться в систему фреймов. Результаты характерных действий отражаются с помощью трансформаций между фреймами системы. Они используются, чтобы ускорить вычисления определенных видов при представлении типичных изменений одной и той же ситуации.
В случае зрительного образа различные фреймы системы описывают картину с различных точек наблюдения, а трансформация одного фрейма в другой отражают результаты перемещения из одного места в другое. Для фреймов певизуальных видов различия между фреймами системы могут отражать действия, причинно-следственные связи и изменения понятийной точки зрения. Различные фреймы системы используют одни и те же терминалы. Это важное обстоятельство, благодаря которому, в частности, экономится объем памяти ЭВМ, используемой для построения модели реального мира. Характерной чертой описываемого подхода является возможность использования различных видов прогнозов, ожиданий, предположений. В соответствии с этим терминалы фрейма, выбираемого для •представления ситуации, обычно уже заполнены заданиями, которые наиболее вероятны в данной ситуации. Эти задания называются "заданиями отсутствия".
Таким образом, фрейм может содержать большое число деталей, которые могут и не подтвердиться данной ситуацией. Задания отсутствия "непрочно" связаны со своими терминалами, поэтому они могут быть легко "вытеснены" другими заданиями, которые лучше подходят к текущей ситуации.
После того как выбран фрейм для представления ситуации, процесс согласования фрейма с данной конкретной ситуацией состоят в нахождении таких заданий для терминалов фрейма, которые совместимы с маркерами терминалов. Процесс согласования частично контролируется информацией, связанной с фреймом (в которую входит и информация относительно того, как действовать в случае появления необычных ситуаций, "сюрпризов"), а частично знанием текущих целей.
Если выбранный фрейм не удается согласовать с реальностью, т. е. если невозможно найти задания для терминалов, которые соответствующим образом согласуются с условиями маркера, то происходит обращение к так называемой сети поиска информации, с помощью которой соединяются между собой системы фреймов. Эта сеть позволяет найти другие способы представления знаний о фактах, аналогиях и другой информации, которую можно использовать для согласования с реальностью.
Теория представления знаний с помощью фреймов, развиваемая М.Минским, претендует на объяснение ряда характерных особенностей человеческого мышления. По мнению автора, она позволяет охватить единой концепцией такие, казалось бы, разные теории, как понимание естественного языка, машинного "восприятия" зрительных образов, поиска решений, планирования, в том числе применительно к задачам управления роботами. Она объединяет многие классические и современные идеи психологии, лингвистики, а также искусственного интеллекта. В частности, эта теория обобщает идеи, высказанные в ряде известных работ по искусственному интеллекту, например в работах А.Ньюэлла, Г.Саймона(1972), в которых знания о мире представляются с помощью пространств подзадач, в работах Р.Шенка(1973), Р.Абельсона(1973), где модель мира представляется пространством "сценариев", наконец, в работах С.Пейперта(1972) и самого М.Минского(1972), в которых предлагается подразделить знания на "микромиры".
В своей теории М.Минский не проводит границы между теорией человеческого мышления и теорией построения "думающей" машины (искусственного интеллекта). Он считает, что и процесс мышления человека основан на наличии в его памяти каким-то образом материализованного огромного набора разнообразных фреймов, с помощью которых человек осознает зрительные образы (фреймы визуальных образов), понимает слова (семантические фреймы), рассуждения, действия (фреймы-сценарии), повествования (фреймы-рассказы) и т.д. Процесс понимания при этом сопровождается выбором из памяти соответствующего фрейма, у которого терминалы уже заполнены заданиями отсутствия, и приспособлением его к текущей ситуации. Если это не удается, то из памяти выбирается новый более подходящий к ситуации фрейм. В случае, когда и этот фрейм не достаточно хорошо согласуется с ситуацией и поиски нового не приводят к удаче, происходит приспособление наиболее отвечающего ситуации фрейма, который был обнаружен в процессе поиска.
2.1. Фрейм - визуальный образ
В качестве простейшего примера, иллюстрирующего представление знаний с помощью фреймов, рассмотрим приведенную в работе М.Минского возможную систему фреймов для элементарного зрительного образа - куба. В соответствии с использованным в работе А.Гузмана(1967) символическим представлением тел правильной формы с помощью "областей" и "связей" между ними можно допустить, что результатом разглядывания куба является структура, подобная показанной на рис.П1а. Эту структуру можно идентифицировать с фреймом куба при разглядывании его с соответствующей позиции. Области A, E и B являются терминалами фрейма, задания для которых соответствуют возможным деталям или обозначениям на видимых с данной позиции гранях куба. Если позиция наблюдения куба перемещается вправо, то грань А исчезает из поля зрения и становится видимой грань С.
Если бы потребовалось провести полный анализ этого нового визуального образа, необходимо было бы:
1) утратить знания о грани А,
2) повторно воспринять (с помощью соответствующих "вычислений") образ грани В,
3) воспринять образ новой грани С.
Однако, поскольку известно, что произошло перемещение позиции наблюдения вправо, можно сохранить знания о грани В в виде задания терминалу левой грани нового фрейма куба, соответствующего новой позиции наблюдения. Кроме того, чтобы сохранить знания и о грани А, можно ввести дополнительный терминал невидимой грани, относящийся к этому новому фрейму, как это показано на рис.П1б.
При возвращении на начальную позицию наблюдения оказывается возможным восстановить визуальный образ куба без каких-либо новых "вычислений". Для этого достаточно "вызвать" из памяти первый фрейм. Очевидно, полезно сохранить знания и о грани С, для чего можно ввести дополнительный терминал этой невидимой грани в первом фрейме (рис.П1б).
Можно продолжить эту процедуру построения системы фреймов, соответствующую перемещению точки наблюдения вокруг куба. Это привело бы к получению более широкой системы фреймов, в которой каждый фрейм соответствует своей позиции наблюдения куба. На рис.П1в показана система фреймов, состоящая из трех фреймов, каждый из которых представляет визуальный образ, получающийся в одной из трех позиций наблюдения. Две из этих позиций соответствуют перемещению вправо и влево на 45° относительно третьей позиции; указатели между фреймами соответствуют перемещениям точки наблюдения. Важно обратить внимание на выявленное в этом примере важное свойство представления ситуации с помощью системы фреймов. Оно состоит в том, что различные фреймы, входящие в систему, используют один и тот же терминал, соответствующий одной и той же физической черте, которая видна из различных позиций наблюдения. Это позволяет заранее сосредоточить в одном месте информацию о свойствах известных объектов независимо от позиций наблюдения, которых, особенно для предметов сложной формы, может быть очень много. В результате экономится память и сокращается процесс восприятия при изменении позиций наблюдения, так как память уже располагает необходимой информацией и время затрачивается лишь на "извлечение" ее из памяти.
Сами же системы фреймов, по-видимому, сформированы в памяти не для визуальных образов каждого возможного предмета, а для обычно используемых "основных форм", которые, вступая в различные комбинации, образуют системы фреймов для новых случаев. Это создает дополнительные возможности экономии памяти. Так же, как и в случае отдельных заранее сформированных терминалов, принадлежащих фрейму, наличие в памяти заранее заготовленного набора систем фреймов ускоряет процесс восприятия, так как новый образ не приходится строить заново, а только извлекать его из памяти и "приспосабливать" к действительности.
2.2. Фрейм-сценарий
Отмеченные свойства, позволяющие экономить память и время восприятия, очевидно, могут проявляться и при представлении невизуальных знаний о мире. Действительно, системы невизуальных фреймов, например описываемых ниже фреймов-сценариев, можно представить как одно из возможных понимании предмета обсуждения; например, электрогенератор можно представить как механическую и как электрическую системы. Любые знания о мире можно представить себе в виде некоторых общих универсальных фрагментов, которым соответствуют свои системы фреймов и из которых можно формировать новые системы фреймов, соответствующие некоторым новым представлениям.
Представление знаний о мире с помощью фреймов оказывается весьма плодотворным при объяснении механизмов понимания человеком естественного языка, рассуждении, повествований, наблюдаемых действий другого лица и т. д. По-видимому, оно будет полезным и при разработке искусственных механизмов реализации вышеперечисленных функций с помощью ЭВМ.
В работе М.Минского в этом случае предлагается строить знания о мире в виде фреймов-сценариев. Фрейм-сценарий по М.Минскому представляет собой типовую структуру для некоторого действия, понятия события и т. п., включающую характерные элементы этого действия понятия, события. Например, фрейм-сценарий для события, состоящего в праздновании дня рождения ребенка, включает следующие элементы, которые можно трактовать как узлы фрейма, заполненные заданиями отсутствия:
Одежда: воскресная, самая лучшая;
Подарок: должен понравиться.
Для объяснения быстрого понимания человеком ситуации, представляемой сценарием, в работе Р.Шенка, Р.Абельсона(l975) предлагается отождествлять терминалы фрейма-сценария с наиболее характерными вопросами, обычно связанными с этой ситуаций. Ответы на эти вопросы полезно получить для понимания данной ситуации. По существу фрейм-сценарий в этом случае является собранием вопросов, которые необходимо задать относительно некоторой гипотетической ситуации, и способов ответа на них.
Для фрейма-сценария - дня рождения ребенка в число таких вопросов войдут следующие:
Что должны надеть гости?
Выбран ли подарок для ребенка?
Понравится ли ему подарок?
Где купить подарок?
Где достать денег? и т. д.
Для того чтобы попять действие, о котором рассказывается или которое наблюдается, человек часто вынужден задать такие вопросы:
"Кто осуществляет действие (агент)?",
"Какова цель действия (намерение)?",
"Каковы последствия (эффект)?",
"На кого это действие влияет (получатель)?",
"Каким образом оно произведено (инструмент)?".
Относительно понимания вещей, отличающихся от действий, задают несколько иные вопросы, и эти вопросы могут быть значительно меньше локализованы, чем в случае понимания действий, например: "Почему они говорят это мне?", "Каким образом я могу выяснить больше об X?", "Каким образом это поможет в решении проблемы?" и т.д. По рассказу спрашивают, какова тема, каково отношение автора, какое главное событие, кто является главным героем и т. д. По мере того, как на каждый вопрос дается предварительный ответ, из памяти могут вызываться новые фреймы, соответствующие ситуациям, которые возникают в результате ответов на вопросы. Вопросы - терминалы этих новых фреймов становятся в свою очередь активными.
Следует отметить, что число вопросов, связанных с фреймом неопределено, и на первый взгляд кажется, что для понимания ситуации их может быть очень много. Однако на практике оказывается достаточным задать весьма мало вопросов, чтобы разобраться в ситуации.
Разные люди могут задавать разное число вопросов относительно одной и той же ситуации. Число и характер этих вопросов в большой степени зависят от базы знаний относительно обсуждаемого объекта у того или иного индивидуума. Может оказаться, что полное понимание не будет достигнуто из-за отсутствия у человека необходимой системы фреймов, объединяющих знания об обсуждаемом предмете.
Однако, когда необходимая база знаний существует, а относительно обыденных понятий, действий, рассуждений она есть у любого человека, то для понимания ситуации обычно достаточно не очень большое количество вопросов. Это весьма принципиальное обстоятельство, благодаря которому на интуитивном уровне мы приходим к весьма обнадеживающему для практики положению, состоящему в том, что большое количество реальных ситуаций, возникающих при понимании языка, рассуждении, действий можно понять, получив ответы на ограниченный круг вопросов. Это косвенно подтверждает возможность построения относительно простых моделей мира в данном случае с помощью фреймов, достаточных для принятия решений в этих ситуациях.
В случае фреймов-сценариев маркеры терминалов фрейма становятся более сложными, чем это было в случае фреймов визуальных образов, и определяют рекомендации относительно того, каким образом надо отвечать на вопросы, т.е., заполнять терминал заданием. Каждый терминал должен содержать рекомендации относительно того, каким образом найти его задание - ответ на вопрос. Задания отсутствия или перечень возможных ответов на вопросы являются самыми простыми особыми случаями таких рекомендаций. По-видимому, человек может иметь иерархический набор таких рекомендаций подобно схемам предпочтения, предложенным в работе Дж.Уилкса(1973).
В соответствии с подходом М. Минского полное и всестороннее представление каждой ситуации типа событие, действие, рассуждение и т.п. подобно представлению визуального образа и осуществляется с помощью не одного, а системы фреймов. Каждый фрейм, системы соответствует одной из возможных точек зрения на ситуацию, представляемую системой фреймов, подобно тому, как один из визуальных фреймов системы представляет визуальный образ из некоторой одной точки наблюдения. Различные фреймы системы представляют различные пути использования одной и той же информации, находящейся на общих терминалах. Как и в "визуальной ситуации", человек, понимая или передавая мысль, "выбирает" один из фреймов. Этот выбор "по существу" состоит в выборе вопросов, которые, нужно задать относительно рассматриваемой ситуации.
В интерпретации Р.Шенка, Р.Абельсона(1975) сценарий представляет собой последовательность действий, которые описывают часто встречающиеся ситуации. В этой последовательности действий используется принцип каузальной связи, т. е. результатом каждого действия являются условия, при которых может произойти следующее действие.
Каждый сценарий имеет исполнителей ролей. Он имеет различные интерпретации, отражающие точки зрения различных исполнителей. Таким образом, его можно рассматривать как систему фреймов.
Количество сценариев, отражающих возможные ситуации, встречающиеся в реальной жизни, огромно. Сюда относится и упомянутый выше день рождения ребенка и игра в футбол, занятия в школе и т. д. Ниже приводится сценарий посещения ресторана с точки зрения посетителя.
Сценарий: ресторан
Роли: посетитель, официантка, шеф, кассир
Цель: получить пищу, чтобы утолить голод
Сцена I. Вход
Войти в ресторан
Глаза направить туда, где есть пустые столы
Выбрать, где сесть
Направиться к столу
Сесть
Сцена II. Заказ
Получить меню
Прочитать меню
Решить, что хочешь заказать
Сделать заказ официантке
Сцена III. Еда
Получить пищу
Съесть пищу
Cцена IV. Уход.
Попросить счет
Получить чек
Направиться к кассиру
Заплатить деньги
Выйти из ресторана
В каждом сценарии средства выполнения действий могут варьи-юваться по обстоятельствам. Например, в сцене II заказ можно сделать письменно, устно и даже (в другой стране при незнании языка) жестами. В сцене IV выплата денег может быть осуществлена кассиру, официанту или словами "Включите в мой счет".
Возможно также, что обычная последовательность действий может нарушаться. Имеется по крайней мере три характерных случая такого нарушения. Первый - это отклонение, которое представляет собой прерывание последовятельности действий сценария другим сценарием. Другие два случая называются препятствием и ошибкой. Препятствие имеет место тогда, когда кто-то или что-то мешает обычному действию ила отсутствует какое-то условие, необходимое для выполнения действия. Ошибка появляется тогда, когда действие завершается не так, как требуется. В принципе после каждого элементарного действия сценария могут возникнуть препятствия и ошибки, поэтому в сценарий вводятся различные наборы вопросов типа "а что если...", ответ на которые необходимо получать после каждого элементарного действия. При положительном ответе на один из них в сценарии предусматриваются новые действия, устраняющие препятствия и ошибки. Например, в сцене II сценария "ресторан", если официантка не замечает посетителя, он попытается встретиться с ней взглядом или окликнуть её.
Таким образом, сценарий - не просто цепь событий, а скорее связанная каузальная цепочка действий. Он может разветвляться на множество возможных путей, которые сходятся в особо характерных для сценария точках - элементарных действиях. Для сценария в ресторане такими действиями являются "прием пищи" и "уплата денег".
Для того чтобы знать, когда пользоваться сценарием, нужны заголовки. Эти заголовки определяют обстоятельства, при которых обращаются к данному сценарию.
Из приведенного описания сценариев нетрудно установить аналогию между пониманием сценария по М. Минскому и по Р.Шенку. Действительно, как в том, так и в другом случае сценарии описывают стереотипные, обычно встречающиеся ситуации. Правда, в случае Р.Шенка сценариями охватывается несколько более узкий класс ситуаций, описываемый последовательностями действий. Как в том, так" и в другом случае со сценарием связан определенный круг вопросов. Однако в случае Р.Шенка имеет место более конкретный и узкий круг вопросов типа "а что если ...", а также вопросы, ответы на которые определяют выбор средств, определяющих действия сценария.
Поскольку в соответствии с высказанным ранее положением процесс понимания человеком реальной ситуации есть выбор из памяти и приспособление к этой ситуации соответствующего фрейма, возникает вопрос о возможном механизме этого акта.
Глава 3.
Способ формализации фреймов
3.1. Примеры формализованного представления фреймов-сценариев3.2. Механизмы "приспособления" фрейма к реальной ситуации
Одни из множества возможных способов формализации фрейма-сценария предполагает представление его в виде сети следующей иерархической структуры (рис.П2).
Узел самого верхнего уровня сети (на рисунке ему соответствует кружок, обведенный жирной линией) отождествляется с заголовком сценария. Дочерние вершины этого узла, обозначенные на рисунке прямоугольниками, являются терминалами фрейма. Они отождествляются с набором вопросов типа "а что если..." или в общем случае с набором любых других вопросов - тестом. Каждое из возможных заданий терминала, являющееся элементарным действием и обозначенное на рисунке кружком внутри прямоугольника-терминала, соответствует значению теста, т. е. совокупности ответов на набор вопросов. В простейшем случае имеется конечный перечень возможных ответов, который и определяет маркер терминала.
Каждое из возможных заданий терминала рассматривается в свою очередь как фрейм следующего по рангу уровня (субфрейм) со своими терминалами, которые представляются на рисунке дочерними вершинами заданий - субфреймов и обозначаются прямоугольниками. Каждый из этих терминалов низшего ранга так же, как и терминалы фрейма верхнего ранга, отождествляется со своим тестом. Задания терминалов следующего по рангу уровня, также обозначенные кружками, являются более мелкими и сильнее конкретизированными элементарным" действиями. Каждое из них соответствует значению теста. Если и эти задания еще не являются достаточно конкретными, то фрейм может иметь еще один более низкий по иерархии уровень.
Нетрудно убедиться, что описанная структура сводится к обычному графу И/ИЛИ, если отождествить терминалы фреймов и субфреймов, обозначенные на рис.П2 прямоугольниками, с вершинами типа И, задания этих терминалов - с вершинами ИЛИ, а каждой дуге, идущей от вершины И к ИЛИ, поставить в соответствие значение теста. На рис.П3 дано представление ранее представленного фрейма (рис.П2) в виде графа И/ИЛИ. Заметим, что при такой формализации дочерними вершинами для верхнего узла будут вершины типа И.
Отметим, что терминалы фрейма и субфреймов в предлагаемой формализации можно в большинстве случаев отождествлять не только с тестом, но и с действием, которое является обобщением всех действий, определяемых возможными заданиями терминале. При таком представлении все вершины И/ИЛИ графа, формализующего фрейм, соответствуют действиям, причем тем более конкретизированным, чем ниже по иерархии вершина. Часто полезным оказывается использование обобщения графа И/ИЛИ, описывающего фрейм-сценарий, которое получается за счет представления вершинами графа не действий той или иной степени общности, а так называемых "схем действий". Эти схемы определяют лишь общую структуру действия, т.е. в них могут быть не определены конкретно или действующие лица, или средства действия, или место действия и т. п., или, наконец, и то и другое вместе. Например, возможна следующая схема действия: Х прибыть в V, где Х может быть любым конкретным лицом, а V - любым конкретным местом. Чем ниже по иерархии вершина, тем более конкретно определяет она действие.
Важно подчеркнуть, что, если база знаний о мире образована в ЭВМ совокупностью таким образом формализованных фреймов-сценариев, то очень вероятна возможность многократного вхождения одних и тех же схем действий в разные фреймы-сценарии. Эта вероятность тем больше, чем большее количество фреймов включает база знаний. Для использования этого обстоятельства с целью экономии памяти полезно связать каждую схему действия с каждым своим вхождением во фреймы, образующие базу знаний, посредством "множества вхождений", которое представляет указания на все те места в базе знаний, где есть ссылки на данную схему. Кроме того, каждая схема действия связана с объемлющей ее схемой.
3.1. Примеры формализованного представления фреймов-сценариев
Приведенный выше фрейм-сценарий ресторана легко можно изобразить в виде такой графовой структуры И/ИЛИ (рис.П4). Номера сцен и действий сценария присвоены вершинам графа, представляющим соответствующие действия. Заголовок фрейма-сценария соответствует вершине графа. Каждая из четырех сцен соответствует вершине И, т.е. терминалу фрейма.
Две первые И вершины, соответствующие входу в ресторан и заказу обеда, имеют по две вершины ИЛИ, остальные две - по одной. Первые вершины ИЛИ первых двух вершин И соответствуют действию, совершаемому при утвердительном ответе на вопросы "а что если посетитель уже в ресторане", "а что если заказ сделан другом". Очевидно, в этом случае действия не нужны и вершины пусты. Все остальные ИЛИ вершины так же, как и их материнские вершины, соответствуют входу, заказу, еде, уходу.
Каждая из этих вершин имеет вершины И, соответствующие действиям, помеченным в сценарии арабскими цифрами. Наконец, вершины И 9 и 16 имеют по три дочерних вершины ИЛИ, соответствующие вариантам заказа и уплаты денег.
Другой иллюстрацией представления фрейма-сценария в виде графа И/ИЛИ является фрейм-сценарий (рис.П5), взятый из работы И. Ригера (1975).
Вершина этого графа соответствует названию сценария "кража". Она имеет две дочерние вершины II, одна из которых представляет собой схему действия вора X, вторая - потерпевшего 2 после кражи.
Дочерние вершины ИЛИ представляют собой более конкретные схемы действий потерпевшего. В данном случае имеет место шесть вариантов действия вора и девять вариантов действий потерпевшего. Всего имеется пятнадцать вершин ИЛИ. Выбор каждой из них зависит от значения теста, который представляется списком вопросов. Функция выбора осуществляется с помощью так называемой тернарной сети переходов (рис.П6). Каждый узел этой сети представляет собой вопрос, входящий в тест, а каждая из трех дуг, исходящих из узла, соответствует трем возможным ответам на вопросы: "да", "нет", "не известно".
В зависимости, от ответа на вопрос выбирается тот или пной узел сети. определяющий очередной вопрос теста, В результате имеет место продвижение по сети по тому или иному пути в зависимости от характера ответов. Оно заканчивается попаданием в один из заключительных узлов, каждый кз которых соответствует рекомендуемому действию.
Дочерние вершины И еще более конкретизируют действия, представляемые вершинами ИЛИ. На рис.П5 раскрыты лишь две из вершин ИЛИ. Первая соответствует схеме действий: "потерпевший Z отбирает вещь Y у вора X". Эта схема предполагает три обязательных последовательно совершаемых действия, представляемых изображенными на рис.П5 тремя вершинами типа И. Каждая из этих вершин имеет дочерние вершины типа ИЛИ. На рис.П5 представлено несколько вершин типа ИЛИ, относящихся к первой из вершин типа И, представляющих собой уточненные варианты схемы действия "потерпевший Z прибывает к X". Уточнение происходит за счет конкретизации средства действия, в данном случае - перемещения (лошадь, машина, пешком). Далее на рис.П5 раскрыта одна из вершин ИЛИ, соответствующая передвижению на лошади.
Вторая вершина ИЛИ соответствует схеме действия "потерпевший Z сообщает властям о краже". Эта схема имеет две обязательные схемы действия, первая из которых совпадает со схемой действия, представляемой дочерней вершиной вышерассмотрен-ной вершины ИЛИ. Однако если в первой схеме под Х понимается вор, то во второй - власти.
3.2. Механизмы "приспособления" фрейма к реальной ситуации
Рассмотрим теперь возможные механизмы выбора из памяти фрейма и приспособления его к реальной ситуации. Как отмечено у М. Минского, именно этот процесс лежит в основе понимания человеком реальной ситуации. В случае же машинной базы знаний этот процесс открывает доступ к знаниям, материализированным в памяти ЭВМ в виде совокупности систем фреймов.
Этот механизм приводится в действие двумя дополняющими друг друга потребностями. Первая - состоит в необходимости нахождения заданий терминалам фрейма, удовлетворяющим маркерам этих терминалов. Вторая - обусловлена требованием, чтобы рассматриваемый фрейм удовлетворял маркерам терминала более общего фрейма, объемлющего первый. Иными словами, каждый фрейм считается приспособленным к ситуации, если он включен в более крупный фрейм в качестве задания его терминалу и если его терминалы заполнены заданиями, удовлетворяющими маркерам.
В процессе понимания рассуждения, рассказа, точно так же, как и восприятия образа, ключевые слова, идеи рассуждения, элементы образа вызывают из памяти различные совокупности фреймов, большинство терминалов которых еще не согласовано с реальностью, а заполнено заданиями отсутствия. По мере поступления новой информации выясняется, что некоторые из первоначально выбранных из памяти субфреймов не согласуются с реальностью. Они заменяются другими более подходящими субфреймами, удовлетворяющими двум вышеприведенным условиям.
В простейшем случае такая замена осуществляется путем так называемой операции согласования. Она имеет место, когда отсутствуют особые знания относительно того, как поступать при смене фрейма, кроме некоторой общей стратегии. Эта стратегия состоят в выборе после поступления очередной порции входной информации такого фрейма, для которого вся ранее поступившая информация, например текст в случае понимания языка, и порция новой удовлетворяют маркерам его терминалов.
Проиллюстрируем эту стратегию на простом примере. Пусть в базу знаний входят два фрейма А и В, представленные в виде графовой структуры И/ИЛИ (рис.П7а). Первая порция входной информации соответствует заданию 1 (зачерненный круг). Оно удовлетворяет одному из трех T1, Т2, Т3 терминалов фрейма А-Т2. Это задание является субфреймом фрейма А; субфрейм вызывается из памяти со своими терминалами T'1 и T'2, заполненными заданиями отсутствия 1 и 2.
На рис.П7б структура активизированного субфрейма показана жирными линиями. Новая порция информации соответствует заданию 2. Она удовлетворяет одному из терминалов активизированного субфрейма и вытесняет задание отсутствия 2, ранее занимавшее этот терминал, так как оно не совпадает с воспринятым заданием 2. В результате происходит уточнение активизированного субфрейма, структура которого изображена на рисунке П7в. Следующая порция информации – задание 3, как видно из графовой структуры И/ИЛИ, не может быть заданием ни одного из терминалов Т'1, T'2 субфрейма задания 1, а является заданием одного из терминалов Т"1, Т"2 субфрейма а (рис.П7г).
В соответствии с используемой стратегией все три порции воспринятой информации должны удовлетворять терминалам одного фрейма. Очевидно, этим фреймом может быть только фрейм А, так как субфрейм а является заданием одного из трёх его терминалов, задание же 1 является заданием другого терминала Т2 и в качестве субфрейма объемлет задание 2, так как последнее является заданием этого субфрейма. В результате фрейм А вызывается из памяти в виде структуры, изображенной на рисунке П7г жирными линиями. Два из трёх его терминалов заполнены субфреймами: задание 1 и а, третий терминал - заданием отсутствия 3.
Возможным содержательным примером описанной стратегии, взятым из работы Ч.Ригера(1975), является процесс интерпретации текста: "Пит украл скот Джейка. Джейк оседлал свою лошадь. Наутро скот был снова у Джейка". Предположим, что имеется специальная программа, которая осуществляет отбор предложений входного текста путем сопоставления их с субфреймами.
Предположим, что в памяти ЭВМ содержатся знания в виде графовой структуры фреймов И/ИЛИ, один из которых описан выше и показан на рис.П5, и существует программа выбора субфреймов, реализующая рассматриваемую стратегию. Она сравнивает каждое предложение входного текста с субфреймами графоподобной структуры знаний и отбирает те субфреймы, смысл которых соответствует анализируемым предложениям. Затем она выбирает фреймы, объемлющие все отобранные в результате анализа интерпретируемого текста предложения. Очевидно, эта программа отбора - один из вариантов рассматриваемой стратегии приспособления фрейма к реальности.
В данном примере первое предложение с помощью программы отбора активирует фрейм "кража". Далее, после ввода второго предложения программа активирует субфрейм, представляющий собой схему действия "Z кладет седло на лошадь", и отбирает субфреймы более высокого уровня, охватывающие активизированный субфрейм. В данном случае после анализа второго предложения образуются два набора вложенных друг в друга субфреймов, охватываемых субфреймом "действия потерпевшего". На рис.П5 они помечены пунктиром. В результате на этом этапе возникают две возможные интерпретации текста "Джейк отобрал скот у Пита" и "Джейк сообщил властям о краже". Последняя фраза текста активизирует субфрейм "Z берет Y у X" и с помощью программы, отбора устанавливается ее принадлежность к субфрейму "Джек отбирает скот у Пита", что, очевидно, и является интерпретацией данного отрывка.
На этом мы заканчиваем краткое изложение способа представления знаний с помощью фреймов. По нашему мнению, оно облегчит восприятие основного материала книги.
Источник: