在批量归一化中,样本均值和标准差是通过放入网络的原始数据的均值/标准差进行归一化的,还是我们当前正在处理的层中的输入的均值/标准差?
例如,假设我的小批量大小为 2,其中包含. 假设现在我们在th 层和前一层的输出是. 当我们在这一层执行批量规范时,将减去样本均值或?
我的直觉告诉我,它一定是否则我认为它不会被标准化为 0 均值和 1 的标准差。
在批量归一化中,样本均值和标准差是通过放入网络的原始数据的均值/标准差进行归一化的,还是我们当前正在处理的层中的输入的均值/标准差?
例如,假设我的小批量大小为 2,其中包含. 假设现在我们在th 层和前一层的输出是. 当我们在这一层执行批量规范时,将减去样本均值或?
我的直觉告诉我,它一定是否则我认为它不会被标准化为 0 均值和 1 的标准差。
你的直觉是正确的。我们将对所考虑层的输入进行归一化(就在应用激活函数之前)。
因此,如果该层接收到输入, 归一化公式尺寸如下所示:
请注意,在实践中,一个常数还在分母的平方根下添加以确保稳定性。
来源:原始Batch Normalization 论文(第 3 节)。
Andrew Ng 关于这个主题的视频也可能有助于说明。