pytorch中GroupNorm的使用(笔记)

Posted 禾木呈风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytorch中GroupNorm的使用(笔记)相关的知识,希望对你有一定的参考价值。

不使用BatchNorm的原因

  相比起batchNorm,groupNorm对一个batch的size更不敏感。在现有的研究中,batchNorm在batchsize越大的情况下,效果更佳,batchsize=32的情况明显优于batchsize=2。

  在许多计算机视觉的任务中,batchsize由于计算机资源的限制,往往只能设置在1~8之间,而利用GPU训练,设置batchsize=32往往更合适。(玄学的设置)

  但GroupNorm根据相关的研究,其对batchsize的敏感性更小,也就是说较小的batchsize和较大的batchsize,都会得到相对而言不错的结果,不会因为batchsize过小而导致结果变差。

相关链接:全面解读Group Normalization-(吴育昕-何恺明 )——https://zhuanlan.zhihu.com/p/177853578

如何使用GroupNrom?

  

  如图,num_groups是要设置分组的个数,num_channels是输入数据的维度,与输入数据保持一致即可。

使用GroupNorm出错的一些情况

groupNorm中设置的groupChannels与输入数据的维度不匹配。

  

groupNorm中设置的groupNums不能与输入数据的维度整除

  

以上是关于pytorch中GroupNorm的使用(笔记)的主要内容,如果未能解决你的问题,请参考以下文章

pytorch常用normalization函数

deep_thoughts45_BatchNormLayerNormInstanceNormGroupNorm原理及pytorch手写实现API

2021暑假的Pytorch学习笔记

pytorch初学笔记:DataLoader的使用

pytorch笔记:policy gradient

我是土堆 - Pytorch教程 知识点 学习总结笔记