GRU и LSTM: современные рекуррентные нейронные сети | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 27 апреля, печатный экземпляр отправим 1 мая.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №15 (95) август-1 2015 г.

Дата публикации: 31.07.2015

Статья просмотрена: 9569 раз

Библиографическое описание:

Будыльский, Д. В. GRU и LSTM: современные рекуррентные нейронные сети / Д. В. Будыльский. — Текст : непосредственный // Молодой ученый. — 2015. — № 15 (95). — С. 51-54. — URL: https://moluch.ru/archive/95/21426/ (дата обращения: 19.04.2024).

Рекуррентные нейронные сети (Recurrent Neural Network, RNN) — класс моделей машинного обучения, основанный на использовании предыдущих состояний сети для вычисления текущего [5; 10]. Такие сети удобно применять в тех случаях, когда входные данные задачи представляют собой нефиксированную последовательность значений, как, например, текстовые данные, где текстовый фрагмент представлен нефиксированным количеством предложений, фраз и слов. Каждый символ в тексте, отдельные слова, знаки препинания и даже целые фразы — все это может являться атомарным элементом входной последовательности.

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

где  — входной вектор в момент времени  (например, векторное представление текущего слова в текстовом фрагменте); , ,  — обучаемые параметры рекуррентной нейронной сети;  — функция нелинейного преобразования. Чаще всего в качестве нелинейного преобразования применяют одну из следующих функций: сигмоидальная функция (1), гиперболический тангенс (2), функция-выпрямитель (3):

                                                                                                  (1)

                                                                                          (2)

                                                                                                        (3)

В простой рекуррентной нейронной сети (см. рис. 1) выходное значение  на текущем шаге  вычисляется по формуле:

где  и  — обучаемые параметры.

В 1997 году Зепп Хохрайтер (Sepp Hochreiter) и Юрген Шмидхубер (Jürgen Schmidhuber) представили новый подход, получивший название LSTM (Long Short-Term Memory — долгая краткосрочная память) [8]. Рекуррентные нейронные сети, основанные на этом подходе, имеет более продвинутый (и более сложный) способ вычисления . Данный способ, помимо входных значений и предыдущего состояния сети, использует также фильтры (gates), определяющие, каким образом информация будет использоваться для вычисления как выходных значений на текущем слое , так и значений скрытого слоя на следующем шаге . Весь процесс вычисления  для простоты упоминается как LSTM-слой (LSTM layer, LSTM unit).

Рис. 1. Простая рекуррентная нейронная сеть

 

Рассмотрим подробнее структуру LSTM-слоя. Центральным понятием здесь является запоминающий блок (memory cell), который, наряду с состоянием сети , вычисляется на каждом шаге, используя текущее входное значение  и значение блока на предыдущем шаге . Входной фильтр (input gate)  определяет, насколько значение блока памяти на текущем шаге должно влиять на результат. Значения фильтра варьируются от 0 (полностью игнорировать входные значения) до 1, что обеспечивается областью значений сигмоидальной функции:

                                                                                        (4)

«Фильтр забывания» (forget gate) позволяет исключить при вычислениях значения памяти предыдущего шага:

                                                                                     (5)

На основе всех данных, поступающих в момент времени  (а именно, ,  и ), вычисляется состояние блока памяти  на текущем шаге, используя фильтры (4) и (5):

                                                                                    (6)

Выходной фильтр (output gate) аналогичен двум предыдущим и имеет вид:

                                                                                     (7)

Итоговое значение LSTM-слоя определяется выходным фильтром (7) и нелинейной трансформацией над состоянием блока памяти (6):

В 2014 году в работе [15] была представлена модель GRU (Gated Recurrent Unit), основанная на тех же принципах, что и LSTM, но использует меньше фильтров и операций для вычисления  [6]. Фильтр обновления (update gate)  и фильтр сброса состояния (reset gate)  вычисляются по следующим формулам:

                                                                                     (8)

                                                                                      (9)

Выходное значение  вычисляется на основе промежуточного значения , которое, при помощи фильтра сброса состояния (9), определяет, какие значения предыдущего шага  следует исключить (здесь можно видеть прямую аналогию с фильтром забывания из LSTM):

                                                                          (10)

Используя фильтр обновления (8) и промежуточное значение (10), имеем:

Сходства и различия между LSTM- и GRU-слоями можно изобразить схематически (см. рис. 2)

Рис. 2. Схематическое представление LSTM (слева) и GRU (источник: [6])

 

Несмотря на то, что в целом развитие вычислительных моделей идет от простых к более сложным, более простая модель GRU появилась на 17 лет позже модели LSTM. Сама формулировка Gated Recurrent Unit является более обобщающей и подразумевает включение в себя LSTM как частного случая. Однако, это не более чем занимательный исторический факт. Семейство рекуррентных нейронных сетей, использующих фильтры (gates), благодаря LSTM, за свою историю получило активное развитие в следующих областях [12]:

-                    распознавание рукописного текста [1; 3; 4];

-                    моделирование языка [7];

-                    машинный перевод [2; 15];

-                    обработка аудио [13], видео [11] и изображений [14];

-                    анализ тональности и классификация текстов [16];

-                    целый ряд других областей, использующих алгоритмы машинного обучения.

Стоит отметить, что такое активное внимание к рассмотренному семейству моделей в настоящее время обусловлено, в частности, высокими показателями их эффективности во многих задачах. Как и другие рекуррентные нейронные сети, LSTM и GRU (особенно двух- и многослойные) характеризуются достаточно сложной процедурой обучения. Значительно ускорить процессы обучения глубоких нейросетей позволяют графические процессоры (Graphics Processing Unit, GPU), что наглядно демонстрируется активной реализацией (и оптимизацией) описанных рекуррентных моделей под GPU-вычисления [9]

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

 

Литература:

 

1.                   A novel connectionist system for unconstrained handwriting recognition / A. Graves [et al.] // Pattern Analysis and Machine Intelligence, IEEE Transactions on. — 2009. — Vol. 31, no. 5. — Pp. 855–868.

2.                   Addressing the Rare Word Problem in Neural Machine Translation / T. Luong [et al.] // arXiv preprint arXiv:1410.8206. — 2014.

3.                   Doetsch P., Kozielski M., Ney H. Fast and robust training of recurrent neural networks for offline handwriting recognition // Frontiers in Handwriting Recognition (ICFHR), 2014 14th International Conference on. — IEEE. 2014. — Pp. 279–284.

4.                   Dropout improves recurrent neural networks for handwriting recognition / V. Pham [et al.] // Frontiers in Handwriting Recognition (ICFHR), 2014 14th International Conference on. — IEEE. 2014. — Pp. 285–290.

5.                   Elman J. L. Finding structure in time // Cognitive science. — 1990. — Vol. 14, no. 2. — Pp. 179–211.

6.                   Empirical evaluation of gated recurrent neural networks on sequence modeling / J. Chung [et al.] // arXiv preprint arXiv:1412.3555. — 2014.

7.                   Gated feedback recurrent neural networks / J. Chung [et al.] // arXiv preprint arXiv:1502.02367. — 2015.

8.                   Hochreiter S., Schmidhuber J. Long short-term memory // Neural computation. — 1997. — Vol. 9, no. 8. — Pp. 1735–1780.

9.                   Hwang K., Sung W. Single stream parallelization of generalized LSTM-like RNNs on a GPU // arXiv preprint arXiv:1503.02852. — 2015.

10.               Jordan M. I. Serial order: A parallel distributed processing approach // Advances in psychology. — 1997. — Vol. 121. — Pp. 471–495.

11.               Long-term recurrent convolutional networks for visual recognition and description / J. Donahue [et al.] // arXiv preprint arXiv:1411.4389. — 2014.

12.               LSTM: A Search Space Odyssey / K. Greff [et al.] // arXiv preprint arXiv:1503.04069. — 2015.

13.               Multi-resolution linear prediction based features for audio onset detection with bidirectional LSTM neural networks / E. Marchi [et al.] // Acoustics, Speech and Signal Processing (ICASSP), 2014 IEEE International Conference on. — IEEE. 2014. — Pp. 2164–2168.

14.               Novel approaches for face recognition: template-matching using dynamic time warping and LSTM Neural Network Supervised Classification / A. L. Levada [et al.] // Systems, Signals and Image Processing, 2008. IWSSIP 2008. 15th International Conference on. — IEEE. 2008. — Pp. 241–244.

15.               On the properties of neural machine translation: Encoder-decoder approaches / K. Cho [et al.] // arXiv preprint arXiv:1409.1259. — 2014.

16.               Tai K. S., Socher R., Manning C. D. Improved semantic representations from tree-structured long short-term memory networks // arXiv preprint arXiv:1503.00075. — 2015.

Основные термины (генерируются автоматически): LSTM, GRU, машинное обучение, предыдущий шаг, текущий шаг, Выходное значение, выходной фильтр, нелинейное преобразование, промежуточное значение, простая рекуррентная нейронная сеть.


Похожие статьи

Распознавание английского текста сверточной нейронной сетью

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

Исследование возможностей использования нейронных сетей

Таким образом ИНР не может решать задачу по шагам.

Обучение нейронной сети (Training) — поиск такого набора весовых коэффициентов, при котором входной сигнал после прохода по сети преобразуется в нужный нам выходной.

Искусственные нейронные сети | Статья в журнале...

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

GRU и LSTM: современные рекуррентные нейронные сети.

Введение в нейронные сети | Статья в журнале «Молодой ученый»

Ошибка = выходное значение — полученное = 1.54–1.71 = -0.17. Но что же делать дальше? Известно, что есть ошибка и известно её значение.

GRU и LSTM: современные рекуррентные нейронные сети. Введение в BI-технологии.

Неконтролируемые методы машинного обучения при...

Ключевые слова: неконтролируемое машинное обучение, система обнаружения вторжений, обнаружение аномалий.

SOM Кохонена связывает каждый из входных векторов с выходным делегатом.

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

Матричный метод расчетов динамических рекуррентных...

В статье рассмотрен один из методов использования динамических рекуррентных искусственных нейронных сетей (ИНС) для

В процессе обучения она приобретает знания, которые сохраняются в ассоциативной памяти, во множестве значений коэффициентов...

Нейронные сети в системах управления процессами измельчения...

1) если значение Y при текущем X, хранимое в БП, лучше полученного с ОУ и уменьшается абсолютное значение их разности, то направления уточнения оптимального значения сохраняется.

GRU и LSTM: современные рекуррентные нейронные сети.

Распознавание речи на основе искусственных нейронных сетей

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

Intelligent Evolutionary Studio — программное обеспечение для машинного обучения искусственных нейронных сетей.

Аппаратная реализация искусственных нейронных сетей. Часть 1

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

значение. Cуммирование состояний нейронов может быть легко реализовано используя этапы...

Похожие статьи

Распознавание английского текста сверточной нейронной сетью

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

Исследование возможностей использования нейронных сетей

Таким образом ИНР не может решать задачу по шагам.

Обучение нейронной сети (Training) — поиск такого набора весовых коэффициентов, при котором входной сигнал после прохода по сети преобразуется в нужный нам выходной.

Искусственные нейронные сети | Статья в журнале...

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

GRU и LSTM: современные рекуррентные нейронные сети.

Введение в нейронные сети | Статья в журнале «Молодой ученый»

Ошибка = выходное значение — полученное = 1.54–1.71 = -0.17. Но что же делать дальше? Известно, что есть ошибка и известно её значение.

GRU и LSTM: современные рекуррентные нейронные сети. Введение в BI-технологии.

Неконтролируемые методы машинного обучения при...

Ключевые слова: неконтролируемое машинное обучение, система обнаружения вторжений, обнаружение аномалий.

SOM Кохонена связывает каждый из входных векторов с выходным делегатом.

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

Матричный метод расчетов динамических рекуррентных...

В статье рассмотрен один из методов использования динамических рекуррентных искусственных нейронных сетей (ИНС) для

В процессе обучения она приобретает знания, которые сохраняются в ассоциативной памяти, во множестве значений коэффициентов...

Нейронные сети в системах управления процессами измельчения...

1) если значение Y при текущем X, хранимое в БП, лучше полученного с ОУ и уменьшается абсолютное значение их разности, то направления уточнения оптимального значения сохраняется.

GRU и LSTM: современные рекуррентные нейронные сети.

Распознавание речи на основе искусственных нейронных сетей

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

Intelligent Evolutionary Studio — программное обеспечение для машинного обучения искусственных нейронных сетей.

Аппаратная реализация искусственных нейронных сетей. Часть 1

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

значение. Cуммирование состояний нейронов может быть легко реализовано используя этапы...

Задать вопрос