Рекуррентные сети практика. Рекуррентные нейронные сети

Нейронные сети. Типы НС. Обучение НС. Применение НС.

Лекция 8.

При идентификации X и Y представляют входные и выходные сигналы системы соответственно.

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

В результате отображения X → Y крайне важно обеспечить формирование правильных выходных сигналов в соответствии:

Со всœеми примерами обучающей выборки;

Со всœеми возможными входными сигналами, которые не вошли в обучающую выборку.

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

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

Архитектура рекуррентных сетей

Существуют различные варианты архитектур рекуррентных ней­ронных сетей.

Сеть Джордана: В 1986 ᴦ. Джордан (Jordan) предложил рекур­рентную сеть (рис.8.1), в которой выходы нейронных элементов по­следнего слоя соединœены посредством специальных входных нейронов с нейронами промежуточного слоя. Такие входные нейронные эле­менты называются контекстными нейронами (context units). Οʜᴎ рас­пределяют выходные данные нейронной сети на нейронные элементы промежуточного слоя.

Рис. 8.1 Архитектура рекуррентной ней­ронной сети с обратными связями от нейро­нов выходного слоя

Число контекстных нейронов равняется числу выходных ней­ронных элементов рекуррентной сети. В качестве выходного слоя та­ких сетей используются нейронные элементы с линœейной функцией активации. Тогда выходное значение j -го нейронного элемента последнего слоя определяется по формуле

(8.1)

где v ij - весовой коэффи­циент между i -м нейроном промежуточного и j -м ней­роном выходного слоев; P i (t )- выходное значение i -го нейрона промежуточ­ного слоя; t j - пороговое значение j -го нейрона вы­ходного слоя. Взвешенная сумма i -гo нейронного элемента промежуточного слоя определяется следующим образом:

(8.2)

где w ij – весовой коэффициент между j -м нейроном входного и i -м нейроном промежуточного слоев; р – число нейронов выходного слоя; w ki – весовой коэффициент между k -м контекстным нейроном и i -м нейроном промежуточного слоя; T – пороговое значение i -го нейрона промежуточного слоя; n – размерность входно­го вектора.

Тогда выходное значение i -го нейрона скрытого слоя:

(8.3)

В качестве функции не­линœейного преобразования F обычно используется гипер­болический тангенс или сигмоидная функция.

Для обучения рекуррентных нейронных сетей применяется алго­ритм обратного распространения ошибки (будет рассмотрен ниже).

Алгоритм обучения рекуррентной нейронной сети в общем слу­чае состоит из следующих шагов:

1. В начальный момент времени t = 1 всœе контекстные нейроны устанавливаются в нулевое состояние – выходные значения прирав­ниваются нулю.

2. Входной образ подается на сеть и происходит прямое распро­странение его в нейронной сети.

3. В соответствии с алгоритмом обратного распространения ошибки модифицируются весовые коэффициенты и пороговые значе­ния нейронных элементов.

4. Устанавливается t = t +1 и осуществляется переход к шагу 2. Обучение рекуррентной сети производится до тех пор, пока сум­марная среднеквадратичная ошибка сети не станет меньше заданной.

Рекуррентные нейронные сети

Рекуррентные нейронные сети - это наиболее сложный вид нейронных сетей, в которых имеется обратная связь. При этом под обратной связью подразумевается связь от логически более удалённого элемента к менее удалённому. Наличие обратных связей позволяет запоминать и воспроизводить целые последовательности реакций на один стимул. С точки зрения программирования в таких сетях появляется аналог циклического выполнения, а с точки зрения систем - такая сеть эквивалентна конечному автомату. Такие особенности потенциально предоставляют множество возможностей для моделирования биологических нейронных сетей. Но, к сожалению, большинство возможностей на данный момент плохо изучены в связи с возможностью построения разнообразных архитектур и сложностью их анализа.

Перцептроны Розенблатта с обратной связью

Первые идеи о нейронных сетях с обратными связями описал Ф.Розенблатт в заключение своей книги о перцептронах в 1962 году. Ф.Розенблатт дал качественное описание нескольких видов перцептронов с обратной связью . Первая группа таких перцептронов была предназначена для вырабатывания избирательного внимания, а вторая группа для обучения последовательности реакций.

Однослойные сети с обратной связью

После выхода книги Минского с критикой возможностей элементарного перцептрона в 1969 году работы по изучению искуственных нейронных сетей практически прекратились. Только небольшие группы продолжали исследования в этом направлении. Одна из таких групп в Массачусетском Технологическом институте в 1978 году начала свою работу. Джон Хопфилд был приглашен в качестве консультанта из отделения биофизики лаборатории Бела. Его идеи так же как и Розенблатта базировались на результатах исследования в нейрофизиологии. Главной заслугой Хопфилда является энергетическая интерпретация работы искуственной нейронной сети. Что же касается самой нейронной сети Хопфилда , то она обладает рядом недостатков из-за которых она не может быть использована практически. Впоследствии Коско развил идеи Хопфилда и разработал модель гетероассоциативной памяти - нейронная сеть Коско . Основным недостатком этих сетей является отсутствие устойчивости, а в случаях когда она достигается сеть становится эквивалентной однослойной нейронной сети из-за чего она не в состоянии решать линейно неразделимые задачи. В итоге емкость таких сетей крайне мала. Несмотря на эти практические недостатки в области распознавания, данная сеть успешно применялась в исследованиях энергетического хаоса, возникновения аттракторов, а так же с этого времени о искуственных нейронных сетей стало возможным говорить как о ассоциативной памяти .

Рекуррентные сети с единичной задержкой

См. также

Литература

  • Розенблатт, Ф. Принципы нейродинамики: Перцептроны и теория механизмов мозга = Principles of Neurodynamic: Perceptrons and the Theory of Brain Mechanisms. - М.: Мир, 1965. - 480 с.
  • J. J. Hopfield [PNAS Reprint (Abstract) PNAS Reprint (PDF) Neural networks and physical systems with emergent collective computational abilities.] // Proceedings of National Academy of Sciences . - April 1982. - С. vol. 79 no. 8 pp. 2554-2558.
  • Jordan, M. I. Serial order: A parallel distributed processing approach. // Institute for Cognitive Science Report 8604 . - University of California, San Diego: 1986.
  • Elman, J.L. Finding structure in time. // Cognitive Science . - 1990. - С. 179-211.

Wikimedia Foundation . 2010 .

Смотреть что такое "Рекуррентные нейронные сети" в других словарях:

    Запрос «Нейронная сеть» перенаправляется сюда. Cм. также другие значения. Схема простой нейросети. Зелёным обозначены входные элементы, жёлтым выходной элемент Искусственные нейронные сети (ИНС) математические модели, а также их программные или… … Википедия

    Запрос «Нейронная сеть» перенаправляется сюда. Cм. также другие значения. Схема простой нейросети. Зелёным обозначены входные элементы, жёлтым выходной элемент Искусственные нейронные сети (ИНС) математические модели, а также их программные или… … Википедия

    Запрос «Нейронная сеть» перенаправляется сюда. Cм. также другие значения. Схема простой нейросети. Зелёным обозначены входные элементы, жёлтым выходной элемент Искусственные нейронные сети (ИНС) математические модели, а также их программные или… … Википедия

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

    Для улучшения этой статьи желательно?: Добавить иллюстрации. Рекуррентные нейронные сети (англ. … Википедия

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

    Эту статью следует викифицировать. Пожалуйста, оформите её согласно правилам оформления статей. Человеческая память ассоциативна, то есть некоторое воспоминание может порождать большую связанную с ним область. Один предмет напоминает нам … Википедия

    Архитектура нейронной сети Коско Нейронная сеть Коско (Двунаправленная ассоциативная память ДАП) нейронная сеть, разработанная Бартом Коско. Это однослойная нейронная сеть с обратными связями, базируется на двух идеях: адаптивной… … Википедия

    Логическая схема перцептрона с тремя выходами Основная статья: Перцептрон Перцептрон является одной из первых моделей искусстве … Википедия

Книги

  • Прикладное машинное обучение с помощью Scikit-Learn и TensorFlow. Концепции, инструменты и техники , Жерон Орельен. Прикладное машинное обучение с помощью Scikit-Learn и TensorFlow. Концепции, инструменты и техники для создания интеллектуальных систем. Полноцветное издание. "Эта книга - замечательное…

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

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

Сеть Элмана так же, как и сеть Джордана получается из многослойного персептрона введением обратных связей. Только сигналы на входной слой идут не от выходов сети, а от выходов нейронов скрытого слоя . Пример архитектуры сети Элмана показан на рис. 1. Выходы скрытого слоя { c 1 , c 2 ,…, c k } подаются с временной задержкой на входные нейроны с весовыми коэффициентам { w ij } -1 , где i (i = 1,2,…, n ) , j j = 1,2…, k ).

Рис. 1. Пример архитектуры сети Элмана

Для обобщения рекуррентных ИНС в статье предлагается добавить задержку сигналов обратной связи скрытого слоя на нескольких тактов. Для этого добавим у слоя динамическую стековую память. Пример архитектуры такой ИНС показан на рис. 2.

Рис. 2. Пример архитектуры рекуррентной ИНС с динамической стековой памятью нескольких предыдущих выходных сигналов скрытого слоя

Выходы скрытого слоя { c 1 , c 2 ,…, c k } подаются на входные нейроны с весовыми коэффициентам { w ij } - t , где i – индекс нейрона, на который подается сигнал (i = 1,2,…, n ) , j – индекс выходного сигнала нейрона скрытого слоя (j = 1,2…, k ) , t – индекс временной задержки (t =1,2… m ). Количество временных задержек будем изменять от 1 до m . Таким образом, сеть Элмана получается при m =1, а многослойный персептрон – при m =0.

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

Рассмотрим процесс трансформации обучающей выборки для решения задачи прогнозирования временного ряда с помощью рекуррентной ИНС с динамической стековой памятью. В качестве примера будем использовать среднемесячные значения плотности потока солнечного излучения на длине волны 10,7 за 2010-2012 года (табл. 1) .

Таблица 1. Данные о плотности потока солнечного излучения на длине волны 10,7 см. за 2010-2012 гг

№ примера Дата Плотность потока излучения 10 -22 [Вт/м 2 ]
1 Январь 2010 834,84
2 Февраль 2010 847,86
3 Март 2010 833,55
4 Апрель 2010 759,67
5 Май 2010 738,71
6 Июнь 2010 725,67
7 Июль 2010 799,03
8 Август 2010 797,10
9 Сентябрь 2010 811,67
10 Октябрь 2010 816,77
11 Ноябрь 2010 824,67
12 Декабрь 2010 843,23
13 Январь 2011 837,42
14 Февраль 2011 945,71
15 Март 2011 1153,87
16 Апрель 2011 1130,67
17 Май 2011 959,68
18 Июнь 2011 959,33
19 Июль 2011 942,58
20 Август 2011 1017,74
21 Сентябрь 2011 1345,00
22 Октябрь 2011 1372,90
23 Ноябрь 2011 1531,67
24 Декабрь 2011 1413,55
25 Январь 2012 1330,00
26 Февраль 2012 1067,93
27 Март 2012 1151,29
28 Апрель 2012 1131,67
29 Май 2012 1215,48
30 Июнь 2012 1204,00

Трансформируем временной ряд методом скользящих окон , как показано в таблице 2.

Таблица 2. Обучающая выборка ИНС для решения задачи прогнозирования, полученная в результате преобразования временного ряда методом окон

№ примера Входы ИНС (x ) Выходы ИНС (y )
x 1 x 2 x 3 y 1
1 834,84 847,86 833,55 759,67
2 847,86 833,55 759,67 738,71
3 833,55 759,67 738,71 725,67

Пусть в рекуррентной ИНС скрытый слой содержит три нейрона, выходной – один нейрон, стек динамической памяти – обратные сигналы скрытого слоя с задержкой на два такта (рис. 3).

Рис. 3. Рекуррентная ИНС с памятью двух предыдущих выходных сигналов скрытого слоя

Так как число нейронов скрытого слоя, имеющих обратную связь с входным слоем, равно трем, то размер входного вектора во время обучения ИНС при запоминании предыдущего выходного сигнала на один шаг назад увеличится на три, при запоминании двух предыдущих выходных сигналов – на шесть. Обозначим входные сигналы обучающей выборки, не изменяющиеся во время трансформации, как {x 1 , x 2 , x 3 }, а сигналы обратной связи – {x 4 , x 5 , x 6 , x 7 , x 8 , x 9 }. В таблице 3 приведена трансформированная обучающая выборка.

Таблица 3. Добавление в обучающую выборку рекуррентной ИНС выходных сигналов скрытого слоя

№ п/п Входы ИНС (x ) Выходы ИНС (y )
x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 y 1
1 834,84 847,86 833,55 0 0 0 0 0 0 759,67
2 847,86 833,55 759,67 c 1 -1 c 2 -1 c 3 -1 0 0 0 738,71
3 833,55 759,67 738,71 c 1 -1 c 2 -1 c 3 -1 c 1 - 2 c 2 - 2 c 3 - 2 725,67

На входы {x 4 , x 5 , x 6 } подаются выходные сигналы скрытого слоя с задержкой на один такт {с 1 -1 , c 2 -1 , c 3 -1 }, на входы {x 7 , x 8 , x 9 } – выходные сигналы скрытого слоя с задержкой на два такта {с 1 -2 , c 2 -2 , c 3 -2 }.

Таким образом, обучение рекуррентной ИНС с динамической стековой памятью методом обратного распространения ошибки можно свести к обучению многослойного персептрона, трансформируя обучающую выборку. Для реализации предлагаемой методологии обучения рекуррентной ИНС с динамической стековой памятью расширены возможности нейроэмулятора NeuroNADS .

Объектно-ориентированная модель рекуррентной ИНС с динамической стековой памятью представлена на диаграмме классов (рис. 4).

Рис. 4. Диаграмма основных классов, реализующих рекуррентную ИНС с динамической стековой памятью

В отличие от класса Layer , который является контейнером для нейронов многослойного персептрона, класс LayerMemory cодержит память stackOut , реализованную в виде стека предыдущих сигналов слоя. Размер стека задается с помощью свойства stackSize . На схеме (рис. 5) память слоя изображена в виде стека выходных сигналов слоя {y -1 , y -2 , …, y - n }, где n – размер стека. Каждая ячейка стека y - i состоит из массива выходов нейронов слоя {y 1, y 2, …, y n }. Стек организован так, что после переполнения памяти последняя ячейка y - n удаляется, вся очередь сдвигается на одну позицию, так что y - i = y -( i -1) .

Рис. 5. Реализация слоя с памятью (LayerMemory ) для рекуррентных ИНС с динамической стековой памятью

Проведем прогноз среднемесячной плотности солнечной активности на длине волны 10,7 см на первые шесть месяцев 2012 года на основе данных за 2010-2011 года из табл. 1. Для этого построим и обучим рекуррентную ИНС с динамической стековой памятью (рис.3) с помощью нейроэмулятора NeuroNADS . Первые 24 примера временного ряда возьмем для обучающей выборки, а оставшиеся шесть примеров – для тестовой выборки.

Обучение проведем гибридным алгоритмом . Параметры алгоритма: шаг обучения – 0,3, максимальное количество особей в поколении – 10, коэффициент мутации – 0,1. Критерии остановки обучения: среднеквадратическая ошибка – 0,001, количество эпох – 1000.

Один из лучших результатов обучения ИНС представлен на рис. 6 и на рис. 7. Показатели ошибок прогнозирования временного ряда представлены в табл. 4.

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

Рис. 6. Результаты опроса рекуррентной ИНС с динамической стековой памятью на обучающей и тестовой выборках (по оси абсцисс – номер примера, по оси ординат – значение временного ряда)

Рис. 7. График изменения функции среднеквадратической ошибки рекуррентной ИНС с динамической стековой памятью во время обучения (по оси абсцисс – количество эпох, по оси ординат – значение ошибки)

Таблица 4. Показатели ошибок прогнозирования временного ряда

По результатам обучения можно сделать вывод, что рекуррентная ИНС с динамической стековой памятью справилась с задачей, показатели ошибок прогнозирования временного ряда соответствуют допустимым значениям. Таким образом, рекуррентные ИНС с динамической стековой памятью можно обучать с помощью предложенной методологии, а построенные модели ИНС использовать для прогнозирования временных рядов.

Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 14-01-00579 а.

Список литературы:

  1. Бодянский Е.В., Руденко О.Г. Искусственные нейронные сети: архитектуры, обучение, применения. – Харьков: ТЕЛЕТЕХ, 2004. – 369 с.
  2. Осовский С. Нейронные сети для обработки информации / Пер. с польского И.Д. Рудинского. – М.: Финансы и статистика, 2002. – 344 с.
  3. Информационно-аналитическая система [Электронный ресурс]: данные о солнечной и геомагнитной активности – Режим доступа: http://moveinfo.ru/data/sun/select (доступ свободный) – Загл. с экрана. – Яз. рус.
  4. Круг П.Г. Нейронные сети и нейрокомпьютеры. М.: Издательство МЭИ, 2002 г. – 176 с.
  5. Нейроэмулятор NeuroNADS [Электронный ресурс]: веб-сервис - Режим доступа: http://www.service.. с экрана. – Яз. рус.
  6. Белявский Г.И., Пучков Е.В., Лила В.Б. Алгоритм и программная реализация гибридного метода обучения искусственных нейронных сетей // Программные продукты и системы. Тверь, 2012. №4. С. 96 - 100.

Следующий вид искусственных нейронных сетей используется для предсказания последовательностей. Данные сети "понимают" взаимосвязь между разными элементами сети. Например, их используют для генерации текстов чат-ботами . Работает это так:

Принцип работы рекуррентной НС (взято )

В данном случае, сеть принимает последовательность "Привет, как дела?" и должна вывести: "Привет, нормально"

В медицине такие сети применяются для анализа медицинских записей , и предсказания по ним каких-либо будущих случаев , предсказания развития эпиприступа и.т.д.

Я продемонстрирую работу таких сетей на простом примере.

Dataframe = pandas.read_csv("international-airline-passengers.csv", usecols=, engine="python", skipfooter=3) dataset = dataframe.values dataset = dataset.astype("float32") dataframe.head()

International airline passengers: monthly totals in thousands. Jan 49 ? Dec 60
0 112
1 118
2 132
3 129
4 121

Набор данных включает в себя ежемесячные наблюдения за количеством пассажиров аэропорта с января 1949 по декабрь 1960. Всего имеется 144 наблюдения.

Если нарисовать график наблюдений, можно заметить определённую тенденцию:

    Он цикличный, потому что наплывы пассажиров бывают в летний сезон.

    Имеется положитлеьный тренд в общем количестве пасажиров, вездь популярность авиаперевозок постоянно растёт.

plt.plot(dataframe)

Нам нужно создать модель, которая будет способна найти взаимосвязи между количеством пассажиров в разные месяцы и предсказать количество пассажиров в будущем.

Train_size = int(len(dataset) * 0.67) test_size = len(dataset) - train_size print(len(train), len(test)) (96, 48)

Для тренировки сети используются 96 наблюдений (67%), для проверки точности модели - 48 наблюдений.

Модель будет состоять из двух слоёв. Первый слой содержит всего 4 нейрона. Выходной слой - всего один нейрон, из которого будут "выходить" предсказанные количества пассажиров.

Model = Sequential() model.add(LSTM(4, input_dim=look_back)) model.add(Dense(1)) model.compile(loss="mean_squared_error", optimizer="adam")

Загрузим данные в модель:

Model.fit(trainX, trainY, nb_epoch=5, batch_size=1, verbose=2) Epoch 1/5 0s - loss: 0.0019 Epoch 2/5 0s - loss: 0.0020 Epoch 3/5 0s - loss: 0.0020 Epoch 4/5 0s - loss: 0.0019 Epoch 5/5 0s - loss: 0.0020

Оценим ошибку работы модели:

TrainPredict = model.predict(trainX) testPredict = model.predict(testX) trainScore = math.sqrt(mean_squared_error(trainY, trainPredict[:,0])) print("Train Score: %.2f RMSE" % (trainScore)) testScore = math.sqrt(mean_squared_error(testY, testPredict[:,0])) print("Test Score: %.2f RMSE" % (testScore)) Train Score: 0.04 RMSE Test Score: 0.11 RMSE

На тестовой выборке ошибка составила 0.11. Это значит, что модель в среднем ошибается на 11 тыс. пассажиров. Для того, чтобы понять, много это или нет, давайте визуализируем результат.

Итак, синим обозначен исходный график. Зелёное- это правильные предсказания на обученной выборке. Нас интересует красная чаcть - предсказания модели на тестовой выборке. Мы видим, что модель примерно угадывает годовые циклы и общий тренд.

Вот так работают рекуррентные нейронные сети. Ещё раз повторюсь- это очень простой пример для иллюстрации. Например, для анализа медицинских записей используют более глубокие сети. Также, для повышения точности предсказаний их можно объекдинить со свёрточными нейронными сетями, описанными

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

Архитектура рекуррентных сетей

Существуют различные варианты архитектур рекуррентных ней­ронных сетей.

Сеть Джордана: В 1986 г. Джордан (Jordan) предложил рекур­рентную сеть (рис. 6), в которой выходы нейронных элементов по­следнего слоя соединены посредством специальных входных нейронов с нейронами промежуточного слоя. Такие входные нейронные эле­менты называются контекстными нейронами (context units). Они рас­пределяют выходные данные нейронной сети на нейронные элементы промежуточного слоя.

Рис. 6 Архитектура рекуррентной ней­ронной сети с обратными связями от нейро­нов выходного слоя

Число контекстных нейронов равняется числу выходных ней­ронных элементов рекуррентной сети. В качестве выходного слоя та­ких сетей используются нейронные элементы с линейной функцией активации. Тогда выходное значение j -го нейронного элемента последнего слоя определяется по формуле

где v ij - весовой коэффи­циент между i -м нейроном промежуточного и j -м ней­роном выходного слоев; P i (t )- выходное значение i -го нейрона промежуточ­ного слоя; t j - пороговое значение j -го нейрона вы­ходного слоя. Взвешенная сумма i -гo нейронного элемента промежуточного слоя определяется следующим образом:

где w ij - весовой коэффициент между j -м нейроном входного и i -м нейроном промежуточного слоев; р - число нейронов выходного слоя; w ki - весовой коэффициент между k -м контекстным нейроном и i -м нейроном промежуточного слоя; T - пороговое значение i -го нейрона промежуточного слоя; n - размерность входно­го вектора.



Тогда выходное значение i -го нейрона скрытого слоя

В качестве функции не­линейного преобразования F обычно используется гипер­болический тангенс или сигмоидная функция.

Для обучения рекуррентных нейронных сетей применяется алго­ритм обратного распространения ошибки.

Алгоритм обучения рекуррентной нейронной сети в общем слу­чае состоит из следующих шагов:

1. В начальный момент времени t = 1 все контекстные нейроны устанавливаются в нулевое состояние - выходные значения прирав­ниваются нулю.

2. Входной образ подается на сеть и происходит прямое распро­странение его в нейронной сети.

3. В соответствии с алгоритмом обратного распространения ошибки модифицируются весовые коэффициенты и пороговые значе­ния нейронных элементов.

4. Устанавливается t = t +1 и осуществляется переход к шагу 2. Обучение рекуррентной сети производится до тех пор, пока сум­марная среднеквадратичная ошибка сети не станет меньше заданной.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: