在批量标准化中,是μ^μ^,σ^σ^原始小批量或当前层输入的平均值和标准差?

人工智能 神经网络 深度学习 批量标准化
2021-10-19 10:46:13

在批量归一化中,样本均值和标准差是通过放入网络的原始数据的均值/标准差进行归一化的,还是我们当前正在处理的层中的输入的均值/标准差?

例如,假设我的小批量大小为 2,其中包含x1,x2. 假设现在我们在kth 层和前一层的输出是x~1,x~2. 当我们在这一层执行批量规范时,将减去样本均值x1,x2x~1,x~2?

我的直觉告诉我,它一定是x~1,x~2否则我认为它不会被标准化为 0 均值和 1 的标准差。

1个回答

你的直觉是正确的。我们将对所考虑层的输入进行归一化(就在应用激活函数之前)。

因此,如果该层接收到输入x=(x(1)x(d)), 归一化公式kth尺寸x如下所示:

x^(k)=x(k)E[x(k)]Var[x(k)]

请注意,在实践中,一个常数ϵ还在分母的平方根下添加以确保稳定性。

来源:原始Batch Normalization 论文(第 3 节)。

Andrew Ng 关于这个主题的视频也可能有助于说明。