I. модели представления знаний
I. МОДЕЛИ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ
Декларативные и процедурные знания
Любая предметная область характеризуется своим набором понятий и связей между ними, своими законами, связывающими между собой объекты данной предметной области, своими процессами, событиями. Знания о предметной области и способах решения в ней задач весьма разнообразны. Возможны различные классификации этих знаний.
В общем случае знания подразделяются на:
- Процедурные знания описывают последовательности действий, которые могут использоваться при решении задач.Это,например,
программы для ЭВМ, словесные записи алгоритмов, инструкция по сборке некоторого изделия.
- Декларативные знания — это все знания, не являющиеся процедурными, например статьи в толковых словарях и
энциклопедиях, формулировки законов в физике, химии и других науках и т.п.В отличие от процедурных знаний,отвечающих навопрос: «Как сделать X?», декларативные знания отвечают, скорее, на вопросы: «Что есть X?» или «Какие связи имеются между Х и Y?», «Почему X?» и т.д.
Языки представления знаний можно разделить на типы по формальным моделям представления знаний, которые лежат в их основе:
- логическая,
- сетевая,
- фреймовая,
- продукционная.
Продукционная форма представления знаний
Основу продукционной модели составляют системы продукций.
Каждая продукция в наиболее общем виде записывается как стандартное выражение следующего вида:
«Имя продукции»: Идентификатор правила;
Область применимости (имя сферы);
Условие применимости ядра;
Ядро: если А, то В;
Постусловие.
Основная часть продукции — ее ядро имеет вид:
«Если А, то В»,
где А – посылка правила, В – заключение правила, имеющие разные значения.
Наиболее часто используемая форма интерпретации продукции – логическая, при которой A является множеством элементарных условий, связанных логическими связками «И», «ИЛИ» и «НЕТ», B – множеством элементарных заключений.
(выполняется B), если посылка A истинна.
Имя сферы указывает ту предметную область, к которой относятся знания, зафиксированные в данной продукции.В интеллектуальной системеможет храниться совокупность знаний (ее называют базой знаний), относящихся к разным областям (например, знания о различных заболеваниях человека или знания из различных разделов математики).
Рассмотренные модели представления знаний широко используются в современных интеллектуальных системах и прежде всего в экспертных системах. Каждая из форм представлений знаний может служить основой
для создания языка программирования, ориентированного на работу со знаниями. В конце 80-х годов наметилась тенденция создаватькомбинированные языки представления знаний. Чаще всего комбинируются фреймовые и продукционные модели.
II. ЭКСПЕРТНЫЕ СИСТЕМЫ
Цикл
Выбор из этого множества одного текущего правила с использованием определенной стратегии. Считать текущим элементарным условием первое.
покане проверены все элементарные условия правила и ненадо прервать проверку условия
Цикл
еслив текущем элементарном условии участвуетфакт, встречающийся в правой части какого-то правила
то
еслине Доказана_Цель(Этот факт)тоНадо прервать проверку условия
конец_если иначе
Запросить информацию о факте. Проверить элементарное условие. еслиэлементарное условие истинното
Добавить факт в базу данных. Перейти к следующему элементарному Условию.
Иначе
Надо прервать проверку условия.
конец_если конец_если конец_цикла еслиусловие правила истинното
Выполнить заключение. Исключить Цель из стека целей. Считать, что Цель доказана.
конец_если конец_цикла конец_цикла конец_функции.
Существует много различных стратегий выбора правила из подходящих. Наиболее простой и часто встречающейся стратегией является «первая попавшаяся». При этой стратегии решение задачи зависит от порядка расположения (перебора) правил в базе знаний.
Цикл
еслиэлементарное условие истиннотоПерейти к следующему элементарному условию.
Иначе
Надо прервать проверку условия.
конец_если конец_цикла
Выполнить заключение.
еслипри формировании заключения появился целевой факттоСчитать, что Цель доказана.
конец_если конец_цикла.
Метод прямого логического вывода можно применять тогда, когда факты появляются в базе данных не зависимо от того, какую задачу сейчас требуется решить (какой целевой факт доказать) и в разные моменты времени. В этом случае можно говорить о том, что факты управляют логическим выводом (решением задачи). Кроме того, этот метод целесообразно применять для формирования вторичных признаков (фактов) из первичных для подготовки решения задачи в дальнейшем с применением обратного логического вывода.
Этап идентификации
Этап идентификации связан, прежде всего, с осмыслением тех задач, которые предстоит решить будущей ЭС, и формированием требований к ней. Результатом данного этапа является ответ на вопрос, что надо сделать и какие ресурсы необходимо задействовать (идентификация задачи, определение участников процесса проектирования и их роли, выявление ресурсов и целей).
Идентификация задачи заключается в составлении неформального (вербального) описания, в котором указываются:
- общие характеристики задачи;
- подзадачи, выделяемые внутри данной задачи;
- ключевые понятия (объекты), их входные (выходные) данные;
- предположительный вид решения,
- знания, относящиеся к решаемой задаче.
При идентификации целей важно отличать цели, ради которых создается ЭС, от задач, которые она должна решать. Примерами возможных целей являются[1]:
- формализация неформальных знаний экспертов;
- улучшение качества решений, принимаемых экспертом;
- автоматизация рутинных аспектов работы эксперта (пользователя);
- тиражирование знаний эксперта.
Этап концептуализации
На данном этапе проводится содержательный анализ проблемной
области, выявляются используемые понятия и их взаимосвязи, определяются методы решения задач. Этот этап завершается созданием модели предметной области (ПО), включающей основные концепты и
отношения. На этапе концептуализации определяются следующие особенности задачи [1]:
- типы доступных данных;
- исходные и выводимые данные,
- подзадачи общей задачи;
- применяемые стратегии и гипотезы; виды взаимосвязей между объектами ПО, типы используемых отношений (иерархия, причина
— следствие, часть — целое и т.п.);
- процессы, применяемые в ходе решения;
- состав знаний, используемых при решении задачи;
- типы ограничений, накладываемых на процессы, которые применены в ходе решения;
- состав знаний, используемых для обоснования решений.
Существует два подхода к процессу построения модели предметной области, которая является целью разработчиков ЭС на этапе концептуализации [1]:
1. Признаковый или атрибутивный подход предполагает наличие полученной от экспертов информации в виде троек «объект —
атрибут — значение атрибута», а также наличие обучающей информации. Этот подход развивается в рамках направления, получившего название «формирование знаний» или «машинное обучение» (machine learning).
2. Структурный (или когнитивный) подход, осуществляется путем выделения элементов предметной области, их взаимосвязей и семантических отношений.
Этап формализации
На данном этапе все ключевые понятия и отношения выражаются на некотором формальном языке, который либо выбирается из числа уже существующих, либо создается заново. Другими словами, определяются состав средств и способы представления декларативных и процедурных знаний, осуществляется это представление и в итоге формируется описание решения задачи ЭС на предложенном (инженером по знаниям) формальном языке.
Выходом этапа формализации является описание того, как рассматриваемая задача может быть представлена в выбранном или разработанном формализме. Сюда относится:
- указание способов представления знаний (фреймы, сценарии, семантические сети и т.д.)
- определение способов манипулирования этими знаниями (логический вывод, аналитическая модель, статистическая модель и др.) и интерпретации знаний.
Этап выполнения
Цель этого этапа — создание одного или нескольких прототипов ЭС, решающих требуемые задачи. Затем на данном этапе по результатам тестирования и опытной эксплуатации создается конечный продукт, пригодный для промышленного использования. Разработка прототипа
состоит в программировании его компонентов или выборе их из известных инструментальных средств и наполнении базы знаний.
Главное в создании первого прототипа ЭС-1 заключается в том,
чтобы этот прототип обеспечил проверку адекватности идей, методов и способов представления знаний решаемым задачам.Создание первогопрототипа должно подтвердить, что выбранные методы решений и способы представления пригодны для успешного решения, по крайней мере, ряда задач из актуальной предметной области, а также продемонстрировать тенденцию к получению высококачественных и эффективных решений для всех задач предметной области по мере увеличения объема знаний.
После разработки первого прототипа ЭС-1 круг предлагаемых для решения задач расширяется, и собираются пожелания и замечания, которые должны быть учтены в очередной версии системы ЭС-2.
Развитие ЭС-1 осуществляется за счет добавления:
- «дружественного» интерфейса,
- средств для исследования базы знаний и цепочек выводов, генерируемых системой,
- средств для сбора замечаний пользователей,
- средств хранения библиотеки задач, решенных системой.
При разработке ЭС-2, кроме перечисленных задач, решаются следующие:
- анализ функционирования системы при значительном расширении базы знаний;
- исследование возможностей системы в решении более широкого круга задач и принятие мер для обеспечения таких возможностей;
- анализ мнений пользователей о функционировании ЭС;
- разработка системы ввода-вывода, осуществляющей анализ или синтез предложений ограниченного естественного языка, позволяющей взаимодействовать с ЭС-2 в форме, близкой к форме стандартных учебников для данной области.
Если ЭС-2 успешно прошла этап тестирования, то она может классифицироваться как промышленная экспертная система.
Этап тестирования
В ходе данного этапа производится оценка выбранного способа представления знаний в ЭС в целом. Для этого инженер по знаниям подбирает примеры, обеспечивающие проверку всех возможностей разработанной ЭС.
Этап опытной эксплуатации
На этом этапе проверяется пригодность ЭС для конечного пользователя. Пригодность ЭС для пользователя определяется в основном удобством работы с ней и ее полезностью.
Полезность ЭС - ее способность в ходе диалога определять потребности пользователя, выявлять и устранять причины неудач в работе, а также удовлетворять указанные потребности пользователя (решать поставленные задачи).
Удобство работы с ЭС свойство естественности взаимодействия с ЭС (общение в привычном, не утомляющем пользователя виде), гибкость ЭС (способность системы настраиваться на различных пользователей, а также учитывать изменения в квалификации одного и того же пользователя) и устойчивость системы к ошибкам (способность не выходить из строя при ошибочных действиях неопытного пользователях).
В ходе разработки ЭС почти всегда осуществляется ее модификация. Выделяют следующие виды модификации системы:
- переформулирование понятий и требований,
- переконструирование представления знаний в системе
- усовершенствование прототипа.
I. МОДЕЛИ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ