GRUとLSTMの主な違いは、GRUには2つのゲート(リセットおよび更新ゲート)があり、LSTMには3つのゲート(つまり、入力、出力、および忘却ゲート)があることです。
(3つのゲートがあるので)LSTMモデルを介してネットワークをより明確に制御できるのに、なぜGRUを使用するのですか?どのシナリオでGRUがLSTMよりも優先されますか?
GRUとLSTMの主な違いは、GRUには2つのゲート(リセットおよび更新ゲート)があり、LSTMには3つのゲート(つまり、入力、出力、および忘却ゲート)があることです。
(3つのゲートがあるので)LSTMモデルを介してネットワークをより明確に制御できるのに、なぜGRUを使用するのですか?どのシナリオでGRUがLSTMよりも優先されますか?
回答:
GRUはLSTMに関連しています。これは、勾配情報の消失を防ぐために情報をゲーティングする場合、両方が異なる方法を利用しているためです。GRU対LSTMについてのいくつかのピンポイントはここにあります-
詳細な説明については、この研究論文-Arxiv.orgをご覧ください。論文はこれをすべて見事に説明しています。
さらに、これらのブログを調べて、より良いアイデアを見つけることもできます。
それが役に立てば幸い!
*すでに上記の素晴らしい答えを補完するために。
私の経験から、GRUは、言語モデリング(他のタスクについては不明)を実行している場合、より少ないトレーニングデータで LSTMよりも速くトレーニングし、パフォーマンスが向上します。
GRUはより単純であるため、変更が容易です。たとえば、ネットワークへの追加入力の場合に新しいゲートを追加します。一般的にはコードが少なくなります。
理論的には、LSTMはGRU より長いシーケンスを記憶し、長距離関係のモデリングを必要とするタスクでそれらを上回る必要があります。
* GRUおよびLSTMを分析するいくつかの追加の論文。
「ニューラルGPUがアルゴリズムを学ぶ」(ŁukaszKaiser、Ilya Sutskever、2015) https://arxiv.org/abs/1511.08228
「自然言語処理のためのCNNとRNNの比較研究」(Wenpeng Yin et al。2017)https://arxiv.org/abs/1702.01923
この答えは、実際にはデータセットとユースケースにあります。どちらが良いかを明確に伝えるのは難しいです。
実際、重要な違いはそれだけではありません。Long-ShortTerm(LSTM)パーセプトロンは、運動量および勾配降下アルゴリズムを使用して構成されています。LSTMパーセプトロンを対応する再帰RNNと調和させると、GRUは実際には単なる一般化された反復単位または(コンテキストに応じて)勾配反復単位(運動量と勾配降下アルゴリズムをより密接に統合する)になります。私なら、AdamOptimizersについてさらに調査します。
ところで、GRUは時代遅れの概念です。ただし、中程度の高度なTFの詳細な知識が必要な場合は、それを調査していることを理解できます。