
- •Основы экспертных систем.
- •1 Введение в экспертные системы
- •1.1 Основные понятия
- •1.2 Проектирование экспертных систем
- •1.3 Типы решаемых задач
- •1.4 Инструментальные средства разработки экспертных систем
- •1.5 Нечёткие знания в экспертных системах
- •2 Введение в нейронные сети
- •2.1 Основные свойства нейронных сетей
- •2.2 Биологические основы нейронных сетей
- •2.3 Модель МакКаллока - Питса
- •2.4 Персептрон
- •2.5 Сигмоидальный нейрон
- •2.6 Нейрон типа wta
- •2.7 Функции активации нейронов
- •3 Многослойный персептрон
- •3.1 Структура многослойного персептрона
- •3.2 Структура двухслойной сигмоидальной нейронной сети
- •3.3 Градиентные методы обучения многослойного персептрона
- •3.4.1 Основные положения градиентных алгоритмов обучения сети
- •3.4.2 Подбор коэффициента обучения
- •3.4.3 Алгоритм обратного распространения ошибки
- •3.4.4 Алгоритм наискорейшего спуска
- •3.4.5 Алгоритм Левенберга-Марквардта
- •3.4 Эвристические алгоритмы обучения многослойного персептрона
- •3.4.1 Алгоритм rprop.
- •Алгоритм Quickprop
- •3.5 Алгоритмы глобальной оптимизации
- •3.5.1 Алгоритм имитации отжига
- •3.6 Проектирование архитектуры многослойного персептрона
- •3.7 Подбор оптимальной архитектуры
- •4 Радиальные сети
- •4.1 Математическое обоснование радиально-базисных сетей
- •4.2 Структура радиально-базисной сети
- •4.3 Основные алгоритмы обучения радиальных сетей
- •4.3.1. Алгоритм самоорганизации для уточнения параметров радиальных функций
- •4.3.2. Применение метода обратного распространения ошибки для радиально-базисных сетей
- •4.3.3. Гибридный алгоритм обучения радиальных сетей
- •4.4 Структура гипер радиально-базисной сети
- •4.5 Основные алгоритмы обучения гипер радиально-базисных сетей
- •4.5.1. Применение метода обратного распространения ошибки для гипер радиально-базисных сетей
- •4.6 Методы подбора числа базисных функций
- •4.7 Метод ортогонализации Грэма-Шмидта
- •4.8 Сравнение радиально-базисной сети и многослойного персептрона
- •5 Сети с самоорганизацией на основе конкуренции
- •5.1 Сеть Кохонена
- •5.2 Меры расстояния между векторами и нормализация векторов
- •5.3 Проблема мертвых нейронов
- •5.4 Алгоритмы обучения без учителя
- •5.4.1. Алгоритм wta
- •5.4.2. Алгоритм Кохонена
- •5.4.3 Алгоритм нейронного газа
- •6 Рекуррентные сети
- •6.1 Общие положения
- •6.2 Сеть Хопфилда
- •6.3 Сеть Хемминга
- •6.4 Рекуррентная сеть Эльмана
- •6.5 Алгоритм обучения рекуррентной сети Эльмана
- •7 Сеть Вольтерри
- •7.1 Структура сети Вольтерри
- •8 Нейронные сети с нечёткой логикой
- •8.1 Основные понятия и определения теории нечётких множеств
- •8.2 Операции на нечётких множествах
- •8.3 Треугольные нормы
- •8.4 Нечёткий вывод
- •8.5 Меры нечёткости нечётких множеств
- •8.6 Система нечёткого вывода Мамдани-Заде
- •8.7 Фуззификатор
- •8.8 Дефуззификатор
- •8.9 Модель вывода Такаги-Сугено-Канга
- •8.10 Модель вывода Цукамото
- •8.11 Нечёткая сеть tsk
- •8.12 Гибридный алгоритм обучения нечеткой сети tsk
- •8.13 Алгоритм обратного распространения ошибки для сети tsk
- •8.14 Модификация структуры с несколькими выходами
- •8.15 Нечеткая нейронная сеть Ванга-Менделя
- •8.16 Адаптивный алгоритм обучения нечёткой сети Ванга- Менделя
- •8.17 Использование комбинированных правил вывода
- •8.18 Обучение нечётких нейронных сетей
- •8.19 Гибридный нечёткий многослойный персептрон
- •8.20 Алгоритм нечёткой самоорганизации c-means
- •8.21 Алгоритм разностного группирования
- •8.22 Сети, основанные на модели нечёткого вывода Цукамото
- •8.23 Нейронные нечёткие сети на основе нечётких нейронов
- •8.24 Гибридный нейронечёткий классификатор
- •8.25 Алгортм обучения гибридного нейронечёткого классификатора
- •8.26 Гибридные нейронные нечёткие сети для извлечения нечётких правил из данных
- •Список используемых источников
Основы экспертных систем.
1 Введение в экспертные системы
1.1 Основные понятия
Экспертные системы (ЭС) как самостоятельное направление в искусственном интеллекте (ИИ) сформировалось в конце 1970-х годов. История ЭС началась с сообщения японского комитета по разработке ЭВМ пятого поколения, в котором основное внимание уделялось развитию «интеллектуальных способностей» компьютеров с тем, чтобы они могли оперировать не только данными, но и знаниями.
Область исследования ЭС называется инженерией знаний. Этот термин был введён Е. Фейгенбаумом и в его трактовке означает «привнесение принципов и инструментария из области искусственного интеллекта в решение трудных прикладных проблем, требующих знаний экспертов. Не каждую систему, основанную на знаниях, можно рассматривать как экспертную. Экспертная система должна быть способна в определённой степени объяснять своё поведение и свои решения пользователю [1].
Таким образом, экспертные системы предназначены для решения неформализованных задач, то есть задач, решаемых с помощью неточных знаний, которые являются результатом обобщения многолетнего опыта работы и интуиции специалистов.
Неформализованные знания обычно представляют собой эвристические приемы и правила. ЭС обладают следующими особенностями (всеми сразу или частично) [2]:
задачи не могут быть представлены в числовой форме;
исходные данные и знания о предметной области обладают неоднозначностью, неточностью, противоречивостью;
цели нельзя выразить с помощью чётко определённой целевой функции;
не существует однозначного алгоритмического решения задачи;
алгоритмическое решение существует, но его нельзя использовать по причине большой размерности пространства решений и ограничений на ресурсы.
ЭС охватывают самые разные предметные области, среди которых преобладают медицина, бизнес, производство, проектирование и системы управления.
Для классификации ЭС используются следующие признаки:
способ формирования решения;
способ учёта временного признака;
вид используемых данных и знаний;
число используемых источников знаний.
По способу формирования решения ЭС можно разделить на анализирующие и синтезирующие. В системах первого типа осуществляется выбор решения из множества известных решений на основе анализа знаний, в системах второго типа решение синтезируется из отдельных фрагментов знаний.
В зависимости от способа учёта временного признака ЭС делятся на статические и динамические. Статические ЭС предназначены для решения задач с неизменяемыми в процессе решения данными и знаниями, а динамические ЭС допускают такие изменения.
По видам используемых данных и знаний различают ЭС с детерминированными и неопределёнными знаниями. Под неопределённостью знаний понимаются их неполнота, ненадёжность, нечёткость.
ЭС могут создаваться с использованием одного или нескольких источников знаний.
В соответствии с перечисленными признаками можно выделить четыре основных класса ЭС: классифицирующие, доопределяющие, трансформирующие и мультиагентные [2].
Классифицирующие ЭС решают задачи распознавания ситуаций. Основным методом формирования решений в них является дедуктивный логический вывод.
Доопределяющие ЭС используются для решения задач с не полностью определенными данными и знаниями. В таких ЭС возникают задачи интерпретации нечётких знаний и выбора альтернативных направлений поиска в пространстве возможных решений. В качестве методов обработки неопределенных знаний могут использоваться байесовский вероятностный подход, коэффициенты уверенности, нечеткая логика.
Трансформирующие ЭС относятся к синтезирующим динамическим ЭС, которые реализуют повторяющееся преобразование знаний в процессе решения задачи. В ЭС данного класса используются различные способы обработки знаний:
генерация и проверка гипотез;
логика предположений и умолчаний;
использование метазнаний для устранения неопределенности в ситуациях.
Мультиагентные системы – это динамические ЭС, основанные на интеграции разнородных источников знаний, которые обмениваются между собой полученными результатами в процессе решения задач. Системы данного класса имеют следующие возможности:
реализация альтернативных рассуждений на основе использования различных источников знаний и механизма устранения противоречий;
распределённое решение задач, разделяемых на параллельно решаемые подзадачи с самостоятельными источниками знаний;
применение различных стратегий вывода заключений в зависимости от типа решаемой задачи;
обработка больших массивов информации из базы данных (БД);
использование математических моделей и внешних процедур для имитации развития ситуаций.
Для формирования полноценной ЭС необходимо, как правило, реализовать в ней следующие функции:
функции решения задач, позволяющие использовать специальные знания в проблемной области (при этом может потребоваться обеспечить работу в условиях неопределённости или неполноты или недостоверности знаний);
функции взаимодействия с пользователем, которые, в частности, позволяют объяснить намерения и выводы системы в процессе решения задачи и по завершении этого процесса.