반응형
numpy에서는 다음과 같은 간단한 행렬 곱셈을 수행 할 수 있습니다.
a = numpy.arange(2*3).reshape(3,2)
b = numpy.arange(2).reshape(2,1)
print(a)
print(b)
print(a.dot(b))
그러나 PyTorch Tensor로 이것을 시도하면 작동하지 않습니다.
a = torch.Tensor([[1, 2, 3], [1, 2, 3]]).view(-1, 2)
b = torch.Tensor([[2, 1]]).view(2, -1)
print(a)
print(a.size())
print(b)
print(b.size())
print(torch.dot(a, b))
이 코드는 다음 오류를 발생시킵니다.
RuntimeError : inconsistent tensor size at /Users/soumith/code/builder/wheel/pytorch-src/torch/lib/TH/generic/THTensorMath.c:503
PyTorch에서 행렬 곱셈을 수행하는 방법에 대한 아이디어가 있습니까?
해결 방법
당신은 찾고 있습니다
torch.mm(a,b)
# 1D inputs, same as torch.dot
a = torch.rand(n)
b = torch.rand(n)
torch.matmul(a, b) # torch.Size([])
# 2D inputs, same as torch.mm
a = torch.rand(m, k)
b = torch.rand(k, j)
torch.matmul(a, b) # torch.Size([m, j])
참조 페이지 https://stackoverflow.com/questions/44524901
반응형
'파이썬' 카테고리의 다른 글
파이썬 'Conda'는 내부 또는 외부 명령으로 인식되지 않습니다. (0) | 2020.10.18 |
---|---|
파이썬 로 시작하는 파이썬 목록 항목을 찾는 방법 (0) | 2020.10.18 |
파이썬 lib 'SQL Server 용 ODBC 드라이버 13'을 열 수 없습니까? Sym 연결 문제? (0) | 2020.10.18 |
파이썬 Python : ufunc 'add'에 dtype ( 'S21') dtype ( 'S21') dtype ( 'S21') 유형과 일치하는 서명이있는 루프가 포함되지 않았습니다. (0) | 2020.10.18 |
파이썬 Python의 기존 파일 앞에 줄 추가 (0) | 2020.10.18 |
댓글