深度学习——PyTorch使用不同优化器训练线性回归(B站刘二大人P5作业)

本文探讨了多种PyTorch优化器对模型训练的影响,包括Adagrad、Adam、Adamax、ASGD、LBFGS、RMSprop、Rprop和SGD。特别地,LBFGS优化器需要一个闭包来反复计算损失,而其他优化器的使用则相对直接。通过绘制损失变化图像,展示了不同优化器在训练过程中的表现差异。

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

作业内容:使用不同优化器训练模型,画出不同优化器的损失(Loss)变化图像。

  • torch.optim.Adagrad

  •  torch.optim.Adam

  •  torch.optim.Adamax

  •  torch.optim.ASGD

  •  torch.optim.LBFGS

 注意:LBFGS优化器与本篇其他所有优化器不同,需要重复多次计算函数,因此需要传入一个闭包,让他重新计算你的模型,这个闭包应当清空梯度、计算损失,然后返回损失。

闭包代码如下:

def closure():
    optimizer.zero_grad()
    y_pred = model(x_data)
    loss = criterion(y_pred, y_data)
    loss.backward()
    return loss

此时更新函数的代码不再是简化版本:optimizer.step( ),变成如下代码:

#传入闭包closure
optimizer.step(closure)

 利用LBFGS优化器的Loss变化图像如下图:

  • torch.optim.RMSprop

  •  torch.optim.Rprop

  •  torch.optim.SGD

 除了LBFGS优化器,其他优化器的使用和P5学习笔记中的代码一样,可以参考链接深度学习——用PyTorch实现线性回归(B站刘二大人P5学习笔记)_Learning_AI的博客-优快云博客

挖一个坑,优化器在函数训练中的作用。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习CV的研一小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值