pytorch 计算点积向量

insrf1ej  于 2023-03-18  发布在  其他
关注(0)|答案(2)|浏览(157)

我如何做下面的点积最好使用pytorch tensordot()
假设我有向量A和向量B:

[a1,a2] . [b1,b2,b3] =

我想得到的结果是:

[
  a1 * b1 + a2 * b1,

  a1 * b2 + a2 * b2,

  a1 * b3 + a2 * b3
]

向量乘向量=点积向量

zzzyeukh

zzzyeukh1#

统一理论可能很方便:

torch.einsum('i,j->j', torch.Tensor(a), torch.Tensor(b))
zbdgwd5y

zbdgwd5y2#

下面的代码将向量转换为矩阵乘法,并对一行中的所有值求和。

import torch
tensor1 = torch.tensor([1,2]).unsqueeze(0)
tensor2 = torch.tensor([3,4,5]).unsqueeze(0)

result = torch.sum(tensor2.t() @ tensor1, dim=1)
print(result)

结果:

tensor([ 9, 12, 15])

相关问题