Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сети_фреймы.doc
Скачиваний:
12
Добавлен:
16.03.2015
Размер:
258.05 Кб
Скачать

Предложение : Билл сказал Лауре, что он дал Джуди подарок.

80.

Представление через СС полезно, т. к. оно обеспечивает стандартный метод анализа смысла предложения, кроме того, оно указывает сходство в смысле предложений, тесно связанных, но обладающих разной структурой. Хотя предложения на рис. 7.12. и 7.13 выглядят очень отличающимися друг от друга, но СС, представляющие смысл этих предложений, похожи. В самом деле, СС на рис. 7.12. целиком содержится в сети рис. 7.13.

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

В области ИИ термин фрейм относится к специальному методу представления общих концепций и ситуаций.Марвин Минский[75], первый, кто предложил идею фреймов, описывает его следующим образом:

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

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

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

Понятие

С каждым слотом можно связать любое число процедур. Три типа процедур, чаще всего связывающиеся со слотами: 1. IF–ADDED: процедура ЕСЛИ – ДОБАВЛЕНО. Выполняется, когда новая информация помещается в слот.

2. IF–DELETED: процедура ЕСЛИ – УДАЛЕНО. Выполняется, когда информация удаляется из слота.

3. IF–NEEDED: процедура ЕСЛИ – НУЖНО. Выполняется, когда запрашивается информация из слота, а он пустой.

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

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

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

Каким образом можно использовать таким образом организованные знания? Предположим, ведущий специалист по программному обеспечению в некой корпорации имеет доступ через настольный терминал к системе, основанной на фреймах. Допустим, упомянутый специалист связался с системой через программный интерфейс, который позволяет общаться с ней на языке, весьма близком к естественному. Специалист запрашивает: «Мне нужен отчет о продвижении проекта по биологической классификации». Интерфейсная программа анализирует это предложение и вносит «Предложение биологической классификации» в слот тема следующего пустого узла «отчет о продвижении», в данном случае узла # 15. Далее все происходит автоматически.

1. Процедура если – добавлено, связанная со слотом «тема», выполняется, поскольку в слот было введено некоторое значение. Эта процедура осуществляет поиск (в базе данных системы) руководителя проекта. Пусть это Мэри Смит. Процедура вписывает это имя в слот «автор» отчета о продвижении работ # 15.

2. Процедура если – добавлено, связанная со слотом «автор», выполняется, так как в слот было только что вписано значение. Эта процедура начинает составлять сообщение, чтобы отправить его Мэри Смит, но обнаруживает, что у нее нет нужного значения «Дата исполнения».

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

4. Теперь процедура если – добавлено, связанная со слотом «автор», найдет, что еще одно значение, которое нужно включить в отчет, т. е. «объем отчета» отсутствует. Слот «объем» не связан с процедурами, он ничем не может нам помочь. Однако, выше узла # 15 существует узел общей концепции отчета о продвижении работ, содержащий значение объема. Процедура использует его значение и составляет следующее сообщение: «Мэри Смит, пожалуйста, окончите отчет о продвижении работ по проекту биологическая классификация к 30. 09. Предполагаемый объем отчета равен двум страницам».

Если в какой- то момент имя Мэри Смит удалится из слота «автор», то система автоматически отправит ей сообщение, что ее отчет не требуется (поскольку процедура, если – удалено, сработает).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]