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

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

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

Этап 1. Идентификация

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

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

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

Этап 2. Концептуализация

Выявляется структура полученных знаний о предметной области. Определяются: терминология, перечень главных понятий и их атрибутов, структура входной и выходной информации, стратегия принятия решений и т.д. Концептуализация – это разработка неформального описания знаний о предметной области в виде графа, таблицы, диаграммы либо текста, которое отражает главные концепции и взаимосвязи между понятиями предметной области. Средняя длительность этапа 2-4 недели.

Этап 3. Формализация

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

Этап 4. Реализация

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

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

Этап 5. Тестирование

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

  • тестирование исходных данных;
  • логическое тестирование базы знаний;
  • концептуальное тестирование прикладной системы.

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

Логическое тестирование базы знаний заключается в обнаружении логических ошибок в системе продукций, не зависящих от предметной области, таких, как избыточные, циклические и конфликтные правила; пропущенные и пересекающиеся правила; несогласуемые и терминальные клаузы (несогласуемые условия). Формальный характер этих ошибок позволяет автоматизировать процесс логического тестирования. Существует большое количество инструментальных средств для верификации наборов правил и базы знаний в целом. Однако в ряде случаев, когда цепочки правил, используемых в процессе вывода, небольшие (от 3 до 10 правил), целесообразно проводить процесс верификации вручную.

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

Также на этапе тестирования формируются рекомендации по доводке системы до промышленного варианта

Этап 6. Опытная эксплуатация

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

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

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

 

Тэги: ai искусственный интеллект экспертные системы


 


 
архив

подписка