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



关于tensorflow中的滑动平均? 第1页

  

user avatar   bingo-hong-36 网友的相关建议: 
      

说下自己的理解吧。

我认为两者是独立的。理由如下:

  • tf.train.ExponentialMovingAverage做为一个滑动平均类,其在对变量施加滑动平均操作的时候是会维持一个影子变量来记录其对应变量的滑动平均值。并且滑动平均过程,不会改变变量本身的值。
  • 由于滑动平均过程并不会改变变量本身的值,因此认为变量权重更新的过程与滑动平均过程是互相不干扰的。
  • 从代码训练的角度来说,施加滑动平均类的tf代码中,要保证训练神经网络过程中,既要根据反向传播更新参数又要更新每一个滑动平均值。因此认为其更新顺序,是更新后的变量,再做滑动平均。如下代码:
       with tf.control_dependencies([train_step,variable_average_op]):      train_op = tf.no_op(name="train")     

以上是个人理解,仅仅从ema原理和代码训练角度猜测了下,具体没有看过源码,不敢随意下结论。仅供参考吧~




  

相关话题

  应该选择TensorFlow还是Theano? 
  如何评价 DeepMind 公司? 
  CPU和GPU跑深度学习差别有多大? 
  如何评价陈天奇的模块化深度学习系统NNVM? 
  目标检测算法中Two-stage算法速度慢,到底在哪里? 
  为什么 MobileNet、ShuffleNet 在理论上速度很快,工程上并没有特别大的提升? 
  如何评价FAIR提出的MaskFormer,在语义分割ADE20K上达到SOTA:55.6 mIoU? 
  如何评价PyTorch 0.4.0? 
  为什么说大模型训练很难? 
  目标检测中的mAP是什么含义? 

前一个讨论
希腊神话中,男女一体后来被宙斯劈成两半的神叫什么名字?
下一个讨论
机器学习中使用正则化来防止过拟合是什么原理?





© 2024-11-08 - tinynew.org. All Rights Reserved.
© 2024-11-08 - tinynew.org. 保留所有权利