torch.dot, torch.matmul, torch.mm, torch.bmm

Gangtaro·2022년 1월 24일
1

torch.dot

  • 벡터의 내적만 지원. (numpy와는 다르게 행렬곱/행렬연산은 지원하지 않는다.)

torch.matmul

  • vector의 내적, 행렬의 연산 다 사용가능
  • broadcasting을 지원한다. (debugging에서 불리한 포인트)

torch.mm

  • 행렬의 곱셈만 지원. vector의 내적 불가능.
  • broadcasting을 지원하지 않는다. → Debug에서 유리하다.
  • 추가적으로, batch 차원까지 연산을 지원해주지는 않는다. 딱, 2차원 행렬끼리의 곱만 연산가능하다.
    • ex. (3, 4) @ (4, 10) = (3, 10)

torch.bmm

  • torch.mm과의 차이점은 mm은 2차원 행렬의 곱 연산만 지원하고,
    torch.bmm은 3차원 텐서의 곱 연산만 지원한다.
    - ex. (10, 5, 3) @ (10, 3, 2) = (10, 5, 2)

0개의 댓글