Конспект лекций Белой / Разработка ИИ. Конспект лекции №3. Белая
.docxКонспект лекции: Экспертные системы (ЭС)
Введение. Базовые понятия
Экспертные системы (ЭС) – это прикладные системы искусственного интеллекта, в которых база знаний представляет собой формализованные эмпирические знания высококвалифицированных специалистов (экспертов) в некоторой узкой предметной области.
ЭС предназначены для замены эксперта при решении задач в ситуациях, когда:
· экспертов недостаточно;
· требуется оперативность, недостижимая человеком;
· работа происходит в опасных или вредных для человека условиях.
Ключевые элементы:
· Знания – формализованный опыт экспертов.
· Эксперты – носители знаний.
· Экспертная система – программный инструмент, использующий эти знания.
2. Основные свойства ЭС
1. Решаемые задачи относятся к классу неформализованных или слабоформализованных.
2. В процессе решения используются априорные, экспериментальные, субъективные знания экспертов в конкретной предметной области.
3. ЭС способны объяснять свои решения и выдавать рекомендации на уровне эксперта.
4. Системы ориентированы на узкую область, что обеспечивает глубину и точность выводов.
3. Классификация экспертных систем
3.1 По назначению
· ЭС общего назначения – универсальные инструменты (обычно оболочки).
· Специализированные ЭС – для конкретных приложений.
· Проблемно-ориентированные – ориентированы на типовые задачи (диагностика, проектирование, прогнозирование и т.п.).
· Предметно-ориентированные – созданы для специфических задач (например, контроль ситуаций на атомных станциях).
3.2 По степени зависимости от внешней среды
· Статические ЭС – не учитывают изменения внешней среды; работают с неизменными данными.
· Динамические ЭС – работают в реальном времени, реагируют на изменения внешней среды. Время реакции может измеряться миллисекундами, такие системы часто реализуются на C++.
3.3 По типу использования
· Изолированные ЭС – функционируют автономно.
· ЭС на входе/выходе других систем – взаимодействуют с внешними программами как модули.
· Гибридные ЭС – интегрированы с базами данных и другими приложениями.
3.4 По сложности решаемых задач (по объёму базы знаний)
· Простые – до 1000 простых правил.
· Средние – от 1000 до 10 000 структурно-развитых правил.
· Сложные – более 10 000 структурно-развитых правил.
3.5 По стадии создания (эволюция прототипа)
· Исследовательский образец – разрабатывается за 1–2 месяца, минимальная база знаний.
· Демонстрационный образец – 2–4 месяца, реализуется на языках типа Prolog, CUPS (вероятно, имеется в виду CLIPS).
· Промышленный образец – 4–8 месяцев, полная база знаний, часто на CLIPS.
· Коммерческий образец – 1,5–2 года, полная база знаний на языках типа C++, Java, с развитым интерфейсом.
4. Состав и структура экспертной системы
Традиционно ЭС включает следующие компоненты:
· База знаний (БЗ) – формализованные знания экспертов (правила, факты, фреймы, семантические сети).
· Машина вывода (механизм логического вывода) – интерпретатор, применяющий правила к фактам для получения новых знаний.
· Подсистема объяснений – поясняет пользователю, как и почему получено данное решение.
· Интерфейс пользователя – обеспечивает диалог с системой (ввод данных, вывод результатов).
· Подсистема приобретения знаний – помогает инженеру по знаниям наполнять и редактировать базу знаний.
5. Пример работы ЭС: MYCIN
MYCIN – одна из первых экспертных систем, разработанная в Стэнфордском университете в начале 1970‑х годов (за 5–6 лет). Предназначалась для диагностики бактериальных инфекций (бактериемия, менингит) и рекомендации дозировок антибиотиков с учётом массы тела пациента.
Особенности MYCIN:
· База знаний содержала около 600 правил.
· Машина вывода была довольно простой, использовала обратную цепочку рассуждений.
· Диалог с врачом строился как серия вопросов с ответами «да/нет» или вводом текста.
· Результат: список подозреваемых бактерий, упорядоченный по вероятности, с указанием доверительных интервалов и обоснованием (перечень вопросов и правил, приведших к диагнозу).
· Также выдавалась рекомендация по курсу лечения.
MYCIN продемонстрировала эффективность продукционного подхода и стала основой для многих последующих разработок.
6. Технологии разработки ЭС
6.1 Этапы создания
1. Идентификация проблемы – выбор предметной области, определение задач, экспертов, источников знаний.
2. Извлечение знаний – интервью с экспертами, анализ документов, наблюдение.
3. Структурирование (концептуализация) – выявление основных понятий, отношений, стратегий решения.
4. Формализация – выбор модели представления знаний (правила, фреймы и т.д.) и наполнение базы.
5. Реализация – программирование прототипа (используются языки ИИ: Prolog, Lisp, CLIPS, а также C++, Java для коммерческих версий).
6. Тестирование – оценка правильности работы, проверка на тестовых примерах, выявление ошибок.
6.2 Тестирование ЭС
На этапе тестирования производится оценка выбранного способа представления знаний и работы системы в целом. Инженер по знаниям подбирает примеры, покрывающие все возможности системы.
Выделяют следующие источники неудач:
· некорректные тестовые примеры;
· ошибки ввода-вывода;
· недостатки правил вывода;
· неэффективные управляющие стратегии.
6.3 Методы извлечения знаний
В слайде упоминается, что для некоторых методов характерно наличие полной информации об объектах, их атрибутах и значениях. Используется метод реклассификации, основанный на предположении об объектной ориентированности задачи, где объекты хорошо известны эксперту. Это помогает строить тройки «объект – атрибут – значение».
7. Подходы к проектированию ЭС
7.1 Структурные и функциональные подходы
· Структурный – акцент на компоненты системы и их связи.
· Функциональный – акцент на процессы и преобразования данных.
7.2 Смешанный подход
Сочетает разнообразные структурные и функциональные методы. Перспективным считается использование методов, которые дают устойчивость к неточностям или возможность работы с приближёнными знаниями. Смешанный подход позволяет адаптироваться к слабоформализованным задачам и использовать эвристики экспертов.
8. Дополнительные сведения
8.1 Типы задач, решаемых ЭС
· Интерпретация – описание ситуаций по наблюдаемым данным.
· Прогнозирование – предсказание будущих событий.
· Диагностика – определение неисправностей/заболеваний.
· Проектирование – создание объектов с заданными свойствами.
· Планирование – построение последовательности действий.
· Мониторинг – наблюдение за процессами и сигнализация об отклонениях.
· Отладка – поиск и устранение ошибок.
· Управление – адаптивное управление сложными системами.
8.2 Известные ЭС (помимо MYCIN)
· DENDRAL – определение химической структуры по масс-спектрограммам.
· PROSPECTOR – помощь геологам в поиске месторождений.
· XCON (R1) – конфигурирование вычислительных систем (DEC).
· PUFF – интерпретация данных о дыхательных нарушениях.
Заключение
Экспертные системы остаются важным классом прикладного искусственного интеллекта, особенно в областях, где требуется формализация уникального опыта и принятие решений в условиях неполной информации. Знание классификации, структуры и этапов разработки ЭС необходимо для успешного проектирования и внедрения таких систем в практику.
