AI TECH

[2주차] Pytorch 프로젝트

prefer_all 2022. 9. 26. 12:53
PyTorch Template 추천 repository

https://github.com/FrancescoSaverioZuppichini/PyTorch-Deep-Learning-Template https://github.com/PyTorchLightning/deep-learning-project-template
https://github.com/victoresque/pytorch-template

 

cmder 사용

 

vscode에서 코드 살펴보기

code .

 

 

직접 돌려보기 (실행시키기)

python train.py -c config.json

 


모듈 없을 때 다운받기

conda install pytorch torchvision -c pytorch
pip install pandas

 

 

 

colab 사용

 

ngrok에서 토큰 받아오기

ctrl+ shift+ p -> SSH add new

ssh root@HostName -p Port 입력

 Host google_colab_ssh
    HostName 4.tcp.ngrok.io
    User root
    Port 15020

 

SSH connect host 클릭하면 위에 저장했던 게 뜸 -> 비번 입력하고 연결

 

코드 실행

python3 train.py -c config.json

 

구글 드라이브에 업로드

cp -r /content/pytorch-template ./

코드 설명

Train.py

1. 팩토리 패턴: 재료를 넣으면 object 객체를 생성해주는 패턴 

보통은 class 이름, 함수, args를 넣어주면 object를 생성

 

 

2. config data에 대해 

config는 parse_config.py의 from_args에서 cls로 return되므로 dict type이 아님 

*** parse_config.py의 __getitem__은 index 값을 넣어주면 해당 값을 불러옴

ConfigParser 클래스의 객체를 return 받았는데 실제로는 config를 사용라며 데이터를 다루게 됨

 

3. parse_config.py의 init_obj에서 config.json의 data_loader (여기서는 MnistDataloder)을 사용

 

 

4. train.py에서 제일 중요한 코드

 

'AI TECH' 카테고리의 다른 글

Autograd & Optimizer  (1) 2022.09.27
torch.tensor와 torch.Tensor의 차이  (0) 2022.09.26
[2주차] PyTorch  (0) 2022.09.26
CNN의 역전파  (0) 2022.09.22
[1주차] Python&Math : Generator, Asterisk, 가변인자  (0) 2022.09.20