import torch
print(torch.__version__)
print(torch.cuda.is_available()) #GPU 활용
print(torch.cuda.get_device_name())
print(torch.cuda.device_count())
torch : 메인 네임스페이스로 텐서 등의 다양한 수학 함수가 포함되어져 있으며 Numpy와 유사한 구조를 가진다.
torch.autograd : 자동 미분을 위한 함수들이 포함한다.
torch.nn : 신경망을 구축하기 위한 다양한 데이터 구조나 레이어 등이 정의되어 있다.
torch.optim : 확률적 경사 하강법(Stochastic Gradient Descent, SGD)를 중심으로 한 파라미터 최적화 알고리즘을 제공한다.
torch.utils.data : SGD의 반복 연산을 실행할 때 사용하는 미니 배치용 유틸리티 함수가 포함되어 있다.
생성 : torch.tensor()
차원확인 : .ndim
차원길이확인 : .shape
난수텐서 : torch.rand(size=(a,b))
0 텐서 : torch.zeros(size=(a,b))
1 텐서 : torch.ones(size=(a,b))
범위지정 텐서 : torch.range(start=0,end=9)
기존텐서와 차원이 같은 0 텐서 : torch.zeros_like(tensor)
기존텐서와 차원이 같은 1 텐서 : torch.ones_like(tensor)
torch.reshape(input, shape) - input의 모양을 shape로 바꿔줌
torch.view(shape) - shape 입력 모양을 반환하지만, 원본 텐서는 그대로 유지
torch.stack(tensors, dim=0) - 정해진 행, 열을 기준으로 텐서를 쌓음(다만, tensor들의 크기가 같아야함
torch.squeeze(input) - 모든 차원을 제거해서 1차원으로 반환
torch.unsqueeze(input, dim) - 1차원을 늘려서 반환
torch.from_numpy(ndraary): Numpy 배열 -> Pytorch 텐서
torch.Tensor.numpy(): Pytorch 텐서 ->Numpy 배열