当前位置: 主页 > 行业资讯 > 行业动态

Pytorch学习笔记(二)torch.optim(优化)+线性模型实例

2024-03-12 13:22   作者:佚名

1.torch.optim
在机器学习或者深度学习中,我们需要通过修改参数使得损失的数最小化(或最大化),优化算法就是一种调整模型参数更新策略
1.1一阶优化算法
使用参数的梯度值来更新参数,最常用的是梯度下降。梯度是导数的多变量表达式,函数的梯度形成了向量场,同时也是一个方向,这个方向导数最大,等于梯度。
梯度下降的功能是寻找最小值,控制方差,更新模型参数最终使模型收敛,网络的参数更新公式是:
在这里插入图片描述
在这里插入图片描述
1.2.二阶优化算法
二阶优化算法使用了二阶导数(Hessian)最小化或最大化损失函数。计算成本高

我们可以直接调用Pytorch自带的实现优化算法的包,大多数常见的算法都可以调用包来实现,比如随机梯度下降添加动量的随机梯度下降自适应学习率等。

在调用的时候将需要优化的参数传入,这些参数都必须是variable,然后传入一些基本的设定,比如学习率动量
例子:
在这里插入图片描述
2.线性模型实例
从最简单的线性模型入手,给多个数据点,找到一个函数来拟合这些数据点使其误差最小在这里插入图片描述
一维线性回归代码实现:

 

概述下整体流程:
①建立模型
②建立数据集
③由于矩阵是numpy,要转化成tensor
④如果有GPU,可以放入GPU跑,分别放入模型,输入,目标。
⑤定义损失函数和优化器
⑥训练模型:
1)前向传播
(给模型输入参数)
(求损失函数)
2)反向传播
(梯度归零)
(loss.backward)
(更新参数)
(每隔几段时间就打印损失函数看看)
⑦验证看看效果

同类文章推荐
抖音网红餐饮也就那回事儿!餐饮抖音全套路详解
南财快评:优化支出结构,更好发挥财政稳经济作用
初中留学哪个国家最好
时代天使被纳入恒生人工智能主题指数 引领数字化正畸行业潮流
一种光伏优化器
市住房城乡建设委等7部门关于进一步完善房地产调控政策促进房地产业健康发展的通知

咨询登记

平台注册入口