Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- layernormalization
- 중복순열
- ImageClassification
- ComputerVision
- Focal Loss
- clibration
- labelsmoothing
- DataAugmentation
- Optimizer
- 힙
- cmp_to_key
- fasterRCNN
- l2penalty
- f1loss
- labelsmoothingloss
- 네이버AI부스트캠프
- BatchNormalization
- 네이버 ai 부스트캠프
- pytorch
- 우선순위큐
- objectdetection
- focalloss
- inference
- 자료구조끝판왕문제
- mmdetectionv3
- noiserobustness
- 밑바닥부터 시작하는 딥러닝
- autograd
- 정렬
- 프로그래머스
Archives
- Today
- Total
HealthyAI
PyTorch) Model 본문
반응형
Model
model.save()
학습의 결과를 저장하기 위한 함수
모델 형태(architecture)와 파라미터를 저장
모델 학습 중간 과정의 저장을 통해 최선의 결과모델을 선택
만들어진 모델을 외부 연구자와 공유하여 학습 재연성 향상
checkpoints
학습의 중간 결과를 저장, 최선의 결과를 선택
earlystopping 기법 사용시 이전 학습의 결과물을 저장
loss와 metric 값을 지속적으로 확인 저장 한다
일반적으로 epoch, loss, metric을 함게 저장하여 확인
colab에서 지속적인 학습을 위해 필요
transfer learning
다른 데이터셋으로 만든 모델을 현재 데이터에 적용
일반적으로 대용량 데이터셋으로 만든 모델의 성능이 좋다
현재의 DL 에서는 가장 일반적인 학습 기법
backbone architecture 가 잘 학습된 모델에서 일부분만 변경하여 학습을 수행
TorchVision은 다양한 기본 모델 제공
NLP - HuggingFace가 사실상 표준
freezing
- pretrained model을 사용할 때 모델의 일부분을 frozen 시킨다.
- 일부분은 파라미터의 업데이트가 진행되지 않게 학습을 시킨다.
# 모델에 마지막 linear layer 추가 def __init__(self): super(MyNewNet, self).__init__() self.vgg19 = models.vgg19(pretrained = True) self.linear_layers = nn.Linear(1000,1) def forward(self, x): x = self.vgg19(x) return self.linear_layers(x) # 마지막 레이어를 제외하고 frozen for param in my_model.parameters(): param.requires_grad = False for param in my_model.linear_layers.parameters(): param.requires_grad = True
pretrained model
- 되도록 원래 모델을 변경 하지 않도록 하기 위해 새로 선언 해준다.
반응형
'AI > PyTorch' 카테고리의 다른 글
PyTorch) Dataset & DataLoader (0) | 2023.03.18 |
---|---|
PyTorch) Project (0) | 2023.03.18 |
PyTorch) AutoGrad, Optimizer (0) | 2023.03.18 |
PyTorch) PyTorch Basic (0) | 2023.03.18 |
밑바닥 부터 시작하는 딥러닝) ch3. 신경망 (0) | 2023.02.01 |