1:求范数norm(int)/norm(int,dim)当只有一个参数时表示求几范数,当有两个参数时第二个表示在哪一个索引维度求范数。
[注]在那个维度进行求范数时,哪个维度消失。例如图中shape为[2,2,2]的c在第0维度求范数则其shape变为[2,2]
[注]较难理解因此进行详细刨析对于如下类型的tensorD:
D=tensor([[[a1,a2],
[a3,a4]],
[[b1,b2],
[b3,b4]]])
int:D.norm(2,dim=0)
out:tensor([[(a1*a1+b1*b1)**1/2,(a2*a2+b2*b2)**1/2],
[(a3*a3+b3*b3)**1/2,(a4*a4+b4*b4)**1/2]])
int:D.norm(2,dim=0).shape
out:tensor([2,2])
int:D.norm(2,dim=1)
out:tensor([[(a1*a1+a3*a3)**1/2,(a2*a2+a4*a4)**1/2],
[(b1*b1+b3*b3)**1/2,(b2*b2+b4*b4)**1/2]])
int:D.norm(2,dim=1).shape
out:tensor([2,2])
int:D.norm(2,dim=2)
out:tensor([[(a1*a1+a2*a2)**1/2,(a3*a3+a4*a4)**1/2],
[(b1*b1+b2*b2)**1/2,(b3*b3+b4*b4)**1/2]])
int:D.norm(2,dim=2).shape
out:tensor([2,2])