1. 首页
  2. 编程语言
  3. Python
  4. 关于torch.optim的灵活使用详解(包括重写SGD,加上L1正则)

关于torch.optim的灵活使用详解(包括重写SGD,加上L1正则)

上传者: 2022-06-11 23:54:11上传 PDF文件 73.53 KB 热度 19次

torch.optim的灵活使用详解要构建一个优化器Optimizer,必须给它一个包含参数的迭代器来优化,然后,我们可以指定特定的优化选项,例如学习速率,重量衰减值等。将model中需要进行BP的层的参数送到torch.optim中,这些层不一定是连续的。例子:上面创建的optim.SGD类型的Optimizer,lr默认值为1e-1,momentum默认值为0.9。features12的参数学习率为1e-2。params : iterable of parameters to optimize or dicts defining parameter groups 想要改变各层的学习率,可以访问optimizer的param_groups属性。查看torch.optim.SGD等Optimizer的源码,发现没有L1正则的选项,而L1正则更容易得到稀疏解。L1正则化求导如下:

下载地址
用户评论