深度学习归一化 ——BN/GN/FRN

  • BN
    BN层的提出,主要解决的一个问题是Internal Covariate Shift。在BN层提出以前,是很难训练一个深层次的网络的,其主要难点是每层的数据分布均会发生变化,使得神经元需要去学习新的分布,导致模型训练缓慢、难以收敛。因此,作者借助了白化的思想,将每层数据都归一化成均值为0、方差为1的分布,如公式(1)所示,即减去均值、除以方差。这样就能是每层的数据分布不会发生过大变化,从而导致模型容易训练。

    但同时也引入了一个问题,我们将数据强行的归一化,会导致原始的数据分布遭到破坏,特征的表达能力就会下降。所以,BN层的核心亮点是重构变换。分别学习缩放与偏移参数。


  • FRN
    虽然GN解决了小batch size时的问题,但在正常的batch size时,其精度依然比不上BN层。因此,有什么办法能解决归一化既不依赖于batch,又能使精度高于BN呢?FRN就是为了解决这个问题。
    FRN层由两部分组成,Filtere Response Normalization (FRN)和Thresholded Linear Unit (TLU)。

    这里并不是传统意义上的归一化,它没有减去均值,除以的也不是方差。然后对于每个通道,同样进行变换重构。



    另外,在实验上,存在几个可以关注的细节:

  • 由于FRN层没有均值中心化,所以会有一些模型对初始学习率的选择十分敏感,特别是那些使用了多个最大池化层的网络。为了缓解这个问题,作者建议使用warm-up来对学习率进行调整。

  • 一般而言,FC层后一般都不会接归一化层,这是因为均值和方差计算的数量太少,难以正确估计。但如果FC层后接FRN层,性能不会下降,反而会有上升。

  • 作者对BN+TLU或者GN+TLU或者FRN+ReLU等系列都做过实验对比,还是发现FRN+TLU的搭配是 最好的。

深度学习归一化 ——BN/FRN相关推荐

  1. 转——深度学习之BN算法(Batch Normailization)

    Batch Normalization 学习笔记 原文地址:http://blog.csdn.net/hjimce/article/details/50866313 作者:hjimce 一.背景意义 ...

  2. 【深度学习】——BN层(batch normalization)

    目录 一."Internal Covariate Shift"问题 二.BatchNorm的本质思想 两个参数r和β的意义--精髓所在 三.训练阶段如何做BatchNorm 四.B ...

  3. 深度学习归一化算法详解(BN,LN,IN,GN)

    目录 一.Batch Normalization(BN) 1.1为什么提出BN? 1.2BN的基本原理和公式 1.3BN在神经网络中的实现 1.4BN的优点和缺点 二.LN,IN,GN的原理和适用范围 ...

  4. 深度学习有哪些trick?

    作者丨DOTA.永无止境.冯迁 来源丨知乎问答 编辑丨极市平台 导读 Deep learning在训练的时候往往有很多trick,不可否认这些trick也是DL成功的关键因素之一,所谓"th ...

  5. 收藏 | 深度学习调参有哪些技巧?

    点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:作者丨DOTA.永无止境.冯迁 来源丨知乎问答 编辑丨极市平台 AI博士笔记系列推荐 周志华<机器学习& ...

  6. 值得收藏的深度学习模型训练trick

    Deep learning 在训练的时候往往有很多 trick ,不可否认这些 trick 也是 DL 成功的关键因素之一,所谓 "the devil is in the details&q ...

  7. 【深度学习系列】基础知识、模型学习

    基础知识 原创 [深度学习]--训练过程 原创 [深度学习]--BN层(batch normalization) 原创 [深度学习]--激活函数(sigmoid.tanh.relu.softmax) ...

  8. 深度学习中的归一化方法总结(BN、LN、IN、GN、SN、PN、BGN、CBN、FRN、SaBN)

    目录 概要 Batch Normalization(BN) (1)提出BN的原因 (2)BN的原理 (3)BN优点 (4)BN缺点 Instance Normalization(IN) (1)提出IN ...

  9. 【深度学习】深度学习的归一化方法的演变(局部响应LRN,BN,LN, IN, GN, FRN, WN, BRN, CBN, CmBN)

    [深度学习]深度学习的归一化方法的演变(局部响应LRN,BN,LN, IN, GN, FRN, WN, BRN, CBN, CmBN) 文章目录 [深度学习]深度学习的归一化方法的演变(局部响应LRN ...

最新文章

  1. usaco snail trails(dfs)
  2. 认识登录控件(Login、CreateUserWizard、LoginStatus和LoginName)
  3. [Lua]50行代码的解释器,用来演示lambda calculus
  4. Java读取指定路径下的文件列表
  5. emacs mysql代码阅读_Emacs + etags + cscope 阅读代码
  6. 绝大部分投资者没资格谈心态
  7. sql索引的填充因子多少最好,填充因子的作用?
  8. 北京市土壤侵蚀强度空间分布数据
  9. 制作ESXi6.5启动盘
  10. 黑群晖一键生成视频缩略图
  11. PDCA循环法,一个处处适用也必须掌握的管理方法
  12. Google可能退出中国市场
  13. ThoughtWorks 2018校招作业
  14. append()、appendChild() 和 innerHTML 的区别
  15. C语言实现四舍五入 c语言实现四舍五入
  16. 了解一下winsock
  17. win10cmd切换目录
  18. 创建MockMvc对象时空指针异常NullPointException的解决办法
  19. 文旅景区夜游该如何设计项目
  20. javascript取整方法floor、round、ceil

热门文章

  1. 一机一码可以让加密的视频只能在一台设备上播放吗?
  2. 安装配置Ubuntu22.04双系统,手把手避坑
  3. 2数据库的创建与管理,数据操纵
  4. (软件工程)GPU并行软件开发指北
  5. 京东面试:说说你对ByteBuf的理解
  6. 一张图看懂京东智联云智能视联网
  7. 【linux命令详解】scp远程传输文件命令
  8. 一种基于NTC热敏电阻测量的温度模块
  9. iOS-- 解决AppStore隐私政策上架
  10. React中state和props遇到的问题和个人总结