2
LSTMがバニラリカレントニューロンネットワークよりも情報ラッチングのパフォーマンスが悪い理由
ベンジオらによる「勾配降下法による長期依存性の学習は難しい」という論文から実験をやり直すことで、LSTMがバニラ/単純リカレントニューラルネットワーク(SRNN)よりも長い期間情報を記憶できる理由をよく理解したいと思います。1994。 その論文の図1と2を参照してください。シーケンスが指定されている場合、タスクは単純です。高い値(1など)で始まる場合、出力ラベルは1です。低い値(たとえば-1)で始まる場合、出力ラベルは0です。中央はノイズです。このタスクは、モデルが正しいラベルを出力するためにミドルノイズを通過するときに開始値を覚えておく必要があるため、情報ラッチと呼ばれます。単一ニューロンRNNを使用して、このような動作を示すモデルを作成しました。図2(b)は結果を示しています。このようなモデルのトレーニングの成功頻度は、シーケンスの長さが増加するにつれて劇的に減少します。LSTMは、1994年にまだ発明されていないため、結果はありませんでした。 それで、私は好奇心が強くなり、LSTMが実際にそのようなタスクに対してより良いパフォーマンスを発揮するかどうかを見たいと思います。同様に、バニラセルとLSTMセルの両方に単一のニューロンRNNを構築して、情報ラッチをモデル化しました。驚いたことに、LSTMのパフォーマンスが低下していることがわかりました。理由はわかりません。誰かが私を説明するのを手伝ってもらえますか、または私のコードに何か問題がある場合はどうですか? これが私の結果です: これが私のコードです: import matplotlib.pyplot as plt import numpy as np from keras.models import Model from keras.layers import Input, LSTM, Dense, SimpleRNN N = 10000 num_repeats = 30 num_epochs = 5 # sequence length options lens = [2, 5, 8, 10, 15, 20, 25, 30] + np.arange(30, 210, …