Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Нейросетевые технологии / АСУ Скобцов Искусственные нейронные сети лекции.doc
Источник:
Скачиваний:
302
Добавлен:
03.03.2016
Размер:
2.16 Mб
Скачать

1.3.2 Многослойные сети

Переход к многослойным сетям обеспечивает решение более сложных задач. Доказано, что двухслойная нейронная сеть, в первом слое которой нейроны имеют сигмоидную активационную функцию (рис.3в), а во втором линейную активационную функцию, может апроксимировать с заданной точностью любую функцию многих переменных и соответственно построить любую разделяющую поверхность [2-3]. Таким образом многослойная НС прямого распространения является универсальным апроксиматором, что фактически и обуславливает ее широкое применение. К сожалению этот результат относится к классу теорем существования, которые не дают конструктивного метода синтеза и обучения НС. Отсутствие формально обоснованного метода обучения для многослойных НС долгое время сдерживало развитие теории НС и их практическое применение. Наконец в 1986 г. был открыт (фактически переоткрыт) метод обучения многослойных НС, получивший название “метод обратного распространения ошибки” (back propagation errror), после чего начался новый период интенсивной работы в области теории и практики НС.

Нейросети отличаются от классических вычислительных систем (в том числе и параллельных) тем, что для решения задач в них используются не заранее разработанные алгоритмы, а специально подобранные примеры – обучающие выборки, на которых они учатся. Для этого применяются различные методы обучения, которые наряду с самими НС являются важнейшей компонентой. Естественно для различных типов НС используются разные методы обучения. Обучение НС фактически сводится к поиску некоторых ее параметров, при которых сеть реализует на своих выходах требуемые функции (от входных значений). При этом возможно:

- изменение топологии сети путем образования или удаления связей между нейронами;

- изменение синаптических коэффициентов (весов) связей между нейронами;

- изменение характеристик составляющих НС нейронов (параметров и типа активационных функций).

Чаще всего структура НС выбирается “вручную” (хотя в некоторых программных пакетах это реализовано с помощью генетических алгоритмов) и обучение сводится к поиску синаптических коэффициентов Wij. Прежде всего, различают обучение «с учителем» и «обучение без учителя».

Метод обратного распространения ошибки.

Обучение с учителем применяется, в основном, для сетей с прямыми связями. На этапе обучения происходит вычисление синаптических коэффициентов на основе примеров (пара вход-выход), сгруппированных в обучающее множество. Такое множество состоит из ряда примеров (образцов) – обучающей выборки, с указанием для каждого из них значений выходов нейронной сети, которые было бы желательно получить. Этот процесс называется обучением с учителем. При этом учитель подает на вход сети вектор входных значений X, и для каждого выхода сообщает желаемое значение. Такое обучение можно рассматривать как решение оптимизационной задачи. Её целью является минимизация функции ошибки (или невязки)Ена обучающем множестве путем выбора значений весовW. Часто в качестве меры погрешности берется квадратичная ошибка, которая определяется по формуле

, , (2)

где - требуемое (желаемое) значение выходаpнаj-м образце выборки;

- реальное значение выхода pнаj-м образце выборки при текущих значениях синаптических коэффициентов.

При минимизации ошибки Eчаще всего используются следующие основные подходы: 1) градиентные методы; 2) стохастические методы; 3) генетические алгоритмы.

В градиентных методах, как правило, находится градиент ошибки Едля всего обучающего множества, и весаWпересчитываются каждый раз после обработки всей совокупности обучающих примеров. Изменение весов происходит, как обычно, в направлении, обратном к направлению наибольшей крутизны функции ошибки. Подстройка весовых коэффициентов при этом выполняется следующим образом:

, (3)

, (4)

где - коэффициент обучения,Wij– весовой коэффициент синаптической связи, соединяющийi-тый нейрон слоя (n-1) сj-тым нейроном слояn. Как видно из (4), решающую роль при коррекции играет частная производная , поэтому разработаны структурные методы её вычисления. Наиболее популярным является алгоритм обратного распространения (backpropagation), суть которого в следующем.

    1. Случайно инициализировать вектор синаптических весов W;

    2. Подать на входы сети один из образов обучающего множества Xи в режиме обычного функционирования нейросети, когда сигналы распространяются от входов к выходам, рассчитать значения выходов всех нейронов;

    3. Для каждого нейрона выходного слоя рассчитать рассогласование сигналов по формуле

; (5)

    1. Для остальных нейронов (кроме выходного слоя) рассчитать обобщенное рассогласование согласно следующей формуле

, (6)

где - ”обобщенное” рассогласование нейронов – последователей j-го нейрона следующего слоя;

5. Найти корректирующее приращение для каждой связи

и скорректировать все веса в сети по формуле:

. (7)

6. Повторять шаги 2-4 для всех образцов обучающего множества, пока ошибка Ене достигнет приемлемого уровня.

Из приведенного алгоритма видно, что для каждого образа (элемента) обучающей выборки сначала выполняется “прямой проход”, в котором от входов к выходам сети вычисляются значения выходов всех нейронов. Затем выполняется “обратное распространение” рассогласования (невязки)между требуемыми и реальными текущими значениями сигналов от выходов к входам сети. Рассмотренный метод является детерминистким, в котором на каждой итерации синаптические веса корректируются по определенному алгоритму, основанному на сравнении требуемых и фактических сигналов. Основным недостатком градиентных методов является возможность сходимости в локальные экстремумы. Существенным ограничением является также требование дифференцируемости оптимизируемых функций. Поэтому для этих методов обычно используются обычно логистические (или тангенциальные) активационные функции.

Стохастические методы обучения минимизируют ошибку на основе псевдослучайного изменения синаптических весов с сохранением тех значений, которые ведут к уменьшению ошибки. Коррекции весов выполняется в соответствии с некоторой вероятностной функцией. Следует отметить, что даже изменения, ведущие к увеличению ошибки имеют (небольшую) вероятность быть сохраненными согласно методу “моделирования отжига”. Это позволяет решить проблему сходимости к локальным экстремумам (ценой увеличения времени обучения). Подобное обучение применяется в сетях, называемых машинами Больцмана и Коши.

В последнее время при обучении (и даже синтезе архитектуры сети) все чаще используются генетические алгоритмы. В этом случае практически нет ограничений на вид оптимизируемой функции, поскольку в процессе оптимизации используется сама функция, а не ее производная, что расширяет возможности обучения.