Хайкин С. - Нейронные сети (778923), страница 64
Текст из файла (страница 64)
115) На основе идеи предиката в (1050) предложен эмпирический алгоритм обучения многослойного персептрона вычислению функции четности на основе метода обратного распространения. Функция четности (рагйу бзпсг(оп) является булевым предикатом, определяемым выражением ) 1, если ~Х~ — четное число, '1 0 — в остальных случаях, (4.116) порядок которого равен количеству входов. Эксперименты показали, что время, необходимое сети для обучения вычислению функции четности, растет экспоненциально в зависимости от количества входов (т.е.
порядка предиката) и что планы использования алгоритма обратного распространения для обучения произвольным сложным функциям чересчур оптимистичны. Общеизвестно, что для многослойного персептрона нежелательно, чтобы сеть была полносвязной. В этом контексте можно поставить следующий вопрос как лучше разместить сннаптические связи сети неполносвязного многослойного персептрона? Этот вопрос не играет особой роли в небольших приложениях, но является жизненно важным при решении масштабных реальных задач на основе обучения методом обратного распространения. Одним из эффективных методов ослабления проблемы масштабирования является взгляд в корень задачи (нногда с помощью аналогий из области нейробиологии) и внесение в архитектуру многослойного персептрона правдоподобных конструктивных решений.
В частности, архитектура сети и ограничения, реализуемые синаптическими весами, должны задаваться с учетом априорной информации об объекте моделирования. Эта стратегия описывается в разделе 4.19 на примере решения задачи оптического распознавания символов. 4.17. Ускорение сходимости процесса обучения методом обратною распространения 316 4.17. Ускорение сходимости процесса обучения методом обратного распространения В предыдущих разделах описывались основные причины, вызывающие низкую скорость сходимости алгоритма обратного распространения. В этом разделе будут предложены некоторые эвристические наработки, которые позволяют ускорить сходимость алгоритма с помощью настройки параметра скорости обучения.
Приведем зти эвристики [505). Эвристика 1. Любой настраиваемый параметр сети, входящий в функцию стоимости, должен иметь свое значение коэффициента скорости обучения. Отсюда можно заключить, что алгоритм обратного распространения может иметь низкую скорость сходимости из-за того, что фиксированный параметр скорости обучения подходит ие для всех областей поверхности ошибок. Другими словами, если параметр интенсивности обучения подходит для корректировки одного сииаптического веса, то это совсем ие означает, что ои подойдет для настройки другого. Эвристика 1 учитывает этот факт и предлагает назначать каждому настраиваемому сииаптическому весу (параметру) сети отдельное значение коэффициента скорости обучения.
Эвристика 2. Любой параметр скорости обучения должен варьироваться для различных итераций. Поверхность ошибок в разных областях имеет разную динамику даже в направлении одного весового коэффициента. Для того чтобы учесть эти изменения, согласно эвристике 2, параметры обучения должны варьироваться иа разных итерациях. Интересно, что эта эвристика хорошо обоснована для случая линейных процессорных элементов 1684). Эвристика 3.
Если производная функции стоимости по отдельному сииаптическому весу иа нескольких последовательных итерациях имеет один и тот же знак, то значение параметра скорости обучения для данного веса должно увеличиваться. Текущая точка в пространстве весов может лежать иа относительно пологом участке вдоль некоторого направления весовых коэффициентов. Это, в свою очередь, может отразиться иа производной функции стоимости (т.е.
иа градиенте поверхности ошибки)по данному направлению, которая в течение нескольких последовательных итераций будет иметь один и тот же алгебраический знак и, таким образом, указывать иа одно и то же направление. Эвристика 3 утверждает, что в такой ситуации количество итераций, необходимое для прохождения пологой части поверхности ошибок, может быть уменьшено за счет соответствующего увеличения значения параметра скорости обучения.
Эвристика 4. Если производная функции стоимости по отдельному синаптическому весу иа нескольких последовательных итерациях имеет разные знаки, то значение параметра скорости обучения для данного веса лолжно уменьшаться. Зт6 Глава 4. Многослойный персептрон Текущая точка в пространстве весов может лежать на участке поверхности ошибок, содержащем множество выпуклостей и впадин (т.е. на достаточно искривленном участке), что может привести к изменению знака производной по некоторому весу на последовательных итерациях. Согласно эвристике 4, во избежание осцилляции параметр скорости обучения для данного веса следует уменьшить. Естественно, введение зависимости параметра обучения от времени и конкретного синаптического веса, следующее из этих эвристик, приводит к фундаментальному изменению апгоритма обратного распространения.
В частности, модифицированный таким образом алгоритм уже не будет осуществлять поиск методом наискорейшего спуска. Корректировка конкретных синаптических весов будет основываться на частных производных поверхности ошибок по конкретным весам и на оценке кривизны поверхности ошибок в текущей точке относительно конкретных измерений пространства весов. Более того, все четыре эвристики удовлетворяют ограничению локальности, являющемуся встроенной характеристикой алгоритма обратного распространения. К сожалению, наличие ограничения локальности сужает область применения этих эвристик, так как могут существовать такие поверхности, где они просто не будут работать.
Тем не менее модификации алгоритма обратного распространения, разработанные в соответствии с этими эвристиками, имеют большое практическое значение' . 4.18. Обучение с учителем как задача оптимизации В этом разделе обучение с учителем рассматривается с позиций, в корне отличающихся от точки зрения, изложенной во всех предыдущих разделах.
В частности, обучение с учителем многослойного персептрона будет рассмотрено как задача численной оптимизации (пшпепса! оргишх[пд). В этом контексте в первую очередь следует отметить, что поверхность ошибок многослойного персептрона является в высшей степени нелинейной функцией, зависящей от вектора синаптических весов и'.
Пусть Е,„(и ) — функция стоимости, усредненная на множестве примеров обучения. Используя ряд Тейлора, функцию Е„(зг) можно экстраполировать в окрестности текущей точки на поверхности ошибок зу(л), например в соответствии с выражением (4.100). 'а Модификация алгоритма обратного распространения, основанная на эвристиках 1-4, получила название правила обучения оегга-Ьагкуегга [505Р Реализация этого правила обучения может быть упрощена с помошью идеи, аналогичной методу повторного использования градиента (йгыйепг геоле шлягера) [439), [496р В [925) описана процедура динамической самоалаптации для ускорения процесса обучения методом обратного распространения.
В этой процедуре реализована следующая идея; значение коэффициента скорости обучения для предыдушего шага немного уменьшается и увеличивается; для обоих новых значений оценивается функция стоимости, после нею выбирается то значение коэффициента, для которого функция стоимости имеет меньшую величину. 4.18. Обучение с учителем как задача оптимизации 317 Перепишем зто выражение, вводя явную зависимость от и: Е„(и(п) + Ьтт(п)) =Еач(тг(п)) + Е~(п)Ьтт(п)+ т з (4 117) + — Ьтт~ (п)Н(п)Ьтт(п) + О(!!Ьтт/! ), где й(п) — вектор локального градиента; дЕ„(зт) дтт и = тт(п) ' (4.
118) Н(п) — матрица Гессе в данной точке: д Еи (тт) дттз зт = тг(п) (4.119) Ьтт(п) = -т)й(п), (4.120) где з) — параметр скорости обучения. В результате метод наискорейшего спуска работает на основе линейной аппроксимации функции стоимости в окрестности текущей точки зт(п), при которой единственным источником информации о поверхности ошибок является градиент я(п).
Такое ограничение обеспечивает значительное преимущество: простоту реализации. К сожалению, оно приносит и нежелательный результат — низкую скорость сходимостн, которая может оказаться камнем преткновения, особенно в задачах большого объема.
Включение слагаемого момента в уравнение корректировки вектора синаптических весов было грубой попыткой использования информации второго порядка о поверхности ошибок, что привнесло некоторое преимущество. Тем не менее его использование сделало процесс обучения более чувствительным к настройке, поскольку у разработчиков появляется еще один регулируемый параметр. Для того чтобы существенно улучшить скорость сходимости многослойного персептрона (по сравнению с алгоритмом обратного распространения), в процессе обучения приходится использовать информацию более высокого лорлдка.