1. BN的是做什么的。

它其实做了两件事:

(1)批量归一化: 输入归一化x_norm = (x-u)/std,其中u和std是个累计计算的均值和方差。

(2)缩放与位移:y = alpha*x_norm+beta,对归一化后的x进行比例缩放和位移。其中的alpha和beta是通过迭代学习得到的。

可以看出:

  • 批量归一化共有三个参数:均值、方差和滑动系数。由于BN的三个参数都是来自于样本的计算,不需要学习.

    • 参数可以有如下使用渠道:

      • 使用保存的均值和方差,
      • 采用滑动平均计算新的均值和方差
      • 滑动平均的衰减系数,默认为0.999.
      • eps:分母附加值,防止除以方差出现0的操作,默认为1e-5(不同框架采用的默认值不一样)。
  • 缩放与位移有两个参数,参数可调。

    • 需要注意的是alpha与beta均为向量,针对输入的channels进行的处理,因此不能简单的认定为一个float的实数。

批量归一化的均值与方差计算


参考:
Caffe Scale层解析 https://www.cnblogs.com/zhibei/p/12988187.html
caffe常用层: batchNorm层和scale层 https://www.cnblogs.com/LaplaceAkuir/p/7811383.html

BN=批归一化+缩放位移=(batchNorm层+scale层)相关推荐

  1. caffe合并BatchNorm和Scale层

    Caffe中BatchNorm层的计算可以表示为:y = (x-mean)/sqrt(var), Scale层的计算可以表示为:y = x*w + b, 某些情况下为了减少参数及计算量,可以将Batc ...

  2. Caffe 源码 - BatchNorm 层与 Scale 层

    batch norm layer & scale layer 简述 Batch Normalization 论文给出的计算: 前向计算: 后向计算: BatchNorm 主要做了两部分: [1 ...

  3. l2tp连接尝试失败 因为安全层在初始化_不用批归一化也能训练万层ResNet,新型初始化方法Fixup了解一下...

    批归一化(BN)基本是训练深度网络的必备品,但这篇研究论文提出了一种不使用归一化也能训练超深残差网络的新型初始化方法 Fixup. 选自arXiv,作者:Hongyi Zhang等,机器之心编译,参与 ...

  4. 批归一化和Dropout不能共存?这篇研究说可以

    https://www.toutiao.com/a6691855920672014852/ 2019-05-17 12:59:22 自批归一化提出以来,Dropout 似乎就失去了用武用地,流行的深度 ...

  5. caffe中的batchNorm层(caffe 中为什么bn层要和scale层一起使用)

    caffe中的batchNorm层 链接: http://blog.csdn.net/wfei101/article/details/78449680 caffe 中为什么bn层要和scale层一起使 ...

  6. Batch Normalization (BN层)-----批归一化

    目录 1.数据分布 2.BN层的作用 3.BN核心公式和流程: 4. BN用于CNN中 5. BN测试时 1.数据分布 在讲BN层之前,我们得先了解何为数据分布,数据分布跟网络训练又有什么关系. (1 ...

  7. 【深度学习】深入理解Batch Normalization批归一化

    [深度学习]深入理解Batch Normalization批归一化 转自:https://www.cnblogs.com/guoyaohua/p/8724433.html 这几天面试经常被问到BN层的 ...

  8. 批归一化作用_批归一化Batch Normalization的原理及算法

    一.BN提出的背景意义 本文的背景文献是:<Batch Normalization: Accelerating Deep Network Training by Reducing Interna ...

  9. 深度学习入门(三十二)卷积神经网络——BN批量归一化

    深度学习入门(三十二)卷积神经网络--BN批量归一化 前言 批量归一化batch normalization 课件 批量归一化 批量归一化层 批量归一化在做什么? 总结 教材 1 训练深层网络 2 批 ...

  10. PyTorch 51.BatchNorm和Dropout层的不协调现象

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者 | 科技猛兽@知乎(已授权) 来源 | https://zhu ...

最新文章

  1. RStudio中为R创建Notebook文件
  2. C# 2.0 除了泛型
  3. ES6对象(1):新增语法与API
  4. qregexp限制数字范围_数字系统实现电压电流控制的必经之路数模转换器
  5. 【HDU - 1251 】统计难题(字典树,求拥有公共前缀的字符串数量)
  6. net 开发 【要学习】
  7. B - C语言实验——整数位
  8. python中类的参数怎么传_如何将整个类作为参数传递给另一个类的方法
  9. 卷积神经网络(TextCNN)在句子分类上的实现
  10. DCEP | 农行将上线数字人民币刷脸支付
  11. SAP 电商云 Spartacus UI Cart 页面的 CMS 布局
  12. 索尼android 怎么截屏快捷键,索尼z5怎么截屏 sony z5截图方法教程
  13. Android Lint 代码检查工具的使用
  14. 第一次学游泳技巧_第一次学游泳作文600字(5篇)
  15. dht11传感器c语言程序,树莓派 DHT11 温湿度传感器读取 C 语言版
  16. 音创a55怎么安装系统_怎么安装系统|教你怎样安装系统教程
  17. 不知如何选股?不知哪种指标策略可靠?量化分析比较DMA、DMI、MACD、KDJ、BOLL指标策略收益情况
  18. 程序员知识体系探索:点、线、面、体
  19. python3 获取nat类型和外部ip PyStun3 PyNAT 库简介
  20. [ZUCC 英语周测]Quiz B-3-7

热门文章

  1. php 1970毫秒数,php – date()返回1970-01-01
  2. SQL语句-01-数据库操作/单表增删改查
  3. android MVC和MVP探讨
  4. myeclipse中将web项目部署到tomcat里面出错
  5. android AChartEnginee讲解之源码框架解读
  6. 爱奇艺客户端启动优化实践
  7. c语言字符串如何调换位置,c语言字符串从第m个位置开始复制
  8. python 调用js_python调用JS方法
  9. 数值积分方法的c语言实现,编程实现数值积分的几种--方法 c语言.doc
  10. linux debian安装ssh,Ubuntu Linux上安装SSH和vsFTPd的方法