- •Введение
- •Данные и знания
- •1.В зависимости от источника:
- •2.В зависимости от характера использования решения задач в некоторой предметной области
- •Определение понятия знаний в контексте предметной области.
- •Процесс проектирования ИнтелектСистемы
- •Инженерия знаний (knowlege)
- •Этапы(действия) в инженерии знаний: получить, структурировать, представить знания
- •Модели представления знаний делятся на 2 группы:
- •Продукционные модели
- •Управление выводом. Стратегия вывода
- •1.Прямой порядок вывода от фактов к заключениям
- •2.Системы с обратным порядком вывода
- •Проблема стратегий управления вывода
- •Управление системой продукции
- •Стратегии для выполнения системы продукции
- •1.Принцип «стопки книг»
- •2.Принцип «наиболее длинного условия»
- •3.Принцип «места продукции»
- •4.Принцип «класнной доски»
- •Управление по именам
- •Сетевые модели Представление знаний с помощью фреймов (фреймовые модели)
- •Вывод о фреймах:
- •Семантические сети (сс)
- •Формальное представление сс
- •Логические системы для представления знаний
- •Теория нечетких знаний
- •Ненадежность знаний и выводов
Сетевые модели Представление знаний с помощью фреймов (фреймовые модели)
Фреймовые модели называют языками представления знаний. Идея принадлежит М.Минскому.
Фрейм в отличие от продукционной модели имеет жесткую структуру информационных единиц, которые называются протофреймом.
Структура протофрейма:
(имя фрейма, имя слота1 (значение слота1), имя слота2 (значение слота 2) ….имя слота n (значение слота N))
Фрейм-структура данных для представления некоторого концептуального объекта.
- имеет имя, т.е. идентификатор, описываемого фреймом понятия. Пример: фрейм «комната»
-содержит ряд описаний слотов, с помощью которых уточняются некоторые структурные компоненты этого понятия Пример: у фрейма «комната» компоненты «двери», «потолок», «пол».
Слот- это описание с помощью которого определяются основные структурные элементы фрейма.
-может содержать не только конкретное значение, но и имя процедуры, позволяющей вычислять это значение по заданному алгоритму. Пример: имя слота «возраст»
-может быть заполнен также правилами продукции, которые дают конкретные значения
Шпации - элемент структуры, которые представляют текущее значение слота.
Процедуры связанные или присоединенные - это процедуры в слотах. Вызов связанной процедуры осуществляется при обращении к слоту, к которому она обращена.
В слоте может содержаться не одно, а несколько его значений, т.е. в качестве содержания фреймов могут использоваться данные сложных структур: массивы, списки множества, фреймы.
Значением слота может быть фрагмент текста и арифметическое выражение (возраст).
Совокупность данной предметной области может быть представлена множеством взаимосвязанных фреймов, образующих единую фреймовую систему, в которой определяются декларативные и процедурные знания. Такая структура является иерархической, где связи родовые.
У каждого фрейма есть один предок. На верхнем уровне иерархии - фрейм, содержащий наиболее общую информацию (она истинная для всех остальных фреймов).
Фреймы обладают способностью наследовать значения характеристик своих родителей. Значение характеристик в дочернем фрейме может отличаться от родительского.
Над фреймами можно выполнять операции: пересечение, объединение.
При объединении фреймов в итоговом фрейме будут содержаться все слоты, которые встречались в нескольких фреймах. Если какие-то слоты не являются общими, то некоторые значения их будут сохранены. Если в объединяемых фреймах одноименные слоты, то в результирующем фрейме останется один слот с таким именем.
При пересечении фреймов будут присутствовать только те слоты, которые менялись во всех исходных фреймах. Отсюда возникает проблема вычисления значений.
Вычисление значения осуществляется двумя способами:
1-в результирующем фрейме только те значения, которые совпадают (имя значения)
2-находят путем объединения значений
Т.к. система меняет свое состояние, то фрейм системы распределяется на статические и динамические.
Динамические допускают изменение фреймов в процессе решении задачи.
Пример:
фрейм «директор»
имя слота «имя» «Иванов»
«возраст» процедура (дата, год рождения)
«образование» высшее
«адрес» «домашний адрес» (фрейм)
«зар.плата» 20 000
«специальность» экономист
«год рождения» 1947 год
Д/З построить систему фрейма «Комната»
Система фрейма «Комната»
имя слота
«ширина» -4 м
«длина» 10 м
«высота» 3 м.
«площадь» процедура (ширина, длина)
«пол» паркет
«наличие окон» есть
«количество окон» 4 окна, стеклопакеты
«дверь» деревянная
«наличие мебели» есть
В общем случае структура данных фрейма содержит широкий набор информации, в котором могут входить атрибуты.
1-имя фрейма (служит для идентификации фрейма должно быть уникальным в системе фреймов). Фрейм является совокупностью слотов, число которых может быть произвольным (в зависимости от необходимости и предметной области). Часть слотов определяется самой системой (системные слоты) и используются они для выполнения некоторых специфических функций.
Системный слот: а) указатель родителя IS-A б) для указания имени пользователя, для ввода дат и т.д.
2-имя должно быть уникальным в пределах фрейма – это идентификатор, это может быть произвольный текст.
3-указатели наследования - показывают какую информацию об атрибутах слотов из верхнего уровня наследуют слоты с аналогичными именами в данном фрейме. Такие указатели часто используются во фреймовых системах иерархического уровня, построенных на принципе абстрактное-конкретное.
В конкретных системах указатели наследования могут быть организованы различными способами и имеют обозначение
1)уникальное (не наследуется) И (unique)
2) наследуются s (same)
3) находятся в определенных рамках (планируется) R (range). Интервал находится в лоте «родителей».
4)если описывают значение в текущем слоте, то оно берется из слота родительского фрейма. Значение текущего слота определено, то оно будет уникальным (override)
5) значение слота должно соответствовать указанному типу данных и условию наследования
Логическим выводом во фреймовых системах управляют присоединенные процедуры, демоны, механизмы наследования (основной механизм вывода).
Демон – присоединенная процедура автоматически запускаемая при выполнении условий.
Типы демонов связаны с условиями запуска процедуры.
Если тип IF-NEEDED, то он запускается, если к моменту обращения к слоту его значения не было установлено.
Если тип IF-ADDED запускается если осуществляется попытка изменять знания.
Если тип IF-REMOVED запускается при попытке удаления.
Возможны и другие типы демонов, демон связанная процедура.
6)Присоединенная процедура которая называется служебной процедурой (метод)
Запускается сообщению, переданному из другого фрейма.
Демон и присоединенная процедура по сути дела является процедурными знаниями, объединенными с декларативными (составляет единую систему).
Эти процедурные знания являются средствами управления выводом во фреймовых системах, причем в них можно реализовать любой механизм вывода.
В общем случае структуру фрейма можно изобразить
Фрейм с заполненными слотами называется «экземпляр» фрейма.
Пример: слот «Взятие»:
(субъект, Х1); (объект, Х2), (место, Х3); (время, Х4); (условия, Х5)
«робот», «коробки», «магазин», «с 9:00 до 18:00», «в магазине есть коробка, а у робота ее нет».
Полученный фрейм называется экземпляром фрейма или экзофреймом. Т.к. в состав фрейма могут входить слоты с именами действий, то фреймы годятся для представления как декларативных так и процедурных знаний. В данном случае декларативный тип знания.
Пусть имеется система фреймов и соответствующие слоты
Фреймы: человек, ребенок, ученик
Слоты: мыслить, млекопитающее, возраст, рост, учится в школе,
Фреймовое представление знаний реализуется языками объектно-ориентированного программирования. Также существуют специализированные языки представления знаний на основе фреймовой модели: FRL, KRL, KAPPA, TRISTAN,MODYC