抱歉,如果已经问过了,但我在 Google 上找不到要查找的字词。
假设我有一个大小为 t1
的张量 [a,b]
和一个大小为 t2
的张量 [c]
。
如何输出大小为 t3
的张量 [a,b,c]
,以便:
t3[0, :, 0] = t1[0, :] * t2[0]
t3[0, :, 1] = t1[0, :] * t2[1]
t3[0, :, 2] = t1[0, :] * t2[2]
...
t3[1, :, 0] = t1[1, :] * t2[0]
t3[1, :, 1] = t1[1, :] * t2[1]
t3[1, :, 2] = t1[1, :] * t2[2]
等等,没有 for 循环?
谢谢
答案 0 :(得分:1)
使用 torch.kron 会得到一个张量 a x b*c,然后使用 torch.Tensor.reshape 可以映射到一个张量 a x b x c :
t3=torch.kron(t1,t2).reshape(a,b,c)