ПРОДУКЦИОННЫЕ МОДЕЛИ
Психологические исследования процессов принятия решений человеком показали, что рассуждая и принимая решения, человек использует правила продукций, или продукционные правила (от англ. Production — правило вывода, порождающее правило).
В общем случае продукционное правило можно представить в следующем виде:
i : S; L; A→B; Q
где i — индивидуальный номер продукции;
S — описание класса ситуаций, в котором данная структура может использоваться;
L — условие, при котором продукция активизируется;
А→В — ядро продукции, например: «ЕСЛИ A1, A2,,..., Ап ТО В» . Такая запись означает, что «если все условия от A1 до Аn являются истиной, то В также истина» или же «когда все условия от A1 до Аn становятся истиной, то следует выполнить действие B»;
Q — постусловие продукционного правила, описывает операции и действия (процедуры), которые необходимо выполнить после выполнения В. Например, внести изменения в данные либо в саму продукцию.
Пример:
ЕСЛИ у является отцом х , ( A 1 )
z является братом у, ( A 2 )
ТО z является дядей х , (В)
В этом случае n =2. При n =0 получаем знания, состоящие только из вывода, то есть простой факт, например, «Атомный вес железа равен 55,8471». Суть использования правил продукции для представления знаний состоит в том, что левой части ставится в соответствие некоторое условие, а правой части — действие: ЕСЛИ <перечень условия>, ТО <перечень действий>. В такой интерпретации левая часть правил оценивается по отношению к базе данных (известному набору фактов) системы, и если эта оценка в определенном смысле соответствует логическому значению «ИСТИНА», то выполняется действие, заданное в правой части продукции.
В общем случае под условием понимается некоторое предложение — образец, по которому осуществляют поиск в базе знаний, а под действием — действия, выполняемые при успешном исходе поиска, — это могут быть реальные действия, если система управляющая, или заключение — вывод, представляющий собой новое (фактуальное) знание, или некоторая цель.
При использовании продукционной модели база знаний состоит из набора правил. Программа, управляющая перебором правил, называется машиной вывода. Механизм выводов связывает знания воедино, а затем выводит из последовательности знаний заключение.
Пример:
Пусть в базе знаний вместе с описанными выше знаниями содержатся еще и такие знания:
ЕСЛИ z является отцом х ,
z является отцом у,
х и у не являются одним и тем же лицом,
ТО х и у являются братьями;
где х , у, z - переменные.
Пусть также в базе данных (рабочей памяти) имеются факты:
α является отцом β ,
α является отцом γ ,
β является отцом δ .
Тогда из этих знаний можно формально вывести заключение, что
γ является дядей δ .
В продукционных системах, основанных на знаниях, процесс обработки информации может осуществляться двумя способами. Первый предполагает обработку информации в прямом направлении (метод сопоставления), когда образцом для поиска служит левая часть продукционного правила — условие, то есть задача решается в направлении от исходного состояния к целевому. Это соответствует стратегии «от данных к цели» или стратегии управления данными. После разрешения возникающих конфликтов выполняются правые части продукционных правил, что соответствует логическому выводу новых утверждений. После добавления выведенных утверждений в базу данных процедура повторяется. Процесс оканчивается, если выполняется продукционное правило, предписывающее прекращение поиска, или в базу данных поступает утверждение, являющееся решением. При втором подходе обработка информации осуществляется в обратном направлении — метод «генерации» или выдвижения гипотезы и ее проверки (стратегия «от цели к данным»). При каждом обратном движении возникает подцелевое состояние, из которого целевое может быть получено при прямом движении. В этом случае проверяются правые части продукционных правил с целью обнаружить в них искомое утверждение. Если такие продукционные правила существуют, то проверяется, удовлетворяется ли левая часть продукционного правила. Если да, то гипотеза считается подтвержденной, если нет — отвергается.
Таким образом, продукционные правила могут применяться к описанию состояния и описывать новые состояния (гипотезы) или же, напротив, использовать целевое состояние задачи как базу, когда система работает в обратном направлении. При этом продукционные правила применяются к целевому описанию для порождения подцелей (образуют систему редукций).
Пример:
Имеется фрагмент БЗ из двух правил:
П 1 : ЕСЛИ «отдых - летом» и «человек - активный»,
ТО «ехать в горы».
П 2 : ЕСЛИ «любит солнце»,
«отдых летом».
Предположим в систему поступили данные:
«человек - активный» и «любит солнце»
Прямой вывод:исходя из данных, получить ответ.
1-й проход:
Шаг 1. Пробуем П 1 не работает -
не хватает данных «отдых - летом».
Шаг 2. Пробуем П 2 , работает,
в базу поступает факт «отдых - летом».
2-й проход:
Шаг 3. Пробуем П 1 , работает,
активируя цель «ехать в горы», которая и выступает,
например, как совет, который дает система.
Обратный вывод:
подтвердить выбранную цель при помощи имеющихся правил и данных.
1-й проход:
Шаг 1. Цель - «ехать в горы»:
становятся новой целью, и имеется правило, где она в правой части.
Шаг 2. Цель «отдых летом»:
правило П 2 подтверждает цель и активизирует ее.
2-й проход:
Шаг 3. Пробуем П 1 , подтверждается искомая цель.
Свойства продукционных моделей:
Модульность — отдельные продукционные правила могут быть добавлены, удалены или изменены в базу знаний независимо от других; кроме того, модульный принцип разработки (сборки) продукционных систем позволяет автоматизировать их проектирование.
Каждое продукционное правило — самостоятельный элемент знаний (локальный источник знаний); отдельные продукционные правила связаны между собой только через поток данных, которые они обрабатывают.
Простота интерпретации — «прозрачная» структура продукционных правил облегчает их смысловую интерпретацию.
Естественность — знания в виде «что делать и когда» являются естественны ми с точки зрения здравого смысла.
Недостатки продукционных систем проявляются тогда, когда число правил становится большим и возникают непредсказуемые побочные эффекты от изменения старого и добавления нового правила. Кроме того, затруднительна оценка целостного образа знаний, содержащихся в системе.
Продукционные модели (наряду с фреймами) являются наиболее распространенными средствами представления знаний. Они близки к логическим моделям, что позволяет организовывать на их базе эффективные процедуры вывода, и в то же время более наглядно (чем классические логические модели) отражают знания. Продукционная модель чаще всего применяется в промышленных экспертных системах. Она привлекает разработчиков своей наглядностью, высокой модульностью, легкостью внесения дополнений и изменений и простотой логического вывода.
СЕМАНТИЧЕСКИЕ СЕТИ
Способ представления знаний с помощью сетевых моделейнаиболее близок к тому, как они представлены в текстах на естественном языке. В его основе лежит идея о том, что вся необходимая информация может быть описана как совокупность троек ( arb ), где а и b — объекты или понятия, а r — бинарное отношение между ними. Формально сетевые модели представления знаний могут быть заданы в виде
H = < I , C 1 ,…, Cn , Г>, где
I — множество информационных единиц,
С 1 ,..., Сп — множество типов связей между элементами
I , отображение Г задает между информационными единицами, входящими в I , связи из заданного набора типов связей {С i }.
В зависимости от типов связей {С i } различают:
· Классифицирующие сети — в них используются отношения структуризации, они позволяют вводить в базы знаний различные иерархические отношения между элементами множества I .
· Функциональные сети— вычислительные модели, характеризующиеся наличием функциональных отношений, они позволяют описывать процедуры вычислений одних информационных единиц через другие.
· Сценарии — в них используются каузальные отношения (причинно-следственные или устанавливающие влияние одних явлений или фактов на другие), а также отношения типов «средство — результат», «орудие — действие» и т. д.
Если в сетевой модели допускаются связи различного типа, то ее называют семантической сетью.
Термин «семантическая» означает «смысловая», а сама семантика — это наука, устанавливающая отношения между символами и объектами, которые они обозначают, то есть наука, определяющая смысл знаков.
Семантическая сеть —это модель, основой для которой является формализация знаний в виде ориентированного графа с размеченными вершинами и дугами. Вершинам соответствуют объекты, понятия или ситуации, а дугам — отношения между ними. Это наиболее общая модель представления знаний, так как в ней имеются средства реализации всех характерных для знаний свойств: внутренней интерпретации, структурированности, семантической метрики и активности.
Достоинства сетевых моделей: большие выразительные возможности; наглядность системы знаний, представленной графически; близость структуры сети, представляющей систему знаний, семантической структуре фраз на естественном языке; соответствие современным представлениям об организации долговременной памяти человека.
Недостатки: сетевая модель не дает (точнее, не содержит) ясного представления о структуре предметной области, которая ей соответствует, поэтому формирование и модификация такой модели затруднительны; сетевые модели представляют собой пассивные структуры, для обработки которых необходим специальный аппарат формального вывода и планирования. Проблема поиска решения в базе знаний типа семантической сети сводится к задаче поиска фрагмента сети, соответствующего некоторой подсети поставленной задачи. Это, в свою очередь, обусловливает еще один недостаток модели — сложность поиска вывода на семантических сетях.
Еще раз подчеркнем, что сетевые модели являются очень наглядным и достаточно универсальным средством представления знаний. Однако их формализация в конкретных моделях представления, использования и модификации знаний оказывается достаточно трудоемкой, особенно при наличии множественных отношений между ее элементами.
ФРЕЙМОВЫЕ МОДЕЛИ
Термин фрейм( frame — каркас, рамка) предложен М. Минским в 70-е годы для обозначения структуры знаний для восприятия пространственных сцен. Эта модель, как и семантическая сель, имеет глубокое психологическое обоснование. Под фреймом понимается абстрактный образ или ситуация. В психологии и философии известно понятие абстрактного образа. Например, слово «комната» вызывает образ комнаты — «жилое помещение с четырьмя стенами, полом, потолком, окнами и дверью». Из этого описания ничего нельзя убрать, например, убрав окна, мы получим уже чулан, а не комнату. Но в нем есть «слоты», или «щели», — незаполненные значения некоторых атрибутов — количество окон, цвет стен, высота потолка, покрытие пола и др. Такой образ и называется фреймом (фреймом минимального описания). Фреймом называется также и формализованная модель этого образа.
Фреймовая модель,основанная на теории М. Минского, представляет собой систематизированную в виде единой теории технологическую модель памяти человека и его сознания. Важным элементом в этой теории является понятие фрейма — структуры данных для представления некоторого концептуального объекта. Информация, относящаяся к этому фрейму, содержится в составляющих фрейма — слотах. В отличие от моделей других типов, во фреймовых моделях фиксируется жесткая структура, которая называется протофреймом (фреймом-прототипом, или образцом). В общем случае фрейм определяется следующим образом:
f = [( r 1 , v 1 ,), … ,( r n , v n )], где
f — имя фрейма;
vi — значение слота,
или
(ИМЯ ФРЕЙМА:
(имя 1-го слота: значение 1-го слота),
(имя 2-го слота: значение 2-го слота),
…
(имя n-го слота: значение n-го слота)).
Значением слота может быть практически что угодно (числа или математические соотношения, тексты на естественном языке или программы, правила вывода или ссылки на другие слоты данного фрейма). В качестве значения слота может выступать набор слотов более низкого уровня, что позволяет во фреймовых представлениях реализовать «принцип матрешки».
В качестве значения слота может выступать имя другого фрейма; так образуются сети фреймов. Все фреймы взаимосвязаны и образуют единую фреймовую структуру, в которой органически объединены декларативные и процедурные знания. Это дает возможность достаточно естественно производить композицию и декомпозицию информационных структур аналогично тому, как это делал бы человек при описании структуры своих знаний.
Кроме фреймов-образцов, или прототипов, хранящихся в базе знаний, различают фреймы-экземпляры, которые создаются для отображения реальных ситуаций на основе поступающих данных. При конкретизации (означивании) фрейма ему и слотам присваиваются конкретные имена, и происходит заполнение слотов. Таким образом, из протофреймов получаются фреймы-экземпляры.
Например, структура таблицы, содержащей список работников, записанная в виде протофрейма , имеет вид
(СПИСОК РАБОТНИКОВ:
Фамилия (значение слота 1);
Год рождения (значение слота 2);
Специальность (значение слота 3);
Стаж (значение слота 4).
Если в качестве значений слотов использовать реальные данные из таблицы, то получится фрейм-экземпляр.
Важнейшим свойством фреймов является заимствованное из теории семантических сетей наследование свойств. И во фреймах, и в семантических сетях наследование происходит по АКО-связям (от A Kind Of = это). Слот АКО указывает на фрейм более высокого уровня иерархии, откуда неявно наследуются, то есть переносятся значения аналогичных слотов, причем наследование свойств может быть частичным.
Фреймовые модели является достаточно универсальными, поскольку позволяют отобразить все многообразие знаний о мире:
· через фреймы-структуры для обозначений объектов и понятий (заем, залог, вексель);
· фреймы-роли (менеджер, кассир, клиент);
· фреймы-сценарии (банкротство, собрание акционеров, празднование именин);
· фреймы-ситуации (тревога, авария, рабочий режим устройства и т. д.).
Основными достоинствами модели фреймов как модели представления знаний являются способность отражать концептуальную основу организации памяти человека, а также естественность, наглядность представления, модульность, поддержка возможности использования значений слотов по умолчанию. Однако фрейм-представление является не конкретным языком представления знаний, а некоторой идеологической концепцией, реализуемой по-разному в различных языках. Теория фреймов послужила толчком к разработке нескольких языков представления знаний, которые благодаря своим широким возможностям и гибкости стали в последние годы довольно распространенными языками. Отметим, кроме того, что концепция объектно-ориентированного программирования может рассматриваться как реальное воплощение понятий, близких фрейму, в традиционных языках программирования.
Основным недостатком фреймовых моделей является отсутствие механизмов управления выводом. Отчасти этот недостаток устраняется при помощи присоединенных процедур, реализуемых силами пользователя системы.
Рассмотренные модели представления знаний во многом близки между собой. По сути, они обладают одинаковыми возможностями описывать и представлять знания. Разница состоит лишь в том, насколько удобно и естественно представлять те или иные знания в виде логических формул, семантических сетей, фреймов или продукций.
Если говорить о взаимосвязях рассмотренных выше моделей, то можно отметить следующее. Логические и продукционные модели отличаются достаточно выраженной процедурной формой, поэтому их часто используют для описания процедурных знаний. Вместо логического вывода, характерного для логических моде лей, в продукционных моделях используется вывод, основанный на знаниях. Модели знаний, опирающиеся на семантические сети, используют для описания декларативных знаний.
В системах искусственного интеллекта могут использоваться и несколько моде лей представления знаний одновременно. Например, в качестве значений некоторых слотов во фрейме могут выступать продукции. Именно смешанные представления оказываются наиболее многообещающими. В продукционных системах используются некоторые элементы логических и сетевых моделей. Поэтому они позволяют организовывать эффективные процедуры вывода (близость к логическим моделям) и наглядно отражать знания в виде сетей (близость к семантическим сетям). В них отсутствуют жесткие ограничения, характерные для логических исчислений, что дает возможность изменять интерпретацию элементов продукции. Кроме того, в результате применения правил вывода к фрагментам сетевого описания происходит трансформация сети за счет смены ее фрагментов, наращивание сети и исключение из нее ненужных фрагментов.
Фрейм можно рассматривать как фрагмент семантической сети, предназначенной для описания объекта (ситуации) проблемной области со всей совокупностью присущих ему свойств. Фреймовый подход к представлению знаний более жест кий, чем основанный на использовании семантической сети. Все то об объекте или ситуации, что важно с позиции решаемой задачи, не «размывается» в сети, а представляется во фрейме. В свою очередь, фрейм можно представить в виде сети, состоящей из вершин и дуг (отношений), так, что «нижние уровни» фрейма заканчиваются слотами, которые заполняются конкретной информацией при вызове фрейма.
Обобщая анализ моделей представления знаний, можно сделать два основных вывода:
Невозможно дать универсальные рекомендации по выбору модели. Выбор конкретной модели определяется возможностью и удобством представления исследуемой проблемной области с учетом необходимости не только представления, но и использования знаний. Однако чаще используются эвристические, не логические модели представления знаний.
Наиболее мощными оказываются смешанные представления.
Дата добавления: 2015-11-18; просмотров: 4908;