【アールエヌエヌ】

RNN とは?

💡 過去の記憶を引き継ぎながら読む「AIの読書家」
📌 このページのポイント
RNN:再帰型ニューラルネットワーク 折りたたみ表現 RNN セル 隠れ状態 h 入力 x 展開表現(時間方向に展開) h(t-1) x(t-1) "私" y(t-1) h h(t) x(t) "は" y(t) h h(t+1) x(t+1) "猫" y(t+1) ポイント:過去の情報を隠れ状態(h)として次のステップに伝搬する 各タイムステップで同じ重みを共有 → 可変長の系列データを処理できる 入力 隠れ状態 出力 用途例:自然言語処理・音声認識・時系列予測
過去の情報を隠れ状態として記憶する再帰型ネットワーク
ひよこ ひよこ

再帰ってどういう意味?

ペンギン先生 ペンギン先生

普通のニューラルネットワークはデータが入口から出口へ一方通行だけど、RNNは出力の一部を次のステップの入力に「戻す」んだ。「私は猫が」の次を予測するとき、「私は」「猫が」という前の情報を記憶として持ち越しながら処理するイメージだよ。

ひよこ ひよこ

勾配消失問題って何?

ペンギン先生 ペンギン先生

学習時に「どれくらい重みを修正するか」を示す勾配という値が、層を遡るたびにどんどん小さくなって消えてしまう現象だよ。RNNだと長い文章の最初の方の情報が学習に反映されなくなる。だから「昨日の朝……(長い文章)……だった」みたいな長距離の依存関係が苦手なんだ。

ひよこ ひよこ

今でもRNNは使われてるの?

ペンギン先生 ペンギン先生

自然言語処理の分野ではTransformerに主役の座を奪われた感があるけど、リアルタイムの音声処理やセンサーデータの処理など、逐次的にデータが入ってくる場面ではまだ使われているよ。LSTMやGRUという改良版も含めるとまだまだ現役だよ。

ひよこ ひよこ

LSTMとGRUって何が違うの?

ペンギン先生 ペンギン先生

どちらもRNNの勾配消失問題を解決するために作られた改良版だよ。LSTMには「忘却ゲート」「入力ゲート」「出力ゲート」の3つのゲートがあって、どの情報を記憶・忘却・出力するかを細かく制御する。GRUはLSTMを簡略化した版で、ゲートが2つだけ。パラメータが少ないぶん学習が速く、性能はLSTMとほぼ同等と言われているよ。

ひよこ ひよこ

Transformerが出てきたのにRNNを学ぶ意味ってあるの?

ペンギン先生 ペンギン先生

大いにあるよ。まずTransformerの仕組みを理解するにはRNNの限界を知ることが前提になる。それに最近「State Space Models」や「Mamba」というRNNの発展形が登場して、Transformerに匹敵する性能を低い計算コストで実現する研究が注目されているんだ。RNNの考え方は形を変えて生き続けているよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「RNN」って出てきたら「前の情報を記憶しながら順番にデータを処理する、時系列向けのニューラルネットワークだな」と思えればだいたいOK!
📖 おまけ:英語の意味
「Recurrent Neural Network」 = 再帰型ニューラルネットワーク
💬 「Recurrent(再帰的な・繰り返す)」が名前のポイント。出力が再びネットワークに戻って入力される循環構造を持つことから名付けられたよ
← 用語集にもどる