跳到主要内容

训练的工具箱 — 损失、激活与熵

这一章讲三件事: 「错多少」怎么定价——损失函数(给『错』记账的式子)一族七种,各算一遍;

神经网络靠什么决定「传还是不传」——激活函数(每个神经元放行多少的开关)一族; 「多不确定」怎么定价(熵及其全家族,重点是 KL 散度)。 这一章是工具箱章:它自己不做 RL,但后面每一章都来这里取工具—— DQN 拿均方误差,SAC 拿熵,TRPO/PPO 拿 KL,RLHF 拿偏好损失。

1. 这一章讲什么

神经网络的学习循环是:前向算出预测 → 用损失函数给「预测离目标多远」打个分 → 按分数调整权重(怎么调,依据我们书架的拆解:反向传播一次算出全部参数的梯度1)。 原书第 3 章的后半把这循环里要用的零件全列了一遍:损失七种、激活若干、熵十三种2

清单没法读,得先看见它们各自回答的问题:

问题工具后面谁在用
错了多少?损失函数DQN(第 07 章)、所有带评论员的算法
每个神经元传什么?激活函数所有网络
有多随机/两套概率差多远?熵、KL 散度最大熵策略(第 04 章)、SAC/TRPO/PPO(第 09 章)

2. 顶层全景:一个训练步的三道关口

一批样本 ──► 网络前向 ──► 预测 ──┬──► ① 损失:错多少(一个数)

② 激活:每层里,这个神经元放行多少?

③ 熵/KL:这套输出有多随机?和目标分布差多远?

图说:① 定「往哪调」,② 决定「信号能不能流过去」,③ 给「随机性」记账。
三道关口各管一件事,凑齐才是一次完整的学习步。

主走查:一组具体的错,把七种损失各算一遍——第 3 节第 1 小节。

3. 核心原理

3.1 损失函数:给「错」定价(主走查)

书里先立了 RL 特有的口径:损失衡量的是预测的 Q 值与目标 Q 值之间的差距,对每个样本算的是损失,对全部样本取平均叫代价,都要越小越好3

(预测与目标可以各是一个数,也可以是按顺序排好的一串数——这样的向量(一列按次序排好的数)。)

拿三个预测误差 −1、2、0(单位随意;这组数是为演示编的), 把回归一族的四种损失各算一遍:

损失公式含义算一遍(误差 −1, 2, 0)性格
均方误差 MSE差的平方取平均(1 + 4 + 0)/3 = 1.67平方放大大错;对离群点(远得离谱的个别样本)敏感
平均绝对误差 MAE差的绝对值取平均(1 + 2 + 0)/3 = 1.00一视同仁;对离群点稳
Huber小错用平方、大错用线性,分界线 δδ=1:(0.5 + 1.5 + 0)/3 = 0.67两头兼顾;δ 划「多大算离群」
log-coshcosh 的对数,处处二阶可导真值 log-cosh(1)=0.43、log-cosh(2)=1.33、0,平均 ≈ 0.59平滑;要用二阶导的算法(如 XGBoost)选它

书里点破了取舍的机括:MSE 平方放大误差,所以对离群点不稳健; MAE 对方向不敏感所以更稳健;Huber 的 δ「决定什么算离群点」,选 δ 是要害4同一组错,三种定价——损失函数不是真理,是态度。

分类一族的两种:

  • 二元交叉熵:预测输出是 0 到 1 之间的概率,预测概率越接近真实标签,损失越小5。 算一遍:真实标签 1,预测 0.9 → 损失 −log(0.9) ≈ 0.105; 预测 0.1(错得离谱)→ −log(0.1) ≈ 2.303——错得越自信,罚得越狠,22 倍的差;

  • 铰链损失:支持向量机(一个老牌的分类方法)的主力;不只罚错,连对了但不自信也罚;标签用 −1/+16

3.2 激活函数:神经元放行多少

书里给激活函数的定位:用在网络内部各层,把感兴趣的量压进可控区间(如 0 到 1)7。 没有非线性(不许直来直去、必须拐弯)激活,多少层都等价于一层线性变换——非线性是深度的本钱(书里在深度学习的 定义里点了「非线性变换」这一步8)。

一族走一遍,各算一个具体的数:

函数输入 2 / 输入 −2 时输出书里点出的问题
sigmoid≈0.88 / ≈0.12两端梯度趋零;输出不以 0 为中心;指数运算慢
tanh≈0.96 / ≈−0.96输出以 0 为中心,前两病减轻;两端仍趋零
ReLU2 / 0负半区彻底沉默(反向传播断流,「死 ReLU」);但不饱和、算得快
Leaky ReLU(取 a=0.01)2 / −0.02负半区留一条缝,治「死」
ELU(取 a=1)2 / ≈−0.86负半区平滑压向 −a,输出更居中;略费计算
softmax(三个输入 2,1,0)输出 0.665 / 0.245 / 0.090把任意向量变成加和为 1 的概率分布

softmax 值得单独一句:书里指出它就是统计热力学里玻尔兹曼概率函数改个名字—— 第 04 章那个「指数化 Q」的最大熵策略,正是拿它把 Q 值变成动作概率的9。 书里还实测了一句难得的大实话:ReLU 与它的变体之间,实际应用中没找到谁有明确优势10

3.3 熵一族:给「不确定」定价

熵的物理出身:系统内在的混乱程度;香农把它搬进信息论——平均最少要多少比特 才能存下这些信息11。书里列了十三种定义,不必全记,抓住一条主线:

玻尔兹曼 → 吉布斯 → 香农 是同一条思想的三个精度档;香农熵是机器学习里 默认的那个:离散情形 H = −Σ p·log₂p12。它的两个极端,书里原样给出 (也是最好记的两个锚):

  • 每个结果等概率(n 个结果)→ H 取最大值 log₂n(均匀硬币:H=1 比特);
  • 只有一个可能结果(完全可预测)→ H = 0(太阳照常升起,零比特)12

沿 Rényi 熵再派生出一族:α=2 的碰撞熵、α→∞ 的最小熵(全家族里最小、 永远不会超过香农熵)13。这些「其他熵」在第 12、13 章的物理与安全语境才会用上。

这一节真正的承重件是两个差量。 交叉熵 H(P,Q) 衡量「用分布 Q 编码真实分布 P 要花多少比特」;KL 散度 D(P‖Q) 衡量「用 Q 近似 P,多花了多少比特」。 书里给出两者的恒等式:H(P,Q) = H(P) + D(P‖Q)14

算一遍:真实 P=(1, 0)(必然事件),模型 Q=(0.8, 0.2): H(P,Q) = −log₂0.8 ≈ 0.322 比特;H(P)=0,所以 KL = 0.322 比特—— 模型把必然事件只押八成,每一件事都白付 0.322 比特的税。 第 09 章的 TRPO 拿 KL 当「新策略离旧策略不许超过的距离」,SAC 拿它做策略改进, RLHF 拿它防止模型漂得太远——全是这一把尺子。

家族尾部三个小件,记用途即可:互信息——知道一件事之后,另一件事的不确定性 少掉多少(用 KL 定义)15;信息增益——决策树(一层层问是非题的那种老牌模型)选分裂特征用的就是它 (书里明说:在决策树语境下它就是互信息)16;费希尔信息——数据里 关于未知参数带了多少信息,从代价函数的局部曲率估计参数的相对不确定度17

4. 作者的判断与证据

  • 书里给证据的: 七种损失的公式与适用场景、各激活的优缺点、熵家族的谱系, 均为书中明列内容34712
  • 作者的实测判断: 「ReLU 家族没有明确赢家」是书里的经验陈述,不是定理10
  • 作者的定位判断: 损失按「分类/回归」分族、熵按「物理→信息」铺开, 这个组织方式本身是作者的教学选择;我们把它重排成「三个问题」,机制未变。
  • 书里的跨章伏笔: softmax=玻尔兹曼、交叉熵=最大似然(挑那个让数据最可能出现的猜法)估计的最小化目标918—— 这两句把本章与第 04 章的最大熵策略、第 13 章的偏好学习连成一条线。

5. 边界与局限

  • 本章只给「选哪个」的定性理由,没给「怎么算梯度」。 损失定了价之后, 参数往哪调是反向传播的事,书里只有一句带过1;完整机制在我们书架的拆解里1
  • 熵家族铺得远、用得浅。 十三种里本书正文只真用了香农熵与 KL; Tsallis、费希尔等列而不用——读时不必平均用力。
  • 书里没讲的: 这种差距怎么定标、以及 RL 特有的病。DQN 的「高估」会让均方误差去拟合一个虚高的 目标——损失函数本身没错,错在目标;这要在第 07、09 章补。
  • 分母为 0、数值下溢这类实现层问题(取 log 前加小常数等)全书不提;照原样承认。

6. 可带走的

  1. 损失=态度:同一组错(−1, 2, 0),MSE 报 1.67、MAE 报 1.00、Huber 报 0.67—— 先选态度,再谈优化;
  2. 大错要不要平方放大?有离群点选 MAE/Huber,没有选 MSE;δ 是 Huber 的「离群线」;
  3. 二元交叉熵罚「自信的错误」:标签 1 预测 0.1,罚 2.303,是预测 0.9 的 22 倍;
  4. 铰链损失连「对了但不自信」也罚——它练的是带边界的分类器(判断『是哪一类』的模型);
  5. 激活函数供给非线性;sigmoid 两端梯度趋零,ReLU 负半区全沉默、Leaky 留缝; 书里实测:这个家族没有公认赢家;
  6. softmax = 玻尔兹曼,把任意分数变成概率分布——最大熵策略、语言模型的输出层,同一件工具;
  7. 熵的两个锚:等概率最大 log₂n,完全确定则为 0;
  8. KL 散度 = 用错的分布要多付的比特;H(P,Q)=H(P)+KL; TRPO/PPO 拿它量「策略挪了多远」,第 09 章见;
  9. 互信息=「知道 A 后 B 少掉多少不确定」,决策树的信息增益就是它;
  10. RL 的损失有特有口径:预测 Q 对目标 Q 的差距——目标错了,损失再小也是错(第 07 章)。

7. 原文地图

主题原书章原文位置
RL 口径的损失(预测 Q vs 目标 Q*)3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:536(搜「predicted Q-value」)
二元交叉熵3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:545(搜「Binary Cross-Entropy」)
铰链损失3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:601(搜「not confident」)
MSE 平方放大、离群敏感3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:621(搜「outliers」)
MAE 稳健3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:637(搜「robust to outliers」)
Huber 与 δ 之要害3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:660(搜「critical」)
log-cosh 与 XGBoost3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:669(搜「XGBoost」)
激活的定位(压进区间)3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:709(搜「(0, 1) interval」)
sigmoid 三病3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:731(搜「Vanishing gradients」)
tanh 居中3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:763(搜「centered on 0」)
softmax=玻尔兹曼3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:806(搜「Boltzmann」)
ReLU 与死 ReLU、Leaky a=0.013.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:828(搜「backpropagation」) · text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:844(搜「0.01」)
无明确赢家3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:883(搜「no clear-cut」)
熵=混乱、香农搬进信息3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:892(搜「disorder」)
香农熵两个极端3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:990(搜「maximum value」)
最小熵不超香农3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1045(搜「never larger」)
交叉熵与最大似然3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1061(搜「maximum likelihood」)
KL 与恒等式 H=H+KL3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1077(搜「related as」)
互信息3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1100(搜「shared by two distributions」)
信息增益=决策树语境的互信息3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1109(搜「decision trees」)
费希尔信息3.1 A Mathematical Model of DRLtext/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1125(搜「local curvature」)

Footnotes

  1. 出处:「2.1 Learning from Problems」第 43 段(text/06-ch02-01-2-1-learning-from-problems.txt:43,搜「backpropagates gradients」):沿各层反向算误差导数、更新权重以优化选定的损失。反向传播一次前向一次反向即得全部梯度、代价约为一次前向的常数倍,是补充(不在书里,依据我们的 ai-book-reference 书架)。依据: shelf=ai-book-reference/nndl-2e#11-backprop-and-autodiff.md @未提交(工作区) 事实=该拆解给出反向传播的完整机制与代价分析。 2 3

  2. 出处:「3.1 A Mathematical Model of DRL」第 532 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:532,搜「Loss Functions」)起依次为损失、激活、熵三节。

  3. 出处:「3.1 A Mathematical Model of DRL」第 536 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:536,搜「predicted Q-value」)。损失按样本算,代价取全体平均。 2

  4. 出处:「3.1 A Mathematical Model of DRL」第 621 段(搜「outliers」)、第 637 段(搜「robust」)、第 660 段(搜「critical」)。 2

  5. 出处:「3.1 A Mathematical Model of DRL」第 549 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:549,搜「converges to the actual label」)。

  6. 出处:「3.1 A Mathematical Model of DRL」第 601 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:601,搜「not confident」)。原文:惩罚错误预测与「不自信的正确预测」;标签 −1/+1。

  7. 出处:「3.1 A Mathematical Model of DRL」第 709 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:709,搜「(0, 1) interval」)。非线性变换的必要性另见第 02 章出处(text/06-ch02-01-2-1-learning-from-problems.txt:35,搜「nonlinear transformation」)。 2

  8. 出处:「2.1 Learning from Problems」第 35 段(text/06-ch02-01-2-1-learning-from-problems.txt:35,搜「nonlinear transformation」)。每层做加权和后过一个非线性激活,这是「深」之所以有意义的前提(通用补充:无非线性则多层塌缩为单层线性)。

  9. 出处:「3.1 A Mathematical Model of DRL」第 806 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:806,搜「Boltzmann」)。softmax 是统计热力学玻尔兹曼概率函数在机器学习里的化用。 2

  10. 出处:「3.1 A Mathematical Model of DRL」第 883 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:883,搜「no clear-cut」)。 2

  11. 出处:「3.1 A Mathematical Model of DRL」第 892–896 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:892,搜「disorder」)、第 983 段(搜「average number of bits」):香农的熵给出信息最优存储所需的平均比特数。

  12. 出处:「3.1 A Mathematical Model of DRL」第 987–990 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:990,搜「maximum value」)。等概率取最大 log₂n;单一结果 H=0。 2 3

  13. 出处:「3.1 A Mathematical Model of DRL」第 1018–1045 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1045,搜「never larger」)。Rényi 家族的特例与最小熵。

  14. 出处:「3.1 A Mathematical Model of DRL」第 1054–1082 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1077,搜「related as」)。交叉熵、KL 及恒等式。

  15. 出处:「3.1 A Mathematical Model of DRL」第 1089–1100 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1100,搜「shared by two distributions」)。

  16. 出处:「3.1 A Mathematical Model of DRL」第 1105–1109 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1109,搜「decision trees」)。

  17. 出处:「3.1 A Mathematical Model of DRL」第 1114–1125 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1125,搜「local curvature」)。

  18. 出处:「3.1 A Mathematical Model of DRL」第 1061 段(text/07-ch03-01-3-1-a-mathematical-model-of-drl.txt:1061,搜「maximum likelihood」)。