![見出し画像](https://assets.st-note.com/production/uploads/images/169940114/rectangle_large_type_2_17046ba1481e97b3517a1fbdcce173ac.jpg?width=1200)
生成モデルの基礎――RNN(リカレントニューラルネットワーク)を解説します。
前回の記事ではGANについて解説をしました。今回は、「RNN(リカレントニューラルネットワーク)」の基本的な仕組みから応用例までを解説します。
今回の内容も生成AIパスポートの出題範囲となっておりますので、しっかりと内容を理解しておきましょう。
RNN(リカレントニューラルネットワーク)とは?
RNN(Recurrent Neural Network)は、時系列データや連続した情報を処理できるニューラルネットワークの一種です。従来のニューラルネットワークは「現在の入力のみ」を処理しますが、RNNは過去の情報を記憶しつつ新しい情報を処理できます。
RNNが得意なデータの例
自然言語処理:文章や会話など、単語の並びが重要なデータ
音声認識:時間に沿って変化する音声データ
時系列予測:株価や売上、気温の推移など
RNNの仕組み
RNNの隠れ層(hidden layer)は「再帰的」に繋がっており、時間的な文脈を保持できる点が特徴です。
基本的な計算式
ht = tanh(Wx ・xt + Wh・h(t-1) + b)
xt :時刻 t における入力データ
h(t-1) :前の時刻 t-1 の隠れ層の状態(過去の情報)
Wx 、 Wh :重み行列
b :バイアス項
tanh :活性化関数(-1から1の値に収束)
上記の数式が示すように、RNNは過去の情報( h(t-1))を次の計算に反映する仕組みになっています。
RNNの強みと弱み
強み
時系列データや順序のあるデータを処理でき、過去の情報を参照しながら未来を予測することができる。
弱み(課題)
長期依存問題(Long-Term Dependency)
RNNは、時間が経つにつれて過去の情報が薄れるため、数十ステップ前の情報を保持するのが苦手です。
勾配消失・勾配爆発問題
逆伝播時に勾配が小さくなりすぎたり、大きくなりすぎて学習が進まなくなる現象が発生します。
改善されたRNNの派生モデル
RNNの課題を解決するために、以下の改良モデルが登場しました。
① LSTM(Long Short-Term Memory)
LSTMは「記憶セル」を導入し、必要な情報を保持し不要な情報を忘れることで、長期的な依存関係を学習できるモデルです。
用途例:文章生成、翻訳タスク、音楽生成
② GRU(Gated Recurrent Unit)
GRUはLSTMをシンプルにした構造で、計算コストを抑えつつ高い性能を発揮します。LSTMほどの細かい制御はありませんが、計算負荷が軽いため大量データの処理に向いています。
用途例:音声認識、IoTデータ解析
RNNを使う場面とは?
自然言語処理(NLP):文章の感情分析、チャットボット、翻訳システム
音声認識:音声コマンド、リアルタイム字幕生成
時系列予測:気象データ、株価の予測、売上予測
センサーデータの解析:異常検知、機械予知保全
特に自然言語処理では、RNNやLSTM、GRUを使うことで、文章の流れを理解し、正確な文章生成や翻訳を行うことができます。
まとめ
RNNは、順序や時間的な依存関係があるデータを処理する強力なモデルですが、長期依存問題や勾配消失問題といった課題があります。そのため、LSTMやGRUなどの派生モデルが現代のAI分野で広く利用されています。
生成AIパスポート試験では、「RNNの仕組みや課題、LSTMやGRUの違い」が出題されます。この記事を参考に、ぜひ理解を深めてください。