Introduction to PyTorch 3

38A·2023년 7월 18일
0

PyTorch 스터디

목록 보기
3/11
post-thumbnail

Automatic Differentiation with torch.autograd

➡️ Define Computational graph

loss.backward()시 weight.grad는 각 weights의 gradient를 가지고 있음

gradient 추적을 멈춘다.


Optimizing Model Parameters

Hyperparameter

모델 학습 과정에서 조정되는 매개변수와는 별개의 값으로 모델 최적화 과정을 제어하고 모델 학습과 수렴율에 영향을 미치는 매개변수

Epoch

데이터셋 전체를 반복적으로 학습하는 횟수

Epoch 값이 너무 크다면 ➡️ Overfitting
Epoch 값이 너무 작다면 ➡️ Underfitting

Batch Size

모델이 학습하는 과정에서 데이터들을 Batch Size 만큼 학습할 때마다 parameter를 한 번 수정

Learning Rate

역전파 단계를 거쳐 계산한 gradient 를 이용해 parameter를 업데이트 하는 정도

Optimization Loop

하이퍼 파라미터를 조정해준 이후 Optimization Loop을 통해 모델을 학습하고 최적화 한다.

Train Loop
Validation / Test Loop

Loss Function

모델이 예측한 값과 실제 값과의 오차를 계산한다.

회귀(regression) 문제에서는 nn.MSELoss
분류(classification) 문제에서는 nn.CrossEntropyLoss

Optimizer

Loss Function 을 통해 계산한 오차를 loss.backward()를 호출하여 역전파시켜 각 매개변수에 대해 gradient를 저장한다.
그 이후 optimizer.step() 을 호출하여 그 gradient로 매개변수를 조정한다.

ex) SGD, ADAM, RMSProp


Save and Load the Model

학습 모델 자체를 저장

모델의 매개변수만을 저장

출처 : PyTorch Tutorials https://tutorials.pytorch.kr/beginner/basics/autogradqs_tutorial.html
https://tutorials.pytorch.kr/beginner/basics/optimization_tutorial.html
https://tutorials.pytorch.kr/beginner/basics/saveloadrun_tutorial.html

profile
HGU - 개인 공부 기록용 블로그

1개의 댓글

comment-user-thumbnail
2023년 7월 19일

글이 많은 도움이 되었습니다, 감사합니다.

답글 달기