こんな方におすすめ
深層学習・ディープラーニングでも必要な「Gated Recurrent Unit : GRU」の基本的な内容について知りたい.
この記事では、Gated Recurrent Unit : GRUの基礎概念のまとめを行う.
- RNN #まとめ編
Index
Gated Recurrent Unit : GRUとは
RNN のネットワークアーキテクチャを基本とした、拡張したモデル.
GRUは、LSTM の改善手法として提案された.
LSTM との違い
LSTMは、RNN の改善手法で「ゲート」という機構を搭載していた.
しかし、そのためにパラメータ数が多くなるという問題点もある.
そこで、「ゲート」を有効活用しつつ、パラメータ数 (ゲートの数) を減らした構造になっている.
インターフェース
LSTM は 隠れ状態 と 記憶セル の 2 角ラインを使用する.
対して、GRU は隠れ状態だけを使用する.
計算グラフ
RNN の計算グラフ.
LSTM の計算グラフ.
このグラフから「記憶セル」なくし、複数の異なる「ゲート」を搭載することでGRUの計算グラフが出来上がる.
搭載されているゲートは 2 つ.
- Reset ゲート (r)
- Update ゲート (z)
Reset ゲート
Reset ゲートは、過去の隠れ状態をどれだけ 無視・リセットするのかを決定している.
Update ゲート
Update ゲートは、隠れ状態を更新する.
Update ゲートは、LSTM の Forget ゲート / Input ゲートの 2 つの役割を担っている.
Forget ゲートとして機能しているのは、 以下の計算箇所.
Input ゲートとして機能しているのは、以下の計算箇所.
まとめ
- GRU は、LSTMをよりシンプルにしたネットワークアーキテクチャ.
- タスクやハイパーパラメータによっては、精度の優劣は変わる.
参考
- Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation
- [2014]
- arxiv.org
書籍
- ゼロから作るDeep Learning 2
- 付録C GRU