利用Pytorch对函数y=2xTx 关于列向量x求导

利用Pytorch对函数y=2xTx 关于列向量x求导,第1张

浅浅记录一下深度学习的一个小实验:利用Pytorch对函数y=2x 关于列向量 求导。

因为这个函数求导还是挺简单的,首先我们可以稍微手动求一下,方便验算程序结果是否正确

,最后的结果就是4*x的初始值

首先自定义一个列向量
 

x = torch.tensor([[1.0], [2.0], [3.0]], requires_grad=True)

然后用pytorch的矩阵乘法函数torch.mm()写出公式

y = 2 * torch.mm(x.T,x)

最后调用反向传播函数,输出结果

y.backward()
print(x.grad)

完整代码

import torch
x = torch.tensor([[1.0], [2.0], [3.0]], requires_grad=True)
y = 2 * torch.mm(x.T,x)
y.backward()
print(x.grad)


结果,我们可以看到,就是4倍的x

 

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/915737.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存