批量归一化方差计算

数据挖掘 深度学习 批量标准化
2021-10-12 17:21:01

批量归一化中,训练阶段的方差计算由 (X一世 是训练批次中的各个元素的大小 )

σ2=1一世=1(X一世-μ)2
在哪里 μ=1一世=1(X一世)

在测试期间,我们计算相同的人口统计数据

[X]=[μ]一个r[X]=-1[σ2] (如您所见,人口方差的无偏估计是在测试期间计算的,因为我们正在构建模型来预测人口分布)

在训练阶段本身进行偏差校正并随后可以在没有 -1修正系数。IE

培训期间:

σ2=1-1一世=1(X一世-μ)2
在哪里 μ=1一世=1(X一世)

在测试期间:

[X]=[μ]一个r[X]=[σ2]

2个回答

好吧,我在这里要说的唯一原因是数值稳定性。例如,如果批量大小=1在培训期间,您可能会得到ñ一个ñ方差!

更新:我再次检查了BN纸,他们清楚地提到了条件>1. 然而,我发现一篇有趣的帖子讨论了有偏估计器比无偏估计器更可取的情况。这也许可以解释为什么作者在训练期间使用有偏见的推理和无偏见的推理。

@shimao 已在 stats stackexchange上回答了

引用 shimao

“是的,这会更合乎逻辑,尽管两种方式都相同。我可以在这里找到一些关于这个的讨论

看起来原作者后来暗示训练和测试时间都应该使用无偏方差。此外,许多图书馆的实际实现与论文中描述的并不完全一致。”