Продукционные модели представления знаний

Продукционная модель или модель, основанная на правилах, позволяет представить знания в виде предложений типа "Если (условие), то (действие)".

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

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

Рассмотрим пример использования продукционных правил. П1: Если "отдых — летом" и "человек — активный", то "ехать в горы".П2: Если "любит солнце", то "отдых летом". Предположим, в систему поступили данные — "человек активный" и "любит солнце". Прямой вывод — исходя из данных, получить ответ. 1-й проход. Шаг 1. Пробуем П1, не работает (не хватает данных "отдых — летом"). Шаг 2. Пробуем П2, работает, в базу поступает факт "отдых — летом". 2-й проход. Шаг 3. Пробуем П1, работает, активируется цель "ехать в горы", которая и выступает как совет, который дает ЭС. Обратный вывод — подтвердить выбранную цель при помощи имеющихся правил и данных. 1-й проход. Шаг 1. Цель — "ехать в горы": пробуем П1 — данных "отдых — летом" нет, они становятся новой целью, и ищется правило, где она в правой части. Шаг 2. Цель "отдых — летом": правило П2 подтверждает цель и активирует ее. 2-й проход. Шаг 3. Пробуем П1, подтверждается искомая цель.

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

Ÿ простота и гибкость выделения знаний;

Ÿ отделение знаний от программы поиска;

Ÿ модульность продукционных правил (правила не могут "вызывать" другие правила);

Ÿ возможность эвристического управления поиском;

Ÿ возможность трассировки "цепочки рассуждений";

Ÿ независимость от выбора языка программирования;

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

Имеется большое число программных средств, реализующих продукцион­ный подход (например, языки высокого уровня CLIPS и OPS 5; "оболочки" или "пустые" ЭС — EXSYS Professional и Карра, инструментальные КЕЕ, ARTS, PIES, а также промышленных ЭС на его основе.

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

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

В качестве понятий обычно выступают абстрактные или конкретные объекты, а отношения это связи типа: "это" ("АКО — A-Kind-Of, "is" или "элемент класса"), "имеет частью" ("has part"), "принадлежит", "любит".

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

По количеству типов отношений:

Ÿ однородные (с единственным типом отношений);

Ÿ неоднородные (с различными типами отношений).

По типам отношений:

Ÿ бинарные (в которых отношения связывают два объекта);

Ÿ N-арные (в которых есть специальные отношения, связывающие более двух понятий).

Наиболее часто в семантических сетях используются следующие отношения:

Ÿ элемент класса (роза это цветок);

Ÿ атрибутивные связи /иметь свойство (память имеет свойство — объем);

Ÿ значение свойства (цвет имеет значение — желтый);

Ÿ пример элемента класса (роза, например — чайная);

Ÿ связи типа "часть-целое" (велосипед включает руль);

Ÿ функциональные связи (определяемые обычно глаголами "производит", "влияет"...);

Ÿ количественные (больше, меньше, равно...);

Ÿ пространственные (далеко от, близко от, за, под, над...);

Ÿ временные (раньше, позже, в течение...);

Ÿ логические связи (и, или, не) и др.

Минимальный состав отношений в семантической сети таков:

Ÿ элемент класса или АКО;

Ÿ атрибутивные связи /иметь свойство;

Ÿ значение свойства.

Недостатком этой модели является сложность организации процедуры орга­низации вывода.

Пример семантической сети для предложения типа "Поставщик осуществил поставку изделий для клиента до 1 июня 2010 года в количестве 10 000 штук" представлен на рис. 7.

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

Фреймы

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

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

Ÿ фреймы – структуры, для обозначения объектов и понятий (заем, залог, вексель);

Ÿ фреймы – роли (менеджер, кассир, клиент);

Ÿ фреймы – сценарии (банкротство, собрание акционеров, празднование именин);

Ÿ фреймы – ситуации (тревога, авария, рабочий режим устройства) и др.

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

Фрейм имеет имя (название) и состоит из слотов.

Традиционно структура фрейма может быть представлена как список свойств:

(ИМЯ ФРЕЙМА:

(имя 1-го слота: значение 1-го слота),

(имя 2-го слота: значение 2-го слота),

…………….

(имя N-гo слота: значение N-го слота)).

Ту же запись можно представить в виде таблицы (см. табл. 1), дополнив ее двумя столбцами.

Таблица 1.Структура фрейма

Имя фрейма

Имя слота Значение слота Способ получения значения Присоединенная процедура
       
       

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

Широко известны такие фреймо-ориентированные экспертные системы, как ANALYST, МОДИС.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: