リカレントニューラルネットワーク(RNN)の学習に関する説明として、最も適切なものはどれか。
- 1時間方向に展開したネットワークに誤差逆伝播法を適用するBPTTで学習し、勾配爆発への対策として勾配のノルムに上限を設ける勾配クリッピングが用いられる。
- 2時刻ごとに異なる重みを用いるため、扱う系列が長くなるほど学習すべきパラメータ数が増える。
- 3誤差を時間方向にさかのぼって伝えるほど勾配が安定するため、長い系列でも勾配消失は起きにくい。
- 4教師強制(Teacher Forcing)は、勾配の大きさを一定以下に抑えて勾配爆発を防ぐ手法である。
正解と解説を見る
正解:1
RNNは時間方向に展開したネットワークに誤差逆伝播法を適用するBPTT(Backpropagation Through Time)で学習し、勾配が過大になったときには勾配クリッピングで大きさを抑えます。RNNは全時刻で同じ重みを共有するため、系列が長くなってもパラメータ数は増えません。むしろ時間をさかのぼるほど同じ重みが繰り返し掛け合わされ、勾配消失や勾配爆発が起きやすくなります。教師強制は、学習時に前の時刻の正解を次の時刻の入力として与える手法で、勾配の制御とは関係ありません。「BPTTで学習」「重みは時刻間で共有」「勾配爆発には勾配クリッピング」の3点を押さえておきましょう。
根拠:BPTT(Backpropagation Through Time)と勾配クリッピング