バックプロパゲーション
バックプロパゲーションは数理モデルであるニューラルネットワークの重みを層の数に関わらず更新できる(学習できる)アルゴリズムである。ディープラーニングの主な学習手法として利用される。
そのアルゴリズムは次の通りである:
ニューラルネットワークに学習のためのサンプルを与える。
ネットワークの出力を求め、出力層における誤差を求める。その誤差を用い、各出力ニューロンについて誤差を計算する。
個々のニューロンの期待される出力値と倍率 (scaling factor)、要求された出力と実際の出力の差を計算する。これを局所誤差と言う。
各ニューロンの重みを局所誤差が小さくなるよう調整する。
より大きな重みで接続された前段のニューロンに対して、局所誤差の責任があると判定する。
そのように判定された前段のニューロンのさらに前段のニューロン群について同様の処理を行う。
アルゴリズム名が示唆するように、エラー(および学習)は出力ノードから後方のノードへと伝播する。