关键观点
用理论初始损失检查输出层
在 27 类字符预测中,如果初始化没有任何先验偏好,softmax 应接近均匀分布,因此交叉熵应约为 −log(1/27)=3.29。首次损失达到 27,说明 logits 具有过大的极值,使…展开观点收起观点
在 27 类字符预测中,如果初始化没有任何先验偏好,softmax 应接近均匀分布,因此交叉熵应约为 −log(1/27)=3.29。首次损失达到 27,说明 logits 具有过大的极值,使模型对随机类别产生虚假置信度。将输出偏置置零并缩小输出权重,可让初始损失回到合理区间。这也消除了训练早期仅用于压缩输出尺度的无效阶段。
为什么重要: 理论基线能在训练开始前快速暴露初始化错误,并减少优化预算浪费。
支撑证据
the loss is the negative log probability so let's wrap this in a tensor and then then we can take the log of it and then the negative log probability is the loss we would expect which is 3.29 much much lower than 27
极端 logits 会制造“自信地犯错”
softmax 对 logits 的相对差异非常敏感;当 logits 接近且接近零时,输出概率较均匀。若初始化尺度放大,随机最大的 logit 会吸收大部分概率,而它通常不是正确类别,于是损…展开观点收起观点
softmax 对 logits 的相对差异非常敏感;当 logits 接近且接近零时,输出概率较均匀。若初始化尺度放大,随机最大的 logit 会吸收大部分概率,而它通常不是正确类别,于是损失急剧升高。极端情况下,初始损失甚至可能达到无穷大。因此输出层通常应以小但非全零的权重开始。
为什么重要: 良好的输出初始化让模型从低置信度状态开始学习,而不是先纠正毫无依据的过度自信。
支撑证据
the network is very confidently wrong and uh that that's what makes it um record very high loss