再帰型ニューラルネットワーク(RNN)は、時間の経過に伴うデータや文章などの時系列データを扱うためのディープラーニング手法です。過去の情報を内部状態として保持しながら処理を行う循環構造を持ち、自然言語処理や音声認識、時系列予測などの分野で広く活用されてきました。最新モデルの基礎となった重要な技術です。
再帰型ニューラルネットワーク(RNN)とは
過去の処理結果を次の入力へと引き継ぐ内部ループ構造を持つことで、時間の流れや前後関係が存在する時系列データを効果的に処理できるディープラーニングのモデルです。
詳しく解説
従来の順伝播型ニューラルネットワークは、入力データを単発で処理するため、データ同士の前後の依存関係を考慮することが困難でした。これに対し、再帰型ニューラルネットワーク(RNN)は自身に情報をフィードバックするループ構造を備えており、過去の情報を内部状態として保持しながら処理を進めます。この仕組みにより、文章中の単語の並びや数値の変動といった時間の経過に依存するデータを扱えるようになりました。自然言語処理の進化における重要な節目であり、後の高度なAIモデルの基礎となっています。
具体例・使われ方
自然言語処理における機械翻訳や文章の自動生成、音声認識による対話システム、過去のデータに基づく株価や天気の予測などに活用されます。たとえば、文章を入力する際に特定の単語の後に続く単語を予測する場合、直前の文脈を内部に記憶しているため、文脈に沿った自然な単語を選択できます。
似た用語との違い
順伝播型ニューラルネットワークとの違いは、データの一方向な処理だけでなく過去の情報を保持するループ構造を持つ点です。また、長短期記憶は、RNNの弱点であった長期間の記憶の維持を改善した派生構造です。近年注目されるTransformerは、RNNのような循環構造を使わずに注意機構を用いて処理を高速化・高度化した技術であり、RNNとは構造が異なります。
注意点
入力データが長くなると、学習時に勾配消失問題が発生し、過去の長期的情報を十分に保持できなくなる限界があります。また、データを順番に処理する必要があるため並列計算が難しく、巨大なモデルの学習には時間がかかるという注意点があります。