Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




ЛЕКЦИЯ 11

Контрольные вопросы и задание.

Выводы по 4-ой главе.

Достоинства и недостатки семантических сетей:

Достоинства:

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

2. Высокая степень структуризации знаний, отвечающая основным принципам систематизации вводимых понятий (т.к. дуги семантической сети соответствуют понятиям свойства, класс, подкласс, элемент класса).

3. Наследование свойств в семантических сетях позволяет минимизировать объем памяти, необходимой для поддержания соответствующей базы знаний

4. Графическое представление знаний обеспечивает их хорошую понимаемость.

Недостатки:

1. Необходимость преобразования n-арных предикатов в бинарные.

2. Трудность предоставления наследования свойств с исключениями.

Вывод:

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

4.5.1. Охарактеризуйте модель представления знаний в виде семантической сети. Расскажите об основных видах используемых в этой модели отношений.

 

Глава 5. Представление и вывод знаний в системах искусственного интеллекта на основе фреймовых моделей.

Фреймы появились в 1972 году, предложил их Минский, он дал им следующее определение.

Определение: Фреймы – это формализм для описания структурированных знаний, причем такой, что удаление из описания любой его части приводит к потере определяющих суть данного понятия свойств.

Структура фрейма:

{ i, <υ1, g1>, <υ2, g2>, …, <υn, gn>}

i – имя фрейма

n, gn>, где n = 1, …, k - слот или терминал фрейма

υn – имя слота

gn - его значение или заполнитель фрейма

Различают фреймы-примеры и фреймы-прототипы.

Фрейм-пример служит для описания конкретной ситуации и у него заполнены все значения слотов.

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

Можно выделить следующие основные способы определения заполнителей слота:

1. указание конкретного значения

2. указание ссылки на другой фрейм (для связи фреймов между собой)

3. указание по умолчанию

4. процедурное присоединение

В виде наполнителя слота участвует некая прикладная программа и т.п.

Таблица 21. Фрейм-пример «костюм»

Костюм
Слоты Значение Способ заполнения
Дата заказа 03.07.04 Конкретное значение
Дата выполнения 31.08.04 Конкретное значение
Закройщик Иванов И.И. Ссылка на др. фрейм (на фрейм Иванов)
Тип костюма Тройка Конкретное значение
Материал (шерсть) По умолчанию
Заказчик Сидоров С.С. Ссылка на др. фрейм
Количество рукавов (2) По умолчанию
Размер :нахождение размера Процедура

 

 

Фрейм-пример «костюм» имеет слоты:

1. для представления конкретных понятий, присутствующих в данной конкретной ситуации (дата заказа, дата выполнения, тип костюма)

2. для определения отношения данного фрейма с другими задаются ссылки на имена этих других фреймов (закройщик, заказчик)

3. задание по умолчанию позволяет задать любое значение этих слотов, не противоречащее модели конкретной ситуации (материал, количество рукавов)

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

4. для процедурного присоединения (размер). Для определения значения слота вызывается процедура нахождения размера (алгоритм нахождения, процедура непосредственного измерения)

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

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

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

Например, слот с именем возраст может содержать имя процедуры, которая вычисляет возраст человека по дате рождения, записанной в другом слоте, и текущей дате. Процедуры, располагающиеся в слотах, называются связанными или присоединенными процедурами. Вызов связанной процедуры осуществляется при обращении к слоту, в котором она помещена. Заполнителями слота могут быть также правила продукций, используемые для определения конкретного значения. В слоте может содержаться не одно, а несколько значений, т. е. в качестве структурных составляющих фреймов могут использоваться данные сложных типов, а именно: массивы, списки, множества, фреймы и т. д.

Например, в слоте с именем брат может содержаться список имен, если объект, описываемый данным фреймом, имеет нескольких братьев. Значение слота может представлять собой некоторый диапазон или перечень возможных значений, арифметическое выражение, фрагмент текста и т.д. Совокупность данных предметной области может быть представлена множеством взаимосвязанных фреймов, образующих единую фреймовую систему, в которой объединяются декларативные и процедурные знания. Такая система имеет, как правило, иерархическую структуру, в которой фреймы соединены друг с другом с помощью родо - видовых связей. На верхнем уровне иерархии находится фрейм, содержащий наиболее общую информацию, истинную для всех остальных фреймов. Фреймы обладают способностью наследовать значения характеристик своих родителей. Например, фрейм АФРИКАНСКИЙ_СЛОН наследует от фрейма СЛОН значение характеристики цвет = «серый». Значение характеристики в дочернем фрейме может отличаться от родительского, например, значением данного слота для фрейма АЗИАТСКИЙ СЛОН является цвет = «коричневый».

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

Фреймовые системы подразделяются на статические и динамические, последние допускают изменение фреймов в процессе решения задачи.

 

Таблица 22. Пример фрейма РУКОВОДИТЕЛЬ

Имя слота Значение слота Тип значения слота
Имя Иванов И.И. Строка символов
Рожден 01.01.1965 Дата
Возраст аgе(дата, рожден) Процедура
Специальность Юрист Строка символов
Отдел Отдел кадров Строка символов
Зарплата   Число
Адрес ДОМ АДРЕС Фрейм

 

 

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

Имя фрейма. Оно служит для идентификации фрейма в системе и должно быть уникальным. Фрейм представляет собой совокупность слотов, число которых может быть произвольным. Число слотов в каждом фрейме устанавливается проектировщиком системы, при этом часть слотов определяется самой системой для выполнения специфических функций (системные слоты). Примерами таких слотов являются: слот-указатель родителя данного фрейма (IS-А), слот-указатель дочерних фреймов, слот для ввода имени пользователя, слот для ввода даты определения фрейма, слот для ввода даты изменения фрейма и т.д.

Имя слота. Оно должно быть уникальным в пределах фрейма. Обычно имя слота представляет собой идентификатор, который нацелен определенной семантикой. В качестве имени слота может выступать произвольный текст. Например: <Имя слота> = Главный герой романа Ф. М. Достоевского «Идиот», <Значение слота>= Князь Мышкин. Имена системных слотов обычно зарезервированы, в различных системах они могут иметь различные значения. Примеры имен системных слотов: IS-A, HASPART, RELATION и т.д. Системные слоты служат для редактирования базы знаний и управления выводом во фреймовой системе.

Указатели наследования. Они показывают, какую информацию об атрибутах слотов из фрейма верхнего уровня наследуют слоты с аналогичными именами в данном фрейме. Указатели наследования характерны для фреймовых систем иерархического типа, основанных на отношениях типа «абстрактное — конкретное». В конкретных системах указатели наследования могут быть организованы различными способами и иметь разные обозначения:

U (Unique) — значение слота не наследуется;

S (Same) — значение слота наследуется;

R (Range) — значения слота должны находиться в пределах интервала значений, указанных в одноименном слоте родительского фрейма;

О (Оverride) — при отсутствии значения в текущем слоте оно наследуется из фрейма верхнего уровня, однако, в случае определения значения текущего слота оно может быть уникальным. Этот тип указателя выполняет одновременно функции указателей U и S.

Указатель типа данных. Он показывает тип значения слота. Наиболее употребляемые типы: frame — указатель на фрейм; real — вещественное число; integer — целое число; boolean — логический тип; txt — фрагмент текста; list: — список; table — таблица; expression — выражение; lisp — связанная процедура и т.д.

Значение слота. Оно должно соответствовать указанному типу данных и условию наследования.

Демоны. Демоном называется процедура, автоматически запускаемая при выполнении некоторого условия. Демоны автоматически запускаются при обращении к соответствующему слоту. Типы демонов связаны с условием запуска процедуры. Демон с условием IF- NEEDED запускается, если в момент обращения к слоту его значение не было установлено. Демон типа IF-ADDED запускается при попытке изменения значения слота. Демон IF-REMOVED запускается при попытке удаления значения слота. Возможны также другие типы демонов. Демон является разновидностью связанной процедуры.

Присоединённая процедура. В качестве значения слота может использоваться процедура, называемая служебной в языке Лисп II или методом в языках объектно-ориентированного программирования. Присоединенная процедура запускается по сообщению, переданному из другого фрейма, демоны и присоединенные процедуры являются процедурными знаниями, объединенными вместе с декларативными в единую систему. Эти процедурные знания являются средствами управления выводом во фреймовых системах, причем с их помощью можно реализовать любой механизм вывода. Представление таких знаний и заполнение ими интеллектуальных систем — весьма нелегкое дело, которое требует дополнительных затрат труда и времени разработчиков ИИС. Поэтому проектирование фреймовых систем выполняется, как правило, специалистами, имеющими высокий уровень квалификации в области искусственного интеллекта.

Пример сети фреймов приведен на рис. 47. На нем понятие УЧЕНИК наследует свойства фреймов РЕБЕНОК и ЧЕЛОВЕК, которые находятся на более высоких уровнях иерархии. Если будет задан вопрос «Любят ли ученики сладкое?», то следует ответ «да», так как этим свойством обладают все дети, что указано во фрейме РЕБЕНОК. Наследование свойств может быть частичным, например, «возраст» для учеников не наследуется из фрейма «ребенок», так как явно указан в собственном фрейме.

В последние годы термин «фреймовый» часто заменяют термином «объектно-ориентированный». Шаблон фрейма можно рассматривать как класс, экземпляр фрейма — как объект. Языки объектно-ориентированного программирования (ООП) предоставляют средства создания классов и объектов, а также средства для описания процедур обработки объектов (методы). Языки ООП, не содержащие средств реализации присоединенных процедур, не позволяют организовать гибкий механизм логического вывода, поэтому разработанные на них программы либо представляют собой объектно-ориентированные базы данных, либо требуют интеграции с другими средствами обработки знаний (например, с языком РROLOG).

Существуют также специализированные языки представления знаний на основе фреймовой модели, примерами которых являются: FRL (Frame Representation Language), KRL(Knowledge Representation Language), фреймовая «оболочка» Карра и др. Известны также экспертные системы фреймового типа: АМАLIST, ТRISTAN, АLTERID, МОДИС.

 

Рис.47. Пример сети фреймов

 




Поделиться с друзьями:


Дата добавления: 2015-06-27; Просмотров: 3455; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.028 сек.