- •Введение
- •1. Искусственный интеллект в роботах
- •1.1. Обеспечение взаимодействия системы управления с человеком
- •1.2. Схема интеллектуального управления в робототехнических комплексах
- •1.3. Интеллектуальное программирование и интеллектуальный интерфейс
- •1.4. Организация интеллектуальных систем
- •2. Экспертные системы
- •2.1. Структура экспертных систем
- •2.2. Технология разработки экспертных систем
- •2.3. Механизм вывода в экспертных системах
- •2.4. Методы поиска решений в экспертных системах
- •2.5. Поиск в одном пространстве состояний
- •2.6. Поиск решения методом редукции
- •2.7. Поиск решения во множестве факторизованных пространств
- •2.8. Поиск в фиксированном множестве пространств
- •2.9. Поиск в изменяющемся множестве пространств (метод нисходящего уточнения)
- •2.10. Поиск в альтернативных пространствах
- •2.11. Поиск с использованием нескольких моделей
- •3. Представление знаний в системах
- •3.1. Продукционные системы
- •3.2. Системы поиска на основе классической логики
- •3.3. Использование логики предикатов первого порядка при представлении знаний
- •3.4. Использование фреймов при представлении данных
- •3.5. Семантические сети
- •4. Нейронные сети в системах искусственного интеллекта
- •4.1. Области применения нейронных сетей
- •4.2. Персептронные нейронные сети
- •4.3. Обучение персептронных сетей
- •4.4. Сети встречного распространения
- •4.5. Обучение нейронных сетей методом обратного распространения ошибки
- •4.6. Обучение без учителя
- •4.7. Сети без обучения
- •4.8. Нейронные сети с радиальными базисными функциями (вероятностные сети)
- •4.9. Коллективы нейронных сетей
- •4.10. Аппаратно-программные средства реализации нейронных сетей для задач робототехники
- •2. Использование сетей для распознавания речи
- •3. Использование сетей для формирования законов управления
- •5. Методы нечеткой логики в интеллектуальных системах
- •5.1. Логические операции над нечеткими множествами
- •5.2. Получение выводов в нечеткой логике
- •5.3. Алгоритмы поиска решения в нечеткой логике
- •Заключение
- •Библиографический список
- •394026 Воронеж, Московский просп., 14
4.5. Обучение нейронных сетей методом обратного распространения ошибки
Данный метод применяется для обучения сетей с учителем, если сеть представляет собой многослойную конструкцию прямого распространения /3/.
На рис.19 изображен фрагмент нейронной сети, взятой из произвольной ее области. Выходы нейронов слоя (n-1) – yi. Веса связей слоя (n-1) с слоем n Wij. Для слоя n выходы обозначаются yj, веса связей со слоем n+1 Wjk и т. д. для всех последующих слоев.
n-1 n n+1
Wij 1 Wjk 1
i yi yj yk
j . k . .
. . .
. . .
m p
Рис. 19. Обучение сети методом обратного распространения ошибки
Обучение сети осуществляется по образцам. Для каждого образца устанавливается определенное выходное состояние сети (эталон). Эталонный образец характеризуется набором значений состояний de выходного слоя N.
43
Обучение сети состоит в минимизации ошибки выходного слоя. В качестве ошибки обычно используется среднеквадратическая оценка. В этом случае функция ошибки имеет вид:
(1)
Задача обучения сети – подбор таких значений весов связей, при которых ошибка Е минимальна. Для этого условия величина корректировки отдельного веса представляется как:
(2)
где α – коэффициент скорости обучения.
Преобразуем значение производной:
(3)
Представим производную ошибки через состояние нейронов слоя n+1:
(4)
Введем обозначение:
С использованием этого обозначения можем записать:
(5)
44
Записанное выражение получается из выражения (4), если его правую и левую часть умножить на . Тогда в левой части получается выражение для приведенной погрешности нейрона j слоя n. В правой части получается сумма произведений приведенной погрешности нейронов k слоя (n+1), умноженную на производную функции активации нейрона j по S.
В итоге выражение (2) приводится к виду:
(6)
Для выходного слоя выражение будет иметь вид:
(7)
Это выражение получается прямым дифференцированием выражения (1) для ошибки E .
В соответствии с приведенными выражениями алгоритм обучения сети реализуется в следующей последовательности:
Сеть инициализируется заданием некоторых случайных значений весам всех связей.
Вычисляется значение выходов сети прямым распространением.
Определяется значения N для нейронов выходного слоя.
Вычисляются значения и для слоя, находящегося перед выходным. Далее эта операция проводится последовательно по всем слоям до входного включительно.
Вычисляется новое значение выходов сети и определяется ошибка выходного слоя, после чего выполняется новая итерация по корректировке весов. Обучение проводится до тех пор, пока значение ошибки не застабилизируется.
45