intellij idea使用教程 UEditor HashMap Gitlab 服务注册中心 overflow swift arraylist lambda ros 打印 sqlalchemy reference Egret Engine vue绑定事件 android项目实战 php抽奖源码 网盘源码 mysql当前时间减一天 bootstrap中文api文档 css面试题 centos定时任务 kubernetes实战 python编程教程 python文件操作 python基础知识 python调用命令行 java接口类 java学习平台 java新建文件 java接口规范 java读取文本 linux内核编程 python教程下载 狮子狗出装 js转int 战地联盟辅助 keytool下载 qq免安装 fdisk下载 微信昵称找人的软件
当前位置: 首页 > 学习教程  > 编程语言

BatchNorm、LayerNorm、InstanceNorm、GroupNorm区别

2020/8/31 15:37:33 文章标签:

pytorch中BatchNorm、LayerNorm、InstanceNorm、GroupNorm区别

 

BN,LN,IN,GN从学术化上解释差异:
BatchNorm:batch方向做归一化,算NHW的均值,对小batchsize效果不好;BN主要缺点是对batchsize的大小比较敏感,由于每次计算均值和方差是在一个batch上,所以如果batchsize太小,则计算的均值、方差不足以代表整个数据分布
LayerNorm:channel方向做归一化,算CHW的均值,主要对RNN作用明显;
InstanceNorm:一个channel内做归一化,算H*W的均值,用在风格化迁移;因为在图像风格化中,生成结果主要依赖于某个图像实例,所以对整个batch归一化不适合图像风格化中,因而对HW做归一化。可以加速模型收敛,并且保持每个图像实例之间的独立。
GroupNorm:将channel方向分group,然后每个group内做归一化,算(C//G)HW的均值;这样与batchsize无关,不受其约束。
SwitchableNorm是将BN、LN、IN结合,赋予权重,让网络自己去学习归一化层应该使用什么方法。

在这里插入图片描述

 

具体详解: https://blog.csdn.net/shanglianlm/article/details/85075706


本文链接: http://www.dtmao.cc/news_show_150374.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?