深度学习学习率加速方法。Learning Rate scheduling优化

本文介绍了深度学习中的几种学习率调度方法,包括Power scheduling、Exponential scheduling和Piecewise Constant scheduling,并详细阐述了1cycle scheduling的工作原理和三个步骤。1cycle策略通过周期性地调整学习率,从低到高再到低,有助于加速训练并防止过拟合,实现在训练后期找到更平坦的极小值。
摘要由CSDN通过智能技术生成

如何实现Power scheduling?

optimizer = tf.keras.optimizers.SGD(lr=0.01,decay=1e-4)

 

如何实现Exponential scheduling?

def exponential_decay(lr0,s):

    def exponential_decay_fn(epoch):

        return lr0*0.1**(epoch/s)

    return exponential_decay_fn

exponential_decay_fn = exponential_decay(lr0=0.01,s=20)

 

如何实现Piecewise Constat scheduling?

 

def piecewise_constant_fn(epoch):

    if epoch<5:

        return 0.01

    elif epoch<15:

        return 0.005

    else:

        return 0.001

 

什么是 1cycle scheduling?

简单来说,1cycle scheduling, 使用的是一种周期性学习率,从较小的学习率开始学习,缓慢提高至较高的学习率,然后再慢慢下降,周而复始,每个周期的长度略微缩短,在训练的最后部分,学习率比之前的最小值降得更低。这不仅可以加速训练,还有助于防止模型落入损失平面的陡峭区域,使模型更倾向于寻找更平坦部分的极小值,从而

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值