Pytorch优化器:管理并更新模型中可学习参数的值,使得模型输出更接近真实标签;管理是指优化器管理和修改参数,更新是指优化器的优化策略。优化策略通常采用梯度下降,梯度是一个向量,梯度的方向是使得方向导数最大。
优化器基本属性:
- defaults:优化器超参数;
- state:参数的缓存,如momentum参数;
- param_groups:管理的参数组;
- _step_count:记录更新次数,学习率调整中使用;
- zero_grad():清空所管理参数的梯度;(Pytorch特性:梯度张量不自动清零);
- step():执行一步更新;
- add_param_group():添加参数组;
- state_dict():获取优化器当前状态信息字典;
- load_state_dict():加载状态信息字典;
现在先看代码中优化器的建立过程:
进入源码分析这段代码的内容,通过步进,程序进入以下阶段:
将光标移动到上述代码中的最后一行代码:
通过步进,程序进入以下阶段:
上述代码中有第三部分介绍的优化器的基本属性,通过以上步骤就构建了一个优化器;构建优化器之后,人民币二分类代码中会使用到该优化器的相关功能:
以上就是优化器的基本使用;