- •Интеллектуальные средства измерений
- •Часть I Нейрокомпьютерные сети
- •1 Теоретические основы нейронных сетей
- •1.1 Обзор основных свойств и функций нейронных сетей
- •1.1.1 Свойства искусственных нейронных сетей
- •1.1.2 Обучение нейронных сетей
- •1.1.3 Обобщение
- •1.1.4 Абстрагирование
- •1.2 Терминология, обозначения и схематическое изображение искусственных нейронных сетей
- •1.3 Структура нейроных сетей
- •1.1.5 Применимость
- •1.4 Обучение искусственных нейронных сетей
- •1.4.1 Обзор основных свойств обучения
- •1.4.1.1 Цель обучения
- •1.4.1.2 Обучение с учителем
- •1.4.1.3 Обучение без учителя
- •1.4.1.4 Алгоритмы обучения
- •1.4.2 Процедура обратного распространения
- •1.4.2.1 Сетевые конфигурации
- •1.4.2.2 Многослойная сеть
- •1.4.2.3 Проход вперед
- •1.4.2.4 Обратный проход. Подстройка весов выходного слоя
- •1.4.2.5 Подстройка весов скрытого слоя
- •1.4.2.6 Добавление нейронного смещения
- •1.4.2.7 Импульс
- •1.4.2.8 Паралич сети
- •1.4.2.9 Локальные минимумы
- •1.4.2.10 Размер шага
- •1.4.2.11 Временная неустойчивость
- •1.4.3 Сети встречного распространения
- •1.4.3.1 Структура сети
- •1.4.3.2 Нормальное функционирование
- •1.4.3.2.1 Слои Кохоненна
- •1.4.3.2.2 Слой Гроссберга
- •1.4.3.3 Обучение слоя Кохонена
- •1.4.3.3.1 Предварительная обработка входных векторов
- •1.4.3.3.2 Выбор начальных значений весовых векторов
- •1.4.3.3.3 Режим интерполяции
- •1.4.3.3.4 Статистические свойства обученной сети
- •1.4.3.3 Обучение слоя Гроссберга
- •1.4.3.4 Сеть встречного распространения полностью
- •1.4.4 Стохастические методы
- •1.4.4.1 Использование обучения
- •1.4.4.2 Больцмановское обучение
- •1.4.5 Сети Хопфилда
- •1.4.5.1 Бинарные системы
- •1.4.5.2 Устойчивость
- •1.4.5.3 Ассоциативная память
- •1.4.5.4 Обобщенные сети
1.4.2.2 Многослойная сеть
На рисунке 12 изображена многослойная сеть, которая может обучаться с помощью процедуры обратного распространения.Первый слой нейронов (соединенный с входами) служит лишь в качестве распределительных точек, суммирования входов здесь не производится. Входной сигнал просто проходит через них к весам на их выходах. А каждый нейрон последующих слоев выдает сигналы NET и OUT, как описано выше.
Рисунок 12 - Двухслойная сеть обратного распространения
В литературе нет единообразия относительно того, как считать число слоев в таких сетях. Одни авторы используют число слоев нейронов (включая входной слой), другие – число слоев весов. Так как последнее определение функционально описательное, то оно и будет использоваться дале. Согласно этому определению, сеть на рисунке 12 рассматривается как двухслойная. Нейрон объединен с множеством весов, присоединенных к его входу. Таким образом, веса первого слоя оканчиваются на нейронах первого слоя. Вход распределительного слоя считается нулевым слоем.
Процедура обратного распространения применима к сетям с любым числом слоев. Однако для того, чтобы продемонстрировать алгоритм, достаточно двух слоев. Сейчас будут рассматриваться лишь сети прямого действия, хотя обратное распространение применимо и к сетям с обратными связями.
Обучение сети обратного распространения требует выполнения следующих операций:
выбрать очередную обучающую пару из обучающего множества; подать входной вектор на вход сети;
вычислить выход сети;
вычислить разность между выходом сети и требуемым выходом (целевым вектором обучающей пары);
подкорректировать веса сети так, чтобы минимизировать ошибку;
повторять шаги с 1 по 4 для каждого вектора обучающего множества до тех пор, пока ошибка на всем множестве не достигнет приемлемого уровня.
Операции, выполняемые шагами 1 и 2, сходны с теми, которые выполняются при функционировании уже обученной сети, т.е. подается входной вектор и вычисляется получающийся выход. Вычисления выполняются послойно. На рисунке 12 сначала вычисляются выходы нейронов слоя j, затем они используются в качестве входов слоя k, вычисляются выходы нейронов слоя k, которые и образуют выходной вектор сети.
На шаге 3 каждый из выходов сети, которые на рисунке 12 обозначены OUT, вычитается из соответствующей компоненты целевого вектора, чтобы получить ошибку. Эта ошибка используется на шаге 4 для коррекции весов сети, причем знак и величина изменений весов определяются алгоритмом обучения .
После достаточного числа повторений этих четырех шагов разность между действительными выходами и целевыми выходами должна уменьшиться до приемлемой величины, при этом говорят, что сеть обучилась. Теперь сеть используется для распознавания и веса не изменяются.
На шаги 1 и 2 можно смотреть как на «проход вперед», так как сигнал распространяется по сети от входа к выходу. Шаги 3, 4 составляют «обратный проход», здесь вычисляемый сигнал ошибки распространяется обратно по сети и используется для подстройки весов. Рассмотрим каждый из этапов обучения более подробно.
