読み方 : ジーアールユー
GRU【Gated Recurrent Unit】
概要
GRUとは、リカレントニューラルネットワーク(RNN)で長期的な依存関係の学習を可能とする仕組みの一つ。過去の出力からのフィードバックをどのように入力に反映するかを制御する2つのゲート機構を用いる。LSTMを簡略化し計算量を削減したもの。

RNNには、出力を次の入力へフィードバックするループ構造が組み込まれており、単語が順番に入力されてくる文章のような系列データ、時間経過に従って少しずつ変化する音声や動画のような時系列データを扱う際に、現在の入力だけでなく直前の状態や文脈を反映した処理が可能となる。
しかし、初期のRNNは同じノードを通過する時系列のデータが同じ重みを共有するため、系列が長いと過去に遡るにつれて重みの更新に用いられる誤差の微分値(勾配)が減衰してしまう勾配消失問題が起きやすい。また、過去のデータの現在の重要性と将来の重要性が異なる場合に重みを決定できない「重み衝突」という時系列データ固有の問題も生じる。
GRUはこの問題に対処するためのノード構造の一つで、回帰結合層に配置する。更新ゲート、リセットゲートという2つのゲート機構を備え、過去の出力からのフィードバック(隠れ状態)と入力から出力を計算する。更新ゲートは新しい入力をどれだけ隠れ状態に反映させるかを制御し、リセットゲートは隠れ状態をどれくらい入力に反映させるかを制御する。
RNNの長期依存的な学習を改善する手法として当初は「LSTM」(Long Short Term Memory)が考案されたが、これは一つのLSTMユニットを記憶セル、入力ゲート、出力ゲート、忘却ゲートという4つの要素で構成するもので、それぞれが持つ重みを学習によって更新するため計算コストが重かった。GRUはLSTMと遜色ない性能を維持しながら、更新ゲートとリセットゲートという2つの要素のみで構成されるため、計算量が大幅に削減される。
(2025.12.9更新)