Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Одной из наиболее важных проблем, характерных для систем, основанных на знаниях, является проблема представления знаний. Это объясняется тем, что форма представления знаний оказывает существенное влияние на характеристики и свойства системы. Для того чтобы манипулировать всевозможными знаниями из реального мира с помощью компьютера, необходимо осуществлять их моделирование. В таких случаях необходимо отличать знания, предназначенные для обработки компьютером, от знаний, используемых человеком.
При проектировании модели представления знаний следует учитывать такие факторы, как однородность представления и простота понимания. Однородное представление приводит к упрощению механизма управления логическим выводом и упрощению управления знаниями. Представление знаний должно быть понятным экспертам и пользователям системы. В противном случае затрудняются приобретение знаний и их оценка. Однако выполнить это требование в равной степени, как для простых, так и для сложных задач довольно трудно. Обычно для несложных задач останавливаются на некотором среднем (компромиссном) представлении, но для решения сложных и больших задач необходимы структурирование и модульное представление.
Типичными моделями представления знаний являются:
Продукционная модель.
Продукционная модель - модель, основанная на правилах, позволяющая представить знания в виде предложений типа: Если (условие), то (действие). Идея этого метода принадлежит Э. Посту (1943).
В качестве условия и действия в правилах может быть, например, предположение о наличии того или иного свойства, принимающее значение истина или ложь. При этом термин действие следует трактовать широко: это может быть как директива к выполнению какой-либо операции, рекомендация, или модификация базы знаний – предположение о наличии какого-либо производного свойства.
При использовании продукционной модели база знаний состоит из набора правил. Программа, управляющая перебором правил, называется машиной вывода. Чаще всего вывод бывает прямой (от данных к поиску цели) или обратный (от цели для ее подтверждения - к данным). Данные - это исходные факты, на основании которых запускается машина вывода - программа, перебирающая правила из базы.
Примером продукции может служить следующее выражение:
ЕСЛИ клиент работает на одном месте более двух лет,
ТО клиент имеет постоянную работу.[11]
Как условие, так и действие правила могут учитывать несколько выражений, объединенных логическими связками И, ИЛИ, НЕ:
ЕСЛИ клиент имеет постоянную работу
И клиенту более 18 лет
И клиент НЕ имеет финансовых обязательств,
ТО клиент может претендовать на получение кредита.[11]
Помимо продукционных правил база знаний должна включать и простые факты, поступающие в систему через интерфейс пользователя или выводимые в процессе поиска решения задачи. Факты являются простыми утверждениями типа «клиент работает на одном месте более двух лет». И когда в процессе интерпретации правил машиной вывода какой-либо факт согласуется с частью правила ЕСЛИ, то выполняется действие, определяемое частью ТО этого правила. Новые факты, добавляемые в базу знаний в результате действий, описанных в правилах, также могут быть использованы для сопоставления с частями ЕСЛИ других правил. Последовательное сопоставление частей правил ЕСЛИ с фактами порождает цепочку вывода. Цепочка вывода, полученная в результате последовательного выполнения правил П1 и П2 показана ниже (см. Рисунок 1. Пример цепочки вывода.). Эта цепочка показывает, как на основании правил и исходных фактов выводится заключение о возможности получения кредита. Цепочки вывода экспертной системы могут быть предъявлены пользователю и помогают понять, как было получено решение.
Рисунок 1. Пример цепочки вывода.[11]
Представления знаний в виде продукций наиболее распространено в экспертных системах, так как запись знаний фактически ведется на подмножестве естественного языка.
Продукционная модель чаще всего применяется в промышленных экспертных системах, которые называют продукционными. Она привлекает разработчиков своей наглядностью, высокой модульностью, легкостью внесения дополнений и изменений и простотой механизма логического вывода.
Фреймовая модель.
Впервые термин «фрейм» был предложен в 70-е годы Марвином Минским [12], который определил его следующим образом:
«Фрейм – это структура данных, представляющая стереотипную ситуацию, вроде нахождения внутри некоторого рода жилой комнаты, или сбора на вечеринку по поводу дня рождения ребенка. К каждому фрейму присоединяется несколько видов информации. Часть этой информации – о том, как использовать фрейм. Часть о том, чего можно ожидать далее. Часть о том, что следует делать, если эти ожидания не подтвердятся».
Фрейм - это минимальное возможное описание сущности какого-либо явления, события, ситуации, процесса или объекта. Минимальность означает, что при дальнейшем упрощении описания теряется его полнота, она перестает определять ту единицу знаний, для которой предназначено. Например, слово "комната" вызывает у слушающих образ комнаты: "жилое помещение с четырьмя стенами, полом, потолком, окнами и дверью, площадью 6-20 м2 ". Из этого описания ничего нельзя убрать (например, убрав окна мы получим уже чулан, а не комнату), но в нем есть "дырки", - это незаполненные значения некоторых атрибутов - количество окон, цвет стен, высота потолка. покрытие пола и др. [11]. В теории фреймов такой образ называется фреймом.
Фрейм имеет определенную структуру, состоящую из множества элементов – слотов. Каждый слот в свою очередь, представляется определенной структурой данных, процедурой, или может быть связан с другим фреймом.
Структуру фрейма можно представить так:
ИМЯ ФРЕЙМА:
(имя 1-го слота: значение 1-го слота),
(имя 2-го слота: значение 2-го слота),
- - - -
(имя N-го слота: значение N-гo слота).
Ту же запись представим в виде таблицы, дополнив двумя столбцами.
В таблице дополнительные столбцы предназначены для описания типа слота и возможного присоединения к тому или иному слоту специальных процедур, что допускается в теории фреймов. Эти процедуры в литературе иногда именуются «демонами». Со слотом можно связать любое количество процедур, но наиболее часто используются следующие:
В качестве значения слота может выступать имя другого фрейма; так образуют сети фреймов.
Различают фреймы-образцы, или прототипы, хранящиеся в базе знаний, и фреймы-экземпляры, которые создаются для отображения реальных ситуаций на основе поступающих данных. Прототип – это уже не абстрактный образ, а наиболее типичный представитель своего класса, с обобщенными, но вполне конкретными, значениями своих свойств. Например, прототип понятия четырехугольник можно определить как фигуру, имеющую четыре угла.
Модель фрейма является достаточно универсальной, поскольку позволяет отобразить все многообразие знаний о мире через:
Важнейшим свойством теории фреймов является заимствованное из теории семантических сетей наследование свойств. И во фреймах, и в семантических сетях наследование происходит по АКО-связям (A-Kind-Of = это). Слот АКО указывает на фрейм более высокого уровня иерархии, откуда неявно наследуются, т.е. переносятся, список и значения слотов. Возможно наследование свойств от нескольких прототипов. Такой вид наследования получи название «множественное наследование».
В качестве примера можно рассмотреть формирование понятия заказ товара (см. Рисунок 2. Пример описания знаний с помощью фреймов.).
Рисунок 2. Пример описания знаний с помощью фреймов.[11]
Основным преимуществом фреймов как модели представления знаний является способность отражать концептуальную основу организации памяти человека, а также гибкость и наглядность.
Дата публикования: 2014-10-25; Прочитано: 3079 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!