「Deep Learning」理解Pytorch中的「torch.optim」

Sina Weibo:小锋子Shawn
Tencent E-mail:403568338@qq.com
http://blog.youkuaiyun.com/dgyuanshaofeng/article/details/79875283

基于pytorch 0.2.0_1版本
pytorch里面的optim文档
optim是优化算法包,包括AdadeltaAdagradAdamAveragedSGDRMSprop、SGD等。

优化算法学习
第一、SGD,文档在此,SGD,代码在此,SGD

class torch.optim.SGD(params, lr=<object object>, momentum=0,
dempening=0, weight_decay=0, nesterov=False)

Nesterov momentum版本的SGD也可以执行,该优化算法的介绍,在此,Nesterov
params - 可迭代的,通常是args = get_arguments()和model.parameters()/model.optim_parameters(args)配合使用。
lr - 学习率或步长,无默认值,说明必须由用户指定。
momentum - 冲量项因子,默认值为0,通常设置0.9。
weight_decay - 权重衰减项因子,默认值为0,通常设置千分之五或者万分之五。
nesterov - nesterov开关,默认为False。
使用如下:

optimizer = torch.optim.SGD(model.parameters(), lr=0.1, momentum=0.9)
optimizer.zero_grad() # clears the gradients of all optimized **Variable** s.
loss_fn(model(input), target).backward()
optimizer.step() # performs a single optimization step.

第二,Adam,文档在此,Adam,代码在此,Adam

class torch.optim.Adam(params, lr=0.001, betas=(0.9, 0.999),
eps=1e-08, weight_decay=0)

params - 同上。
lr - 同上,但是默认值为千分之一。
betas - Adam优化算法中的超参数,分别表示用于计算梯度及其平方(梯度强度)均值的系数。
eps - 分母中的小数,提升计算稳定性。
weight_decay - 同上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值