回帰結合層(シラバス 技術22)
学習目標
前の時刻の情報を次の時刻へ受け渡す回帰結合層と、それを含むリカレントニューラルネットワーク(RNN)の仕組みを理解し、向いているデータの性質、学習の方法、学習で起きる問題とその対策を説明できるようにします。
要点
回帰結合層とRNN
回帰結合層は、ある時刻の中間層の状態を、次の時刻の入力と一緒に同じ層へ戻す結合を持つ層です。この層を含むネットワークがリカレントニューラルネットワーク(RNN)です。各時刻で同じ重みを使い回し、それまでの入力の要約を状態として持ち運びます。
向いているデータ
RNNは、並び順に意味がある時系列データや系列データに向いています。株価やセンサーの値、音声、文章が例です。データごとに系列の長さが違っても、同じ層を時刻の数だけ繰り返して処理できます。
初期の構造
- エルマンネットワーク:中間層の出力を、次の時刻の中間層へ戻します。
- ジョルダンネットワーク:出力層の出力を、次の時刻の中間層へ戻します。
学習の方法と課題
RNNを時間方向に展開すると、時刻の数だけ層が重なった深いネットワークとみなせます。そこで、時刻をさかのぼりながら誤差逆伝播法を適用します。これをBPTT(Backpropagation Through Time)と呼びます。
さかのぼる時刻が増えるほど、同じ重みによる掛け算が何度も重なります。その結果、勾配が0に近づいて遠い過去の影響を学べなくなる勾配消失問題や、勾配が極端に大きくなって学習が不安定になる勾配爆発問題が起きます。勾配爆発には、勾配の大きさに上限を設ける勾配クリッピングが使われます。
ゲート機構を持つRNN
勾配消失への代表的な対策が、情報をどれだけ通すかを0から1の値で調整するゲート機構です。
- LSTM:情報を保つ記憶セルを持ち、入力ゲート、出力ゲート、忘却ゲートで、書き込み、読み出し、忘却を調整します。長い系列でも過去の情報を保ちやすくなります。
- GRU:LSTMを簡略にした構造で、更新ゲートとリセットゲートの2つを使います。記憶セルを別に持たず、パラメータが少ないぶん計算も軽くなります。
双方向RNN(Bidirectional RNN)
系列を前から読むRNNと後ろから読むRNNを組み合わせ、各時刻で前後両方の文脈を使います。文中の単語の品詞を判定するなど、系列全体が手元にそろっている処理に向いています。
教師強制
文章の生成のように、ある時刻の出力を次の時刻の入力にするモデルでは、学習の初期に誤った予測が入力されると、その後の学習が崩れやすくなります。教師強制は、学習時に1つ前の時刻の正解を入力として与える方法です。学習は安定して速く進みます。ただし、推論時は自分の予測を入力に使うため、学習時との条件のずれが残ります。
G検定で問われる深さ
LSTMやGRUの各ゲートの式を覚える必要はありません。BPTTで勾配が時間をさかのぼる流れ、勾配消失と勾配爆発が起きる理由と対策、LSTM・GRU・双方向RNNの違い、教師強制で何を入力するかを説明できれば十分です。
つまずきやすい点
- エルマンネットワークは中間層の出力を、ジョルダンネットワークは出力層の出力を次の時刻に戻す、という違い
- 勾配消失問題にはLSTMやGRUのゲート機構、勾配爆発問題には勾配の大きさに上限を設ける勾配クリッピングが代表的な対策である点
- 双方向RNNは系列の後ろの情報も使うため、系列全体がそろってから処理する場面に向き、1時刻ずつ先を予測する用途には使いにくい点
- 教師強制は、学習中に1つ前の時刻の入力として、モデル自身の予測ではなく正解を与える方法である点
シラバスのキーワード
BPTT、GRU、LSTM、エルマンネットワーク、勾配消失問題、勾配爆発問題、教師強制、ゲート機構、双方向RNN(Bidirectional RNN)、時系列データ、ジョルダンネットワーク、リカレントニューラルネットワーク(RNN)
練習問題
混同しやすい用語
この項目の関連用語
出典と作成について
作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合。手順は編集方針)
最終更新日: 最終確認日:
対応シラバス:シラバス第1.4版 技術22
出典
- G検定 試験出題範囲(シラバス2024)第1.4版(技術分野 項目22 回帰結合層)2026年10月30日閲覧
- Jeffrey L. Elman, Finding Structure in Time, Cognitive Science 14(2), 179–211 (1990)2026年10月30日閲覧
- Michael I. Jordan, Serial Order: A Parallel Distributed Processing Approach, Advances in Psychology, 471–495 (1997; 1986年の技術報告を収録)2026年10月30日閲覧
- Paul J. Werbos, Backpropagation Through Time: What It Does and How to Do It, Proceedings of the IEEE 78(10), 1550–1560 (1990)2026年10月30日閲覧
- Ronald J. Williams, David Zipser, A Learning Algorithm for Continually Running Fully Recurrent Neural Networks, Neural Computation 1(2), 270–280 (1989)2026年10月30日閲覧
- Razvan Pascanu, Tomas Mikolov, Yoshua Bengio, On the difficulty of training Recurrent Neural Networks (2012)2026年10月30日閲覧
- Sepp Hochreiter, Jürgen Schmidhuber, Long Short-Term Memory, Neural Computation 9(8), 1735–1780 (1997)2026年10月30日閲覧
- Felix A. Gers, Jürgen Schmidhuber, Fred Cummins, Learning to Forget: Continual Prediction with LSTM, Neural Computation 12(10), 2451–2471 (2000)2026年10月30日閲覧
- Kyunghyun Cho et al., Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation (2014)2026年10月30日閲覧
- Mike Schuster, Kuldip K. Paliwal, Bidirectional Recurrent Neural Networks, IEEE Transactions on Signal Processing 45(11), 2673–2681 (1997)2026年10月30日閲覧