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

Вторая вершина ИЛИ соответствует схеме действия "потерпевший 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, и существует программа выбора субфреймов, реализующая рассматриваемую стратегию. Она сравнивает каждое предложение входного текста с субфреймами графоподобной структуры знаний и отбирает те субфреймы, смысл которых соответствует анализируемым предложениям. Затем она выбирает фреймы, объемлющие все отобранные в результате анализа интерпретируемого текста предложения. Очевидно, эта программа отбора - один из вариантов рассматриваемой стратегии приспособления фрейма к реальности.

Перейти на страницу:

Похожие книги

Основы программирования в Linux
Основы программирования в Linux

В четвертом издании популярного руководства даны основы программирования в операционной системе Linux. Рассмотрены: использование библиотек C/C++ и стан­дартных средств разработки, организация системных вызовов, файловый ввод/вывод, взаимодействие процессов, программирование средствами командной оболочки, создание графических пользовательских интерфейсов с помощью инструментальных средств GTK+ или Qt, применение сокетов и др. Описана компиляция программ, их компоновка c библиотеками и работа с терминальным вводом/выводом. Даны приемы написания приложений в средах GNOME® и KDE®, хранения данных с использованием СУБД MySQL® и отладки программ. Книга хорошо структурирована, что делает обучение легким и быстрым. Для начинающих Linux-программистов

Нейл Мэтью , Ричард Стоунс , Татьяна Коротяева

ОС и Сети / Программирование / Книги по IT
C++
C++

С++ – это универсальный язык программирования, задуманный так, чтобы сделать программирование более приятным для серьезного программиста. За исключением второстепенных деталей С++ является надмножеством языка программирования C. Помимо возможностей, которые дает C, С++ предоставляет гибкие и эффективные средства определения новых типов. Используя определения новых типов, точно отвечающих концепциям приложения, программист может разделять разрабатываемую программу на легко поддающиеся контролю части. Такой метод построения программ часто называют абстракцией данных. Информация о типах содержится в некоторых объектах типов, определенных пользователем. Такие объекты просты и надежны в использовании в тех ситуациях, когда их тип нельзя установить на стадии компиляции. Программирование с применением таких объектов часто называют объектно-ориентированным. При правильном использовании этот метод дает более короткие, проще понимаемые и легче контролируемые программы. Ключевым понятием С++ является класс. Класс – это тип, определяемый пользователем. Классы обеспечивают сокрытие данных, гарантированную инициализацию данных, неявное преобразование типов для типов, определенных пользователем, динамическое задание типа, контролируемое пользователем управление памятью и механизмы перегрузки операций. С++ предоставляет гораздо лучшие, чем в C, средства выражения модульности программы и проверки типов. В языке есть также усовершенствования, не связанные непосредственно с классами, включающие в себя символические константы, inline-подстановку функций, параметры функции по умолчанию, перегруженные имена функций, операции управления свободной памятью и ссылочный тип. В С++ сохранены возможности языка C по работе с основными объектами аппаратного обеспечения (биты, байты, слова, адреса и т.п.). Это позволяет весьма эффективно реализовывать типы, определяемые пользователем. С++ и его стандартные библиотеки спроектированы так, чтобы обеспечивать переносимость. Имеющаяся на текущий момент реализация языка будет идти в большинстве систем, поддерживающих C. Из С++ программ можно использовать C библиотеки, и с С++ можно использовать большую часть инструментальных средств, поддерживающих программирование на C. Эта книга предназначена главным образом для того, чтобы помочь серьезным программистам изучить язык и применять его в нетривиальных проектах. В ней дано полное описание С++, много примеров и еще больше фрагментов программ.

Бьёрн Страуструп , Бьярн Страустрап , Мюррей Хилл

Программирование, программы, базы данных / Программирование / Книги по IT
iOS. Приемы программирования
iOS. Приемы программирования

Книга, которую вы держите в руках, представляет собой новый, полностью переписанный сборник приемов программирования по работе с iOS. Он поможет вам справиться с наболевшими проблемами, с которыми приходится сталкиваться при разработке приложений для iPhone, iPad и iPod Touch. Вы быстро освоите всю информацию, необходимую для начала работы с iOS 7 SDK, в частности познакомитесь с решениями для добавления в ваши приложения реалистичной физики или движений — в этом вам помогут API UIKit Dynamics.Вы изучите новые многочисленные способы хранения и защиты данных, отправки и получения уведомлений, улучшения и анимации графики, управления файлами и каталогами, а также рассмотрите многие другие темы. При описании каждого приема программирования приводятся образцы кода, которые вы можете смело использовать.

Вандад Нахавандипур

Программирование, программы, базы данных / Программирование / Книги по IT