学习率(learning rate)

文章介绍了学习率在优化过程中的重要性,特别是使用指数衰减学习率的方法。通过设置初始学习率、衰减率和衰减步长,可以在训练初期快速收敛,并在后续迭代中保持模型稳定性。示例展示了如何在TensorFlow中实现这一过程,用于调整权重参数w,以最小化损失函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 学习率(learning rate)

\large W_{_(t+1){}} = W_{t} - lr * \frac{\partial loss}{\partial W_{t}}

更新后的参数 = 当前参数 - 学习率 * 损失函数的梯度(偏导数)

损失函数:

 \large loss = (w + 1)^{^{2}} 

指数衰减学习率

可以先用较大的学习率,快速得到最优解,然后逐步减小学习率,使模型在训练后期稳定。

指数衰减学习率 = 初始学习率 * 学习率衰减率 ^(当前轮数 / 多少轮衰减一次)

epoch = 40
LR_BASE = 0.2   # 初始学习率
LR_DECAY = 0.99  # 学习衰减率
LR_STEP = 1  # 多少轮衰减一次

for epoch in range(epoch):
    lr = LR_BASE * LR_DECAY ** (epoch / LR_STEP)
    with tf.GradientTape() as tape:
        loss = tf.square(w + 1)
    grads = tape.gradient(loss, w)

    w.assign_sub(lr * grads)
    print("After %s epoch, w is %f, loss is %f, lr is %f" % (epoch, w.numpy(), loss, lr))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值