资源行业动态深度网络标准化(规范化)技术

深度网络标准化(规范化)技术

2019-12-19 | |  92 |   0

原标题:深度网络标准化(规范化)技术

来源:AI 研习社     链接:https://www.yanxishe.com/TextTranslation/2141


为什么我们需要规范化呢?


规范化一直是深度学习研究的一个活跃领域,这项技术可以大大减少模型的训练时间。使用规范化的一些好处:

1、这种方式对每个特征进行标准化,使它们保留每个特征的贡献,因为某些特征的数值比其他特征大。通过这种方式,我们的网络可以是无偏的(更有价值的特征)。  

2、它减少了内部协变量偏移(ICS)。它是由于训练过程中网络参数的变化而引起的网络激活值分布的变化。为了提高训练质量,我们寻找方法以减少内部协变量偏移(ICS)。 

3、在这篇文章中,作者表明批规范化使损失函数曲面更加光滑(如:它对梯度大小的限制要严格得多)。  

4、它使优化速度更快,因为规范化不允许各个位置的权重值过大,并将它们限制在一定范围内。  

5、规范化的一个意想不到的好处是,它有助于网络的正则化(只是轻微的,并不显著)。  


从上面,我们可以得出结论,正确地进行规范化是使模型得到有效训练的一个关键因素,但这并不像听起来那么容易。让我用一些问题来证实这个观点。 

1、规范化网络层在分布式训练中的表现如何呢?  

2、在CNN、RNN、风格迁移等任务应该使用哪一种标准化技术呢?  

3、当您在训练中更改数据集的批尺寸时会发生什么?  

4、对于您的网络,哪种规范技术是计算和精度之间的最佳折衷?  


为了回答这些问题,让我们逐一深入了解每种规范化技术的细节。


批规范化


批规范化是一种对网络中具有一定大小的批尺寸的激活值进行规范化的一种方法。对于每个特征,批规范化计算小批量中该特征的均值和方差。然后,减去平均值,并除以小批量特征的标准差。 

01.png

上图来自https://arxiv.org/pdf/1502.03167.pdf%27


但是等等,如果增加权重的大小使网络性能更好呢?  


为了解决这个问题,我们可以添加γ和β分别作为尺度和偏移的可学习的参数。这些可以概括如下:  

02.png

ϵ为方程的恒定常数。 


批规范化相关的问题 :


1、变化的批尺寸→如果批尺寸为1,则方差为0,无法进行批规范化操作。此外,如果我们有一个小的批尺寸,那么它会变得不稳定,训练过程可能会受到影响。分布式训练也会有问题。如果你在不同的机器上计算,那么你必须采取相同的批尺寸,否则γ和β对于不同的系统将是不同的。  


2、循环神经网络→在一个RNN中,每个时间步的循环激活值都有一个不同的描述信息(即统计数据)。这意味着我们必须为每个时间步匹配一个单独的批处理规范层。这使得模型更加复杂、更加占用空间,因为它迫使我们在训练期间存储每个时间步长的统计数据。  


批规范化的替代方案(或更好的规范化)将在下面详细讨论,但如果您只对粗略的描述感兴趣(或仅通过查看一张图片进行修缮),请查看下面:  

1576737911124043.png

上图来自https://arxiv.org/pdf/1803.08494.pdf 


权值规范化


等等,我们为什么不将一个层的权值规范化,而不是直接将激活值规范化呢?权值规范化就是这样做的。 


权值规范化的重新参数化为权值(ω): 

04.png

它将权值向量与其方向分离,这与基于方差的批规范化具有类似的效果。唯一的区别是变化量而不是方向。 


对于均值,文章中作者巧妙地将均值批规范化和权值规范化结合起来,即使在较小批量的情况下也能得到期望的输出。这表示他们减去了小批量的均值,但并没有除以方差。最后,他们使用权值规范化,而不是除以方差。 


注意:由于大数定律,与方差相比,均值的噪声更小(上面就是均值优于方差的一个很好的选择)。  

结果表明,在CIFAR-10上,权值规范化与仅用均值的批规范化相结合的效果最好。


层规范化

层规范化对输入各个特征进行规范化,而不是在批规范化中对各个批维度的输入特征进行规范化。 


一个mini-batch由具有相同特征数的多个样本组成。Mini-batche为矩阵(或张量),其中一个轴对应batch维度,另一个轴(或轴)对应特征维度。 

05.png

i表示批处理,j表示特征,xᵢⱼ表示对应i的第j个元素的输入数据。 


本文的作者表示,对于RNNs的情况下,层规范化要优于批规范化。 


实例(或对比度)规范化


层规范化和实例规范化非常相似,但是它们之间的区别是实例规范化在每个训练示例中跨每个通道进行操作,而不是在训练示例中跨输入特征进行操作。 与批处理规范化不同,实例规范化层也会在测试时应用(由于微型批处理的不依赖性)。

1576737980187236.png

在此,x∈ℝT×C×W×H是包含一批T图像的输入张量。 令xtijk表示其第tijk个元素,其中k和j跨越空间尺寸(图像的高度和宽度),i是要素通道(如果输入是RGB图像,则是颜色通道),t是在批处理中图像的索引。


该技术最初是为样式转移而设计的,实例规范化试图解决的问题是网络应该与原始图像的对比度无关。


组归一化


顾名思义,组归一化针对每个训练示例对通道组进行归一化。 可以说,Group Norm在Instance Norm和Layer Norm之间。


∵当我们将所有通道归为一个组时,组归一化即为“层归一化”。 而且,当我们将每个通道划分为不同的组时,它将成为实例规范化。

07.png

Sᵢ 定义如下:

08.png

09.png

10.png

在此,x是由图层计算的特征,而i是索引。 在2D图像的情况下,i =(iN,iC,iH,iW)是按(N,C,H,W)顺序索引特征的4D矢量,其中N是批处理轴,C是通道轴, H和W是空间的高度和宽度轴。 G是组数,它是预定义的超参数。 C / G是每组的通道数。 ⌊.⌋是下限操作,并且“⌊kC/(C / G)⌋=⌊iC/(C / G)⌋”表示索引i和k在同一组信道中,假设每组通道沿C轴按顺序存储。 GN沿着(H,W)轴和一组C / G通道计算µ和σ。


批处理实例规范化


实例规范化的问题在于它会完全删除风格信息。虽然这有其自身的优点(例如在风格转换中),但在对比度很重要的条件下(例如天气分类,天空的亮度很重要),可能会出现问题。批处理实例规范化尝试通过了解每个通道(C)应使用多少风格信息来解决此问题。


批处理实例规范化只是批处理规范与实例规范之间的插值。

  11.png

ρ的值在0到1之间。


批处理实例规范化有趣的方面是,通过梯度下降学习平衡参数ρ。


从批处理实例归一化可以得出结论,模型可以学习使用梯度下降自适应地使用不同的归一化方法。


从上面理解,可能会出现一个问题。


是否可以在需要时切换规范化技术?


答案是是的。接下来的技术可以做到这一点。


可切换归一化


本文提出了可切换的归一化方法,该方法使用了来自批次归一化,实例归一化和层归一化的不同均值和方差统计量的加权平均值。


这组作者表明,在图像分类和目标检测等任务上,开关归一化可能会胜过批量归一化。


该文件显示,实例规范化在较早的层中使用较多,而批处理规范化在中间层中更受欢迎,而层规范化在最后一层中更常使用。 较小的批次大小导致倾向于进行层归一化和实例归一化。


参考:

https://arxiv.org/pdf/1502.03167.pdf%27

https://arxiv.org/pdf/1607.06450.pdf

https://arxiv.org/pdf/1602.07868.pdf

https://arxiv.org/pdf/1607.08022.pdf

https://arxiv.org/pdf/1803.08494.pdf

https://arxiv.org/pdf/1805.07925.pdf

https://arxiv.org/pdf/1811.07727v1.pdf  

------------------------------------------------------------------------------

发起:唐里 校对:唐里 审核:鸢尾

参与翻译(4人):西南以南、天字一号、望北、had_in

英文原文:Normalization Techniques in Deep Neural Networks

THE END

免责声明:本文来自互联网新闻客户端自媒体,不代表本网的观点和立场。

合作及投稿邮箱:E-mail:editor@tusaishared.com

上一篇:2020 年聊天机器人将走向何方?

下一篇:Google 地图如何采用深度学习预测公交延迟?

用户评价
全部评价

热门资源

  • 国内人才报告:机...

    近日,BOSS 直聘职业科学实验室 &BOSS 直聘研究院...

  • AI使物联网更智能...

    看到微软对物联网和人工智能的结合感兴趣是一个明...

  • 推荐一批学习自然...

    这里推荐一批学习自然语言处理相关的书籍,当然,...

  • 安防智能化大势下...

    大部分传统安防设备不仅拍摄视野有限,而且无法事...

  • 20亿创业基金、10...

    近日,杭州举办了建设国家新一代人工智能创新发展...