Рекурсивные нейронные сети (англ.Recursive neural network; RvNN) — вид нейронных сетей, работающих с данными переменной длины. Модели рекурсивных сетей используют иерархические структуры образцов при обучении. Например, изображения, составленные из сцен, объединяющих подсцены, включающие много объектов. Выявление структуры сцены и её деконструкция- нетривиальная задача. При этом необходимо как идентифицировать отдельные объекты, так и всю структуру сцены.
В рекурсивных сетях нейроны с одинаковыми весами активируются рекурсивно в соответствии со структурой сети. В процессе работы рекурсивной сети вырабатывается модель для предсказания для структур переменной размерности, так и скалярных структур через активацию структуры в соответствии с топологией. Сети RvNNs успешно применяются при обучении последовательных структур и деревьев в задачах обработки естественного языка, при этом фразы и предложения моделируются через векторное представление слов. RvNNs первоначально появились для распределённого представления структур, используя предикаты математической логики.[1]
Разработки рекурсивных сетей и первые модели начались в середине 1990-х.[2][3]
В самой простой архитектуре узлы сети сходятся к родителям через матрицу весов скрытого слоя, используемую многократно через всю сеть, и нелинейную функцию активации типа гиперболического тангенса. Если c1 и c2 — n-мерные презентации узлов сети, то их родители также представляют собой n-мерные вектора, вычисляемые как
Здесь W — обученная матрица весов .
Эта архитектура с некоторым усовершенствованием используется для последовательной дешифровки натуральных сцен изображения или для структурирования предложений естественного языка.[4]
Рекурсивная каскадная корреляция (RecCC)
Рекурсивная каскадная корреляция RecCC - это подход к конструированию рекурсивных сетей, оперирующих с тремя доменами[2] , первые приложения такого рода появились в химии[5], а расширение образует направленный ациклический граф.[6]
Тензорные рекурсивные сети используют одну тензорную функцию для всех узлов дерева.[9]
Обучение
Стохастический метод градиентного спуска
Для обучения используется обычно Стохастический метод градиентного спуска (SGD). Градиент определяется через сквозную структуру обратного распространения ошибок (BPTS), этот метод является модификацией обратного распространения ошибок во временных рядах, применяемого для обучения рекуррентных нейронных сетей.
Особенности
В литературе была доказана способность универсальной аппроксимации рекуррентными сетями (RNN) по сетям типа дерева.[10][11]
Рекуррентная нейронная сеть представляет собой рекурсивную сеть со специфической структурой — в виде линейной цепочки. Рекурсивные сети работают на структурах общего типа, включающих иерархию, рекуррентные сети работают исключительно на линейной прогрессии во времени, связывая предыдущий момент времени со следующим через скрытый нейронный слой .
Древовидная эхо-сеть
Древовидная эхо-сеть (Tree Echo State Network) — эффективный пример рекурсивных нейронных сетей,[12] использующих парадигму резервуарного вычисления[англ.] (Reservoir computing)[13].
Расширения до графов
Расширение структуры до графов образует графическую нейронную сеть (graph neural network, GNN)[14],
нейронную сеть для графов (Neural Network for Graphs, NN4G)[15]
и более новые свёрточные нейронные сети для графов.
Ссылки
↑Goller, C.; Küchler, A. Learning task-dependent distributed representations by backpropagation through structure (англ.) // Neural Networks, 1996., IEEE : journal. — doi:10.1109/ICNN.1996.548916.