728x90
numpy 에서 tensor로 변환하는 방법에 대해 알아보겠습니다. 데이터를 tensor을 생성하는 방법은 2가지가 있습니다. tensor을 생성하거나 numpy 배열을 tensor로 바꾸는 것이 있습니다.
왜 tensor을 사용하는가?
1. 대부분의 딥 러닝 framework( TensorFlow, Pytorch) 에서는 Tensor을 기본 데이터 구조로 사용하기 때문입니다.
2. tensor은 자동으로 미분을 해주며 역전파 계산을 해줍니다.
3. Tensorflow와 Pytorch 같은 딥 러닝 framework는 GPU를 활용해 더욱 빠른 연산을 할 수 있습니다. 데이터를 tensor로 만들거나 numpy 배열을 tensor 로 변환합니다.
4. 고차원의 배열을 numpy보다 tensor가 효과적으로 처리할 수 있기에 사용합니다.
Tensor 생성
torch.Tensor( )
tensor을 반환합니다.
import torch
tf = torch.Tensor([1,2])
print(tf)
# Output
# tensor([1., 2.])
Numpy to Tensor
torch.from_numpy( )
numpy를 tensor로 변환한 뒤 반환합니다.
import torch
import numpy as np
a=np.array([1,2,3,4])
b=torch.from_numpy(a)
print(b)
# Output
# tensor([1, 2, 3, 4])
Tensor to Numpy
numpy( )
tensor을 numpy로 변환한 뒤 반환합니다.
import torch
import numpy as np
a = torch.rand(3,3)
b = a.numpy()
print(b)
# [[0.229119 0.00697333 0.46128327]
# [0.92042404 0.55823183 0.16318232]
# [0.16195619 0.35052514 0.5872609 ]]
'AI & DL > Pytorch' 카테고리의 다른 글
[PyTorch] DataLoader 기초 및 구현 (2) | 2024.03.17 |
---|---|
[PyTorch] Dataset 기초 및 구현 (0) | 2024.03.16 |
[PyTorch] RuntimeError: The NVIDIA driver on your system is too old. 오류 해결법 (0) | 2023.12.31 |
[PyTorch] torch.ne, torch.eq 에 대해 알아보자 (0) | 2023.09.13 |
[Pytorch] torch.multinomial, multinomial (0) | 2023.09.07 |