本文へ移動

りかれんと にゅーらる ねっとわーく

リカレントニューラルネットワーク(RNN)

RNN = Recurrent Neural Network

時系列データを扱うため、内部にループ構造を持つニューラルネットワークです。

詳しい説明

リカレントニューラルネットワーク(RNN)とは、時系列データを扱うために、内部にループ構造を持つニューラルネットワークの一種です。通常のニューラルネットワークは入力から出力まで一方向に流れますが、RNNは過去の情報を保持し、現在の入力と組み合わせて処理を行うことができます。

仕組みとしては、前の時刻の出力を自分自身に再び入力として渡すことで、データ間の前後関係を学習します。これにより、単語の並びによる文脈を理解する自然言語処理や、一定周期で変動する株価予測、音声認識のようにデータの連続性が意味を持つタスクにおいて高い性能を発揮します。

試験では、RNNの課題である勾配消失問題と、その対策であるLSTMなどがセットで問われることが多いです。混同しやすいのは、CNN(畳み込みニューラルネットワーク)との違いです。CNNは主に画像認識のように空間的な情報の抽出に優れ、RNNは時系列のような時間的な情報の処理に優れているという点を押さえてください。

試験で問われること

ITパスポート試験

  • 時系列データの処理に用いられることが問われます。
  • ループ構造を持ち過去の情報を保持する点が問われます。
  • 自然言語処理や翻訳での利用例が問われます。

基本情報技術者試験

  • ニューラルネットワークの基本構造との違いが問われます。
  • 勾配消失問題の発生と対策技術が問われます。
  • CNNとの用途の違いが問われます。

G検定

  • 時系列データや順序情報を持つデータを扱うニューラルネットワークである
  • 過去の情報を保持する内部状態(メモリ)を持つことが特徴である
  • 勾配消失問題という弱点があり、それを克服するためにLSTMが開発された