百科问答小站 logo
百科问答小站 font logo



Batch Normalization 训练的时候为什么不使用 moving statistics? 第1页

  

user avatar   wang-feng-98-82 网友的相关建议: 
      

因为用moving statistics的话,不能对这些统计量求导,这样会少很多梯度的性质。

例如除以标准差后的梯度方向,是与feature垂直的(严谨一点,减均值之后的feature),所以用这个梯度更新不会引起feature scale的剧变,从而解决了梯度爆炸/消失。

用moving average,不对标准差求导,梯度方向跟之前是一样的,只是乘了一个系数而已。这样只能吃到BN前向的好处,吃不到BN反向传播的好处。

但其实仍然有方法可以利用moving statistics来做到类似的性质,本质上是在反向过程也用moving average统计一些参数,具体请参考: Towards stabilizing batch statistics in backward propagation of batch normalization。




  

相关话题

  如何评价 MSRA 视觉组最新提出的 Deformable ConvNets V2? 
  OpenCV已经将图像处理(识别)的算法写成函数了,那我们还有必要去学习这些算法不? 
  如何看待谷歌研究人员提出的卷积正则化方法「DropBlock」? 
  深度学习cnn中,怎么理解图像进行池化(pooling)后的平移不变性? 
  国内哪些公司在用caffe、torch、TensorFlow、paddle等框架,哪些在用自研框架? 
  如何评价DALL-E模型的实现? 
  基于计算机视觉从一张图片重建人体的三维网格,能否获取腰围、胸围、臂长、腿长等数据? 
  如何评价余凯创立的horizon robotics? 
  ICLR 2022有哪些值得关注的投稿? 
  卷积神经网络(CNN)的结构设计都有哪些思想? 

前一个讨论
为什么图形学的会议siggraph的论文代码很少会开源?好像视觉如CVPR、ICCV开源的更多一些。
下一个讨论
计算机专业大一寒假该如何规划?





© 2025-05-14 - tinynew.org. All Rights Reserved.
© 2025-05-14 - tinynew.org. 保留所有权利