Навигация по странице:
|
Лекция ЭИС 19-2 Функции экспертных систем. Функции экспертных систем
|
Название |
Функции экспертных систем
|
Анкор |
Лекция ЭИС 19-2 Функции экспертных систем.docx |
Дата |
17.12.2017 |
Размер |
24.76 Kb. |
Формат файла |
|
Имя файла |
Лекция ЭИС 19-2 Функции экспертных систем.docx |
Тип |
Документы
#12840
|
|
Функции экспертных систем
В самом общем случае, для того чтобы построить ЭС, необходимо разработать механизмы выполнения следующих функций:
1) приобретение знаний в конкретной предметной области;
2) представление знаний;
3) решение задач с использованием знаний о конкретной предметной области (управление процессом решения);
4) объяснение намерений и решений системы во время и после окончания процесса решения задачи (разъяснение принятого решения).
Каждая из этих функций может оказаться очень сложной и зависит от прикладной области, а также от различных практических требований. В процессе разработки и реализации могут возникать разнообразные проблемы.
Приобретение знаний
Приобретение знаний — это передача потенциального опыта решения проблемы от некоторого источника знаний и преобразование его в вид, позволяющий использовать эти знания в программе. Передача знаний выполняется в процессе достаточно длительных собеседований между специалистом по проектированию экспертной системы (инженером по знаниям) и экспертом в определенной предметной области, способным четко сформулировать имеющийся у него опыт. Многие исследователи рассматривают функцию приобретения знаний в качестве одного из главных «узких мест» технологии экспертных систем. Проблемы могут возникнуть самые разнообразные. Специалисты в узкой области, как правило, пользуются собственным профессиональным жаргоном, который трудно перевести на обычный язык. Но смысл жаргонных слов (профессионализмов) совсем не очевиден, а потому требуется много дополнительных вопросов для уточнения их логического значения.
Неудовлетворительные результаты собеседований эксперта и инженера по знаниям ввиду использования первым профессионализмов пробудили у некоторых исследователей интерес к автоматизации процесса передачи знаний специалистом машине. Одно из направлений исследований в этой области — автоматизированное извлечение знаний — появилось как побочный продукт в развитии систем человеко-машинного диалога. Другое направление — машинное обучение. Идея состоит в том, чтобы машина училась решать проблемы примерно так же, как учится человек.
Проблемой является еще и то, что факты и принципы, лежащие в основе многих специфических областей знания эксперта, не могут быть четко сформулированы в терминах математической теории или детерминированной модели, свойства которой хорошо понятны. Так, эксперту может быть известно, что определенное событие может наступить, но он ничего не сможет сказать о механизмах, которые приводят к наступлению этого события. Для того чтобы решить проблему в определенной области, эксперту недостаточно просто обладать суммой знаний о фактах и принципах в этой области. Например, опытный специалист знает, какого рода информацией нужно располагать для формулировки того или иного суждения, насколько надежны различные источники информации и как можно расчленить сложную проблему на несколько простых, которые можно решать более или менее независимо.
Выявить в процессе собеседования такого рода знания, основанные на личном опыте и плохо поддающиеся формализации, значительно сложнее, чем получить простой перечень каких-то фактов или общих принципов.
Экспертный анализ даже в очень узкой области, выполняемый человеком, очень часто нужно поместить в довольно обширный контекст, который включает и многие вещи, кажущиеся эксперту само собой разумеющимися, но для постороннего отнюдь таковыми не являющиеся.
Представление знаний
Представление знаний — это отдельная область исследований, тесно связанная с философией формализма и когнитивной психологией. Предмет исследования в этой области — методы ассоциативного хранения информации, подобные тем, которые существуют в мозгу человека. При этом основное внимание, естественно, уделяется логической, а не биологической стороне процесса, опуская подробности физических преобразований.
База знаний — наиболее важная компонента экспертной системы, на которой основаны ее «интеллектуальные способности». В отличие от всех остальных компонент экспертной системы база знаний — изменяемая часть системы, которая может пополняться и модифицироваться инженерами по знаниям. Существует несколько способов представления знаний в экспертной системе, однако общим для всех них является то, что знания представлены в символьной форме (элементарными компонентами представления знаний являются тексты, списки и другие символьные структуры).
Таким образом, в экспертной системе реализуется принцип символьной природы рассуждений, который заключается в том, что процесс рассуждения представляется как последовательность символьных преобразований.
Наиболее распространенный способ представления знаний — в виде конкретных фактов и правил, по которым из имеющихся фактов могут быть выведены новые. Факты могут быть представлены, например, в виде троек: атрибут, объект, значение. Такой факт означает, что заданный объект имеет заданный атрибут (свойства) с заданным значением. Например, тройка (возраст, пациент, 77) представляет факт, что возраст пациента — 77 лет. В более простых случаях факт выражается не конкретным значением атрибута, а каким-либо простым утверждением, которое может быть истинным или ложным, например: «Пациент курит». В таких случаях факт можно обозначить каким-либо кратким именем (например, курение) или использовать для представления факта сам текст соответствующей фразы.
Правила в базе знаний имеют вид:
ЕСЛИ а TO s,
где а — условие; s — действие.
Действие s исполняется, если а истинно. Наиболее часто действие s, так же, как и условие, представляет собой утверждение, которое может быть выведено системой (т. е. становится ей известной), если истинно условие правила а. Правила в базе знаний служат для представления эвристических знаний (эвристик), т.е. неформальных правил рассуждения, вырабатываемых экспертом на основе опыта его деятельности. Простой пример правила:
ЕСЛИ «Пациент курит»
ТО «У пациента больные легкие».
В качестве условия а может выступать либо факт (как в данном примере), либо несколько фактов аь..., а„, соединенные логическими операциями.
Пример предыдущего правила с более сложным условием (правило 1):
ЕСЛИ
(«Пациент курит») / f («Кровяное давление выше среднего»)
ТО
«Риск высокий» (правило 1)
Действия, входящие в состав правил, могут содержать новые факты. При применении таких правил эти факты становятся известны системе, т.е. включаются в множество фактов, которое называется рабочим множеством. Например, если факты «Пациент курит» и «Кровяное давление выше среднего» уже имеются в рабочем множестве, то после применения приведенного выше правила в него также включается факт «Риск высокий».
Если система не может вывести некоторый факт, истинность или ложность которого требуется установить, то система спрашивает о нем пользователя. Например:
Верно ли, что «Пациент курит»?
При получении положительного ответа от пользователя факт «Пациент курит» включается в рабочем множество.
Существуют статические и динамические базы знаний. Статические базы данных не изменяются со временем. Динамические базы знаний изменяются со временем. Новые факты, добавляемые в базу знаний, являются результатом вывода, который состоит в применении правил к имеющимся фактам.
Экспертные системы могут иметь монотонный и немонотонный выводы.
В системах с монотонным выводом факты, хранимые в базе знаний, статичны, т.е. не изменяются в процессе решения задачи.
В системах с немонотонным выводом допускается изменение или удаление фактов из базы знаний. Изменение фактов в свою очередь приводит к необходимости удаления из базы знаний заключений, полученных с помощью упомянутых правил. Тем самым вывод выполняется повторно для того, чтобы пересмотреть решения, полученные на основе подвергшихся изменению фактов.
Решение задач с использованием знаний
При проектировании экспертной системы серьезное внимание должно быть уделено и тому, как осуществляется доступ к знаниям и как они используются при поиске решения. Знание о том, какие знания нужны в той или иной конкретной ситуации, и умение ими распорядиться — важная часть процесса функционирования экспертной системы. Такие знания получили наименование метазнаний, т.е. знаний о знаниях. Решение нетривиальных проблем требует и определенного уровня планирования и управления при выборе, какой вопрос нужно задать, какой тест выполнить и т. д.
Использование разных стратегий перебора имеющихся знаний, как правило, довольно существенно влияет на характеристики эффективности программы. Эти стратегии определяют, каким способом программа отыскивает решение проблемы в некотором пространстве альтернатив.
Существует такая программная компонента экспертных систем, как подсистема вывода, реализующая процесс рассуждений системы на основе базы знаний и рабочего множества. Она выполняет две функции:
1) просмотр существующих фактов из рабочего множества и правил из базы знаний и добавление (по мере возможности) в рабочее множество новых фактов;
2) определение порядка просмотра и применения правил. Эта подсистема управляет процессом консультации, сохраняет для пользователя информацию о полученных заключениях и запрашивает у него информацию, когда для срабатывания очередного правила в рабочем множестве оказывается недостаточно данных.
Цель экспертной системы — вывести некоторый заданный факт, который называется целевым утверждением, т.е. в результате применения правил добиться того, чтобы этот факт был включен в рабочее множество, либо опровергнуть этот факт, т.е. убедиться, что его вывести невозможно, следовательно, при данном уровне знаний системы он является ложным. Целевое утверждение либо «заложено» заранее в базу знаний системы, либо извлекается системой из диалога с пользователем.
Работа системы представляет собой последовательность шагов, на каждом из которых система выбирает из базы некоторое правило, которое можно применить к текущему содержимому рабочего множества. Цикл заканчивается, когда выведено или опровергнуто целевое утверждение. Цикл работы экспертной системы иначе называется логическим выводом. Логический вывод может происходить многими способами, из которых наиболее распространенные — прямой и обратный порядок вывода.
Прямой порядок вывода — от фактов, которые находятся в рабочем множестве, к заключению. Если такое заключение удается найти, то оно заносится в рабочее множество. Прямой вывод часто называют выводом, управляемым данными. Для иллюстрации добавим к нашему примеру базы знаний о здоровье еще одно правило (правило 2):
ЕСЛИ
«Риск высокий»
ТО
«Продолжительность жизни менее 60 лет».
Предположим также, что факты «Пациент курит» и «Кровяное давление выше среднего» имеются в рабочем множестве, а целью системы является определение наиболее вероятной продолжительности жизни пациента (пользователя).
При прямом выводе работа системы будет протекать следующим образом.
1. Рассматривается правило 1. Его условие истинно, так как оба элемента конъюнкции имеются в рабочем множестве. Применяем правило 1. Добавляем к рабочему множеству факт «Риск высокий».
2. Рассматривается правило 2. Его условие истинно, так как утверждение из условия имеется в рабочем множестве. Примеряем правило 2. Добавляем к рабочему множеству факт «Продолжительность жизни менее 60 лет». Целевое утверждение выведено. При обратном порядке вывода заключения просматриваются до тех пор, пока не будут обнаружены в рабочей памяти или получены от пользователя факты, подтверждающие одно из них. В системах с обратным выводом вначале выдвигается некоторая гипотеза, а затем механизм вывода в процессе работы как бы возвращается назад, переходя от нее к фактам, и пытается найти среди них те, которые подтверждают эту гипотезу. Если достоверность доказана, то выбирается следующая гипотеза, детализирующая первую и являющаяся по отношению к ней подцелью. Далее отыскиваются факты, подтверждающие истинность подчиненной гипотезы. Вывод такого типа называется управляемым целями.
Обратный поиск применяется в тех случаях, когда цели известны и их сравнительно немного. Заметим, что для упрощения ситуации мы предположили, что в обоих случаях факты «Пациент курит» и «Кровяное давление выше среднего» уже известны системе. На самом деле система выясняет истинность или ложность факта, входящего в условие некоторого правила, спрашивая об этом пользователя в тот момент, когда она пытается применить правило.
Приведенный пример сознательно выбран простым и не отражающим многих проблем, связанных с организацией вывода в экспертной системе. В частности, из примера может создаться впечатление, что прямая цепочка рассуждений эффективнее, чем обратная, что на самом деле не так. Эффективность той или иной стратегии вывода зависит от характера задачи и содержимого базы знаний. В системах диагностики чаще применяется прямой вывод, в то время как в планирующих системах более эффективным оказывается обратный вывод. В некоторых системах вывод основывается на сочетании обратного и ограниченно-прямого. Такой комбинированный метод получил название циклического.
|
|
|