Анализ       Справочники       Сценарии       Рефераты       Курсовые работы       Авторефераты       Программы       Методички       Документы     опубликовать

Лекции по курсу: "Базы знаний и экспертные системы"




НазваниеЛекции по курсу: "Базы знаний и экспертные системы"
страница9/19
Дата01.10.2014
Размер1.33 Mb.
ТипЛекции
1   ...   5   6   7   8   9   10   11   12   ...   19
^

№5. Представление знаний в экспертных системах


Специалистами предложены десятки различных толкований понятия «знание». Определение знаний вне контекста ИИ звучит следующим образом: «Проверенный практикой результат познания действительности, верное ее отражение в мышлении человека».

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

Существуют так называемые метазнания (знания о знаниях). Понятие «метазнания» указывает на знания, касающиеся способов использования знаний и свойств знаний. Это понятие необходимо для управления базой знаний, логическим выводом, отождествления, обучения и т. п.

Процедуральные и декларативные знании.

Чем же знания отличаются от данных?

Можно выделить еще пять свойств, отличающих знания:

1) внутренняя интерпретируемость,
2) рекурсивная структуризуемость,
3) взаимосвязь единиц,
4) наличие семантического пространства с метрикой,
5) активность

Знания в СИИ представляются некоторой знаковой (семиотической) системой. В характеристиках семиотических систем выделяют три аспекта: синтаксический, семантический и прагматический.

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

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

Типам знаний соответствуют три типа моделей для их представления. Наличие семантических и(или) прагматических моделей - наиболее существенный признак, отличающий интеллектуальные системы от других.
^

Модели представления знаний


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

Пример:

Выбор(ФИО) если

(претендент(ФИО, Образование, Стаж) и

вакансия(Должность, Образование, Опыт) и

Стаж>=Опыт)

Претендент (“Иванов”,”среднее”,10)

Претендент (“Петров”,”высшее”,12)

Вакансия (“менеджер”,”высшее”,10)

Вакансия (“директор”,”высшее”,15)

Механизм вывода осуществляет дедуктивный перебор фактов, относящихся к правилу по принципу "сверху-вниз", "слева-направо" или обратный вывод методом поиска в глубину. Так, в ответ на запрос vibor(X,Y) получим: Х="Петров", У="менеджер".

Правила могут связываться в цепочки в результате использования одинакового предиката в посылке одного и в заключении другого правила.

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

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

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

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

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

В общем виде под продукцией понимается выражение следующего вида:

(i); Q; Р; А=>В, N.

Здесь i—имя продукции, с помощью которого данная продукция выделяется из всего множества продукций. В качестве имени может выступать некоторая лексема, отражающая суть данной продукции (например, «покупка книги» или «набор кода замка»), или порядковый номер продукции в их множестве, хранящемся в памяти системы.

Элемент Q характеризует сферу применения продукции. Такие сферы легко выделяются в когнитивных структурах человека. Наши знания как бы «разложены по полочкам». На одной «полочке» хранятся знания о том, как надо готовить пищу, на другой—как добраться до работы и т. п. Разделение знаний на отдельные сферы позволяет экономить время на поиск нужных знаний. Такое же разделение на сферы в базе знаний ИС целесообразно и при использовании для представления знаний продукционных моделей.

Элемент Р есть условие применимости ядра продукции. Обычно Р представляет собой логическое выражение (как правило, предикат). Когда Р принимает значение «истина», ядро продукции активизируется. Если Р ложно, то ядро продукции не может быть использовано. Например, если в продукции «НАЛИЧИЕ ДЕНЕГ; ЕСЛИ ХОЧЕШЬ КУПИТЬ ВЕЩЬ X, ТО ЗАПЛАТИ В КАССУ ЕЕ СТОИМОСТЬ И ОТДАЙ ЧЕК ПРОДАВЦУ» условие применимости ядра продукции ложно, т. е. денег нет, то применить ядро продукции невозможно.

Основным элементом продукции является ее ядро: А=>В. Интерпретация ядра продукции может быть различной и зависит oт того, что стоит слева и справа от знака секвенции =>. Обычное прочтение ядра продукции выглядит так: ЕСЛИ А, ТО В, более сложные конструкции ядра допускают в правой части альтернативный выбор, например, ЕСЛИ А, ТО B1, ИНАЧЕ B2, Секвенция может истолковываться в обычном логическом смысле как знак логического следования В из истинного А (если А не является истинным выражением, то о В ничего сказать нельзя). Возможны и другие интерпретации ядра продукции, например А описывает некоторое условие, необходимое для того, чтобы можно было совершить действие В.

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

Классификация ядер продукции. Ядра продукций можно классифицировать по различным основаниям. Прежде всего все ядра делятся на два больших типа: детерминированные и недетерминированные. В детерминированных ядрах при актуализации ядра и при выполнимости А правая часть ядра выполняется обязательно; в недетерминированных ядрах В может выполняться и не выполняться. Таким образом, секвенция => в детерминированных ядрах реализуется с необходимостью, а в недетерминированных — с возможностью. Интерпретация ядра в этом случае может, например, выглядеть так: ЕСЛИ А, ТО ВОЗМОЖНО В.

Возможность может определяться некоторыми оценками реализации ядра. Например, если задана вероятность выполнения В при актуализации А, то продукция (в простейшем случае продукция состоит лишь из ядра) может быть такой: ЕСЛИ А, ТО С ВЕРОЯТНОСТЬЮ р РЕАЛИЗОВАТЬ В. Оценка реализации ядра может быть лингвистической, связанной с понятием терм-множества лингвистической переменной, например: ЕСЛИ А, ТО С БОЛЬШОЙ ДОЛЕЙ УВЕРЕННОСТИ В. Возможны иные способы задания оценки реализации ядра.

Детерминированные продукции могут быть однозначными и альтернативными. Во втором случае в правой части ядра указываются альтернативные возможности выбора, которые оцениваются специальными весами выбора. В качестве таких весов могут использоваться вероятностные, лингвистические, экспертные оценки и т.п. (например, ЕСЛИ A ТО ЧАЩЕ ВСЕГО НАДО ДЕЛАТЬ B1, РЕЖЕ В2 )

Особым типом являются прогнозирующие продукции, в которых описываются последствия, ожидаемые при актуализации А, (например, ЕСЛИ А, ТО С ВЕРОЯТНОСТЬЮ р можно ожидать В ).

Для обработки неопределенностей знаний продукционная модель использует, как правило, либо методы обработки условных вероятностей Байеса, либо методы нечеткой логики Заде.

Байесовский подход предполагает начальное априорное задание предполагаемых гипотез (значений достигаемых целей), которые последовательно уточняются с учетом вероятностей свидетельств в пользу или против гипотез, в результате чего формируются апостериорные вероятности:

Р(Н/Е) = Р(Е/Н)*Р(Н)/Р(Е) и Р(^Н/Е) = Р(Е/^Н)*Р(^Н)/Р(Е),

где Р(Н) - априорная вероятность гипотезы Н;

Р(^Н) = 1 - Р(Н) - априорная вероятность отрицания гипотезы Н;

Р(Е) - априорная вероятность свидетельства Е;

Р(Н/Е) - апостериорная (условная) вероятность гипотезы Н при условии, что имеет место свидетельство Е;

Р(^Н/Е) - апостериорная (условная) вероятность отрицания гипотезы Н при условии, что имеет место свидетельство Е;

Р(Е/Н) - вероятность свидетельства гипотезы Е при подтверждении гипотезы Н;

Р(Е/^Н) - вероятность свидетельства гипотезы Е при отрицании гипотезы Н.

Найдем отношения левых и правых частей представленных уравнений:



где О(Н) - априорные шансы гипотезы Н, отражающие отношение числа позитивных проявлений гипотезы к числу негативных;

О(Н/Е) - апостериорные шансы гипотезы Н при условии наличия свидетельства Е;

Ls - фактор достаточности, отражающий степень воздействия на шансы гипотезы при наличии свидетельства Е. Аналогично выводится зависимость:

O(Н/^Е) = Ln * O(Н),

где О(Н/Е) - апостериорные шансы гипотезы Н при условии отсутствия свидетельства Е;

Ln - фактор необходимости, отражающий степень воздействия на шансы гипотезы при отсутствии свидетельства Е. Шансы и вероятности связаны уравнениями:

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

Рассмотрим использование байесовского подхода на примере оценки надежности поставщика. Фрагмент подмножества правил представляется следующим образом:

Если Задолженность = "есть",

То Финансовое_состояние = "удовл." Ls = 0.01, Ln = 10

Если Рентабельность ="есть",

То Финансовое_состояние = "удовл." Ls = 100, Ln = 0.001

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

О(Н/Е1,Е2) = 1 * 10 * 100 = 1000;



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

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



Факторы уверенности измеряются по некоторой относительной шкале, например, от 0 до 100. В отличие от теории вероятностей сумма факторов уверенностей некоторых альтернативных значений необязательно составляет 100. Множество возможных значений некоторой переменной с различными факторами уверенностей для каждого значения составляет нечеткое множество вида: {xl cfl, x2 cf2, ..., xN cfN}, причем фактор уверенности в общем виде задается функцией принадлежности значений нечеткому множеству, например, как представлено на рис. (Например, для рентабельности 6,7% получаем оценку в виде нечеткого множества {"неудовлетворительно" cf 66, "удовлетворительно" cf 33}).

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

При объединении факторов уверенности конъюнктивно или дизъюнктивно связанных аргументов используются следующие формулы:

Конъюнкция (А и В): min (cfA, cfB) или cfA*cfB/100

Дизъюнкция (А или В): max (cfA, cfB) или cfA + cfB - cfA*cfB/100

Объединение факторов уверенности в посылках правил осуществляется чаще всего, по формулам "min/max", а левых и правых частей правил и одинаковых результатов нескольких правил соответственно по формулам "произведение" и "сумма". Для объединения одинаковых результатов нескольких правил используется оператор "+=", который означает не присваивание значения, а добавление значения. Аналогично используется оператор "-=" для удаления значения. Факторы уверенности в последнем случае объединяются по формуле:

cfA*(100-cfB)/100

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

Правило 1:

Если Задолженность = "нет" и Рентабельность = "удовл."

То Финансовое_состояние = "удовл." cf 100

Правило 2:

Если Финансовое_состояние = "удовл."

То Надежность+= "есть" cf90

Правило 3:

Если Предприятие = "государств."

То Надежность+= "есть" cf 50

Результат выполнения первого правила:

cf(посылки) = min(60,80) = 60, cf(Фин_сост.="удовл.") = 60*100/100 = 60.

Результат выполнения второго правила:

Cf(Надежность="есть") = 60*90/100 = 54.

Результат выполнения третьего правила:

Cf(Надежность="есть") = 54 + 50 - 54*50/100 = 67

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

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

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

"Всякий раз, как происходит некоторое событие, выполнить некоторое действие". Например: Всякий раз, как становится известным значение переменной "Поставщик", Выполнить набор правил "Финансовый анализ предприятия"

Для динамических экспертных систем характерна также обработка времени как самостоятельного атрибута аргументации логического вывода:

Если в течение дня уровень запаса понизился больше, чем на 50 % То выполнить набор правил "Выбор поставщика для поставки"

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

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

Важнейшими типизированными отношениями объектов являются: "Род" - "Вид", "Целое" - "Часть", "Причина" - "Следствие", "Средство" - "Цель", "Аргумент" - "Функция", "Ситуация" -"Действие". Типизация отношений позволяет однозначно интерпретировать смысл отображаемых в базе знаний ситуаций и настраивать механизм вывода на особенности этих отношений. Так, отображение отношений "Род" - "Вид" дает возможность осуществлять наследование атрибутов классов объектов и, таким образом, автоматизировать процесс вывода заключений от общего к частному.

Фреймы. Развитием семантических сетей являются фреймовые методы представления знаний, в которых все атрибуты (поименованные отношения) объектов собираются в одну структуру данных, называемую фреймом. Причем в качестве значений слотов (атрибутов) могут выступать как обычные значения данных, так и действия, направленные на получение этих значений. Таким образом, действия реализуются в виде присоединенных процедур или процедур-демонов, вызываемых по определенным условиям. В этом плане фреймовый метод представления знаний в большей степени операционно-ориентирован по сравнению с семантической сетью.

Неопределенность описания знаний реализуется в результате неполного заполнения всех слотов. Фреймовая модель способна делать предположения о значениях данных на основе механизма наследования свойств в иерархии обобщения. В качестве способов наследования атрибутов применяются следующие возможности: S - идентичность значений одноименных слотов; U - различные значения одноименных слотов; R - значение слота фрейма должно находиться в пределах, заданных в одноименном слоте фрейма верхнего уровня; О - в случае неизвестности значения слота фрейма нижнего уровня принимается значение слота фрейма верхнего уровня.

Способность изменения значений слотов с течением времени позволяет решать динамические задачи. Во фреймовых моделях могут выполняться как прямая, так и обратная аргументация, когда в прямом направлении в зависимости от состояния слотов фреймов запускаются процедуры-демоны (неизвестно значение - "if-needed", известно значение - "if-added", удаляется значение - "if-removed), a обратная аргументация срабатывает путем запуска присоединенных процедур при обращении к неизвестным значениям атрибутов.

Фреймовые модели позволяют более гибко комбинировать прямой и обратный вывод.

Объектно-ориентированная модель, аналогичная во многих отношениях фреймовой модели, также предусматривает инкапсуляцию процедур в структуры данных и механизм наследования. Отличия заключаются в четком различии понятий класс объектов и экземпляр объекта, а также в способе активации процедур к объектам. Для объектно-ориентированной модели характерны такие черты, как скрытие данных и их доступность только через методы (присоединенные процедуры) класса, наследование как атрибутов, так и методов (в последнем случае обеспечивается необходимый уровень абстракции данных и полиморфизм использования процедур). Обращение к объектам, то есть вызов методов класса, осуществляется либо из внешних программ, либо из других объектов путем посылки сообщений.
1   ...   5   6   7   8   9   10   11   12   ...   19



Разместите кнопку на своём сайте:
Документы




База данных защищена авторским правом ©kiev.convdocs.org 2000-2013
При копировании материала обязательно указание активной ссылки открытой для индексации.
обратиться к администрации
Похожие:
Документы