[PyTorch] Data Type과 Type casting

beaver.zip·2024년 8월 9일
0
post-custom-banner

Data Type

  • 정수형, 실수형, complex형, Boolean형으로 구분
  • 부호의 유무(정수형)와 비트 수(정수형, 실수형) 지정 가능
  • torch.tensor()에서 dtype으로 지정
  • .dtype으로 Data Type 확인 가능

예제

import torch

# 16비트 부호 있는 정수형 텐서 생성
int_tensor = torch.tensor([1, 2, 3], dtype=torch.short)

# 32비트 부동 소수점 수 텐서 생성
float_tensor = torch.tensor([1.0, 2.5, 3.14], dtype=torch.float32)

# Boolean 텐서 생성
bool_tensor = torch.tensor([True, False, True], dtype=torch.bool)


# float_tensor의 Data Type 확인
print(float_tensor.dtype) # torch.float32

Type casting (=형 변환)

1. type(dtype)

예제

a = torch.tensor([1, 2, 3], dtype=torch.int)
b = a.type(torch.float32)

print(b) # tensor([1., 2., 3.], dtype=torch.float64)
print(b.dtype) # torch.float32

2. int, long, float, double, bool()

예제

a = torch.tensor([1, 2, 3], dtype=torch.int)
b = a.float()

print(b) # tensor([1., 2., 3.])
print(b.dtype) # torch.float32

3. to(dtype)

예제

a = torch.tensor([1, 2, 3], dtype=torch.int)
b = a.to(torch.float)  # int -> float

print(b) #tensor([1., 2., 3.])
print(b.dtype) # torch.float32

Outro

더 읽어볼 것

참고 자료

profile
NLP 일짱이 되겠다.
post-custom-banner

0개의 댓글