torch.numel() 은 number of elements를 의미한다
tensor의 element 개수를 카운트해서 반환한다
python을 사용하는 사람들이라면 len()을 자주 사용하게 된다.
그러면 torch.numel(), len() tensor에서 차이가 있을까?
import torch
x1 = torch.tensor([1,2,3,4])
x2 = torch.randn(3,4)
#위의 두가지의 경우가 있는데 이때 출력되는 (numel() 과 len()은 차이가 있음)
print(len(x1))
print(torch.numel(x1))
## x1의 경우 모두 동일하게 나오게된다.
print(len(x2))
print(torch.numel(x2))
## 이 경우 len은 0 번째 행의 개수만 반환한다
tensor 의 shape에 따라서 결과가 다르게 나온다
x1의 경우 1차원 이라, len(), torch.numel() 모두 동일하게 나오지만,
x2의 경우 n 차원이라 len()은 0번째 차원을 카운트하여 반환하지만 ,
torch.numel(x2)는 tensor 전체의 elements의 개수를 반환한다.
꼭 직접 눈으로 확인 해 볼 것을 말씀드리며 오늘도 안뇽~
