论文:层归一化,循环批归一化(2016)和批归一化RNN(2015)有什么区别?


30

因此,最近有一层“ 图层归一化”文章。Keras 上也有一个实现

但我记得有几篇论文标题为Recurrent Batch Normalization(Cooijmans,2016)和Batch Normalized Recurrent Neural Networks(Laurent,2015)。这三个之间有什么区别?

我不了解此“相关工作”部分:

批处理规范化先前已扩展到递归神经网络[Laurent等,2015,Amodei等,2015,Cooijmans等,2016]。先前的工作[Cooijmans等,2016]提出,通过为每个时间步保留独立的标准化统计数据,可以获得最佳的循环批标准化性能。作者表明,将循环批归一化层中的增益参数初始化为0.1,会对模型的最终性能产生重大影响。我们的工作还与体重归一化有关[Salimans和Kingma,2016]。在权重归一化中,使用输入权重的L2范数代替方差来归一化对神经元的求和输入。使用预期统计量应用权重归一化或批次归一化等效于对原始前馈神经网络进行不同的参数化。在路径归一化的SGD中研究了ReLU网络中的重新参数化[Neyshabur et al。,2015]。但是,我们提出的层归一化方法不是对原始神经网络进行重新参数化。因此,层归一化模型具有与其他方法不同的不变性,我们将在下一节中研究

Answers:


25
  • 层归一化Ba 2016):不使用批处理统计信息。使用从当前样本的一层内所有单位收集的统计数据进行归一化。与ConvNets不能很好地配合使用。

  • 循环批处理归一化(BN)Cooijmans,2016 ;也由Qianli Liao和Tomaso Poggio同时提出,但在循环卷积网络上进行了测试,而不是RNN / LSTM):与批处理归一化相同。对每个时间步骤使用不同的归一化统计信息。您需要为每个时间步骤存储一组均值和标准差。

  • 批次归一化递归神经网络Laurent,2015):批次归一化仅在输入状态和隐藏状态之间应用,而不在隐藏状态之间应用。即,标准化不随时间推移而应用。

  • 流式标准化 Liao et al.2016):总结了现有的标准化并克服了上面提到的大多数问题。它与ConvNets,循环学习和在线学习(例如,小批量或一次采样)一起很好地配合使用:

  • 权重归一化Salimans和Kingma,2016年):每当使用权重时,首先将其除以范数,以使所得的权重具有范数。也就是说,输出,其中和分别表示输入和权重。然后将标量比例因子乘以输出。但是以我的经验,对于性能而言似乎并不是必不可少的(下游可学习层也可以学习此知识)。大号2大号21个ÿ=Xw/|w|XwGÿ=ÿGG

  • 余弦归一化Luo et al.2017):权重归一化与余弦归一化非常相似,其中对权重和输入均采用相同的归一化:。同样,手动或自动微分可以计算和适当梯度。大号2ÿ=X/|X|w/|w|Xw

请注意,在2000年代,在称为HMAX的ConvNets类中,权余弦归一化已被广泛使用(称为归一化点积)(Riesenhuber 1999)来为生物视觉建模。您可能会发现它们很有趣。

参考:HMAX模型参考

参考:Corical Network Simulator参考

参考文献:余弦归一化:在神经网络中使用余弦相似度代替点积,罗春杰,詹建峰,王磊,杨强

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.