RNN с настройкой «многие к одному» - какой выход использовать - PullRequest
0 голосов
/ 10 мая 2018

Я рассмотрел серию примеров машинного обучения, в которых для классификации документов используются RNN (многие-к-одному). В большинстве учебных пособий используется выход RNN последнего временного шага, т. Е. Подается в один или несколько плотных слоев для сопоставления его с числом классов (например, [1] , [2 ] ).

Однако я также натолкнулся на несколько примеров, где вместо последнего вывода используется среднее значение выходов за все временные шаги (среднее объединение ?, например, [3] ). Размеры этого усредненного результата, конечно, такие же, как и для последнего результата. Таким образом, в вычислительном отношении оба подхода работают одинаково.

Теперь мои вопросы: какова интуиция между двумя разными подходами? Из-за рекурсивного характера последний вывод также отражает вывод предыдущих временных шагов. Так почему же идея усреднения выходов RNN по всем временным шагам. Когда использовать что?

1 Ответ

0 голосов
/ 10 мая 2018

Объединение во времени - это особый метод, который используется для извлечения элементов из последовательности ввода.Из этого вопроса :

Причина сделать это вместо "понижающей дискретизации" предложения, как в CNN, состоит в том, что в НЛП предложения, естественно, имеют различную длину вкорпус.Это делает карты возможностей разными для разных предложений, но мы хотели бы уменьшить тензор до фиксированного размера, чтобы в конце применить softmax или регрессионную головку.Как указано в документе, он позволяет захватить наиболее важную функцию, одну с наибольшим значением для каждой карты объектов.

Здесь важно отметить, что максимальное время (или среднее время)-time) обычно представляет собой промежуточный слой.В частности, их может быть несколько в ряду или параллельно (с разным размером окна).Конечный результат, создаваемый сетью, все еще может быть либо «многие к одному», либо «многие ко многим» (по крайней мере, в теории).

Однако в большинстве случаев существует одиночный выход из РНН.Если выходной сигнал должен быть последовательностью, этот выходной сигнал обычно подается в другой RNN.Таким образом, все сводится к тому, как именно это единственное значение запоминается: взять последние выходные данные ячейки или объединить всю последовательность или применить механизм внимания и т. Д.

...