PyTorch for Deep Learning and Computer Vision *L1

2021. 9. 22. 17:53CS/머신러닝


1일차, Pytorch 설치하기~기본(Lesson #1)

 

Google Colab(colab.research.google.com)에 들어가서 새로운 노트를 만든다.

나는 코스에서 시키는 대로, "Tensors Crash Course"라는 이름으로 만들었다.

기본적인 사용법은 주피터 노트북과 같았다.

 

pytorch 설치는 아래 커널에 이렇게 적고 실행하면 된다. Google Colab에서는 매번 토치를 설치해줘야 한다!

!pip3 install torch
!pip3 install torchvision

위 코드 실행 결과

 

그 뒤 실습 비슷한 걸 했다. 텐서를 만들고, 데이터타입은 뭔지 뽑아내고, 기본적인 파이썬 슬라이싱도 해봤다.

v = torch.tensor([1,2,3,4,5,6]) #텐서를 하나 만들고...
print(v.dtype) #datatype 
print(v[1])
print(v[2])
print(v[0])
print(v[1:4]) #slice
print(v[1:])

------실행결과----
torch.int64
tensor(2)
tensor(3)
tensor(1)
tensor([2, 3, 4])
tensor([2, 3, 4, 5, 6])

 

이건 배열 형태랑 비슷하게 만들어 재정렬하는 코드다. 은근 행/열이 자꾸 헷갈려서 힘들었다.

행은 가로... 열은 세로.... 이런 기본적인 게 왜 헷갈리는지ㅜ

v.view(6,1) #원하는 형식으로 정렬(Reshape)한다. 앞이 행, 뒤가 열
#v.view(7,1) #7개의 원소가 있지는 않으므로, 실행 시 오류 발생
v.view(2,3)
v.view(3,-1) # 앞의 수에서 이미 행 수가 결정되었으니 뒤에 뭐가 오든 같은 형태로 나타나게 됨.

 

다음으로는 넘파이를 사용했다. 넘파이는 대규모 다차원 배열을 사용할 수 있도록 돕는 파이썬 라이브러리이다. 수학이나 과학 계산에 주로 이용된다. 넘파이를 임포트해주고 시작했다.

import torch
import numpy as np

#???
a = np.array([1,2,3,4,5])
tensor_cnv = torch.from_numpy(a)
print(tensor_cnv)
print(tensor_cnv.type())

numpy_cnv = tensor_cnv.numpy()
print(numpy_cnv)

----실행결과----
tensor([1, 2, 3, 4, 5])
torch.LongTensor #64 bit signed integer
[1 2 3 4 5]