スライディングウィンドウは、LSTMでオーバーフィッティングにつながりますか?


15

スライディングウィンドウアプローチでLSTMをトレーニングする場合、LSTMをオーバーフィットしますか?なぜ人々はそれをLSTMに使用しないように見えるのですか?

簡単な例として、文字のシーケンスを予測する必要があると仮定します。

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

次のミニバッチを使用してLSTMをトレーニングし続けると、悪い(またはより良い)でしょうか。

A B C D E F G H I J K L M N, backprop, erase the cell

B C D E F G H I J K L M N O, backprop, erase the cell

 .... and so on, shifting by 1 every time?

以前は、次のように常にトレーニングしていました。

A B C D E F G H I J K L M N,  backprop, erase the cell

O P Q R S T U V W X Y Z,  backprop, erase the cell

1つずつシフトするのではなく、代わりに2エントリずつウィンドウをスライドさせる方がよいでしょうか?それは何を意味しますか(精度/オーバーフィッティングに関して)?


また、フィードフォワードネットワークでスライディングウィンドウアプローチを行うと、オーバーフィットになりますか?ネットワークは非常に長い間同じ情報領域にさらされているため、私は「はい」と仮定します。たとえばE F G H I J K、長時間さらされます。


編集:

セルの状態はトレーニングバッチ間で消去されるため、LSTMにはこれらの時間に「ハンマートゥヘッド」があることに注意してください。OPQRSTUVWXYZの前の状態を思い出すことはできません。これは、LSTMが「O」が「M」に続くことを知ることができないことを意味します。

だから、私は(したがって私の質問全体)、中間に(重複する)バッチを与えないのだと思いました...そしてその場合、複数の重複するミニバッチを使用しないのはなぜですか?私にとってこれはよりスムーズなトレーニングを提供しますか?最終的に、それはLSTMのスライディングウィンドウを意味します。


回答が受け入れられた後に私が見つけたいくつかの有用な情報:

ここから

英語の翻訳の最初の単語は、おそらくソース文の最初の単語と非常に相関しています。ただし、デコーダーは50ステップ前の情報を考慮する必要があり、その情報は何らかの方法でベクターにエンコードする必要があります。リカレントニューラルネットワークには、このような長距離の依存関係を処理する問題があることが知られています。理論的には、LSTMのようなアーキテクチャはこれに対処できるはずですが、実際には長距離の依存関係には依然として問題があります。

たとえば、研究者は、ソースシーケンスを逆にする(エンコーダに逆方向に送る)と、デコーダからエンコーダの関連部分へのパスが短くなるため、結果が大幅に向上することを発見しました。同様に、入力シーケンスを2回入力することも、ネットワークが物事をよりよく記憶するのに役立つようです。たとえば、あるトレーニングの例が「ジョンが帰宅した」場合、「ジョンは帰宅しました」をネットワークに1つの入力として与えます。

回答を受け入れてから編集します。

数か月後、データをより適切に使用するため、スライディングウィンドウアプローチを使用する傾向が強くなりました。しかし、その場合、おそらくABCDEFGHIJKLMNOの直後にBCDEFGHIJKLMNOをトレーニングしたくないでしょう。代わりに、サンプルをシャッフルして、すべての情報をLSTM に徐々に「均一に」取り入れてください。ABCDEFGHIJKLMNOなどの後にHIJKLMNOPQRSTUを付けてください。これは壊滅的な忘却に直接関係しています。いつものように、検証とテストのセットを注意深く監視し、エラーが着実に増加しているのを確認したらすぐに停止します

また、合成勾配を使用することにより、「ハンマートゥヘッド」の問題を改善できます。ここでその利点を参照してください:(リンクされた回答は長いシーケンスの利点を説明しています)/datascience//a/32425/43077

回答:


9

@Imranによる以前の答えは正しいものの、注意を追加する必要があると感じています。LSTMにスライディングウィンドウをフィードするアプリケーションがあります。たとえば、ここでは、予測された学習問題としての予測のフレーミングについて説明します。

データがあまり豊富でない場合は、すべてのLSTMが過剰に適合していることがあります。LSTMには多くのパラメーターがあります(実際、パラメーターがあります。この投稿によると、は入力長、は出力長です)。m n4(mn+n2+n)mn

LSTMは固定サイズの入力を必要としないため、最適なルックバック番号を独自に見つけることができます。ただし、以前の自己回帰分析を行って、たとえば、現在のタイムステップが10番目の以前のタイムステップと最も相関があり、11番目または過去のタイムステップとは相関していないと判断した場合は、固定長のシーケンスを入力することで、トレーニング時間を節約できます。ただし、そのようなことはLSTMの目的に反します。

LSTMに十分なデータがない場合は、自己回帰モデルなど、もっと単純なものを試してみてください。

編集(コメントへの応答):

重複するシーケンスは、特にシーケンスが非常に長い場合に入力として使用されます(もちろん、 'long'は相対的です)。LSTMは長いシーケンスではバニラRNNよりも優れていますが、シーケンスが非常に長い場合、シーケンスの先頭からの時間ステップを覚えるのに多少の問題があります。その結果、双方向のLSTMのようになり、シーケンスを前後に読み取り、各入力シーケンスの開始と終了に対するネットワークの露出を改善しました。重複するシーケンスの方が原理は同じですが、重複するシーケンスの方が直感的だと主張します。


ありがとう、IIはLSTMが重複しないバッチでトレーニングされるべきかどうかをまだ見ていません。気に入った投稿は貴重なものですが、フィードフォワードネットについてのみ説明し、トレーニング中のLSTMの重複するミニバッチの利点/危険性については触れていません。@Imranは、ミニバッチの重複に対する「反処方」についても話しませんでした-彼の投稿に対する私の最初のコメント。
カリ

私はコメントを含めるように私の質問を編集した
カリ

たくさんの素晴らしい情報!
イムラン

@Kari答えを修正しました。それは役立ちますか?
-StatsSorceress

5

LSTMでは、入力のスライディングウィンドウは必要ありません。彼らは過去に見たものを思い出すことができ、トレーニングの例を一度に1つずつフィードすると、入力の適切なサイズのウィンドウを選択して自分で覚えることができます。

LSTMはすでに過剰適合の傾向があり、スライディングウィンドウで多くの冗長データを入力すると、過剰適合になる可能性があります。

一方、FNNは固定サイズの入力を必要とし、メモリがないため、フィードフォワードニューラルネットワークを使用した時系列予測にはスライディングウィンドウが必要です。これは、時系列データを供給する最も自然な方法です。

FNNがオーバーフィットするかどうかは、そのアーキテクチャとデータに依存しますが、すべての標準正則化手法が適用されます。たとえば、小規模なネットワーク、L2正則化、ドロップアウトなどを選択してみてください。


ありがとう!セルの状態はトレーニングバッチ間で消去されるため、LSTMはこれらの時間に「ハンマートゥヘッド」を持つことになります。OPQRSTUVWXYZの前の状態を思い出すことはできません。これは、LSTMが「O」が「M」に続くことを知ることができないことを意味します。だから、なぜ中間の(重複する)バッチを間に与えないのだろうと考えました...そしてその場合、複数の重複するミニバッチを使用しないのはなぜですか?私にとってこれはよりスムーズなトレーニングを提供しますか?
カリ

最終的に、それはLSTMのスライディングウィンドウを意味します
Kari

トレーニングバッチ間でセルの状態を消去する必要はありませんが、逆方向のバックプロパゲーションはもちろん不可能です。
ヤン・ファン・デル・ベクト

試してみました-学習率が0でも、トレーニング中に誤ったセルの状態が「レガシー」として再利用されたため、エラーはわずかに上下しました。このアプローチでは6層以上スタックできませんでした。カオスになりすぎて収束しませんでした。ただし、各バックプロップでセル状態をゼロにリセットすると、各レイヤーに64個のニューロンを含む150個のレイヤーをスタックし、0.001の学習率と0.9の運動量でトレーニングできます(LayerNormalizationを使用しているため、学習率が非常に大きいのはこのためです)
カリ

1
これは、「レガシーセルステート」ではLSTMが不安定になり、信頼性が低下することを意味します。完全に修正されなかった(以前のミニバッチの)最後のセル状態に基づいて決定する新しいミニバッチの作業を開始します。したがって、セル状態を消去すると、この基本的な欠陥はなくなりますが、LSTMに健忘症が発生します
Kari
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.