BPTT

記事数:(2)

深層学習

RNN学習の要:BPTTの仕組み

巡り巡る誤差が時を遡るようにネットワークを調整していく様子を想像してみてください。それが、時間方向への誤差伝播と呼ばれる手法です。この手法は、特に過去の情報を記憶しながら、時々刻々と変化するデータの流れを扱うネットワーク、再帰型ニューラルネットワーク(RNN)の学習で重要な役割を担います。 RNNは、過去の情報を持ちながら次の出力を予測するため、通常のネットワークのように、ただ単純に誤差を後ろ向きに伝えるだけでは学習がうまくいきません。なぜなら、現在の出力は過去の入力にも影響を受けているからです。そこで、時間方向への誤差伝播を用いて、時間的な繋がりを考慮した学習を行います。 具体的には、まず各時点での出力と、本来あるべき出力(教師データ)との差、つまり誤差を計算します。そして、この誤差を未来から過去へ、出力側から入力側へと、まるで時間を巻き戻すかのように伝えていきます。 この時、各時点での誤差は、その時点でのネットワークの繋がり具合(重み)を調整するために利用されます。未来の時点での誤差も現在の時点の重みに影響を与えるところが、時間方向への誤差伝播の重要な点です。 このように、時間方向への誤差伝播は、時間的な依存関係を学習できるというRNNの特性を実現するための、なくてはならない手法と言えるでしょう。まるで、過去の出来事が現在の行動に影響を与えるように、ネットワークも過去の情報から未来を予測し、より正確な結果を出せるように学習していくのです。
深層学習

時系列データ学習の要:BPTT

巡回型神経回路網(じゅんかいがたしんけいかいろもう)は、時間とともに変化する情報、例えば音声や文章といったものを扱うのが得意な仕組みです。まるで人間の記憶のように、過去の情報を覚えているかのように振る舞うことができます。この学習を支えているのが、誤差逆伝播法を時間方向に拡張した、時間を通しての誤差逆伝播法です。 この方法は、ある時点での間違いを正す際に、その時点の正解データとのずれだけでなく、未来の時点での間違いも考慮に入れます。未来の時点での間違いが、どのように過去の時点での学習に影響するかを計算することで、時間的なつながりを学習することができます。 例えば、ある文章の途中の単語を予測する場合を考えてみましょう。「今日は天気が良いので、公園へ・・・」の後に続く言葉を予測する際に、正解が「行く」だったとします。もし「食べる」と予測してしまった場合、その誤差は「食べる」という単語の選択だけでなく、それ以前の単語の選択にも影響を与えているはずです。「公園へ」の後には「行く」「遊ぶ」「散歩する」などが自然ですが、「食べる」という言葉は不適切です。 時間を通しての誤差逆伝播法は、この「食べる」という誤差を、「公園へ」や「天気」といった過去の単語の選択にまで伝播させます。これにより、「公園へ」の後には「食べる」ではなく「行く」などの単語が続くことを学習し、未来の予測精度を向上させることができます。 このように、時間を通しての誤差逆伝播法は、時間的な依存関係を学習するために不可欠な手法であり、巡回型神経回路網の学習を支える重要な役割を担っています。この手法によって、私たちは機械に時間の流れを理解させ、より高度な情報処理を可能にしています。