TensorFlow笔记之神经网络优化——滑动平均

  1. 滑动平均:记录了一段时间内模型中所有参数 w 和 b 各自的平均值。利用滑动平均可以增强模型的泛化能力。
    滑动平均值(影子)计算公式: 影子 = 衰减率 * 影子 + (1 - 衰减率)*参数,其中,衰减率 = ,影子初值 = 参数初值
    用TensorFlow函数表示为:

    √ema = tf.train.ExponentialMovingAverage(MOVING_AVERAGE_DECAY, global_step),其中,MOVIN_AVERAGE_DECAY表示滑动平均衰减率,一般会赋值为接近1的值,global_step表示当前训练了多少轮。
    √ema_op = ema.apply(tf.trainable_variables()),其中, ema.apply()函数实现对括号内参数求滑动平均, tf.trainable_variables()函数实现把所有
    待训练参数汇总为列表。
    查看模型中参数的平均值,可以用 ema.average()函数
  2. 实例:在神经网络模型中,将 MOVING_AVERAGE_DECAY 设置为 0.99,参数 w1 设置为 0, w1 的滑动平均值设
    置为 0。
     
    #coding:utf-8
    import tensorflow as tf
    
    #1. 定义变量及滑动平均类
    #定义一个32位浮点变量,初始值为0.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值