Экспертные системы
Содержание:
- Представление знаний в экспертных системах
- Обучение экспертным системам
- Об общего — к частному
- Интерпретируемые знания
- Уровни детальности
- Диагностика экспертных систем
- Поддержка принятия решений в экспертных системах
- Наиболее известные ЭС
- Методы поиска решений
- Приложения
- Этапы разработки ЭС
- Кто и где использует МЭС
- Экскурс в историю экспертных систем
- Постановка диагноза при помощи МЭС
- Требования по созданию
- Классификация экспертных систем
Представление знаний в экспертных системах
Основной вопрос, решаемый при представлении знаний — это вопрос определения состава знаний. Второй вопрос касается формы представления знания. Две эти проблемы независимы друг от друга, ведь выбранный способ представления может оказаться непригодным или неэффективным для выражения некоторых знаний.
Вопрос формулирования знаний можно разделить на две достаточно независимые задачи: как организовать знания и как представить знания в нужной форме.
Необходимость выделения формулировки знаний в самостоятельную задачу вызвана, в частности, тем, что эта задача возникает для любого языка формализации и способы решения этой задачи являются одинаковыми или похожими вне зависимости от используемых форм представления.
Вопросы, решаемые при представлении знаний, таковы:
- определение состава представляемых знаний
- организация знаний
- представление знаний
При определении состава знаний учитываются следующие факторы:
- проблемная среда
- архитектура экспертной системы
- потребности и цели пользователей
- язык общения
С учетом архитектуры экспертной системы знания разделяют на интерпретируемые и неинтерпретируемые.
Первый тип: те знания, которые способен интерпретировать решатель. Все остальные относятся ко второму типу. Решатель не знает ни их структуры, ни содержания. Если эти
знания используются каким-либо компонентом системы, то он не «осознает» этих знаний.
Обучение экспертным системам
Под обучением
понимается использование компьютера
для обучения какой-то дисциплине или
предмету. Системы обучения диагностируют
ошибки при изучении какой-либо дисциплины
с помощью компьютера и подсказывают
правильные решения. Они содержат знания
о гипотетическом «ученике» и
его характерных ошибках, затем
в работе они способны диагностировать
слабые места в познаниях обучаемых
и находить соответствующие средства
для их ликвидации. Кроме того, они
планируют акт общения с учеником
в зависимости от успехов ученика
с целью передачи знаний.
Примеры:
- Обучение языку программирования LISP в системе «учитель ЛИСПа».
- Обучение языку Паскаль – система PROUST.
Об общего — к частному
Создать универсальный «решатель», на все случаи жизни, оказалось невозможно в 70-х и вряд ли станет возможно когда-либо. Поэтому и возникла идея разрабатывать специализированные консультирующие системы, аккумулирующие знания лучших экспертов в каждой конкретной области. Они должны помогать решать неформализованные или слабо формализованные задачи, например, такие как диагностика, планирование, предсказание, конструирование, управление и т. д. Эти задачи характеризуются прежде всего неполнотой, неоднозначностью, а часто и ошибочностью входных данных; большой размерностью пространства решений; неполнотой и противоречивостью знаний о проблемной области; изменением данных и знаний проблемной области. И экспертные системы способны делать из имеющихся данных не только «традиционные» логические выводы, но и выводы, основанные на нечеткой логике.
Существуют различные классификации экспертных систем — по решаемым задачам, способности работать в реальном времени, по способу представления знаний.
Первые ЭС — «химическая» Dendral (1965 г.) и «медицинская» Mycin (начало 70-х) — были разработаны в Стендфордском университете, они стали классическими и описаны в любом учебнике по ЭС. Обе показали неплохие результаты, с помощью первой написано около двух десятков научных работ, второй мешали проблемы с интерфейсом, а также неясности этического и правового характера («кто будет отвечать если ЭС ошибется?»).
В целом, разработка экспертных систем в 70-80 годы стала очень популярным занятием, тем более что появился язык программирования Prolog, на котором очень удобно формировать базы знаний, состоящие из фактов и правил относительно того, как делать выводы из этих фактов (впрочем, также имеется много других языков программирования и инструментальных средств для создания ЭС).
Поддержка механизма логического вывода отличает базы знаний от баз данных. Базы знаний при этом можно постоянно пополнять новыми фактами и новыми правилами вывода, а также уточнять существующие правила и факты. Пользователь ЭС формулирует описание своей задачи, а машина сама ищет ее решение. Например, сам Prolog представляет собой машину логического вывода, которая на основании база знаний получает некоторый результат обработки запроса пользователя (человека или другой программы), то есть, по существу, проводит доказательство некоторой теоремы. При этом база может пополняться как знаниями, вводимыми человеком, так и полученными в результате работы самой ЭС. Следует отметить этот очень важный момент — в отличие от современных систем ИИ на нейросетях, в ЭС выдаваемое программой решение прозрачно и можно проследить, на основании каких фактов и правил было получено конкретное решение.
Еще одно большое достоинство ЭС — в большинстве случаев ее база знаний может пополняться самими пользователями. Однако экспертные системы все еще остаются весьма сложными, дорогими, а их применение ограничено отраслевыми рамками. Да и с отраслевыми системами есть некоторые проблемы.
Экспертные системы широко применяются для диагностики и ремонта
Интерпретируемые знания
Интерпретируемые знания можно разделить на предметные знания, управляющие знания и знания о представлении. Знания о представлении содержат информацию о том, каким образом в системе представлены интерпретируемые знания.
Предметные знания содержат данные о предметной области и способах преобразования этих данных при решении поставленных задач. Отметим, что по отношению к предметным знаниям знания о представлении и знания об управлении являются метазнаниями. В предметных знаниях можно выделить описатели и собственно предметные знания
Описатели содержат определенную информацию о предметных знаниях, такую, как коэффициент определенности правил и данных, меры важности и сложности. Собственно предметные знания разбиваются на факты и исполняемые утверждения
Факты определяют возможные значения сущностей и характеристик предметной области. Исполняемые утверждения содержат информацию о том, как можно изменять описание предметной области в ходе решения задач. Говоря другими словами, исполняемые утверждения — это знания, задающие процедуры обработки.
Управляющие знания можно разделить на фокусирующие и решающие. Фокусирующие знания описывают, какие знания следует использовать в той или иной ситуации. Решающие знания содержат информацию, используемую для выбора способа интерпретации знаний, подходящего к текущей ситуации.
Уровни детальности
Введение уровней детальности позволяет рассматривать знания с различной степенью подробности. Количество уровней детальности во многом зависит от специфики решаемых задач, объема знаний и способа их представления. Обычно, создают не менее трех уровней детальности, которыми определяются соответственно общая, логическая и физическая организации знаний. Выделение нескольких уровней детальности придает дополнительную степень гибкости системы, так как позволяет производить изменения на одном уровне, не затрагивая другие. Изменения на одном уровне детальности могут приводить к дополнительным изменениям на этом же уровне, что порой необходимо для обеспечения согласованности структур данных и программ. Однако наличие различных уровней препятствует распространению изменений с одного уровня на другие.
Диагностика экспертных систем
Диагностика – процесс соотнесения
объекта с некоторым классом объектов
и/или обнаружение неисправности в некоторой
системе. Неисправность – это отклонение
от нормы. Такая трактовка позволяет с
единых теоретических позиций рассматривать
и неисправность оборудования в технических
системах, и заболевания живых организмов,
и всевозможные природные аномалии
Важной
спецификой является здесь необходимость
понимание функциональной структуры («анатомии»)
диагностируемой системы.
Примеры:
- Диагностика и терапия сужения коронарных сосудов – ANGY.
- Диагностика ошибок в аппаратуре и математическом обеспечении ЭВМ – CRIB.
Поддержка принятия решений в экспертных системах
Поддержка принятия
решений – это совокупность процедур,
обеспечивающая лицо, принимающее решения,
необходимой информацией и рекомендациями,
облегчающими процесс принятия решения.
Эти экспертные системы помогают
специалистам выбрать и/или сформировать
нужную альтернативу среди множества
выборов при принятии решений.
Примеры:
- Выбор стратегии выхода фирмы из кризисной ситуации – CRYSIS.
- Помощь в выборе страховой компании или инвестора – CHOICE.
HASP/SIAP — определяет местоположение и |
Наиболее известные ЭС
- CLIPS — весьма популярная оболочка для построения ЭС (public domain)
- OpenCyc — мощная динамическая ЭС с глобальной онтологической моделью и поддержкой независимых контекстов
- Wolfram|Alpha — база знаний и набор вычислительных алгоритмов, интеллектуальный «вычислительный движок знаний»
- MYCIN — наиболее известная диагностическая система, которая предназначена для диагностики и наблюдения за состоянием больного при менингите и бактериальных инфекциях.
- HASP/SIAP — интерпретирующая система, которая определяет местоположение и типы судов в Тихом океане по данным акустических систем слежения.
- Акинатор — интернет-игра. Игрок должен загадать любого персонажа, а Акинатор должен его отгадать, задавая вопросы. База знаний автоматически пополняется, поэтому программа может отгадать практически любого известного персонажа.
- IBM Watson — суперкомпьютер фирмы IBM, способный понимать вопросы, сформулированные на естественном языке, и находить на них ответы в базе данных.
Методы поиска решений
Методы решения задач, основанные на сведении этих задач к поиску, зависят от особенностей предметной области, в которой решается задача и от требований, предъявляемых к решению. Особенности проблемной области определяются следующими параметрами:
- объем пространства поиска решения
- изменяемость области во времени и пространстве
- полнота модели, описывающей область. Если модель не полна, то для описания области используются несколько моделей, дополняющих друг друга.
- определенность данных о решаемой задаче
Требования пользователя к результату задачи, решаемой с помощью поиска, можно определить количеством решений и свойствами результата и (или) способом его получения. Так, задача может иметь одно решение, несколько решений, все решения. Свойствами решения задают ограничения, которым должен удовлетворять полученный результат или способ его получения. Например, для системы, выдающей рекомендации ремонту машин, пользователь может указать требование не использовать детали некоторых производителей ценовой категории или свойств металлов. Параметр «свойства» может определять и такие особенности, как время, отведенное для решения, объем памяти, занимаемой для получения результата, указание об обязательности использования каких-либо знаний и т.п.
Сложность задачи, определяемой такими параметрами, варьируется от простых задач малой размерности с неизменяемыми определенными данными и отсутствием ограничений на результат со способом его получения до сложных задач большой размерности с изменяемыми, ошибочными и неполными данными и произвольными ограничениями на результат и способ его получения. Каким-либо одним методом нельзя решить все задачи. Обычно одни методы превосходят другие только по некоторым из перечисленных параметров.
Существующие методы решения задач, используемые в экспертных системах, можно классифицировать следующим образом:
- методы поиска в одном пространстве (область небольшой размерности, полнота модели, точные и полные данные)
- методы поиска в иерархических пространствах (областях большой размерности)
- методы поиска при неточных и неполных данных
- методы поиска, использующие несколько моделей
Эти методы при необходимости должны объединяться для того, чтобы позволить решать задачи, сложность которых возрастает одновременно по нескольким параметрам.
Приложения
Hayes-Roth делит приложения экспертных систем на 10 категорий, показанных в следующей таблице. Примеры приложений не входили в исходную таблицу Хейса-Рота, и некоторые из них возникли значительно позже. Любое приложение, не указанное в сносках, описано в книге Hayes-Roth. Кроме того, хотя эти категории обеспечивают интуитивно понятную структуру для описания пространства приложений экспертных систем, они не являются жесткими категориями, и в некоторых случаях приложение может отображать черты более чем одной категории.
Категория | Проблема решена | Примеры |
---|---|---|
Интерпретация | Вывод описания ситуаций из данных датчика | Hearsay (распознавание речи), ПРОСПЕКТОР |
Прогноз | Выявление вероятных последствий данной ситуации | Оценка риска преждевременных родов |
Диагностика | Вывод сбоев системы из наблюдаемых | Кадуцей, MYCIN , слоеное, Mistral, Eydenet, Kaleidos |
Дизайн | Настройка объектов с ограничениями |
Dendral , советник по ипотечным кредитам , R1 (конфигурация DEC VAX), SID ( процессор DEC VAX 9000 ) |
Планирование | Проектирование действий | Планирование миссии автономного подводного аппарата |
Мониторинг | Сравнение наблюдений для планирования уязвимостей | РЕАКТОР |
Отладка | Предоставление дополнительных решений сложных проблем | СВЯТОЙ, МАТЛАБ, МАКСИМА |
Ремонт | Выполнение плана по назначению назначенного лекарства | Управление кризисными ситуациями при разливе токсичных веществ |
Инструкция | Диагностика, оценка и корректировка поведения учащихся | SMH.PAL, Интеллектуальное клиническое обучение, STEAMER |
Контроль | Интерпретация, прогнозирование, восстановление и мониторинг поведения системы | Управление процессами в реальном времени, управление полетами космических шаттлов |
Hearsay был ранней попыткой решения проблемы распознавания голоса с помощью подхода экспертных систем. По большей части эта категория экспертных систем оказалась не такой уж успешной. Слухи и все системы интерпретации — это, по сути, системы распознавания образов, ищущие закономерности в зашумленных данных. В случае распознавания Hearsay фонем в аудиопотоке. Другими ранними примерами были анализ данных сонара для обнаружения российских подводных лодок. Такие системы оказались гораздо более податливыми для нейросетевого ИИ-решения, чем для подхода, основанного на правилах.
CADUCEUS и MYCIN были системами медицинской диагностики. Пользователь описывает свои симптомы компьютеру, как врачу, и компьютер возвращает медицинский диагноз.
Dendral был инструментом для изучения формирования гипотез при идентификации органических молекул. Решенная общая проблема — разработка решения с учетом ряда ограничений — была одной из наиболее успешных областей для ранних экспертных систем, применяемых в бизнес-областях, таких как продавцы, настраивающие компьютеры VAX корпорации Digital Equipment Corporation (DEC) и разработка приложений ипотечного кредита.
SMH.PAL — это экспертная система оценки студентов с множественной инвалидностью.
Mistral — это экспертная система для мониторинга безопасности плотин, разработанная в 1990-х годах компанией Ismes (Италия). Он получает данные от автоматической системы мониторинга и выполняет диагностику состояния плотины. Его первая копия, установленная в 1992 году на плотине Ридраколи (Италия), работает круглосуточно и без выходных . Он был установлен на нескольких плотинах в Италии и за рубежом (например, плотина Итайпу в Бразилии), а также на участках оползней под названием Эйденет и на памятниках под названием Калейдос. Mistral — зарегистрированная торговая марка CESI .
Этапы разработки ЭС
- Этап идентификации проблем — определяются задачи, которые подлежат решению, выявляются цели разработки, определяются эксперты и типы пользователей.
- Этап извлечения знаний — проводится содержательный анализ проблемной области, выявляются используемые понятия и их взаимосвязи, определяются методы решения задач.
- Этап структурирования знаний — выбираются ИС и определяются способы представления всех видов знаний, формализуются основные понятия, определяются способы интерпретации знаний, моделируется работа системы, оценивается адекватность целям системы зафиксированных понятий, методов решений, средств представления и манипулирования знаниями.
- Этап формализации — осуществляется наполнение экспертом базы знаний. В связи с тем, что основой ЭС являются знания, данный этап является наиболее важным и наиболее трудоёмким этапом разработки ЭС. Процесс приобретения знаний разделяют на извлечение знаний из эксперта, организацию знаний, обеспечивающую эффективную работу системы, и представление знаний в виде, понятном ЭС. Процесс приобретения знаний осуществляется инженером по знаниям на основе анализа деятельности эксперта по решению реальных задач.
- Реализация ЭС — создаётся один или несколько прототипов ЭС, решающие требуемые задачи.
- Этап тестирования — производится оценка выбранного способа представления знаний в ЭС в целом.
Кто и где использует МЭС
Кадр из фильма “Мстители” (The Avengers)/Marvel Studios, Paramount Pictures, Walt Disney Studios Motion Pictures
Первой разработкой экспертного ПО в медицине считается система MYCIN («Мицин»). Она была создана специалистами Стэнфордского университета в начале 70-хх для определения возбудителей тяжелых инфекционных болезней и расчета нужных доз антибиотиков. Эффективность программы оценивалась в 69% – в стольких случаях было назначено корректное лечение
Важно отметить, что этот показатель был даже выше, чем у врачей-инфекционистов, которые участвовали в исследовании. К сожалению, MYCIN не получил практического применения из-за несовершенства технологий того времени
Сейчас существует много примеров успешной разработки и использования МЭС в медицинской практике. Среди них можно выделить систему диагностики детских неотложных состояний «ДИН» (Московское НИИ педиатрии и детской хирургии), программу «АЙБОЛИТ» для выявления, типологии и уточнения терапии острых нарушений циркуляции крови у детей (Национальный медицинский исследовательский центр сердечно-сосудистой хирургии им. А.Н. Бакулева), систему определения ведущей патологии и сопутствующего лечения с удаленным мониторингом тяжелых пациентов «ДИНАР» (Санкт-Петербургский государственный педиатрический медицинский университет, Свердловская областная детская клиническая больница, при участии сотрудников Института биофизики УроРАН).
Экскурс в историю экспертных систем
История экспертных систем берет свое начало в 1965 году. Брюс Бучанан и Эдвард Фейгенбаум начали работу над созданием информационной системы для определения структуры химических соединений.
Результатом работы была система под названием Dendral. В основе системы формировалась последовательность правил подобных к «IF – THEN». Информационная система не перестала развиваться и получила множество наследников, таких как ONCOIN – информационная система для диагностики раковых заболеваний, MYCIN – информационная система для диагностики легочных инфекционных заболеваний.
Следующим этапом стали 70-е годы. Период не выделялся особыми разработками. Было создано множество разных прототипов системы Dendral. Примером служит система PROSPECTOR, областью деятельности которой являлась геологические ископаемые и их разведка.
В 80-ых годах появляются профессия – инженер по знаниям. Экспертные системы набирают популярность и выходят на новый этап эволюции интеллектуальных систем. Появились новые медицинские системы INTERNIS, CASNE.
С 90-ых годов развитие интеллектуальных систем приобретает новые и новые методы и особенности. Нововведением становится парадигма проектирования эффективных и перспективных систем. Гибкость, четкость решения поставленных задач дало новое название – мультиагентных систем. Агент – фоновый процесс который действует в целях пользователя. Каждый агент имеет свою цель, «разум» и отвечает за свою область деятельности. Все агенты в совокупности образуют некий интеллект. Агенты вступают в конкуренцию, настраивают отношения, кооперируются, все как у людей.
В 21 век, интеллектуальной системой уже не удивишь никого. Множество фирм внедряет экспертные системы в области своей деятельности.
Быстродействующая система OMEGAMON разрабатывается c 2004 года с IBM, цель которой отслеживание состояния корпоративной информационной сети. Служит для моментального принятия решений в критических или неблагоприятных ситуациях.
G2 – экспертная система от фирмы Gensym, направленная на работу с динамическими объектами. Особенность этой системы состоит в том, что в нее внедрили распараллеливание процессов мышления, что делает ее быстрее и эффективней.
Постановка диагноза при помощи МЭС
Кадр из фильма “РобоКоп” (RoboCop)/Columbia Pictures MGM Strike Entertainment
Для того чтобы понять, как происходит постановка диагноза с помощью экспертной системы, попробуем разобрать принцип ее проектирования. Возьмем программу, задача которой состоит в определении риска развития заболевания.
Сначала выполняется сбор вводной информации об известных факторах, которые могут влиять на появление болезни, и их значимости. Это можно сделать, например, при помощи анкетирования пациентов с подтвержденным диагнозом, а также группы людей, у которых точно отсутствует рассматриваемая патология – в качестве контрольной группы. Далее методами многомерного анализа процедуру принятия решения по имеющимся исходным данным раскладывают на составляющие, воспроизводя аналитический процесс врача-эксперта. На выходе получают некий набор признаков болезни (и ее отсутствия) и правил распределения пациентов между группами «риск» и «норма». Алгоритм тестируется на новой выборке и корректируется при выявлении ошибок. Итоговый набор правил вносится в базу знаний ЭС.
Кадр из фильма “Мой друг робот” (Robbi, Tobbi und das Fliewatüüt)/StudioCanal
На приеме врач собирает анамнез (исходные данные) и вводит его в систему, используя персональный компьютер. Это может происходить в режиме диалога с программой (вопрос-ответ) или выглядеть как заполнение определенной формы-опросника, которая структурирует информацию для ЭС. Эти сведения попадают в рабочую память. Далее ЭС «прогоняет» их через логические правила, которые заложены в ее базу знаний, выдает ответ, с пояснением, как программа пришла к такому заключению. Пояснение может быть представлено как в графической, так и в письменной форме. Достоверность суждения экспертной системы выражается коэффициентом уверенности (K) – числовой характеристикой ложности или справедливости вывода. «K» находится в диапазоне от 1 до 0. Заключение ЭС может выглядеть следующим образом: «Пациент с низкой степенью уверенности (К=0,344) отнесен к группе риска по развитию атеросклероза». Или: «Пациент с высокой степенью уверенности (К=0,943) отнесен к группе риска по развитию атеросклероза. Рекомендовано УЗИ сердца».
Кадр из фильма “Мой друг робот” (Robbi, Tobbi und das Fliewatüüt)/StudioCanal
По результатам назначенного исследования база знаний ЭС может быть дополнена новыми данными, которые будут использованы при диагностике следующих пациентов. Это происходит за счет компонента обучения. Чем объемнее база знаний системы, тем статистически более точными будут ее прогнозы, при условии достаточного технического обеспечения для обработки информационного массива.
Медицинская экспертная система способна оказать необходимую поддержку как узким специалистам, так и врачам общей практики или младшему медперсоналу. Профильные доктора могут использовать программу в качестве второго мнения, участковые и фельдшеры – как коллегу-эксперта. Это будет оправдано, например, в удаленных регионах, где не хватает квалифицированных кадров.
Эволюция и внедрение экспертных систем непрерывно связаны с развитием технологий и смежных специальностей – программирование, инженерия знаний. Поэтому, возможно, в ближайшем будущем интеллектуальные системы в медицине и других практических областях будут применяться еще активнее.
Читайте еще: «Практика разработки и внедрения системы менеджмента качества в медицинской организации»
Требования по созданию
Чтобы разработка ЭС была возможной для конкретного приложения, минимально необходимо одновременное выполнение следующих требований:
- существуют эксперты в данной области, которые решают задачу значительно лучше, чем начинающие специалисты
- эксперты сходятся в оценке предлагаемого решения, иначе нельзя будет оценить качество разработанной ЭС
- эксперты способны объяснить используемые ими в системе методы, иначе знания экспертов будет сложно внести в ЭС
- решение задачи требует только рассуждений, а не действий
- задача не должна быть слишком трудной (т.е. ее решение должно занимать у эксперта несколько часов или дней, не более)
- задача должна относиться к достаточно «понятной» и структурированной области, т.е. должны быть выделены основные понятия, отношения и известные алгоритмы решения задачи
- решение задачи не должно в значительной степени использовать абстрактное мышление
Классификация экспертных систем
Кадр из анимационного фильма «ВАЛЛ‑И» (WALL‑E)/Walt Disney Studios Motion Pictures, Pixar Animation Studios
Хотя утвержденного разделения ЭС на классы не существует, можно выделить несколько общих категорий, которые описывают их функциональные особенности и область применения.
В зависимости от профиля решаемых задач, ЭС бывают:
- диагностические
- мониторинговые
- проектные
- прогностические
- планирующие
- обучающие
- интерпретирующие
- поддерживающие принятие решения
Также различают системы с традиционным и гибридным методами представления знаний. В первом случае ЭС руководствуется эмпирическими (опытными) моделями и логическими операциями первого порядка, где переменными являются предметы без их признаков и отношений между ними. Гибридные программы используют сразу несколько моделей мышления предметной области.
Еще экспертные системы делят по динамичности или по связи с реальным временем. Они могут быть статическими, динамическими или квазидинамическими, в зависимости от постоянства исходных данных, которые использует система. В квазидинамических ЭС изменения происходят интервально. Медицинские экспертные системы относятся к динамическому типу.