誤差逆伝播法 (バックプロパゲーション)

ニューラルネットワークが学習する核心的な仕組み、誤差逆伝播法を分かりやすく解説します。

編集・検証: AIパスポートスタディ編集部 公式情報: GUGA 生成AIパスポート公式ページ 制作・検証方針

冒頭でクイズから入ります。ニューラルネットワークがどうやって賢くなるのか、その核心にある『誤差逆伝播法 (バックプロパゲーション)』を、つむぎの迷走を救いながら理解していきましょう。意外にも、数式より『どこで間違えたか遡る』という感覚が理解の鍵です。

確認クイズ

ニューラルネットワークの学習で使われる、誤差を出力側から入力側へ伝える手法は?

  1. 順伝播
  2. 誤差逆伝播法
  3. 強化学習
  4. クラスタリング
こたえを見る

正解: 2. 誤差逆伝播法

誤差逆伝播法 (Backpropagation) は、出力層で計算した誤差を、連鎖律を使って入力層の方向へ伝えていき、各層の重みを更新する深層学習の核心アルゴリズムです。

香月 リサ 先生(普段) 香月 リサ 先生

さて、ニューラルネットワークが学習するとき、まず入力から出力へ計算を進めて予測を出します。
これを順伝播と呼ぶわ。
その予測と正解の差を損失関数で数値化して、次にその誤差を出力層から入力層に向けて逆方向に伝えていくの。
これが誤差逆伝播法。

深見 つむぎ(普段) 深見 つむぎ

数学的には、多変数関数の連鎖律を使って、各重みに対する誤差の勾配を効率的に計算するんですよね。
偏微分の連鎖で∂L/∂wを層ごとに分解して、ヤコビ行列を順々に掛けていって……

戸倉 ジャスミン(あせる) 戸倉 ジャスミン

つむぎちゃん、ちょっと待って! チェインルールとか偏微分とかヤコビ行列とか、急に出てきてあたし全然ついていけないんだけど!

深見 つむぎ(あせる) 深見 つむぎ

あ……そっか、ごめん。
ちょっと先走りすぎたかも。
つい数式モードに入っちゃう癖が……。

雪村 ましろ(しょんぼり) 雪村 ましろ

つむぎちゃん、落ち着いて〜? ましろ、もっと簡単な言葉で教えてほしいのぉ。

香月 リサ 先生(笑顔) 香月 リサ 先生

つむぎさん、焦らなくていいのよ。
ジャスミンちゃんが分かる言葉で説明してみましょうか。
ジャスミンちゃん、テストの答え合わせで、どこで間違えたか一個一個さかのぼること、あるじゃない? それと同じなの。

戸倉 ジャスミン(笑い) 戸倉 ジャスミン

あー! マジか! 答えが違ってたら、最後の計算から、その前の計算って逆に辿っていって『ここがミスだった!』って探すやつじゃん!

香月 リサ 先生(笑顔) 香月 リサ 先生

まさにそれ。
ニューラルネットワークも同じで、出力の誤差を順に遡って『この層のこの重みが悪かったから、少し減らしましょう』と少しずつ調整するの。

戸倉 ジャスミン(普段) 戸倉 ジャスミン

よっしゃ、めっちゃ納得! で、その調整って具体的にどうやんの?

香月 リサ 先生(普段) 香月 リサ 先生

勾配降下法という仕組みで、学習率に勾配をかけた分だけ重みを動かすのよ。
これを何万回も繰り返すうちに、ネットワーク全体の誤差が小さくなっていくの。
1回の繰り返しをイテレーション、データ全体を1周するのをエポックと呼ぶわ。

雪村 ましろ(笑顔) 雪村 ましろ

間違いから学ぶって、ましろたち人間も同じなのぉ! 先生に『ここ違うよ』って言われたら、どこがダメだったか遡って考えるもん。

深見 つむぎ(照れる) 深見 つむぎ

先生、助かりました……つい数式で話してしまって。
1986年にRumelhartらが発表した論文で広まったのがこの手法ですよね。
それまで多層パーセプトロンは『どう学習させるか』が分からなかったけれど、これで道が開けたと。

香月 リサ 先生(笑顔) 香月 リサ 先生

つむぎさんの厳密さは大切よ。
ジャスミンちゃんとましろさんの素朴さも大切。
両方あるから学習が深まるの。

戸倉 ジャスミン(普段) 戸倉 ジャスミン

じゃあ全部の重みに対して『どれくらい動かすか』を一気に計算できちゃうのが、この逆伝播のスゴさってわけじゃん!

確認クイズ

誤差逆伝播法で使われる数学的な原理はどれか?

  1. ベイズの定理
  2. 連鎖律 (チェインルール)
  3. フーリエ変換
  4. 最小二乗法
こたえを見る

正解: 2. 連鎖律 (チェインルール)

誤差逆伝播法は微分の連鎖律 (合成関数の微分則) を用いて、出力層の損失から各層の重みに対する勾配を効率的に計算します。この勾配を使って勾配降下法で重みを更新します。

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。