pytorch 연구 노트 torch.mul ()과 torch.mm ()의 차이점

pytorch에서 torch.mul ()과 torch.mm ()의 차이점

torch.mul (a, b)는 행렬 a와 b의 해당 비트를 곱한 것입니다. a와 b의 차원은 같아야합니다. 예를 들어 a의 차원은 (1, 2)이고 b의 차원은 다음과 같습니다. (1, 2). (1, 2)의 행렬입니다.

torch.mm (a, b)는 행렬 a와 b의 행렬 곱셈입니다. 예를 들어 a의 차원은 (1, 2), b의 차원은 (2, 3), 반환 된 행렬은 (1, 3)

import torch

a = torch.rand(1, 2)
b = torch.rand(1, 2)
c = torch.rand(2, 3)

print(torch.mul(a, b))  # 返回 1*2 的tensor
print(torch.mm(a, c))   # 返回 1*3 的tensor
print(torch.mul(a, c))  # 由于a、b维度不同,报错

추천

출처blog.csdn.net/m0_45388819/article/details/109907583