基礎・機械学習

誤差逆伝播法とは?Backpropagation・勾配・学習の流れ

読み:ごさぎゃくでんぱほう / 英:Backpropagation

更新日: 読了目安:約7分

誤差逆伝播法(Backpropagation/バックプロパゲーション)は、ニューラルネットワークで損失(誤差)の勾配を各層の重みに効率的に伝える学習の基本手法です。本記事はTransformerなどの構造解説ではなく、「どうやって重みを更新するか」——順伝播・逆伝播のパイプライン——に焦点を当てます。

試験で問われる見方

G検定では、誤差逆伝播法が連鎖律で勾配を計算すること(TF-072)、出力側の誤差を重み更新に反映すること(TF-390)が○として問われます。

逆に、学習率やバッチサイズも誤差逆伝播で重みと同様に更新されるは×です。これらはハイパーパラメータで、学習前に設定します(TF-052)。

誤差逆伝播法とは

ニューラルネットは、入力から出力まで層を重ねた合成関数とみなせます。誤差逆伝播法は、最終出力と正解の差(損失)から出発し、出力側から入力側へ向かって各重みに対する勾配(偏微分)を計算する方法です。

勾配が分かれば、勾配降下法などで重みを少しずつ更新し、損失を減らしていきます。ニューラルネットの深層学習を支えた中核技術の一つです。

学習の1ステップ

試験・入門で押さえる流れは次の4段階です。

  • 順伝播(フォワード)

    入力データをネットワークに通し、予測値を計算する。

  • 損失の計算

    予測と正解の差を損失関数(例:交差エントロピー、二乗誤差)で数値化する。

  • 逆伝播(バックワード)

    損失から各重みへの勾配を逆方向に伝播させる(誤差逆伝播法の本体)。

  • 重みの更新

    勾配の方向に学習率をかけてパラメータを更新する。

このサイクルをエポック(データ全体の繰り返し)・バッチ単位で繰り返します。

連鎖律が鍵

多層ネットワークでは、層が連鎖した合成関数になるため、微分には連鎖律(チェインルール)が使われます(G-014G-172)。

誤差逆伝播法の「逆」とは、計算の向き——出力に近い層から入力に近い層へ勾配を渡していく——を指します。物理的に信号が逆流するわけではなく、数学的に勾配を効率よく求めるアルゴリズムです。

混同しやすい用語

用語 関係
勾配降下法 勾配の方向にパラメータを更新する最適化の考え方。誤差逆伝播は勾配を求める方法
ハイパーパラメータ 学習率、バッチサイズなど。誤差逆伝播では直接更新しない(TF-052)
損失関数 誤差逆伝播の起点になるスカラー値
Transformer ネットワークの構造。学習手法とは別レイヤー

勾配消失・爆発

層が深い、または時間方向に長く展開される(RNNなど)と、逆伝播で勾配が極端に小さくなる(消失)、または大きくなる(爆発)ことがあります(G-136)。

対策として、ReLUなどの活性化関数、正則化、勾配クリッピング、Transformerのようなアーキテクチャの採用などが研究・実務で使われます。試験では現象の名前と「学習が不安定になる」という理解で十分なことが多いです。

よくある質問

誤差逆伝播法と勾配降下法は同じ?

同じではありません。勾配降下法は更新の考え方、誤差逆伝播は深いネットで勾配を求める具体的な手法です。セットで使われます。

LLMの学習でも使われる?

はい。基本的には誤差(損失)に対する勾配で重みを更新します。規模が大きいため分散学習などの技術が加わります。

学習率も誤差逆伝播で更新される?

通常は更新されません(TF-052)。ハイパーパラメータとして別に設定します。

生成AIパスポートでも出る?

深い技術詳細はG検定寄りです。生成AIパスポートは活用・リスクが中心で、本記事はG検定の土台として読むのがおすすめです。