大家好,欢迎来到专栏《AutoML》,在这个专栏中我们会讲述AutoML技术在深度学习中的应用。这一期讲述在归一化机制中的应用。

作者&编辑 | 言有三

数据经过归一化和标准化后可以加快梯度下降的求解速度,这是Batch Normalization等技术非常流行的原因,它使得可以使用更大的学习率更稳定地进行梯度传播,甚至增加网络的泛化能力。

关于各类归一化方法的解读,可以阅读我们的往期文章,

1 Switchable Normalization

现在我们在每一个网络层中都使用同样的归一化,这是最优的配置吗?显然不是,因为实际应用中不同的问题就有它最合适的归一化操作。比如RNN等时序模型,有时候同一个batch内部的训练实例长度不一(不同长度的句子),则不同的时态下需要保存不同的统计量,无法正确使用BN层,只能使用Layer Normalization。对于图像生成以及风格迁移类应用,使用Instance Normalization更加合适。对于Batch比较小的情况下,Group Normalization是一个替换的方案。

Switchable Normalization[1]的研究便是关注如何让不同的网络层学习到最适合该层的归一化机制,方法就是在包含各类归一化方法的池中进行选择,然后用精度进行比较择优。

上图是对于各类任务中,学习到的最适合该方法的BN,IN,LN,GN的比例。

可以看到,对于分类,检测任务主干模型,BN更常用,对于LSTM任务,LN一家独大,对于Image Style Transfer任务,IN一家独大。

这便是Switchable Normalization(SN),具体的搜索过程大家可以阅读原文细节以及开源的代码。

2 SN与minibatch

众所周知,minibatch size的变化对BN是有影响的,minibatch过小,均值和方差统计量的估计噪声就过大,影响模型的泛化性能。IN,LN和GN计算统计量时虽然与minibatch无关,却也失去了BN带来的正则化能力,因此更容易产生明显的过拟合。SN在任务中自适应地学习出最佳配置,从而使得模型对minibatch更加不敏感。

具体来说,minibatch越小,BN越不稳定,权重系数越小,IN和LN的权重系数则越大;minibatch越大,BN的权重系数就越大,反之IN和LN的权重系数越小。

上图为不同minibatch下的权重系数的比例,括号中分别表示GPU数目,每个GPU的样本数。可以看出,随着minibatch的不断减小,BN的权重越来越低。

3 SN的改进

针对SN中使用softmax进行重要性学习存在的冗余计算问题,Sparse Switchable Normalization方法将softmax转换成了稀疏的形式,对每一个归一化层只选择一个归一化操作。

由于归一化方法的不同在于用于计算归一化的集合,所以往后的发展可能集中在如何选择用于归一化的集合,以及针对具体任务学习均值和方差,感兴趣的可以继续跟进。

[1] Luo P, Ren J, Peng Z, et al. Differentiable learning-to-normalize via switchable normalization[J]. arXiv preprint arXiv:1806.10779, 2018.

[2] Shao W, Meng T, Li J, et al. Ssn: Learning sparse switchable normalization via sparsestmax[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2019: 443-451.

[3] github链接

总结

本次我们介绍了一种对各类归一化方法进行自动学习的机制,它相比固定的配置归一化方法更加灵活,也能取得更优的结果。AutoML系列文章

rms归一化_【AutoML】归一化(Normalization)方法如何进行自动学习和配置相关推荐

  1. 【AutoML】归一化(Normalization)方法如何进行自动学习和配置

    大家好,欢迎来到专栏<AutoML>,在这个专栏中我们会讲述AutoML技术在深度学习中的应用.这一期讲述在归一化机制中的应用. 作者&编辑 | 言有三 数据经过归一化和标准化后可 ...

  2. 对数坐标归一化_数据归一化,标准化的几种方法

    归一化方法(Normalization Method) 1. 把数变为(0,1)之间的小数 主要是为了数据处理方便提出来的,把数据映射到0-1范围之内处理,更加便捷快速,应该归到数字信号处理范畴之内. ...

  3. 均值归一化_数据归一化

    数据归一化 [TOC] 将所有的数据映射到同一尺度. ​ 首先,为什么需要数据归一化?举个简答的例子.样本间的距离时间所主导,这样在样本1以[1, 200]输入到模型中去的时候,由于200可能会直接忽 ...

  4. 【AutoML】优化方法可以进行自动搜索学习吗?

    大家好,欢迎来到专栏<AutoML>,在这个专栏中我们会讲述AutoML技术在深度学习中的应用,这一期讲述在优化方法选择中的应用. 作者&编辑 | 言有三 要成功训练一个深度学习模 ...

  5. 均值归一化_特征归一化

    1.定义 数据的归一化处理,即将数据统一映射到[0,1]区间上. 2.方法 1)最大最小标准化(Min-Max Normalization) 本归一化方法又称为离差标准化,使结果值映射到[0 ,1]之 ...

  6. java对字符串归一化_字符串归一化

    5 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc=ne ...

  7. 「AutoML」激活函数如何进行自动学习和配置

    2019-10-26 12:48:04 大家好,欢迎来到专栏<AutoML>,在这个专栏中我们会讲述AutoML技术在深度学习中的应用.这一期讲述在激活函数设计中的应用. 作者&编 ...

  8. 【AutoML】激活函数如何进行自动学习和配置

    大家好,欢迎来到专栏<AutoML>,在这个专栏中我们会讲述AutoML技术在深度学习中的应用.这一期讲述在激活函数设计中的应用. 作者&编辑 | 言有三 激活机制是一个网络非线性 ...

  9. 【AutoML】进化算法如何用于自动模型搜索(NAS)

    大家好,欢迎来到专栏<AutoML>,在这个专栏中我们会讲述AutoML技术在深度学习中的应用,这一期讲述进化算法用于模型搜索的基本概念和流程. 作者&编辑 | 言有三 一直以来, ...

最新文章

  1. 【Java例题】7.6文件题3-文本文件统计
  2. 【深度学习】——模型评估指标MAP计算实例计算
  3. 光纤收发器按照网管怎么分类?
  4. python修改mac地址_python利用_winreg模块制作MAC地址修改工具
  5. 瓜州县电子政务工程_甘肃瓜州:“厕所革命”带来乡村新生活
  6. 纯英文换行的css,利用CSS实现纯英文数字自动换行
  7. Win8之开机启动项
  8. fanuc 机床,加工中心通信总结,机床联网监控系统
  9. Eclipse .class文件中文乱码
  10. 客户端主动断开连接_Go实现客户端和服务器抓包分析TCP三次握手和断开操作
  11. android热加载随记
  12. python操作微信电脑版_【Python】【微信】+操作电脑版微信
  13. 4 实验项目_Android开发环境搭建
  14. 子域名收集 -- teemo
  15. android手机wifi打不开,手机wifi开关打不开什么原因_手机wifi开关失灵的解决方法-系统城...
  16. 深度学习之前馈神经网络(前向传播和误差反向传播)
  17. Freemarker静态页面使用方法详解+指令
  18. 面试 - 为什么foreach中不允许对元素进行add和remove
  19. 【BUAA_CO_LAB】计组p2碎碎念
  20. 使用Easyswoole 搭建简单的Websoket服务

热门文章

  1. linux下mysql的忘记root密码的解决办法
  2. AJAX实例演示加载xml
  3. timeSetEvent的用法(一)
  4. RDB 和 AOF 持久化的原理是什么?我应该用哪一个?它们的优缺点? 1
  5. box-sizing布局(简要介绍)
  6. Linux系统下Apache的安装、启动等初级操作
  7. mysql 主从的几个参数
  8. 按字节提取整形数值(按位与运算符“”、右移位运算符“”)
  9. 正在使用的项目,项目名那里出现了红色感叹号?怎么去除?
  10. 【WP8】Uri关联启动第三方App