AI解剖课堂 · Part 2 机器是怎样学习的
第 23 章 反向传播:分摊责任
Q. 旋钮有几十亿个,猜错的时候,该改哪个、改多少?
- 第 19 章的神经网络预测 A 店是 3.5 分,真实是 4.5 分,损失是 1。11 个旋钮里,该怪谁?
- 像第 21 章那样一个个稍微改改,就能知道。可 GPT-3 有 1750 亿个旋钮,根本试不完。
- 所以从末端开始,倒着分摊责任。评分调高 0.01,损失就少 0.02,所以评分的责任是 −2。
- 评分是由“人气 × 1.5”得来的,所以人气的责任是 −2 × 1.5 = −3。责任沿着线倒着流回去。
- 排队权重和排队 2 相乘,得出人气,所以它的责任是 −3 × 2 = −6。乘法就这样一环扣一环。
- “太辣”神经元当时是关着的。关着的神经元改变不了结果,责任也是 0,那些旋钮就不动。
- 这样倒着走一遍,所有旋钮的责任一下子都出来了。这就是反向传播(backpropagation)。
- 朝责任的反方向一点点调整,预测变成 4.2 分,损失从 1 降到 0.09。这个方法在 1986 年广为人知(第 3 章)。
本章小结
- 反向传播:从损失出发倒着走,沿着线把责任一路乘下去。
- 旋钮的责任 = 稍微改一点,损失变多少。关着的神经元后面是 0。
- 倒着走一遍,就得到所有旋钮的责任,再朝反方向一点点调整。