일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 추천 시스템
- wordcloud
- 웹스크래핑
- Overfitting
- 데이터
- 협업 필터링
- 웹크롤링
- Cosine-similarity
- Tensor
- TF-IDF
- 프로그래머스
- codingtest
- coursera
- pytorch
- 머신러닝
- SGD
- 데이터 엔지니어링
- 코테
- recommendation system
- selenium
- 코딩테스트
- 딥러닝
- 파이썬
- 추천시스템
- 백준
- 알고리즘
- 분산 시스템
- 부스트캠프
- Python
- 시각화
- Today
- Total
개발자식
[Pytorch] Pytorch Template 본문
ML 코드는 초기 단계에서 대화식 개발 과정이 유리하기 때문에 jupyter를 활용해서 학습과정, 디버깅 등을 진행하지만 배포 및 공유 단계에서는 notebook 공유가 어렵다.
ML/DL코드도 하나의 프로그램으로 작성하여 아래와 같은 장점을 얻는다
- 개발 용이성 확보
- 유지보수 향상
코드를 그러면 어떻게 짤까?
- OOP + 모듈 -> 프로젝트
- 코드도 레고 블록처럼 작성한다.
이러한 프로그램을 쉽게 구현하기 위해서 Pytorch template가 존재한다.
- 다양한 프로젝트 템플릿이 존재하고
- 사용자 필요에 따라 수정하여 사용이 가능하고
- 실행, 데이터, 모델, 설정, 로깅, 지표, 유틸리티 등 다양한 모듈들을 분리하여 프로젝트를 템플릿화한다.
대표 파이토치 템플릿 링크
- https://github.com/victoresque/pytorch-template
- https://github.com/FrancescoSaverioZuppichini/PyTorch-Deep-Learning-Template
- https://github.com/Lightning-AI/deep-learning-project-template
여기서 첫 번째 템플릿의 구조이다. (Folder Structure)
- 가장 좋음(?!)
pytorch-template/
│
├── train.py - main script to start training
├── test.py - evaluation of trained model
│
├── config.json - holds configuration for training
├── parse_config.py - class to handle config file and cli options
│
├── new_project.py - initialize new project with template files
│
├── base/ - abstract base classes
│ ├── base_data_loader.py
│ ├── base_model.py
│ └── base_trainer.py
│
├── data_loader/ - anything about data loading goes here
│ └── data_loaders.py
│
├── data/ - default directory for storing input data
│
├── model/ - models, losses, and metrics
│ ├── model.py
│ ├── metric.py
│ └── loss.py
│
├── saved/
│ ├── models/ - trained models are saved here
│ └── log/ - default logdir for tensorboard and logging output
│
├── trainer/ - trainers
│ └── trainer.py
│
├── logger/ - module for tensorboard visualization and logging
│ ├── visualization.py
│ ├── logger.py
│ └── logger_config.json
│
└── utils/ - small utility functions
├── util.py
└── ...
템플릿 구조를 잘 설명한 자료
https://eliza-dukim.tistory.com/29
https://hansonminlearning.tistory.com/8
vscode에서 ssh연결을 이용해 colab 환경에서 실행시킬 수 있다.
- colab_ssh 활용
https://dacon.io/en/forum/406050
- NGROK 활용
NGROK 방법으로 ssh 연결이 내 컴퓨터에서는 안 돼서 다른 방법도 찾아본 건데ㅠ 또 안된다.. 일단은 colab에서 돌려야겠다 ㅠㅠ
'AI > Pytorch' 카테고리의 다른 글
[Pytorch] Pytorch 모델 불러오기(save, checkpoints, transfer learning) (0) | 2022.10.02 |
---|---|
[Pytorch] Pytorch Datasets, Dataloaders (0) | 2022.10.02 |
[Pytorch] Pytorch Module, Parameter, Backward (0) | 2022.10.02 |
[Pytorch] PyTorch Basics (0) | 2022.10.02 |
[Pytorch] Introduction to PyTorch (0) | 2022.10.01 |