BN层的作用主要有三个:

  1. 加快网络的训练和收敛的速度
  2. 控制梯度爆炸防止梯度消失
  3. 防止过拟合
  • 分析:
  • (1)加快收敛速度:在深度神经网络中中,如果每层的数据分布都不一样的话,将会导致网络非常难收敛和训练,而如果把 每层的数据都在转换在均值为零,方差为1 的状态下,这样每层数据的分布都是一样的训练会比较容易收敛。
  • (2)防止梯度爆炸和梯度消失:

以sigmoid函数为例,sigmoid函数使得输出在[0,1]之间,实际上当x道了一定的大小,经过sigmoid函数后输出范围就会变得很小

梯度消失:在深度神经网络中,如果网络的激活输出很大,其对应的梯度就会很小,导致网络的学习速率就会很慢,假设网络中每层的学习梯度都小于最大值0.25,网络中有n层,因为链式求导的原因,第一层的梯度将会小于0.25的n次方,所以学习速率相对来说会变的很慢,而对于网络的最后一层只需要对自身求导一次,梯度就大,学习速率就会比较快,这就会造成在一个很深的网络中,浅层基本不学习,权值变化小,而后面几层网络一直学习,后面的网络基本可以表征整个网络,这样失去了深度的意义。(使用BN层归一化后,网络的输出就不会很大,梯度就不会很小)

梯度爆炸:第一层偏移量的梯度=激活层斜率1x权值1x激活层斜率2x…激活层斜率(n-1)x权值(n-1)x激活层斜率n,假如激活层斜率均为最大值0.25,所有层的权值为100,这样梯度就会指数增加。(使用bn层后权值的更新也不会很大)

BN算法防止过拟合:在网络的训练中,BN的使用使得一个minibatch中所有样本都被关联在了一起,因此网络不会从某一个训练样本中生成确定的结果,即同样一个样本的输出不再仅仅取决于样本的本身,也取决于跟这个样本同属一个batch的其他样本,而每次网络都是随机取batch,这样就会使得整个网络不会朝这一个方向使劲学习。一定程度上避免了过拟合。

Q: 为什么BN层一般用在线性层和卷积层后面,而不是放在非线性单元后

因为非线性单元的输出分布形状会在训练过程中变化,归一化无法消除他的方差偏移,相反的,全连接和卷积层的输出一般是一个对称,非稀疏的一个分布,更加类似高斯分布,对他们进行归一化会产生更加稳定的分布。其实想想也是的,像relu这样的激活函数,如果你输入的数据是一个高斯分布,经过他变换出来的数据能是一个什么形状?小于0的被抑制了,也就是分布小于0的部分直接变成0了,这样不是很高斯了

https://blog.csdn.net/huangfei711/article/details/79865054​blog.csdn.net

报头中的偏移量作用_网络中BN层的作用相关推荐

  1. 网络中BN层的作用以及为什么冻结BN层

    BN层的作用主要有三个: 加快网络的训练和收敛的速度 控制梯度爆炸防止梯度消失 防止过拟合

  2. 标定中是什么意思_机械加工中,测头有什么作用呢?

    今天老成跟大家一起聊一聊机械加工中的测头,测头不止用在三坐标测量中,现在机械加工中也是非常广泛的.测头生来就是娇贵的东西,它长这个样子: 雷尼绍测头RMP60 前面细杆叫测针,测针的头部是一个红宝石, ...

  3. 二层交换网络_网络中的第2层交换

    二层交换网络 二层交换简介 (Introduction to Layer 2 Switching) As you know hubs are not intelligent devices. When ...

  4. shapenet数据集什么格式_网络中的链路层数据格式是什么样?6个知识点1张图给您说明白...

    做网络或者IT的时候,总能听到链路层.MAC.以太封装.数据帧等等名词,有时候我们做的时候也是一知半解,不是特别清晰其中的知识点以及内容,今天大脸鹏帮助大家提炼总结一下,并绘制了一张图片,让大家看到图 ...

  5. ashx在web.config中如何配置_网络中,什么是半双工与全双工?它们如何配置

    很多朋友在配置交换机或接触网络项目时,时常会看到关于半双工与全双工的模式,也有不少弱电人问到,那么今天我们一起来了解下它们. 什么是半双工与全双工 1.双工模式分为如下两种: a.半双工:接口任意时刻 ...

  6. 8位十六进制转换32位十六进制_网络中的数制系统--二进制十六进制与十进制之间的相互转换...

    网络中计算机的32位IPv4地址以二进制显示,也会以点分十进制显示.而IPv6的地址是128位,是由数字和A-F组成的十六进制系统.因此,了解并且学会在其三者之间相互转换是非常重要的,让我们能够更好的 ...

  7. 电话交换机和网络交换机_网络中交换机的介绍和工作

    电话交换机和网络交换机 交换机简介 (Introduction to Switches) Switches are intelligent devices. Switches are consider ...

  8. vs 服务容器中已存在服务_容器中某Go服务GC停顿经常超过100ms排查

    GC停顿经常超过100ms 现象有同事反馈说,最近开始试用公司的Kubernetes,部署在Docker里的Go进程有问题,接口耗时很长,而且还有超时.逻辑很简单,只是调用了KV存储,KV存储一般响应 ...

  9. 按网络中计算机所处的,按照网络中计算机所处的地位划分,计算机网络包括

    按照网络中计算机所处的地位划分,计算机网络包括 更多相关问题 与横道计划相比,网络计划具有的主要特点有()等.A.网络计划能够明确表达各项工作之间的逻辑关系 某新建项目包含多个单项工程,则该项目新增固 ...

  10. 计算机网络中什么叫总衰耗_计算机网络中的四种延迟分别是什么?

    展开全部 计算e69da5e887aa62616964757a686964616f31333431346365机网络中的四种延迟分别是:节点处理延迟 .排队延迟.发送延迟.传播延迟. 1.节点处理延迟 ...

最新文章

  1. np实现sigmoid_使用numpy实现一个深度学习框架
  2. Oracle数据库中的分页--rownum
  3. golang 中string和int类型相互转换
  4. maven热部署插件-jetty
  5. linux共享库位置配置(LD_LIBRARY_PATH环境变量 或者 更改/etc/ld.so.conf)
  6. object C 数据类型
  7. android log丢失(二)使用and4.4log kernel机制
  8. 开放下载!《一站式大数据开发治理DataWorks使用宝典》
  9. 冷热分离和直接使用大数据库_基于 MySQL 的热数据与冷数据分离设计与实现
  10. nginx和tomcat之间的简单配置
  11. Luogu P2735 电网【真·计算几何/Pick定理】By cellur925
  12. react --- Hook的使用
  13. 什么是java枚举_什么是java枚举
  14. 西门子g120变频器接线图_西门子G120变频器通过IOP-2面板快速启动
  15. 机器学习(四):关于模型复杂度与模型性能的关系
  16. 向量个数,向量维数,向量空间维数
  17. 字节跳动大数据开发面试题-附答案
  18. AcFun 的视频架构演化实践阅读心得
  19. android手机如何获取手机号
  20. Qt学习 第22节:Qcolor 中的Alpha不透明度

热门文章

  1. nyist 488 素数环
  2. Spring-外部配置的值是如何通过@Value注解获取的?
  3. Spring Cloud Eureka详解
  4. Spring中的@Autowired自动装配
  5. vue地图可视化 ArcGIS篇(3)
  6. zuul业务检查相关模块
  7. 【思路】Gym - 101173F - Free Figurines
  8. Mnesia动态添加节点杂记
  9. 【转】MFC中用CFile读取和写入文件2
  10. 新手必看——JAVA排序详解(冒泡排序和插入排序)