РЕКУРРЕНТНЫЕ НЕЙРОННЫЕ СЕТИ
Файзулин Максим
Москва, 2023
РЕКУРРЕНТНЫЕ НЕЙРОННЫЕ СЕТИ (RNN)
Рекуррентные нейронные сети (RNN) — это класс нейронных сетей, которые хороши для моделирования последовательных данных, таких как временные ряды или естественный язык.
Типовые примеры задач:
– Задачи распознавания речи: обработка последовательности
звуков, обработка текстов естественного языка
– Задачи компьютерного зрения: обработка
последовательности кадров видео, некоторые задачи
обработки изображений
РЕКУРРЕНТНЫЕ НЕЙРОННЫЕ СЕТИ (RNN)
Значения нейронов зависят не только от весов, но и от старых значений этих же нейронов
АРХИТЕКТУРЫ RNN
1)
2)
3)
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
Идея использования LSTM сети:
Общая структура ячейки с долгой кратковременной памятью (long short-term memory, LSTM) предполагает наличие нейронов, имеющих связь на себя
Данные поступают на вход нейрону и обработанные данные выдаются на выход
Рекуррентная связь со своим входом имеет вес равный 1
Если на вход не поступает никаких новых данных, значение нейрона перезаписывается и сохраняется неизменным
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
Этапы формирования предсказания LSTM нейронной сети на основе входных параметров:
Для управления данной структурой используются три вентиля,
определяющих прохождение сигнала:
входной вентиль - Если входной вентиль открыт (установлен в 1), осуществляется запись входного сигнала в скрытый нейрон, после чего значение записывается и сохраняется в нейроне за счет рекуррентной обратной связи. Если входной вентиль закрыт (установлен в 0), значения,
поступающие на вход нейрона не влияют на его содержание
вентиль забвения – этап, на котором формируется условие обнуления полученной информации на входном вентиле.
выходной вентиль - Если необходимо получить значение, сохраненное в ячейке, необходимо открыть выходной вентиль (установить в 1). Если значение, содержащееся в ячейке, требуется «забыть»,
необходимо закрыть вентиль забвения. После этого значение будет стерто из нейрона, и нейрон будет готов для сохранения
нового входного значения.
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
Основной составляющей компонентой LSTM-ячейки является ее состояние 𝐶𝑡, которое передается во времени
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
НЕЙРОННЫЕ СЕТИ ДОЛГОЙ КРАТКОВРЕМЕННОЙ ПАМЯТИ
Cхема классической LSTM нейросети
Cхема двунаправленной LSTM нейросети
ДОПОЛНИТЕЛЬНЫЕ ФУНКЦИИ ПОТЕРЬ
Бинарная перекрестная энтропия
Категориальная перекрестная энтропия
где y – значение класса (1 и 0), а p(y) - предсказанная вероятность того, что значение относится к 1, для всех N наблюдений.
где t – значение класса (1 и 0), а f(s) - предсказанная вероятность того, что значение относится к 1, для каждого i-го наблюдения
ОПТИМИЗАТОРЫ В МИНИМИЗАЦИИ ЗНАЧЕНИЙ ФУНКЦИИ ПОТЕРЬ
Популярность оптимизаторов
Оптимизаторы в глубоком обучении используются для настройки весов нейронных сетей в процессе обучения, чтобы минимизировать функцию потерь и повысить точность модели.
ОПТИМИЗАТОРЫ В МИНИМИЗАЦИИ ЗНАЧЕНИЙ ФУНКЦИИ ПОТЕРЬ
ОПТИМИЗАТОРЫ ДЛЯ МИНИМИЗАЦИИ ЗНАЧЕНИЙ ФУНКЦИИ ПОТЕРЬ
Математическая имплементация (вывод формул по популярным методам оптимизации)
Вывод: обратное распространение ошибки – классический метод обновления весов в модели. На данный момент существуют модифицированные версии обновления весов с решениями проблем локальных минимумов, проблем «седла» и т.п. Для базовых задач классификации хорошо подходит Adam.