我试图用pytorch和autograd做一个旋转矩阵,但结果不是它应该的那样
theta = tc.tensor([3.1415],requires_grad=True)
tx = tc.tensor([1.0],requires_grad=True)
ty = tc.tensor([1.0],requires_grad=True)
P = tc.tensor([[tc.cos(theta),-tc.sin(theta), tx],
[tc.sin(theta), tc.cos(theta),ty],
[0.0,0.0,0.0]],requires_grad=True)
我想“学习”参数θ,tx,ty。运行之后,我得到一个类型为
[-0.0506, -0.0973, 0.1012],
[-0.0957, 0.1025, -0.0147],
[ 0.0000, 0.0000, 0.0000]
这意味着它学习每个条目,而不是θ。我们应该有[0,0]=[1,1],[0,1]=-[1,0],而我们没有。如果我从矩阵中删除requires_grad=True,它将返回属性。 你知道如何制作一个简单的矩阵吗
目前没有回答
相关问题 更多 >
编程相关推荐