Экспертные системы

Технологии экспертных систем

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

Базовые принципы функционирования экспертных систем

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

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

Структура экспертной системы

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

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

IF человек не имеет постоянного дохода

THEN кредит не выдавать

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

К ним можно отнести систему XCON/R1, созданную в компании Digital Equipment Corporation (DEC), которая способна проецировать конфигурации компьютерных систем, не уступая отдельным экспертам-людям. Данный подход оказался также приемлемым для создания значительного количества сравнительно небольших систем, с целью решения специализированных задач на основе нескольких сотен правил.

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

Инженерия знаний

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

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

Создание экспертной системы

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

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

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

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

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

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

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

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