Хайкин С. - Нейронные сети (778923), страница 187
Текст из файла (страница 187)
Обратное распространение во времени можно реализовать как по эпохам, так и в непрерывном режиме. Можно также комбинировать эти два режима. ° Алгоритм рекуррентного обучения в реальном времени, описанный в разделе 15.8, является производным от модели в пространстве состояний, описанной формулами (15.10) и (15.11). Эти два алгоритма имеют ряд общих характеристик.
Во-первых, оба они основаны на методе градиентного спуска, тогда как мгновенное значение функции стоимости (основанной на критерии среднеквадратической ошибки) минимизируется по синаптическим весам сети. Во-вторых, оба эти метода довольно просты в реализации, но могут медленно сходиться. В-третьих, они связаны тем, что представление алгоритма обратного распространения во времени в виде графа движения сигнала может быть получено перестановкой из графа движения сигнала определенной формы апгоритма рекуррентного обучения в реальном времени [1091, [6321. (Непрерывное) обучение в реальном времени, основанное на градиентном спуске, использует минимальный обьем доступной информации, а именно мгновенную оценку градиента функции стоимости по настраиваемому вектору параметров.
Процесс обучения можно несколько ускорить, применив теорию фильтров Калмана, которая более эффективно использует информацию, содержащуюся в данных обучения. В разделе 15.10 описывается несвязный расширенный фильтр Калмана, посредством которого можно решать задачи динамического обучения, чересчур сложные для обычных методов градиентного спуска. Краткий обзор фильтров Калмана представлен в разделе 15.9.
Обратите внимание, что несвязный расширенный фильтр Капмана применим как в статических сетях прямого распространения, так и в рекуррентных сетях. Некоторые эвристики Перед тем как приступить к описанию новых алгоритмов обучения, перечислим некоторые эвристики улучшения обучения рекуррентных сетей, которые используют методы градиентного спуска [351). 15.7. Обратное распространение во времени 943 ° Должен быть выдержан лексиграфический порядок примеров обучения, в котором самые короткие строки подаются сети в первую очередь.
° Обучение должно начинаться с небольшого примера, после чего их размер должен постепенно увеличиваться. ° Синаптические веса сети должны корректироваться только в том случае, если абсолютная ошибка при подаче текущего примера сети будет больше некоторого заранее заданного критерия. ° Рекомендуется использовать эвристику снижения (г]есау) весов (снижение весов— это одна из грубых форм регуляризации сложности, о которой говорилось в главе 4). Первая эвристика представляет особый интерес. При ее реализации устраняется проблема обращения градиентов в нуль, которая возникает в рекуррентных сетях, обучаемых методами градиентного спуска.
Об этой проблеме речь пойдет в разделе 15.12. 15.7. Обратное распространение во времени Алгорильгг обратного распространения во времени (Ьас]с-ргорада![оп-йгопдЬ-[ппе а1- йопбип — ВРТТ), применяемый для обучения рекуррентных сетей, является расширением стандартного алгоритма обратного распространенияй. Он может быть получен путем развертывания временных операций сети в многослойной сети прямого распространения, топология которой расширяется на один слой для каждого шага времени. Дгзя примера предположим, что Х вЂ” рекуррентная сеть, требуемая для обучения временной задаче, которая начинается с момента времени по и продолжается до момента времени и. Пусть Я* — сеть прямого распространения, которая получается после развертывания временных операций рекуррентной сети Х.
Развернутая сеть Х* связана с исходной сетью Х следующим образом. 1. Для каждого шага времени из интервала [по, и] сеть Х* содержит слой, состоящий из К нейронов, где К вЂ” количество нейронов исходной сети Х. 2. В каждом слое сети Х* содержатся копии всех нейронов сети М. Я Идея, стоящая за алгоритмом обратного распространения во времени, заключается в том, что для любой рекуррентной сети можно создать сеть прямого распространения, обеспечивающую такую же динамику через некоторый литерная времени [745]. Алпгритм обратного распространения во времени впервые был описан в диссертапионной работе Вербоса [1128] (см.
также [1126]). Этот алгоритм независимо от Вербоса был сконструирован в [915]. Один из вариантов алгоритма обратного распространенна во времени был описан в [1155]. Обзор этих алгоритмов и связанных с ними вопросов содержится а [! !56]. 944 Глава 1б. Динамически управляемые рекуррентные сети юг! гг игг а) "и х,(!) ии х,(2) х (0) х>(л) ии х>(л + !) х (л + !) хг(л) егг хг(0) "гг хг(!) чп х (2) Время 0 ! 2 л+! б) Рис. 15.10. Структурный граф рекуррентной сети И, состоящей из двух нейронов (а); граф передачи сигнала сети М, развернутый во времени (б) 3.
Для каждого шага времени 1 Е (по, п1 синаптические связи от нейрона з слоя 1 к нейрону у слоя 1+ 1 сети )ч(' являются копиями синаптнческих связей между нейронами з и у сети Р(. Все эти моменты проиллюстрированы в следующем примере. Применение процедуры развертывания приводит к двум совершенно различным реализациям обратного распространения во времени, в зависимости от того, какой режим обучения используется, по эпохам или непрерывный. Все эти методы рекуррентного обучения будут последовательно раскрыты далее в этом разделе.
Пример 15.4 Рассмотрим рекуррентную сеть Х, состоящую из двух нейронов (рис. 15.10, а). Для упрощения представления мы опустили операторы единичной задержки х ', которые следовало вставить в каждую из синаптических связей (в том числе и в собственные обратные связи) сети И. Пошаюво раскрывая временные связи сети, получим граф передачи сигнала, коюрый показан на рис. 15.10, б и в котором время начала операций равно лс = О.
Этот граф представляет многослойную сеть прямого распространения )Ч", в которой каждый новый слой добавляется иа каждом шаге времени работы сети. 15.7, Обратное распространение во времени 945 Обратное распространение по эпохам во времени Пусть множество данных, используемое для обучения рекурреитной сети, разбито на независимые эпохи, каждая из которых представляет интересующий отрезок времени.
Пусть ис — время начала эпохи; и, — время ее окончания. Рассматривая такую эпоху, можно определить следующую функцию стоимости: п~ Есбщ (пщ и,) = — ',) ~1 е,'(и), (15.38) и= о звА ° Сначала осуществляется прямая передача данных по сети на интервале времени (пд, и,). Для записи входных данных состояние сети (т.е.
ее синаптические веса) и желаемый отклик для этого интервала времени сохраняется. ° Для вычисления значений локальных градиентов выполняется единичная обратная передача через последнюю запись: дЕобщ (пщ п1) ди,(п) (15.39) дла всех 1 ЕА и пс < и < пн Это вычисление выполнЯетсЯ с помощью фоРмУлы 1 <р'(от(п))еу(п), п=п„ ~Р'(и,(п)) ~~е,(п) + ~ оэзьбь(и+1)~, пс <.п < и,, йеА где ~р'( ) — производная функции активации по своему аргументу; о (и) — индуцироваиное локальное поле нейрона э'. Предполагается, что все нейроны сети имеют одну и ту же функцию активации Е( ). Вычисления по формуле (15.40) повторяются с момента времени п„шаг за шагом, пока не будет достигнут момент ио. Количество выполняемых шагов равно количеству шагов времени в данной эпохе.
где А — множество индексов у, относящееся к тем нейронам сети, для которых определены желаемые отклики; е, (и) — сигнал ошибки на выходе этих нейронов, измеренный по отношению к некоторому желаемому отклику. Требуется вычислить чувствительность этой сети, т.е. частныс производные функции стоимости Е ~щ (ищ и,) по синаптическим весам сети. Для этого можно использовать алгоритм обратного распространения во времени по эпохам, который построен на пакетном режиме стандартного обучения методом обратного распространения (см. главу 4). Алгоритм обучения по эпохам ВРТТ выполняется следующим образом [1155). 946 Глава тб. Динамически управляемые рекуррантные сети ° После выполнения вычислений по методу обратного распространения до момента времени по + 1 к синаптическим весам и~„нейрона т' применяется следующая коррекция: П1 Ьтс,, = — т) ' ' ' = т) ~~~ б,(п)х;(п — 1), дтсл н=ноЧ-1 (15.41) где т) — параметр сюрости обучения; х;(п — 1) — входной сигнал, поданный на т-й синапс у-го нейрона в момент времени и — 1.