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




Наиболее распространенными моделями представления знаний являются:

· Продукционные системы

· Логические модели

· Фреймы

· Семантические сети

Продукционные системы

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

Имя продукции: Сфера

Предусловие

Условие

Если А, то В

Постусловие

Пример продукции:

47: Интерпретация результатов психологического тестирования

Использовать в первую очередь

Шкала «лжи» L < 70 Т-баллов

Если (шкала ошибок F – шкала коррекции K) < –11, то вывести сообщение: «Результаты тестирования недостоверны»

Закончить интерпретацию результатов

Из приведенного примера видно, как устроена одна продукция. При большом количестве продукций (их еще называют продукционными правилами) сфера позволяет анализировать только правила, относящиеся к делу, не обращая внимания на большинство правил из иных сфер. Предусловия устанавливают на множестве правил из интересующей сферы некоторый порядок, приоритет их использования. Условия определяют возможность применения того или иного правила. Ядро продукции «Если А, то В» описывает преобразование, которое составляет суть продукционного правила. Наконец, постусловие говорит о том, что надо делать, когда данное продукционное правило сработало.

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

· Базу данных, содержащую множество фактов;

· Базу правил, содержащую набор продукций;

· Интерпретатор (механизм логического вывода) или правила работы с продукциями.

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

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

Продукции по сравнению с другими формами представления знаний имеют следующие преимущества /Таунсенд К. и др., 1990/:

— модульность;

— единообразие структуры (основные компоненты продукционной системы могут применяться для построению интеллектуальных систем с различной проблемной ориентацией);

— естественность (вывод заключения в продукционной системе во многом аналогичен процессу рассуждений эксперта);

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

Однако продукционные системы не свободны от недостатков:

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

— этот процесс трудно поддается управлению;

— сложно представить родовидовую иерархию понятий.

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

Логические модели

Логические модели представления знаний реализуются средствами логики предикатов.

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

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

А — ИСТИННО и В — ЛОЖНО,

А и В ЛОЖНО,

А или В ИСТИННО.

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

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

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

М = (Т, Р, А, П),

где Т — множество базовых элементов или алфавит формальной системы;

Р — множество синтаксических правил, с помощью которых можно строить синтаксически корректные предложения;

А — множество аксиом или некоторых синтаксически правильных предложений, заданных априорно;

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

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

Логические модели представления и манипулирования знаниями были особенно популярны в 70-х годах. Тогда казалось, что с появлением языков программирования типа ПРОЛОГ процедуры логического вывода в исчислении предикатов будут достаточны для решения всех типов задач в интеллектуальных системах. Вместе с тем, по мере того как в поле зрения исследователей включались все новые интеллектуальные задачи, стало ясно, что говорить о доказательном выводе можно только в небольшом числе случаев, когда проблемная область, в которой решается задача, формально описана и полностью известна. Но большинство задач, где интеллект человека позволяет находить нужные решения, связано с областями, где знания принципиально неполны, неточны, некорректны и характеризуются еще немалым числом характеристик, начинающихся с частицы «не» /Будущее искусств. интел., 1991/.

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

Фреймы

Фрейм чаще всего определяют как структуру данных для представления стереотипных ситуаций. Модель представления знаний на основе фреймов использует концепцию организации памяти, понимания и обучения человека, предложенную М. Минским /1979/. Фрейм (дословно — «рамка») — это единица представления знаний, детали которой могут изменяться в соответствии с текущей ситуацией. Фрейм в любой момент может быть дополнен различной информацией, касающейся способов применения данного фрейма, последствий этого применения и т.п.

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

Имя фрейма: Имя первого слота, значение первого слота

Имя второго слота, значение второго слота

………………………………………………..

………………………………………………..

………………………………………………..

Имя К-го слота, значение К-го слота

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

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

Как уже отмечалось, помимо конкретного значения в слоте могут храниться процедуры и правила, которые вызываются при необходимости вычисления этого значения. Среди них выделяют процедуры-демоны и процедуры слуги. Первые запускаются автоматически при выполнении некоторого условия, а вторые активизируются только по специальному запросу. Если, например фрейм, описывающий человека, включает слоты ДАТА РОЖДЕНИЯ и ВОЗРАСТ и в первом из них находится некоторое значение, то во втором слоте может стоять имя процедуры-демона, вычисляющей возраст по дате рождения и текущей дате и активизирующейся при каждом изменении текущей даты.

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

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

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

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

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

Семантические сети

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

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

Вершины сети соединяются дугой, если соответствующие объекты предметной области находятся в каком-либо отношении. Самыми распространенными являются следующие типы отношений:

БЫТЬ ЭЛЕМЕНТОМ КЛАССА (ЯВЛЯТЬСЯ) — означает, что объект входит в состав данного класса, например, ВАЗ 2106 является автомобилем;

ИМЕТЬ — позволяет задавать свойства объектов, например, жираф имеет длинную шею;

ЯВЛЯТЬСЯ СЛЕДСТВИЕМ — отражает причинно-следственные связи, например, астеническое состояние является следствием перенесенного простудного заболевания;

ИМЕТЬ ЗНАЧЕНИЕ — задает значение свойств объектов, например, пациент может иметь двух братьев.

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

Рис. 1. 2. Пример семантической сети



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2022-01-19 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: