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