Pych自动微分模块详解与应用.pptx

PyTorch自动微分

掌握自动微分模块的使用

自动微分模块自动微分(AutomaticDifferentiation,AD)是PyTorch的核心功能之一,它通过autograd模块实现,无需手动计算梯度,极大简化了神经网络训练等依赖梯度优化的任务。

自动微分模块训练神经网络时,最常用的算法就是反向传播。在该算法中,参数(模型权重)会根据损失函数关于对应参数的梯度进行调整。PyTorch内置的名为torch.autograd的微分模块。它支持任自动梯度计算:接下来我们使用这个结构进行自动微分模块的介绍。我们使用backward方法、grad属性来实现梯度的计算和访问.

梯度基本计算PyTorch不支持向量张量对向量张量的求导,只支持标量张量对向量张量的求导x如果是张量,y必须是标量(一个值)才可以进行求导计算梯度:y.backward(),y是一个标量获取x点的梯度值:x.grad,注意它会累加上一次的梯度值

自动微分(更新w)#导包importtorch#TODO自动微分模块主要用于梯度计算!!!#定义权重requires_grad=True:开启自动微分w=torch.tensor([10,20],requires_grad=True,dtype=torch.float)#定义损失函数(loss,cost,criteri

文档评论(0)

1亿VIP精品文档

相关文档