Хайкин С. - Нейронные сети (778923), страница 55
Текст из файла (страница 55)
Выражения (4.81)-(4.83) являются основой для вычисления степени чувствительности функции сети Г(зт, х) к вариациям элементов вектора весов тк. Пусть ш— некоторый элемент вектора весов и. Чувствительность (зепгббчйу) Г(тк, х) к элементу ш формально определяется выражением дГ!Г э'и —— , оз Е т. Именно по этой причине нижнюю часть графа передачи сигнала на рис. 4.7 мы назвали графом чувствительности (зепз11(ч((у 8гарЬ).
Матрица Якоби Пусть И' — общее количество свободных параметров (т.е. синаптических весов и порогов) многослойного персептрона, которые в упорядоченном указанным выше способом формируют вектор весов зт. Пусть )Ч вЂ” общее количество примеров, использованных для обучения сети. Применяя метод обратного распространения, можно вычислить множество И' частных производных аппроксимирующей функции Г(тт, 276 Глава 4.
Многослойный лерселтрои х(п)) по элементам вектора весов чт для каждого примера х(п) из обучающего множества. Повторяя эти вычисления для п = 1, 2, ..., ]т[, можно получить матрицу частных производных размерности Х х Иг. Эта матрица называется якобианпи Л многослойного персептрона, вычисленным в точке х(п). Каждая строка якобиана соответствует одному примеру из обучающего множества. Экспериментально подтверждается, что многие задачи обучения нейросетей внутренне вдохе обусловлены (й!-сопгйбопег]), что ведет к неполноте ранга якобиана Л [920).
Ранг (гав[с) матрицы равен количеству ее линейно-независимых строк или столбцов (наименьшему из них). Ранг якобиана считается неполным (гап]г г[ейс[еп[), если он меньше значения ш[п(]ьг, 'тчг). Неполнота ранга якобиана приводит к тому, что алгоритм обратного распространения получает только частичную информацию о возможных направлениях поиска, что, в свою очередь, значительно удлиняет время обучения. 4.11. Гессиан да Е„(уу) и г (4.84) Гессиан играет важную роль в изучении нейронных сетей; в частности, можно отметить следующееб. 1. Собственные числа Гессиана оказывают определяющее влияние на динамику обучения методом обратного распространения. 2.
На основе матрицы, обратной Гессиану, можно выделить несущественные синаптические веса многослойного персептрона и отключить их. Этот вопрос детально обсуждается в разделе 4.15. 3. Гессиан составляет основу методов оптимизации второго порядка, применяемых в качестве альтернативы алгоритма обратного распространения (см. раздел 4.18). К другим аспешам создания нейронных сшей на основе матрицы Гессе относятся следуюшие []30].
Вычисление Гессиана составляет основу процедуры повторного обучения многослойного персептроиа после внесения небольших изменений во множество примеров обучения. В «онтексте байесоваюго обучения необходимо отметить следуюшее. Матрицу, обратную Гессиану, можно использовать для определения границ ошибок при нелинейном прогнозировании, выполняемом с помощью обученной нейронной сети. Собственные значения матрицы Гессе можно использовать для нахождения значений параметров регуляризации. Гессиан, или матрица Гессе (Незгйап гпап[х), функции стоимости Е,„(и), обозначае- мая символом Н, определяется как вторая производная Е,(чв) по вектору весов чу: 4.11.
Гессиан 277 Итеративная процедура вычисленият Гессиана описывается в разделе 4.15. Сейчас обратим внимание на п. 1. В главе 3 уже говорилось о том, что собственные числа Гессиана определяют свойства сходимости алгоритма ЬМЯ. То же можно сказать и об алгоритме обратного распространения, однако механизм здесь более сложный. Обычно матрица Гессе для поверхности ошибок многослойного персептрона, обучаемого по алгоритму обратного распространения, имеет следующие особенности распределения собственных чисел (617), (625). ° Неболыпое количество собственных чисел с малыми значениями.
° Большое количество собственных чисел со средними значениями. ° Малое количество больших собственных чисел. Факторы, на которые влияет такой ход вещей, можно сгруппировать следующим образом. ° Входные и выходные сигналы нейронов имеют ненулевые средние значения. ° Существует корреляция между элементами вектора входного сигнала, а также между индуцированными выходными сигналами нейронов. ° При переходе от одного слоя к следующему возможны значительные вариации производных второго порядка функции стоимости по синаптическим весам нейронов сети. Вторые производные часто оказываются меньше для первых слоев, поэтому синаптические веса первых скрытых слоев обучаются медленнее, чем веса последних скрытых слоев.
Из главы 3 известно, что время обучения (!еапипя бше) алгоритма 1.МБ зависит от соотношения )1, /Х гпо где 3 и )с сп — наибольшее и наименьшее ненулевое собственное число Гессиана соответственно. Экспериментальные результаты показали, что аналогичная ситуация сохраняется и для алгоритма обратного распространения, который является обобщением алгоритма (.МБ. Для входных сигналов с ненулевым средним значением отношение 3 /Х г„больше, чем для соответствующих значений с нулевым средним.
Чем больше среднее значение входного сигнала, тем больше это отношение (см. упражнение 3.10). Это в значительной степени определяет динамику алгоритма обратного распространения. Для минимизации времени обучения следует избегать использования входных значений с ненулевым средним. Для вектора х, передаваемого нейронам первого скрытого слоя многослойного персептрона (т.е.
вектора сигнала, поступающего на входной слой), это условие выполнить очень легко. Достаточно вычесть из каждого элемен- г В (881 представлен обзор точных алгоритмов вычисления матрицы Гессе и шпоритмов его аппроксимации с учетом специфики нейронных сетей. В этом отношении также представляет интерес [103]. 2г8 Глава 4. Многослойный персептрон та этого вектора его ненулевое среднее значение до передачи этого вектора в сеть.
Однако что делать с сигналами, передаваемыми на следующие скрытые и выходной слои сети? Ответ на этот вопрос заключается в выборе типа функций активации, которые используются в сети. Если функция активации является несимметричной (как в случае логистичсской функции), выходной сигнал любого нейрона принадлежит интервалу [О, 1]. Такой выбор является источникам систематического смещения (зузгетайс Ь1аз) для нейронов, расположенных правее первого скрьпого слоя сети. Чтобы обойти эту проблему, следует использовать антисимметричную функцию активации, такую как гиперболический тангенс.
В последнем случае выход каждого нейрона может принимать как положительные, так и отрицательные значения из интервала [ — 1, Ц и с более высокой вероятностью будет иметь нулевое среднее. Если связность сети велика, обучение методом обратного распространения с антисимметричными функциями активации приведет к более быстрой сходимости, чем в случае применения симметричной функции активации, что также является эмпирически очевидным (625).
Это объясняет эвристику 3 из раздела 4.6. 4.12. Обобщение При обучении методом обратного распространения в сеть подают обучающую выборку и вычисляют синаптические веса многослойного персептрона, загружая в сеть максимально возможное количество примеров. При этом разработчик надеется, что обученная таким образом сеть будет способна к обобщению. Считается, *по сеть обладает хорошей обобщающей способностью (йепега1ьке зче11), если отображение входа на выход, осуществляемое ею, является корректным (или близким к этому) для данных, никогда ранее не "виденных*' сетью в процессе обучения.
Термин "обобщение" взят из области психологии. При этом считается, что данные принадлежат той же совокупности (роро!айоп), из которой они брались для обучения. Процесс обучения нейронной сети можно рассматривать как задачу аппроксимации кривой (елгаве-йп(ля). Сама сеть при этом выступает как один нелинейный оператор.
Такая точка зрения позволяет считать обобщение не мистическим свойством нейронной сети, а результатом хорошей нелинейной интерполяции входных данных 11146). Сеть осуществляет корректную интерполяцию в основном за счет того, что непрерывность отдельных функций активации многослойного персептрона обеспечивает непрерывность общей выходной функции. На рис. 4.19, а показано, как происходит обобщение в гипотетической сети. Нелинейное отображение входа на выход, показанное на этом рисунке, определяется сетью в результате обучения по дискретным точкам (обучающим данным). Точку, полученную в процессе обобщения и обозначенную незаштрихованным кружочком, можно рассматривать как результат выполняемой сетью интерполяции. 4.12. Обобщение 279 Нейронная сеть, спроектированная с учетом хорошего обобщения, будет осуществлять корректное отображение входа на выход даже тогда, когда входной сигнал слегка отличается от примеров, использованных для обучения сети (что и показано на рисунке).
Однако, если сеть обучается на слишком большом количестве примеров, все может закончиться только запоминанием данных обучения. Это может произойти за счет нахождения таких признаков (например, благодаря шуму), которые присутствуют в примерах обучения, но не свойственны самой моделируемой функции отображения. Такое явление называют избыточным обучением, или переобучением (очег1гаш(пй). Если сеть "переучена", она теряет свою способность к обобщению на аналогичных входных сигналах. Обычно загрузка данных в многослойный персептрон таким способом требует использования большего количества скрытых нейронов, чем действительно необходимо.