LSTMは覚えられたのだけどGRUは覚えられなかったという方向け。
LSTMは割と役割がしっかり分かれているので覚えやすいですが
GRUの場合分岐が多く、どこからどうつながっているのか分からなくなります。
なので今日は詳しめに書きます。
図にするとこうです。
データの流れを赤矢印で、またゲートがLSTMでいう何の部分に当たるか書きました。
σにはhとxが入る
σでは入力の制御=どれくらい結果を出力するかを行います、なので$h_{(t-1)}$とxは必ず参照します。
tanhにはリセットゲートを通ったものが入る
tanhには今回の入力xだけでなく、過去の入力をリセットゲートで制御した$r_t*h_t$が入ります、ごっちゃになりますので注意。
更新ゲートは過去の出力と現在の出力の割合を決める
GRUでは過去の入力と現在の入力だけ見ます。なのでどちらの入力をどれくらい出力するか分岐があります。分岐させたものを最後に足し合わせて出力します。
以上になります、GRUは過去の記憶を保持するために作られたもの。皆さんの記憶保持に役立てば幸いです。