搜索

耀世资讯

公司动态
行业新闻

联系我们

Contact us

电话:400-123-4567
Q Q:1234567890
邮箱:admin@youweb.com
地址:广东省广州市天河区88号

动手比较Pytorch中的优化器

发布时间:2024-06-04 16:32:29 作者:佚名

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第22天,点击查看活动详情

为保障实现的准确性,试验采用公开数据集MNIST做数据集,本试验只对比Pytorch中各种优化器,所以在每次实验使用的网络结构、损失函数,训练次数等都相同。

种类区别
实验设备相同
网络结构相同
损失函数相同
训练次数相同
训练测试比例相同
学习率相同
优化器不同

在Pytorch中的optim模块,提供了多种可以直接使用的深度学习的优化器算法,十分方便调用,无需再设计。

种类种类名称
optim.SGD()随机梯度下降算法
optim.Rprop()弹性反向传播算法
optim.ASGD()平均随机梯度下降算法
optim.RMSprop()RMSprop算法
optim.LBFGS()L-BFGS算法
optim.Adam()Adam算法
optim.Adamax()Adamax算法
optim.Adadelta()Adadelta算法
optim.Adagrad()Adagrad算法

我们以adam 为例子对设置参数进行说明:
params: 待优化参数的iterable 或定义了参数组的dict, 一般为model.parameters()
lr: 学习率(默认为0.001)
betas: 梯度和梯度平方的系数(默认为0.999)
eps: 增加稳定性加到分母的项(默认为1-8e)
weight_decay: 权重衰减(L2惩罚)默认为0

由于是使用同一实验设备,网络等也相同,我们节约训练时间,定训练轮数为20轮,我们选用的定义损失函数为交叉熵函数。(由于Rprop和LBFGS需要改动其他参数,为保证其他变量的一至性在这里我就不做实验了)
optim.SGD() 实验结果: image.png

optim.ASGD() 实验结果: image.png

optim.RMSprop() 实验结果: image.png

optim.Adam() 实验结果: image.png

optim.Adamax() 实验结果: image.png

optim.Adadelta() 实验结果: image.png

optim.Adagrad() 实验结果: image.png

优化器收敛情况Best_Train_LossBest_Tese_Loss
optim.SGD()收敛0.69430.7120
optim.ASGD()收敛0.71560.7301
optim.RMSprop()收敛0.44090.5086
optim.Adam()收敛0.25360.3576
optim.Adamax()收敛0.18940.3306
optim.Adadelta()收敛0.77540.7814
optim.Adagrad()收敛0.24340.233
热线电话:400-123-4567
电子邮箱:admin@youweb.com
Q Q:1234567890
地址:广东省广州市天河区88号
备案号:
耀世娱乐-耀世平台-耀世加盟站

关注我们

Copyright © 2002-2017 耀世-耀世平台-耀世加盟站 版权所有

平台注册入口