GRU over LSTMを使用する場合


95

GRUとLSTMの主な違いは、GRUには2つのゲート(リセットおよび更新ゲート)があり、LSTMには3つのゲート(つまり、入力出力、および忘却ゲート)があることです。

(3つのゲートがあるので)LSTMモデルを介してネットワークをより明確に制御できるのに、なぜGRUを使用するのですか?どのシナリオでGRUがLSTMよりも優先されますか?


1
GRUはやや複雑ではありませんが、LSTMのパフォーマンスに関してはほぼ同等です。TensorFlowの実装は、data-blogger.com / 2017/08/27 / gru-implementation-tensorflowにあります。
www.data-blogger.com

回答:


64

GRUはLSTMに関連しています。これは、勾配情報の消失を防ぐために情報をゲーティングする場合、両方が異なる方法を利用しているためです。GRU対LSTMについてのいくつかのピンポイントはここにあります-

  • GRUは、LSTMユニットのように情報の流れを制御しますが、メモリユニットを使用する必要はありません。コントロールなしで完全な非表示コンテンツを公開するだけです。
  • GRUは比較的新しいものであり、私の観点からすると、パフォーマンスはLSTMと同等ですが、計算効率は向上しています指摘されているように構造が複雑ではありません)。そのため、ますます使用されるようになっています。

詳細な説明については、この研究論文-Arxiv.orgをご覧ください。論文はこれをすべて見事に説明しています。

さらに、これらのブログを調べて、より良いアイデアを見つけることもできます。

それが役に立てば幸い!


1
あなたの答えに加えて、GRUとLSTMとそれらの様々な順列間のパフォーマンスを評価する素敵な紙があり、Googleが「リカレントネットワークアーキテクチャの実証的探究」を
ミネラル

38

*すでに上記の素晴らしい答えを補完するために。

  • 私の経験から、GRUは、言語モデリング(他のタスクについては不明)を実行している場合、より少ないトレーニングデータで LSTMよりも速くトレーニングし、パフォーマンスが向上します。

  • GRUはより単純であるため、変更が容易です。たとえば、ネットワークへの追加入力の場合に新しいゲートを追加します。一般的にはコードが少なくなります。

  • 理論的には、LSTMGRU より長いシーケンスを記憶し、長距離関係のモデリングを必要とするタスクでそれらを上回る必要があります。

* GRUおよびLSTMを分析するいくつかの追加の論文。


9

この答えは、実際にはデータセットとユースケースにあります。どちらが良いかを明確に伝えるのは難しいです。

  • GRUはLSTMとは異なりメモリ全体を公開するため、利点として機能するアプリケーションが役立つ場合があります。また、GRUを使用する理由に加えて、ゲートが2つしかないため、LSTMよりも計算が簡単であり、パフォーマンスがLSTMと同等であれば、なぜそうではないのでしょうか?
  • このペーパーでは、単純なRNNに対するゲートネットワークの優位性をグラフで示していますが、どちらが優れているかを結論付けることはできません。したがって、どちらをモデルとして使用するかについて混乱している場合は、両方をトレーニングしてから、それらをより良くすることをお勧めします。

8

フルGRUユニット

c~t=tanh(Wc[Grct1,xt]+bc)

Gu=σ(Wu[ct1,xt]+bu)

Gr=σ(Wr[ct1,xt]+br)

ct=Guc~t+(1Gu)ct1

at=ct

LSTMユニット

c~t=tanh(Wc[at1,xt]+bc)

Gu=σ(Wu[at1,xt]+bu)

Gf=σ(Wf[at1,xt]+bf)

Go=σ(Wo[at1,xt]+bo)

ct=Guc~t+Gfct1

at=Gotanh(ct)

方程式からわかるように、LSTMには個別の更新ゲートと忘却ゲートがあります。これにより、明らかにLSTMはより高度になりますが、同時により複雑になります。特定のユースケースに使用するものを決定する簡単な方法はありません。パフォーマンスをテストするには、常に試行錯誤を行う必要があります。ただし、GRUはLSTMよりも単純であるため、GRUのトレーニング時間は大幅に短縮され、効率が向上します。

クレジット:Andrew Ng


a<t>=Γotanh(c~<t>)

1

GRUは変更が容易で、メモリユニットを必要としないため、LSTMよりも優れています。したがって、LSTMよりも高速にトレーニングし、パフォーマンスに応じて提供します。


12
公正な参照でパフォーマンスの主張をサポートしてください
Kari

1

実際、重要な違いはそれだけではありません。Long-ShortTerm(LSTM)パーセプトロンは、運動量および勾配降下アルゴリズムを使用して構成されています。LSTMパーセプトロンを対応する再帰RNNと調和させると、GRUは実際には単なる一般化された反復単位または(コンテキストに応じて)勾配反復単位(運動量と勾配降下アルゴリズムをより密接に統合する)になります。私なら、AdamOptimizersについてさらに調査します。

ところで、GRUは時代遅れの概念です。ただし、中程度の高度なTFの詳細な知識が必要な場合は、それを調査していることを理解できます。


8
私は興味がある。GRUが時代遅れの概念である理由を説明できますか?
random_user
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.