Normalization是加速神经网络训练的一种重要方法,随着深度学习的发展以及各种任务的出现,催生出了一系列的Normalization方式,现在主流的正则化方式有Batch Normalization,Group Normalization,Instance Normalization,Layer Normlization,Positional Normalization五种。

批规范化 (Batch Normalization) 方法用于计算机视觉任务的深度神经网络。

如上图,我们将其理解为一个size为(B,C,H,W)的特征图(5,3,2,2),为方便表示,将特征图拉伸后尺寸为(5,3,4)。
Batch Normalization在计算均值(一阶矩) 和 标准差(二阶矩)时,是分通道进行的,上图展示了参与运算的某一通道的所有元素,共计(BxHxW)= 20 个。
求取了这20个元素的E[x] =  和Var[x] =  后,对这20个元素分别进行更新,这里的γ 和 β 是仿射变换的系数:

这里我们以批归一化为例详细介绍计算过程,接下来的几个归一化操作,我们只给出示意图,计算过程大抵相当,只不过参与计算的元素不同。

分组归一化 (Group Normalization) 主要用于目标检测和实力分割任务。

这里参与正则化操作的是一个batch中某一样例的某组特征通道分量,依次计算

实例归一化 (Instance Normalization) 因其具有从输入中删除样式信息的能力而广泛用于图像合成。

这里参与正则化操作的是一个batch中某一样例的某一特征通道分量,依次计算

分层归一化 ( Layer Normalization) 适用于序列模型, 常见于自然语言处理任务

这里参与正则化操作的是一个batch中某一样例的全部特征通道分量,依次计算

位置正则化(Positional Normalization)适用于生成模型,常见与GAN等生成模型。

这里参与正则化操作的是一个batch中某一样例在某一位置(h1,w1)上的所有特征分量,依次计算。

到这里我们就了解了上述几种正则化操作的操作对象,以及计算过程,我们在进行不同的工作时要选择合适的正则化操作,不仅能加快训练网络,有可能还能提高精度。

记录 之 不同的Normalization方式相关推荐

  1. 记录报错日志——Log4j方式

    记录报错日志--Log4j方式 记录错误日志有以下好处:1,方便调试2,便于发现系统运行过程中的错误3,存储业务数据,便于后期分析 在java中,记录日志有很多种方式,本文介绍使用Log4j方式: 使 ...

  2. 记录几种常用编码方式:BASE64、MD5

    目录 1. BASE64 1.为什么要使用BASE64编码? 2. C语言实现 2. MD5 2.1. 主要特点 2.2. C语言实现 3. 1. BASE64 1.为什么要使用BASE64编码? 从 ...

  3. [深度学习] Normalization 模型

    目录 一  Batch Normalization "Internal Covariate Shift"问题 训练阶段如何做BatchNorm BatchNorm的好处 二 Lay ...

  4. 【基础知识】深度学习中各种归一化方式详解

    本文转载自 https://blog.csdn.net/qq_23981335/article/details/106572171 仅作记录学习~ 总结 BN,LN,IN,GN,WS 从学术上解释差异 ...

  5. 论文阅读Batch Normalization: Accelerating Deep Network Training byReducing Internal Covariate Shift

    论文阅读Batch Normalization: Accelerating Deep Network Training byReducing Internal Covariate Shift 全文翻译 ...

  6. Redis 笔记(14)— 持久化及数据恢复(数据持久方式 RDB 和 AOF、数据恢复、混合持久化)

    1. 持久化 所谓持久化是指将数据从内存中以某种形式同步到硬盘中,在 Redis 重启后能够根据硬盘中的记录恢复数据.Redis 持久化有两种方式,分别为 RDB(redis data base) [ ...

  7. rpm方式安装mysql5.7.24_linux centOS 7安装mysql 5.7.24

    前言 请务必先把整篇文章通读一遍,特别是后面的问题列表,以致于在安装过程中出现问题后不会心惊胆颤. 0.在安装mysql之前,查看是否已安装,及其删除方式 rpm -qa|grep mysql #查看 ...

  8. ipad如何连接电脑_指纹打卡机如何连接电脑?怎么导出原始考勤数据记录?

    目前很多制造业.工厂.公司.学校.医院.酒店.餐馆.KTV.机关单位等行业都安装使用了指纹考勤机,人脸识别考勤机,有的行业或场所,如煤矿.建筑工地.船厂.车队等仍然在使用IC卡考勤机.不管使用哪种考勤 ...

  9. redis的两种持久化方式详解

    一.背景 在实际开发中,为了保证数据的完整性,防止数据丢失,我们除了在原有的传统数据库保存数据的同时,最好是再用redis持久化再保存一次数据.如果仅仅是使用redis而不进行持久化配置的话,当red ...

最新文章

  1. Hadoop源代码eclipse编译指南
  2. css动画-animation各个属性详解(通俗易懂)
  3. AutoLayout ScrollView在ios7下无法滑动
  4. hbase replication原理分析
  5. 软件测试用例_软件测试用例设计实战场景法
  6. fork他人仓库clone到本地
  7. keil_4/MDK各种数据类型占用的字节数
  8. 关于“抵制”易语言的通告
  9. 图书馆借阅系统java参考文献_基于java的图书馆管理系统
  10. 文献阅读-CSC-中文错别字-有关论文搜集-+CGED
  11. 目标板(linux)与PC 网卡 直连(TFTP)
  12. 百度高德地图收费5万?
  13. 网易的java微专业_网易微专业Java开发工程师(Web方向)
  14. 采用顺序存储实现队列的初始化、入队、出队操作。/验证实验/
  15. 你的面子到底值几斤几两
  16. 10年研发总结和期许
  17. 李开复微博数据分析--微博爬虫、数据挖掘、数据可视化(持续更新)
  18. Docker搭建PHP运行环境
  19. 感觉CNZZ不行了,同一个站点,IP比百度、51LA少2万!
  20. Android仿Google+,AppFrame框架搭建

热门文章

  1. IE6 PNG 透明的方法
  2. ASP.NET备份与还原SQL Server数据库
  3. insert with special ID
  4. Git之常用命令的综合使用和示例分析
  5. 144. Binary Tree Preorder Traversal 二叉树的前序遍历
  6. 数塔 HDU - 2084
  7. 01、python数据分析与机器学习实战——Python数据可视化库-Matplotlib
  8. 【ARM】Tiny4412裸板编程之ADC
  9. 【IT资讯】MATLAB 不能用了,哪些替代品可以继续搞科研?
  10. 锦州中学高考2021成绩查询,锦州高中成绩排名2021,锦州中考分数线排行榜