AI解剖教室 · Part 2 機械はどうやって学ぶのか

第23章 誤差逆伝播法:責任の分け合い

Q. つまみが何十億個もあるのに、まちがえたとき、どのつまみをどれだけ直せばよいのでしょう?

  1. 第19章のネットワークはA店を3.5点と予想し、本当は4.5なので損失は1。11個のつまみのうち、だれのせいでしょう?
  2. 第21章のように1つずつ少し変えてみればわかります。でもGPT-3はつまみが1,750億個あるので、きりがありません。
  3. そこで後ろから逆向きに責任を分けます。星を0.01上げると損失は0.02減ります。星の責任は −2 です。
  4. 星は「人気 × 1.5」で作られました。だから人気の責任は −2 × 1.5 = −3。責任が線にそって逆向きに流れます。
  5. 待ちの重みは、待ち2とかけられて人気を作ります。だから責任は −3 × 2 = −6。こうしてかけ算が鎖のようにつながります。
  6. 「辛すぎ」ニューロンはオフでしたね。オフのニューロンは結果を変えられないので、責任も0。そのつまみはそのままにします。
  7. こうして一度逆向きにたどると、すべてのつまみの責任がいっぺんに出ます。これが誤差逆伝播法(backpropagation)です。
  8. 責任と反対の向きに少しずつ直すと、予想は4.2点、損失は1から0.09に減ります。1986年に広く知られた方法です(第3章)。

この章のまとめ