深度学习入门笔记(8)——optim
其实,我们在看过深度学习相关文章后,都会明白所说的训练其实就是在让预测结果和标签贴合,而评价贴合过程必采用损失函数,我们通过修改层级权重使得损失最小,而我们这部分要说的optim就是一种参数优化策略。
这里我们讲两种传统的优化方式,主要介绍一下一阶optim:
(1)一阶optim
这种方法使用各个参数的梯度值来更新参数 ,最常用的一阶优化算法是梯度下降所谓的梯度就是导数的多变量表达式,函数的梯度形成了各个向量场 ,同时也是一个方向,这个方向上方向导数最大,且等于梯度。梯度下降的功能是通过寻找最小值,控制方差,更新模型参数,最终使模型收敛。
(2)二阶optim
二阶使用的时Hessian方法(二阶导数)来最小化损失函数,但是计算太过复杂而不被推广。
优化算法的调用方式如下
optimizer = optim.Adam(fcn.parameters(), lr=1e-3)
这里是在搭建fcn时的调用,选取的adam学习策略,学习率初始取1e-3