Хайкин С. - Нейронные сети (778923), страница 45
Текст из файла (страница 45)
В разделе 4.8 описывается компьютерный эксперимент, иллюстрирующий применение алгоритма обратного распространения в задаче разделения двух перекрывающихся классов с двумерным гауссовым распределением. Значение скрытых нейронов, как детекторов признаков, обсуждается в разделе 4.9. 222 Глава 4. Многослойный персепгрон В третьей части (разделы 4.10-4.11) речь пойдет об исследовании поверхности ошибки.
В разделе 4.10 мы обсудим фундаментальную роль обучения по методу обратного распространения в вычислении частных производных аппроксимируемых функций. В разделе 4.11 рассматриваются вычислительные вопросы, связанные с нахождением матрицы Гессе для поверхности ошибки. В четвертой части (разделы 4.12-4.15) рассматриваются различные вопросы, связанные с производительностью многослойного персептрона, обучаемого с помощью алгоритма обратного распространения. В разделе 4.12 мы обсудим вопросы обобщения, составляющие квинтэссенцию обучения. В разделе 4.13 описывается задача аппроксимации непрерывных функций с помощью многослойного персептрона. Использование перекрестной проверки (егозя-ча!ЫаГюп) в качестве статистического средства проверки достоверности результата обсуждается в разделе 4.14. В разделе 4.15 обсуждаются процедуры снижения порядка многослойного персептрона без потери его производительности.
Такие процедуры упрощения сети особенно важны в тех задачах, в которых критическим вопросом является вычислительная сложность. Пятая часть (разделы 4.16-4.17) завершает исследование алгоритма обратного распространения. В разделе 4.1б анализируются преимущества и ограничения метода обратного распространения. В разделе 4.17 приводятся эвристические рекомендации, ускоряющие сходимость обучения методом обратного распространения. В шестой части (раздел 4.18) процесс обучения рассматривается под несколько иным углом зрения.
Для повышения эффективности обучения с учителем этот процесс рассматривается как численная задача оптимизации. В частности, длл реализации обучения с учителем предлагается использовать метод сопряженных градиентов (соп) пйаге-йгао!епг) и квазиньютоновские методы.
В последней части главы (раздел 4.19) основное внимание уделяется самому многослойному персептрону. Здесь будет описана довольно интересная структура сети— многослойный персептрон свертки (сопчо!пГ!опа1 шп!г!1ауег регсерггоп). Такая сеть успешно использовалась для решения сложных задач распознавания образов.
В завершение главы в разделе 4.20 приводятся общие выводы. 4.2. Вводные замечания На рис. 4.1 показан структурный граф многослойного персептрона с двумя скрытыми слоями и одним выходным слоем. Показанная на рисунке сеть является лолносвязной (бз!!у соппесгео), что характерно для многослойного персептрона общего вида. Это значит, что каждый нейрон в любом слое сети связан со всеми нейронами (узлами) предыдущего слоя. Сигнал передается по сети исключительно в прямом направлении, слева направо, от слоя к слою.
4.2. Вводные замечания 223 Входной снгнм (возбуидение) Выходной сигнал (огклик) Входной слой Первый скрытый слой В орой скрытый свой Выходной слой Рис. 4.1. Структурный граф многослойного персепгрона с двумя скрытымн споямн Рис. 4.2. Направление двух основных потоков сигнала для многослойного персептрона: прямое распространение функционального сигнала н обратное Фуншшональныесишалы распространение сигнала ошибки ~- — — - Сигналы ошибки 1. Функциональный сигнал (б)пс(1оп з(йпа!).
Это входной сигнал (стимул), поступающий в сеть и передаваемый вперед от нейрона к нейрону по всей сети. Такой сигнал достигает конца сети в виде выходного сигнала. Будем называть этот сигнал функциональным по двум причинам. Во-первых, он предназначен для выполнения некоторой функции на выходе сети. Во-вторых, в каждом нейроне, через который передается этот сигнал, вычисляется некоторая функция с учетом весовых коэффициентов. Функциональный сигнал еще называют входным. 2. Сигнал ошибки (епог я(8па1). Сигнал ошибки берет свое начало на выходе сети и распространяется в обратном направлении (ог слоя к слою).
Он получил свое название благодаря тому, что вычисляется каждым нейроном сети на основе функции ошибки, представленной в той или иной форме. На рис. 4.2 показан фрагмент многослойного персептрона. Для этого типа сети вьщеляют два типа сигналов [816). 224 Глава 4. Многослойный перселтрон Выходные нейроны (вычислительные узлы) составляют выходной слой сети. Остальные нейроны (вычислительные узлы) относятся к скрытым слоям. Таким образом, скрытые узлы не являются частью входа или выхода сети — отсюда они и получили свое название. Первый скрытый слой получает данные нз входного слоя, составленного из сенсорных элементов (входных узлов).
Результирующий сигнал первого скрытого слоя, в свою очередь, поступает на следующий скрытый слой, и т.д., до самого конца сети. Любой скрытый или выходной нейрон многослойного персептрона может выполнять два типа вычислений. 1. Вычисление функционального сигнала на выходе нейрона, реализуемое в виде непрерывной нелинейной функции от входного сигнала н синаптических весов, связанных с данным нейроном. 2. Вычисление оценки вектора градиента (т.е. градиента поверхности ошибки по синаптическим весам, связанным со входами данного нейрона), необходимого для обратного прохода через сеть.
Вывод алгоритма обратного распространения слишком громоздок. Для того чтобы упростить понимание математических выкладок, сначала приведем полный список используемых обозначений. Обозначения ° Индексы г, з н и относятся к различным нейронам сети. Когда сигнал проходит по сети слева направо, считается, что нейрон т' находится на один слой правее нейрона г, а нейрон Й вЂ” еще на один слой правее нейрона з, если последний принадлежит скрытому слою. ° Итерация (такт времени) и соответствует и-му обучающему образу (примеру), поданному на вход сети.
° Символ Е(п) означает текущую сумму квадратов ошибок (нли энергию ошибки) на итерации п. Среднее значение Е(п) по всем значениям п(т.е. по всему обучающему множеству) называется средней энергией ошибки Е,„. ° Символ е, (и) описывает сигнал ошибки на выходе нейрона з на итерации п. ° Символ д (и) означает желаемый отклик нейрона т' и используется для вычисления е,(п). ° Символ р (и) описывает функциональный сигнал, генерируемый на выходе нейрона з на итерации и.
° Символ ш,з(п) используется для обозначения синаптического веса, связывающего выход нейрона 1 со входом нейрона у на итерации и. Коррекция, применяемая к этому весу на шаге п, обозначается Ьш,;(и). 4.3. Алгоритм обратного распространения 225 ° Индуцированное локальное поле (т.е. взвешенная сумма всех синаптических входов плюс порог) нейрона ч' на итерации и обозначается символом ит(п). Это значение передается в функцию активации, связанную с нейроном ~.
° Функция активации, соответствующая нейрону г и описывающая нелинейную взаимосвязь входного и выходного сигналов этого нейрона, обозначается гр, ( ), ° Порог, применяемый к нейрону з', обозначается символом 6 . Его влияние представлено синапсом с весом и~го — — б, соединенным с фиксированным входным сигналом, равным +1. ° г-й элемент входного вектора обозначается х,(п). ° )г-й элемент выходного вектора (образа) обозначается оь(п). ° Параметр скорости (интенсивности) обучения обозначается символом з).
° Символ гпг обозначает размерность (колнчество узлов) слоя 1 многослойного персептрона; 1 = 1, 2,..., Ь, где Т вЂ” "глубина" сети. Таким образом, символ тс означает размерность входного слоя; тг — первого скрытого слоя; ть — выходного слоя. Для описания размерности выходного слоя будет также использоваться символ М. 4.3. Алгоритм обратного распространения Сигнал ошибки выходного нейрона з на итерации и (соответствующей и-му примеру обучения) определяется соотношением е,(п) = г( (и) — у (и). (4.1) Текущее значение энергии ошибки нейрона 1 определим как -'ез(п).
Соответственно текущее значение Е(п) общей энергии ошибки сети вычисляется путем сложения величин -'е~й(п) по всем нейронам выходного слоя. Это "видимые" нейроны, для которых сигнал ошибки может быть вычислен непосредственно. Таким образом, можно записать (4.2) где множество С включает все нейроны выходного слоя сети. Пусть Х вЂ” общее число образов в обучающем множестве (т.е.
мощность этого множества). Энергия срвднвквадрангической ошибки в таюм случае вычисляется как нормированная по Х сумма всех значений энергии ошибки Е(п): 226 Глава 4. Мноюслойный персептрон Нейрон) Уе е(л) т,(л) Рис. 4.3. Граф передачи сигнала в пределах некоторого нейрона у (4.3) Текущая энергия ошибки Е(п), а значит и средняя энергия ошибки Е„, являются функциями всех свободных параметров (т.е. синаптических весов и значений порога) сети. Для данного обучающего множества энергия Е„представляет собой функцию стоимости (сом бзпсйоп) — меру эффективности обучения.
Целью процесса обучения является настройка свободных параметров сети с целью минимизации величины Е, . В процессе минимизации будем использовать аппроксимацию, аналогичную применяемой для вывода алгоритма 1.МБ в главе 3. В частности, рассмотрим простой метод обучения, в котором веса обновляются для каждого обучающего примера в пределах одной эпохи (еросЬ), т,е.
всего обучающего множества. Настройка весов выполняется в соответствии с ошибками, вычисленными для каждого образа, представленного в сети. Арифметическое среднее отдельных изменений для весов сети по обучающему множеству может служить оценкой реальных изменений, произошедших в процессе минимизации функции стоимости Е, на множестве обучения. Качество этой оценки обсудим немного позже. 4.3. Алгоритм обратного распространения 227 па ст(п) ='~, '„(п)у,(и), г=о (4.4) где т — общее число входов (за исключением порога) нейрона у.