Python/Pytorch

[Pytorch] 파이토치 텐서 자료형 확인, 타입 변환(casting) 방법

jimmy_AI 2022. 2. 8. 18:23
반응형

torch tensor type check & casting

이번 글에서는 파이토치 라이브러리에서 텐서의 타입을 확인하고,

다른 자료형으로 캐스팅(변경)하는 방법에 대해서 간단하게 정리해보겠습니다.

 

 

파이토치 텐서 타입 확인 : dtype 속성

파이토치에서 자료형을 확인하는 방법은 텐서의 dtype 속성을 확인해주시면

간단히 해결됩니다.

import torch

a = torch.randn(2, 2, 2)
b = torch.IntTensor([1, 3, 5])

print(a.dtype) # torch.float32
print(b.dtype) # torch.int32

참고로, 텐서의 자료형은 float, int, complex 등 실수, 정수, 복소수 등 속성 표현부

8, 16, 32, 64 등 할당 메모리 숫자 크기로 이루어져 있습니다.

 

예를 들어, torch.int16이면 해당 텐서의 값들은 16비트(2바이트) 정수 자료형입니다.

 

 

파이토치 텐서 자료형 변경(casting) : type 메소드

때로는 특정 자료형의 tensor만을 input으로 요구하는 경우가 있습니다.

 

이런 경우 type 메소드를 이용한 간단한 자료형 변환 과정을 통해 문제를 해결할 수 있습니다.

텐서.type(변환을 원하는 자료형) 형태로 작성해주시면 완료됩니다.

a = torch.randn(2, 2, 2)
print(a.dtype) # torch.float32

a = a.type(torch.float64)
print(a.dtype) # torch.float64

tensor a가 float 자료형인 torch.float32에서

double 자료형인 torch.float64로 casting되었습니다.