BatchNorm的通俗解释
一般是看这个图,但是看这个图我还是没弄明白咋回事。就查资料自己画了个图来解释下,不对之处希望大神指出。多谢~!!!!
自己手动画图说明:
1.均值方差的求解过程:
求第1通道的均值方法就是将N个样本的1通道数据累加,然后用累加结果除以N*W*H。最终结果是个数字,此数字代表了此batchsize组的1通道的均值,类似的求方差也是个数字。所有C个通道做完了就会得到C个均值和C个方差值。每个通道对应1组均值和方差,切记切记。
2.归一化过程:
按通道归一化,切记切记。例如对batchsize中第1个样本做归一化,就会按通道,对第1个样本的C个通道用上面计算的那个通道对应的均值和方差分别做归一化处理。处理结果就是一个1*C*W*H东西。batchsize有N个样本,那么结果就是N*C*W*H.
3.BN的优缺点:
优点:(1) 减轻了对参数初始化的依赖,这是利于调参的朋友们的。
(2) 训练更快,可以使用更高的学习率。
(3) BN一定程度上增加了泛化能力,dropout等技术可以去掉。
原理上说:Batch Normalization调整了数据的分布,不考虑激活函数,它让每一层的输出归一化到了均值为0方差为1的分布,这保证了梯度的有效性
缺点:依赖于batch的大小,当batch值很小时,计算的均值和方差不稳定。
参考文献:1.https://zhuanlan.zhihu.com/p/69659844 里面有代码可以直接用来测测
2.https://mp.weixin.qq.com/s?__biz=MzA3NDIyMjM1NA==&mid=2649031599&idx=1&sn=f06df4fe57024e7652ac6f6062253b32&chksm=8712bdd2b06534c456f046d76f5f71696f294de6ce0f84736e0cea173eaa970c0a2d0015d72b&scene=21#wechat_redirect
BatchNorm的通俗解释相关推荐
- 循环神经网络(RNN)原理通俗解释
循环神经网络(RNN)原理通俗解释 1.RNN怎么来的? 2.RNN的网络结构及原理 3.RNN的改进1:双向RNN 4.RNN的改进2:深层双向RNN 4.1 Pyramidal RNN 5.RNN ...
- 协方差、相关系数---通俗解释
一.协方差的意义 学过概率统计的孩子都知道,统计里最基本的概念就是样本的均值,方差,或者再加个标准差.首先我们给你一个含有n个样本的集合,依次给出这些概念的公式描述,这些高中学过数学的孩子都应该知道吧 ...
- Fleury (弗罗莱) 算法通俗解释
Fleury (弗罗莱) 算法通俗解释 1.定义 2.举例说明 图2为连通图G,现利用Fleury算法求它的欧拉通路.(注意区分:欧拉通路.欧拉回路) 其中一种欧拉通路如下:4 5 8 7 6 8 9 ...
- 依赖注入通俗解释_我如何向团队解释依赖注入
依赖注入通俗解释 最近,我们公司开始开发一个新的基于Java的Web应用程序,经过一些评估过程,我们决定使用Spring. 但是许多团队成员并不了解Spring和Dependency Injectio ...
- 关于性能测试的通俗解释
关于性能测试的通俗解释: http://www.docin.com/p-645879730.html 转载于:https://www.cnblogs.com/preftest/archive/2013 ...
- Wasserstein metric的通俗解释
Wasserstein metric的通俗解释 关注他 166 人赞同了该文章 本文收录在无痛的机器学习第二季目录. Wasserstein GAN可以算是GAN界的一大突破了,有关它的介绍和使用心 ...
- 1.通俗解释分布式系统
1.通俗解释分布式系统 分布式–无非就是将一个系统拆分为多个子系统并散布到不同设备的过程而已 本质而言(拆分和连接):实现一个分布式系统,最核心的部分无非就是两点: 如何拆分:可以有很多方式,核心依据 ...
- java web中Jdbc访问数据库步骤通俗解释(吃饭),与MVC的通俗解释(做饭)
一.Jdbc访问数据库步骤通俗解释(吃饭) 1)加载驱动 Class.forName("com.microsoft.jdbc.sqlserver.SQLServer"); 2) 与 ...
- 数据库设计的三大范式通俗解释
一.三大范式通俗解释: (1)简单归纳: 第一范式(1NF):字段不可分: 第二范式(2NF):有主键,非主键字段依赖主键: 第三范式(3NF):非主键字段不能相互依赖. (2)解释: 1NF:原子性 ...
最新文章
- php网站如何静态化链接,建站教程之网站URL静态化处理
- ansible之fetch模块
- SWOOLE httpserver
- java提供密码加密的实现
- 一图读懂马云与阿里20年:互联网巨头是如何养成的?
- python里面print是什么意思_python里print是什么意思
- 轻松使用计算机,职称计算机Excel辅导:简单四招让你使用Excel轻松提速
- node和npm是什么_什么是npm? 面向初学者的Node Package Manager教程
- libevent cs
- SAP License:SAP顾问如何写运维报告
- # 异运算_一年级数学:3000道20内纯进、退位口算题,每天100道日新又月异
- OPPO以技术推动产品 获专利数首次挺近前十
- Spring设计模式之装饰器模式
- 6 月 Android 系统份额:7.1 发布半年仅占比 0.6 %
- Rust :CC编译
- HTML注册页面代码
- 最近出现Matlab2010b点击matlab.exe运行时,不断提示Activate MathWorks Software,无法正常使用
- 51单片机DHT11温湿度传感器
- YOLOV5改进||YOLOV5+GSConv+Slim Neck
- matlab GUI制作拼图小游戏
热门文章
- Ra-08系列开发板入门教程,标准LoRaWAN协议对接国外 TTN LoRaWAN 开源服务器。
- 我的世界java1.15更新了什么动物_我的世界:原来1.15版本的更新“主题”不是蜜蜂,而是这些东西?...
- linux蓝牙语音遥控器,Linux系统下遥控器的配置与使用方法
- HTML——微信浏览器H5页面调用微信扫一扫
- win7下32位eclipse启动错误
- TCP/IP协议连接状态详解
- ReferenceError: primordials is not defined错误解决
- 对于互联网现状的认知与感悟
- http://blog.csdn.net/congcong68/article/details/39256307
- GTC2019大会的部分总结