モデル・技術

RNNとは?記憶のループ——時間軸に沿った系列処理

読み:あーるえぬえぬ / 英:RNN(Recurrent Neural Network/再帰型ニューラルネットワーク)

更新日: 読了目安:約7分

RNN(再帰型ニューラルネットワーク)は、過去の情報を内部状態(隠れ状態)に残しながら、時系列に沿って入力を処理するニューラルネットワークです。CNNが画像の空間パターンを扱うのに対し、RNNは時間の矢印に沿った系列——株価、音声、文章——を扱う設計として発展しました。本記事は数式の暗記ではなく、「なぜループ構造が系列に効くのか」と試験でのすり替え回避に焦点を当てます。

試験で問われる見方

定義の骨格は「系列データを扱うため、過去の情報を内部状態として利用するニューラルネットワーク」HQ-0328)。

データとモデルの対応——系列→RNN、画像→CNN——が頻出です(G-239)。逆の対応を選ぶのは×です。

RNNは生成AIサービス名でもClaudeでもありません。製品説明が主語に付いた選択肢は別概念です(HQ-0328のB・C)。

演習で確認する

生成AIパスポート:HQ-0328(定義)

G検定:G-239(CNNとの対比)TF-097(BPTT)TF-419(Transformerとの関係)

RNNとは

RNNの「再帰(Recurrent)」は、同じ重みを時間ステップごとに繰り返し適用し、出力を次の入力にフィードバックする——というループ構造を指します。英語の Recurrent と日本語の「回帰」は別語です。試験文に「回帰型」と書かれることがありますが、正しくは再帰型です。

初期の代表例としてエルマンネットワーク(隠れ状態を次に渡す)やジョルダンネットワーク(出力を文脈に使う)が挙げられます(G-246)。細部の暗記より「ループで過去を覚える」イメージで十分なことが多いです。

内部状態のループ

ある時刻の入力と、ひとつ前の隠れ状態から、新しい隠れ状態を計算する——という流れが基本です。

  1. 入力を1ステップずつ処理 — 文章なら語、時系列なら各時点の値
  2. 隠れ状態を更新 — これまでの文脈を圧縮した「記憶」
  3. 次のステップへ伝播 — 同じ重みでループ
  4. 出力 — 分類・次語予測・回帰などタスクに応じる

学習ではBPTT(Backpropagation Through Time)——時間方向にネットワークを展開して誤差逆伝播——が使われます(TF-097)。

向いているデータ

  • 時系列予測 気温、株価、センサー値の次の値
  • 文章の分類・タグ付け 各時刻の隠れ状態から感情や品詞を推定
  • 音声・信号 時間軸に沿ったパターン認識。音声認識ではCTC損失と組み合わせることが多い

格子状の画像データはCNNの方が典型です。試験ではデータの形からモデルを選ぶ力が問われます。

限界と勾配問題

ループ構造は系列に効く一方、長い系列では学習が難しくなります。

問題ざっくりした意味試験向け
勾配消失勾配がほぼゼロになり更新が止まる長期依存が学習しにくい
勾配爆発勾配が巨大になり不安定RNNで起こりやすい(G-136)
対策の系譜LSTMなどゲート付きRNN長期依存の緩和(G-242)

現代の大規模言語モデルはTransformerが主役ですが、RNNの限界——長距離依存の難しさ——を理解することが、Transformerの利点(Self-Attention)を押さえる近道になります。

CNN・Transformerとの対比

RNNCNNTransformer
得意なデータ系列・時系列画像の格子言語系列(注意機構)
処理の流れ順次(ループ)畳み込み走査並列的な注意計算
長距離依存苦労しやすい空間の遠方は層でAttentionで直接
現代LLM主役ではない主役ではない基盤(TF-419)

すり替えに注意

誤った説明正しい理解
RNN=Claude / Copilot系列モデル vs 生成AIサービス
RNN=生成AIの定義HQ-0328のDは別概念
系列→CNNが典型G-239は逆
回帰型=線形回帰再帰(Recurrent)の誤読に注意
RNN=現代LLMの基盤Transformer系が主役

よくある質問

RNNの定義として正しいのは?

系列データを扱うため、過去の情報を内部状態として利用するニューラルネットワーク、と整理します。時系列データや文章など、順序のあるデータの処理に向いた設計です。

RNNとCNNの使い分けは?

RNNは時系列・文章など系列データ向き、CNNは画像の局所特徴抽出向き、と対比します。データの性質とモデル設計の対応が試験で問われます。

RNN=現代のLLMの基盤ですか?

現代の大規模言語モデルの主役はTransformer系です。RNNは系列処理の古典的アーキテクチャとして理解し、Transformerとの対比で押さえるのが試験向けです。