Экспертные системы
Экспертная система — это компьютерная программа, использующая знания и процедуры логического вывода для решения задач в узкой предметной области на уровне, сопоставимом с квалификацией эксперта-человека. Относится к классу систем искусственного интеллекта (ИИ), основанных на знаниях. Ключевое отличие экспертных систем от традиционных алгоритмических программ заключается в том, что они оперируют символьными, а не числовыми данными, и способны объяснять ход своих рассуждений.
История развития
Ранний период (1960–1970-е годы)
Зарождение экспертных систем связано с осознанием ограниченности универсальных алгоритмов ИИ. Первыми значимыми проектами стали DENDRAL (1965, Стэнфордский университет) — система для идентификации химических соединений по данным масс-спектрометрии, и MYCIN (1972, Стэнфорд) — программа для диагностики бактериальных инфекций крови и менингита, а также назначения антибиотиков. MYCIN продемонстрировала ключевую особенность: она могла объяснять свои выводы, перечисляя использованные правила.
Этап коммерциализации (1980-е годы)
В 1980-х годах экспертные системы стали коммерчески востребованными. Японский проект «Компьютеры пятого поколения» стимулировал развитие символьных вычислений. Появились специализированные языки программирования (Lisp, Prolog) и инструментальные оболочки (EMYCIN, KEE, ART), упрощающие создание систем. Крупные корпорации внедрили системы: XCON/R1 (Digital Equipment Corporation) — конфигурирование компьютеров VAX, PROSPECTOR (SRI International) — геологоразведка, предсказавшая месторождение молибдена. К концу десятилетия интерес снизился из-за высоких затрат на поддержку и сложности извлечения знаний.
Современный этап (1990-е — настоящее время)
С развитием вычислительных мощностей и появлением методов машинного обучения экспертные системы эволюционировали в гибридные решения. Они интегрируются с нейросетями (для извлечения закономерностей из данных) и используются в узких, критически важных областях, где требуется прозрачность решений (медицина, юриспруденция, безопасность). Современные примеры включают системы поддержки принятия решений на основе онтологий и Semantic Web.
Архитектура экспертной системы
Базовая архитектура включает четыре основных компонента:
- База знаний (БЗ) — ядро системы, содержащее формализованные знания о предметной области. Состоит из двух частей:
- Факты — конкретные данные (например, «температура пациента 39°C»).
- Правила — логические конструкции вида «ЕСЛИ (условие), ТО (действие/вывод)» (например, «ЕСЛИ температура > 38°C И кашель, ТО подозрение на пневмонию»).
- Машина логического вывода — механизм, применяющий правила к фактам для получения новых знаний. Использует стратегии:
- Прямой вывод (forward chaining) — от фактов к цели (например, сбор симптомов → диагноз).
- Обратный вывод (backward chaining) — от гипотезы к фактам (например, проверка диагноза путем поиска подтверждающих симптомов).
- Интерфейс пользователя — средство взаимодействия человека с системой. Позволяет вводить данные, получать результаты и объяснения.
- Подсистема объяснений — важнейший компонент, отличающий экспертные системы от «черных ящиков» нейросетей. Она показывает цепочку правил, приведших к решению («почему был поставлен этот диагноз?»).
Дополнительно могут присутствовать:
- Редактор базы знаний — инструмент для инженера по знаниям, позволяющий добавлять и редактировать правила без программирования.
- Рабочая память — область для хранения промежуточных данных, вводимых пользователем.
Классификация экспертных систем
По способу представления знаний
- Продукционные системы — используют правила «ЕСЛИ-ТО» (наиболее распространены).
- Фреймовые системы — основаны на фреймах (структурах данных, описывающих объекты через слоты-свойства) и наследовании.
- Логические системы — используют исчисление предикатов (например, Prolog).
- Семантические сети — знания представлены в виде графа, где узлы — понятия, а ребра — отношения между ними.
По типу решаемых задач
- Диагностические — определение неисправностей или заболеваний по симптомам (MYCIN, медицинские системы).
- Интерпретирующие — анализ данных (например, расшифровка сигналов радара).
- Прогнозирующие — предсказание событий на основе текущих данных (экономические прогнозы, погода).
- Проектирующие — создание объектов с заданными свойствами (конфигурирование оборудования).
- Планирующие — построение последовательности действий (планирование миссий, логистика).
- Обучающие — интеллектуальные репетиторы (адаптивное обучение).
По степени сложности
- Статические — работают с неизменными данными (например, юридическая консультация по фиксированному кодексу).
- Динамические — обрабатывают данные, меняющиеся во времени (управление технологическими процессами, мониторинг).
Методы представления знаний
Основу экспертной системы составляет формализация знаний эксперта. Для этого используются:
- Продукции (правила) — простейший и наглядный способ. Недостаток — сложность поддержки больших баз (более 1000 правил).
- Фреймы — позволяют описывать типовые ситуации (например, фрейм «Автомобиль» со слотами «марка», «двигатель», «цвет»). Поддерживают наследование: фрейм-потомок получает свойства родителя.
- Онтологии — формальное описание понятий и отношений в предметной области. Используются в современных системах для обеспечения совместимости и повторного использования знаний (например, в медицине — SNOMED CT).
Процесс разработки (инжиниринг знаний)
Создание экспертной системы включает этапы:
- Идентификация — выбор предметной области, определение круга задач и экспертов.
- Концептуализация — выявление ключевых понятий, отношений и стратегий принятия решений.
- Формализация — выбор модели представления знаний (правила, фреймы) и инструментария.
- Реализация — наполнение базы знаний, создание прототипа.
- Тестирование — проверка корректности выводов на реальных примерах, доработка.
- Эксплуатация — внедрение и сопровождение.
Ключевая роль отводится инженеру по знаниям — специалисту, который извлекает знания из эксперта (часто не умеющего формализовать свой опыт) и переводит их в машинный код.
Применение
Медицина
- MYCIN (исторический прототип) — диагностика бактериальных инфекций.
- INTERNIST-I / QMR — диагностика по внутренним болезням.
- DXplain — система поддержки врачебных решений, используемая в клиниках США.
- Современные системы (например, Watson от IBM) комбинируют экспертные правила с обработкой естественного языка и машинным обучением.
Промышленность и техника
- XCON/R1 — конфигурирование заказов на компьютеры DEC.
- Системы диагностики неисправностей — в авиации (Boeing), автомобилестроении, на АЭС.
- Управление технологическими процессами — контроль качества, оптимизация режимов.
Финансы и бизнес
- Кредитный скоринг — оценка рисков заемщика на основе правил.
- Обнаружение мошенничества — выявление аномальных транзакций.
- Налоговое консультирование — подбор оптимальных схем (в рамках закона).
Юриспруденция
- Системы анализа контрактов — выявление противоречий и рисков.
- Помощь в судопроизводстве — оценка соответствия прецедентов.
Сельское хозяйство
- PLANT/ds — диагностика болезней сои.
- POMME — управление садами: прогнозирование вредителей и сроков обработки.
Преимущества и ограничения
Преимущества
- Постоянная доступность — работают 24/7 без усталости.
- Стабильность — не подвержены эмоциям, не забывают факты.
- Прозрачность — могут объяснить ход рассуждений.
- Тиражирование знаний — копирование опыта редких экспертов.
- Скорость — обработка тысяч правил за секунды.
Ограничения
- Узость предметной области — не способны к здравому смыслу и переносу знаний.
- Сложность извлечения знаний — эксперты часто не могут вербализовать свой опыт.
- Трудность поддержки — изменение правил требует перепроверки всей базы.
- Отсутствие обучения — в классическом виде не учатся на новых данных (требуется ручное обновление).
- «Бритва Оккама» — при большом количестве правил система может выдавать тривиальные или противоречивые результаты.
Критика и современное состояние
В 1980-х годах экспертные системы подвергались критике за «хрупкость» — при выходе за границы области они давали абсурдные ответы. С развитием машинного обучения (особенно глубоких нейросетей) интерес к чистым экспертным системам снизился. Однако в 2020-х годах наблюдается ренессанс гибридного подхода: нейросети используются для извлечения признаков из неструктурированных данных (изображений, текстов), а экспертные системы — для принятия формальных решений на основе этих признаков, обеспечивая объяснимость (XAI — Explainable AI). Примеры: системы диагностики рака кожи (нейросеть + правила для стадирования), юридические ассистенты.
Источники
- Buchanan, B. G., & Shortliffe, E. H. (1984). Rule-Based Expert Systems: The MYCIN Experiments of the Stanford Heuristic Programming Project. Addison-Wesley.
- Jackson, P. (1998). Introduction to Expert Systems (3rd ed.). Addison-Wesley.
- Giarratano, J., & Riley, G. (2005). Expert Systems: Principles and Programming (4th ed.). Course Technology.
- Hayes-Roth, F., Waterman, D. A., & Lenat, D. B. (1983). Building Expert Systems. Addison-Wesley.
- Russell, S., & Norvig, P. (2020). Artificial Intelligence: A Modern Approach (4th ed.). Pearson. (Глава о системах, основанных на знаниях).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →