Введение

Компьютерная модель, используемая в машинном обучении.

Рекуррентная нейронная сеть (RNN) – один из двух основных типов искусственных нейронных сетей, характеризующийся направлением потока информации между слоями. В отличие от однонаправленной нейронной сети прямого распространения, она является двунаправленной искусственной нейронной сетью, что означает, что выходные данные некоторых узлов могут влиять на последующий вход в те же узлы. Их способность использовать внутреннее состояние (память) для обработки произвольных последовательностей входных данных делает их применимыми к задачам, таким как несегментированное, связное распознавание рукописного текста или распознавание речи. Термин «рекуррентная нейронная сеть» используется для обозначения класса сетей с бесконечным импульсным откликом, в то время как «сверточная нейронная сеть» относится к классу сетей с конечным импульсным откликом. Оба класса сетей демонстрируют временную динамику. Рекуррентная сеть с конечным импульсным откликом – это ориентированный ациклический граф, который можно развернуть и заменить строго прямой нейронной сетью, в то время как рекуррентная сеть с бесконечным импульсным откликом – это ориентированный циклический граф, который нельзя развернуть. Дополнительные состояния памяти и хранение под непосредственным управлением сети могут быть добавлены как к сетям с бесконечным, так и с конечным импульсным откликом. Другая сеть или граф также может заменить хранилище, если оно включает временные задержки или содержит петли обратной связи. Такие управляемые состояния называются управляемыми состояниями или управляемой памятью и являются частью сетей долгой краткосрочной памяти (LSTM) и управляемых рекуррентных блоков. Это также называется нейронной сетью с обратной связью (ФНС). Рекуррентные нейронные сети теоретически являются полными по Тьюрингу и могут выполнять произвольные программы для обработки произвольных последовательностей входных данных.

ЛСТМ

Сети долгой краткосрочной памяти (LSTM) были изобретены Хохрайтером и Шмидхубером в 1997 году и установили рекорды точности в различных областях применения. Около 2007 года LSTM начали революционизировать распознавание речи, превосходя традиционные модели в определенных задачах. В 2009 году сеть LSTM, обученная с использованием Connectionist Temporal Classification (CTC), стала первой рекуррентной нейронной сетью (RNN), выигравшей соревнования по распознаванию образов, одержав победу в нескольких конкурсах по распознаванию рукописного текста. В 2014 году китайская компания Baidu использовала RNN, обученные с помощью CTC, чтобы превзойти эталонный показатель набора данных 2S09 Switchboard Hub5'00 для распознавания речи, не используя традиционные методы обработки речи. LSTM также улучшили распознавание речи с большим словарным запасом и были использованы в Google Android. В 2015 году, по сообщениям, система распознавания речи Google продемонстрировала значительный скачок производительности в 49% благодаря LSTM, обученным с помощью CTC. LSTM установили новые рекорды в улучшении машинного перевода, языкового моделирования и многоязыковой обработки языка. LSTM, в сочетании со сверточными нейронными сетями (CNN), улучшили автоматическое создание подписей к изображениям.

Архитектура

Рекуррентные нейронные сети (RNN) имеют множество вариантов.

Полностью рецидивирующие

Полностью рекуррентные нейронные сети (FRNN) соединяют выходы всех нейронов со входами всех нейронов. Это наиболее общая топология нейронной сети, поскольку все остальные топологии могут быть представлены путем установки некоторых весов соединений в ноль, чтобы имитировать отсутствие связей между этими нейронами. Иллюстрация справа может ввести в заблуждение, поскольку практические топологии нейронных сетей часто организованы в "слои", и рисунок создает такое впечатление. Однако то, что выглядит как слои, на самом деле представляет собой различные моменты времени одной и той же полностью рекуррентной нейронной сети. На иллюстрации слева рекуррентные соединения показаны в виде дуги, обозначенной как 'v'. Она "разворачивается" во времени, создавая иллюзию слоев.

Хопфилд

Сеть Хопфилда – это рекуррентная нейронная сеть (RNN), в которой все связи между слоями имеют одинаковый вес. Она требует стационарных входных данных и, следовательно, не является универсальной RNN, поскольку не обрабатывает последовательности образов. Однако она гарантированно сходится. Если связи обучаются по правилу Хебба, то сеть Хопфилда может функционировать как устойчивая ассоциативная память, невосприимчивая к изменениям связей.

Двунаправленная ассоциативная память

Введённая Бартом Коско двунаправленная ассоциативная память (BAM) является вариантом сети Хопфилда, хранящим ассоциативные данные в виде вектора. Двунаправленность обеспечивается прохождением информации через матрицу и её транспонированную матрицу. Как правило, для кодирования ассоциативных пар предпочтительнее использовать биполярное кодирование, чем бинарное. В последнее время стохастические модели BAM с использованием марковских шагов были оптимизированы для повышения стабильности сети и её применимости к реальным задачам. Сеть BAM состоит из двух слоёв, каждый из которых может использоваться в качестве входа для восстановления ассоциации и формирования выхода на другом слое.

Состояние эхо

Сети с эхо-состоянием (ESN) имеют разреженно связанный случайный скрытый слой. Веса выходных нейронов – единственная часть сети, которую можно изменять (обучать). ESN хорошо справляются с воспроизведением определенных временных рядов. Вариант для импульсных нейронов известен как машина жидкого состояния.

Независимое РНН (IndRNN)

Независимо рекуррентная нейронная сеть (IndRNN) решает проблемы затухания и взрыва градиента в традиционных полносвязных RNN. Каждый нейрон в слое получает в качестве контекстной информации только свое собственное предыдущее состояние (вместо полной связи со всеми остальными нейронами этого слоя), благодаря чему нейроны независимы от истории друг друга. Обратное распространение градиента можно регулировать, чтобы предотвратить затухание и взрыв градиента и, таким образом, сохранять долгосрочную или краткосрочную память. Взаимодействие между нейронами исследуется на последующих слоях. IndRNN может быть устойчиво обучена с использованием не насыщающихся нелинейных функций, таких как ReLU. Глубокие сети могут быть обучены с использованием skip-соединений.

Рекурсивный

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

Компрессор нейронной истории

Нейронный компрессор истории — это неконтролируемый стек рекуррентных нейронных сетей (РНН). На входном уровне он учится предсказывать следующий вход на основе предыдущих. Только непредсказуемые входы некоторой РНН в иерархии становятся входами для РНН следующего, более высокого уровня, которая, следовательно, пересчитывает свое внутреннее состояние лишь изредка. Таким образом, каждая РНН более высокого уровня изучает сжатое представление информации из РНН, расположенной ниже. Это достигается таким образом, чтобы входную последовательность можно было точно восстановить из представления на самом верхнем уровне. Система эффективно минимизирует длину описания или отрицательный логарифм вероятности данных. При наличии значительной предсказуемости во входящей последовательности данных, РНН верхнего уровня может использовать контролируемое обучение для легкой классификации даже глубоких последовательностей с большими интервалами между важными событиями. Иерархию РНН можно свести к двум РНН: "сознательному" сегментатору (верхний уровень) и "подсознательному" автоматизатору (нижний уровень). Возможность автоматического дифференцирования или обратного распространения ошибки в нейронных сетях была открыта в 1992 году. В 1993 году подобная система решила задачу "Очень глубокого обучения", для которой требовалось более 1000 последовательных слоев в РНН, развернутой во времени. Долговременная кратковременная память является примером этого, но не обладает подобными формальными соответствиями или доказательствами стабильности.

Долгая краткосрочная память

Долговременная кратковременная память (LSTM) — это система глубокого обучения, которая решает проблему исчезающего градиента. LSTM обычно дополняется рекуррентными вентилями, называемыми "вентилями забывания". LSTM предотвращает исчезновение или взрыв ошибок при обратном распространении, что особенно важно для задач, требующих запоминания событий, произошедших тысячи или даже миллионы дискретных шагов назад. Топологии, специфичные для конкретной задачи, могут быть разработаны на основе LSTM. LSTM эффективно работает даже при больших временных задержках между значимыми событиями и способна обрабатывать сигналы, содержащие компоненты как низких, так и высоких частот. Многие приложения используют стеки LSTM RNN и обучают их с помощью коннекционистской временной классификации (CTC) для поиска матрицы весов RNN, максимизирующей вероятность последовательностей меток в обучающем наборе данных, учитывая соответствующие входные последовательности. CTC обеспечивает как выравнивание, так и распознавание. LSTM способна изучать контекстно-зависимые языки, в отличие от предыдущих моделей, основанных на скрытых марковских моделях (HMM) и подобных концепциях. Их производительность в моделировании полифонической музыки и речевых сигналов оказалась сопоставимой с LSTM. Они имеют меньше параметров, чем LSTM, поскольку не содержат выходного вентиля.

Двунаправленный

Двунаправленные рекуррентные нейронные сети (RNN) используют конечную последовательность для предсказания или разметки каждого элемента последовательности, основываясь на контексте, предшествующем и следующем за этим элементом. Это достигается путем объединения выходов двух RNN: одна обрабатывает последовательность слева направо, а другая – справа налево. Полученные объединенные выходы являются предсказаниями, выдаваемыми моделью на основе целевых сигналов. Эта техника особенно эффективна при использовании с рекуррентными нейронными сетями LSTM.

Иерархическая рекуррентная нейронная сеть

Иерархические рекуррентные нейронные сети (HRNN) соединяют свои нейроны различными способами для декомпозиции иерархического поведения на полезные подпрограммы. Подобные иерархические структуры познания встречаются в теориях памяти, предложенных философом Анри Бергсоном, чьи философские взгляды послужили вдохновением для иерархических моделей. Иерархические рекуррентные нейронные сети полезны в прогнозировании, помогая предсказывать отдельные компоненты инфляции индекса потребительских цен (ИПЦ). Модель HRNN использует информацию с верхних уровней иерархии ИПЦ для повышения точности прогнозов на нижних уровнях. Оценка значительного набора данных по индексу CPI U в США демонстрирует превосходство модели HRNN по сравнению с различными устоявшимися методами прогнозирования инфляции.

Рецидивирующая многослойная перцептроновая сеть

Как правило, рекуррентная многослойная перцептронная сеть (RMLP-сеть) состоит из каскадно соединенных подсетей, каждая из которых содержит несколько слоев нейронов. Каждая подсеть является прямой сетью распространения, за исключением последнего слоя, который может иметь связи обратной связи. Каждая из этих подсетей соединена только прямыми связями.

Модель с несколькими временными масштабами

Многовременная рекуррентная нейронная сеть (MTRNN) – это вычислительная модель, основанная на нейронных сетях, способная моделировать функциональную иерархию мозга посредством самоорганизации, зависящей от пространственных связей между нейронами и различных типов нейронной активности, каждый из которых обладает собственными временными характеристиками. Благодаря такому разнообразию нейронной активности, непрерывные последовательности любых поведенческих паттернов сегментируются на повторно используемые примитивы, которые, в свою очередь, гибко интегрируются в разнообразные последовательные поведения. Биологическое обоснование подобной иерархии было рассмотрено в теории предсказания памяти функций мозга, предложенной Хокинсом в его книге «Об интеллекте». Эта иерархия также согласуется с теориями памяти, выдвинутыми философом Анри Бергсоном, которые были интегрированы в модель MTRNN.

Нейронные машины Тьюринга

Нейронные машины Тьюринга (НМТ) — это способ расширения рекуррентных нейронных сетей за счет подключения к внешним ресурсам памяти, с которыми они взаимодействуют посредством механизмов внимания. Полученная комбинированная система аналогична машине Тьюринга или архитектуре фон Неймана, но при этом является полностью дифференцируемой, что позволяет эффективно обучать её методом градиентного спуска.

Дифференцируемый нейронный компьютер

Дифференцируемые нейронные компьютеры (DNC) являются расширением нейронных машин Тьюринга, обеспечивая возможность использования нечетких объемов каждого адреса памяти и ведение истории обращений.

Автоматы нейронной сети

Нейронные сетевые автоматы с магазинной памятью (NNPDA) похожи на NTM, но ленты заменены аналоговыми стеками, которые являются дифференцируемыми и поддаются обучению. В этом отношении они сопоставимы по сложности с распознавателями контекстно-свободных грамматик (CFG).

Сети членов

Грег Снайдер из HP Labs описывает систему кортикальных вычислений с использованием мемристивных наноустройств. Мемисторы (резисторы памяти) реализованы на основе тонкопленочных материалов, в которых сопротивление электрически настраивается посредством переноса ионов или дефектов (вакансий) кислорода внутри пленки. Проект DARPA SyNAPSE профинансировал исследования IBM Research и HP Labs в сотрудничестве с Департаментом когнитивных и нейронных систем Бостонского университета (CNS) для разработки нейроморфных архитектур, которые могут быть основаны на мемристивных системах. Мемристивные сети представляют собой особый тип физических нейронных сетей, обладающих свойствами, очень схожими с сетями Хопфилда, поскольку они характеризуются непрерывной динамикой, ограниченной емкостью памяти и естественной релаксацией посредством минимизации функции, асимптотически приближающейся к модели Изинга. В этом отношении динамика мемристивной цепи имеет преимущество перед RC-цепью, демонстрируя более интересное нелинейное поведение. С этой точки зрения, разработка аналоговых мемристивных сетей представляет собой специфический вид нейроморфной инженерии, в котором поведение устройства зависит от схемы соединения или топологии цепи. Эволюцию этих сетей можно изучать аналитически, используя модификации уравнения Каравелли–Траверса–Ди Вентра.

Связанные области и модели

Рекуррентные нейронные сети (RNN) могут демонстрировать хаотичное поведение. В таких случаях для анализа может быть применена теория динамических систем. По сути, это рекурсивные нейронные сети с определенной структурой – линейной цепочкой. В то время как рекурсивные нейронные сети оперируют с любой иерархической структурой, объединяя представления дочерних элементов в представления родительских, рекуррентные нейронные сети работают с линейной последовательностью времени, объединяя состояние предыдущего временного шага и скрытое представление для формирования состояния текущего временного шага. В частности, RNN можно рассматривать как нелинейные аналоги фильтров с конечным и бесконечным импульсным откликом, а также как нелинейную авторегрессионную экзогенную модель (NARX). Эффект обучения с памятью для распознавания последовательностей также может быть реализован более биологически обоснованной моделью, использующей механизм подавления, наблюдаемый в нейронах с относительно высокой частотой спайков.