Batch Normalization与Shift-based Batch Normalization

Shift-based Batch Normalization是一种变体的批量归一化(Batch Normalization,简称BN)方法。在传统的批量归一化中,每个特征维度都被标准化为具有零均值和单位方差的分布。而在Shift-based Batch Normalization中,额外引入了一个可学习的偏移参数,该参数被称为“shift”。

假设我们有一个卷积神经网络(CNN),其中包含一层使用Shift-based Batch Normalization的卷积层。这层具有多个特征图(feature maps),每个特征图由一系列数值组成。在Shift-based Batch Normalization中,每个特征图都有一个对应的偏移参数,用于调整其归一化后的值。

下面是一个使用Shift-based Batch Normalization的简化例子:

假设我们有一个3x3的卷积层,输出特征图包含2个通道(即有2个特征图)。该卷积层的输出如下:

```
Feature Map 1: [[3, 6, 9], [12, 15, 18], [21, 24, 27]]
Feature Map 2: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
```

1. 计算每个通道的均值和方差:

   对于Feature Map 1:
   - 均值 `mean1 = (3 + 6 + 9 + 12 + 15 + 18 + 21 + 24 + 27) / 9 = 15`
   - 方差 `variance1 = ((3-15)^2 + (6-15)^2 + ... + (27-15)^2) / 9 = 60`

   对于Feature Map 2:
   - 均值 `mean2 = (1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9) / 9 = 5`
   - 方差 `variance2 = ((1-5)^2 + (2-5)^2 + ... + (9-5)^2) / 9 = 6`

2. 对每个特征图进行归一化:

   对于Feature Map 1:
   - 归一化 `normalized_map1 = (feature_map1 - mean1) / sqrt(variance1 + epsilon)`
   - 其中`epsilon`是一个很小的数(例如1e-5),用于避免除以零的情况。

   对于Feature Map 2:
   - 归一化 `normalized_map2 = (feature_map2 - mean2) / sqrt(variance2 + epsilon)`

3. 引入可学习的偏移参数(shift):

   假设我们有两个偏移参数`shift1`和`shift2`,它们分别对应Feature Map 1和Feature Map 2。在训练过程中,模型会学习这些偏移参数,使得归一化后的特征图更好地适应任务。

   - 归一化后添加偏移 `shifted_map1 = normalized_map1 + shift1`
   - 归一化后添加偏移 `shifted_map2 = normalized_map2 + shift2`

4. 经过Shift-based Batch Normalization后的特征图:

```
Shifted Feature Map 1: [[a1, b1, c1], [d1, e1, f1], [g1, h1, i1]]
Shifted Feature Map 2: [[a2, b2, c2], [d2, e2, f2], [g2, h2, i2]]
```

这样,Shift-based Batch Normalization引入了可学习的偏移参数,允许模型在归一化后对特征图进行调整,以更好地适应数据分布。这在某些场景中可能比传统的批量归一化方法更有效。注意,实际的模型中可能有更多通道和特征图,这里只是一个简化的例子。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值