如何理解归一化(Normalization)对于神经网络(深度学习)的帮助?

作者:知乎用户
链接:https://www.zhihu.com/question/326034346/answer/730051338
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

回顾一下围绕normalization的一些工作(由最新到最旧的BatchNorm):

2019,Weight Standardization(没有发表,但是有大佬Alan Yuille加持)

Weight Standardization 2019

WS叫权重标准化,建立在BN可以平滑损失landscape/BN可以平滑激活值这个观点上,进一步提升GN的效果匹配到BN的水平上,针对GN在micro-batch训练时性能不及BN。WS的原理是:减小损失和梯度的Lipschitz常数

2019,Dynamic Normalization

Differentiable Dynamic Normalization for Learning Deep Representation ICML 2019

跟SN类似,加入了GN。

2019,Switchable Normalization

Differentiable Learning-to-Normalize via Switchable Normalization ICLR 2019

SN是为每一层选择/学习适当的归一化层(IN、LN和BN),在ImageNet,COCO,CityScapes,ADE20K和Kinetics等数据集上进行实验,应用涵盖图像分类、物体检测、语义分割和视频分类。

2019,Iterative Normalization(CVPR)

Iterative Normalization Beyond Standardization towards Efficient Whitening CVPR 2019

DBN的高效版本

2019,Spatially-Adaptive Normalization(CVPR)

Semantic Image Synthesis with Spatially-Adaptive Normalization CVPR 2019

用于图像生成

2018,Gradient Normalization(ICML)

GradNorm Gradient Normalization for Adaptive Loss Balancing in Deep Multitask Networks ICML 2018

2018,Kalman Normalization

Kalman Normalization Normalizing Internal Representations Across Network Layers NIPS 2018

2018,Decorrelated Batch Normalization

Decorrelated Batch Normalization CVPR 2018

BN+白化

2018,Spectral Normalization(ICLR)

Spectral Normalization for Generative Adversarial Networks ICLR 2018

2018,Group Normalization(ECCV)

Group Normalization ECCV 2018

用于物体检测和语义分割等batch size很小的时候

GroupNorm是InstanceNorm的变体。

2018,Batch-Instance Normalization

Batch-Instance Normalization for Adaptively Style-Invariant Neural Networks NIPS 2018

2018,Instance-Batch Normalization

Two at Once Enhancing Learning and Generalization Capacities via IBN-Net ECCV 2018

2016,Layer Normalization(没有发表)

用于RNN

2016,Instance Normalization(没有发表,但是经过了实践检验)

用于风格迁移

2016,Weight Normalization(NIPS)

2015,Batch Normalization(ICML)

用于卷积网络ConvNet和图像分类

如何理解归一化(Normalization)对于神经网络(深度学习)的帮助?的更多相关文章

  1. 开源脉冲神经网络深度学习框架——惊蛰(SpikingJelly)

    开源脉冲神经网络深度学习框架--惊蛰(SpikingJelly) 背景 近年来神经形态计算芯片发展迅速,大量高校企业团队跟进,这样的芯片运行SNN的能效比与速度都超越了传统的通用计算设备.相应的,神经 ...

  2. 深度学习与CV教程(6) | 神经网络训练技巧 (上)

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...

  3. 深度学习与CV教程(4) | 神经网络与反向传播

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...

  4. 深度学习教程 | Seq2Seq序列模型和注意力机制

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/35 本文地址:http://www.showmeai.tech/article-det ...

  5. 深度学习与CV教程(2) | 图像分类与机器学习基础

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...

  6. 深度学习哪家强?吴恩达、Udacity和Fast.ai的课程我们替你分析好了

    http://www.jianshu.com/p/28f5473c66a3 翻译 | AI科技大本营(rgznai100) 参与 | reason_W 引言 过去2年,我一直积极专注于深度学习领域.我 ...

  7. 知识图谱与机器学习 | KG入门 -- Part1-b 图深度学习

    介绍 我们正在定义一种新的机器学习方法,专注于一种新的范式 -- Data Fabric. 在上一篇文章中,我们对机器学习给出了新的定义: 机器学习是一种自动发现Data Fabric中隐藏的&quo ...

  8. 谷歌大神Jeff Dean:大规模深度学习最新进展 zz

    http://www.tuicool.com/articles/MBBbeeQ 在AlphaGo与李世石比赛期间,谷歌天才工程师Jeff Dean在Google Campus汉城校区做了一次关于智能计 ...

  9. 深度学习系列之CNN核心内容

    导读 怎么样来理解近期异常火热的深度学习网络?深度学习有什么亮点呢?答案事实上非常简答.今年十月份有幸參加了深圳高交会的中科院院士论坛.IEEE fellow汤晓欧做了一场精彩的报告,这个问题被汤大神 ...

  10. 读李宏毅《一天看懂深度学习》——Deep Learning Tutorial

    大牛推荐的入门用深度学习导论,刚拿到有点懵,第一次接触PPT类型的学习资料,但是耐心看下来收获还是很大的,适合我这种小白入门哈哈. 原PPT链接:http://www.slideshare.net/t ...

随机推荐

  1. instr动态模糊查询

    String sqlSearchtext = ""; if(!"".equals(model.getXzqhdm())&&model.getXz ...

  2. Linux下的crontab定时执行任务简要说明

    在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为“cr ...

  3. linux里面源码安装imagemagick库

    在搞树莓派的时候想搞一下树莓派中摄像头获取图像之后传给安卓,安卓进行展示. 恰好用到了imagemagick这个库,我就像正常一样进行安装,sudo apt-get install Imagick 但 ...

  4. 浏览器与NodeJS环境 eventloop异同详解(转)

    结论:浏览器中是一个宏任务,所有微任务,一个宏任务,所有微任务...           NodeJS中,一种宏任务队列所有任务,所有微任务,一种宏任务队列所有任务,所有微任务... ┌─────── ...

  5. centos下使用virtualenv建立python虚拟环境

    在centos使用python3的virtualenv,先用yum install python3 安装后pip3也已经安装好了,pip3 install virtualenv, 在系统中新建一个空文 ...

  6. Qt编写自定义控件29-颜色选取面板

    一.前言 这个控件主要是模仿QColorDialog对话框中的颜色选取面板,提供一个十字形状的标识器,鼠标按下开始选取颜色,移动到哪就选择该处的颜色值,对应右侧颜色条放大显示,本控件的难点就是如何绘制 ...

  7. CentOS7使用yum安装mysql5.7

    提前说一下,网速不好不要用yum安装,等得时间太长. 第一步.获取yum源 [root@youxi1 ~]# rpm -ivh https://repo.mysql.com/yum/mysql-5.7 ...

  8. Linux 常用高效操作

    空行处理 linux系统下删除空行,用vim底行模式'%s/^n$//g' 可以删除空行并真正修改文件,但文件数量太大时耗时不可预估,于是操作文件删除空行并重定向到一个新的文件是不错的选择. 常用特殊 ...

  9. windows下redis配置密码

    redis安装后目录如下: 最简单的启动方式是直接双击redis-server.exe 如果要设置密码,首先打开配置文件,要注意的是这两个都是配置文件,记住你改的是哪一个,不放心的可以两个都改. 然后 ...

  10. unity3d 嵌入iOS的 In App Purchase 应用程序内购买

    Unity做东西是快,但是有些功能是需要额外开发的,比如 IAP (In App Purchase,应用程序内购买) 还好unity提供了灵活的扩展功能,允许嵌入原生代码来做一些unity未实现的功能 ...