Pytorch Section 7

최원빈·2023년 6월 28일
0

Pytorch studying

목록 보기
7/17
post-thumbnail

* 강사님의 자료는 저작권이 있기 때문에 배운 내용을 최대한 간단하게 정리하는 수준으로 작성하였습니다.

optimizer

  • 딥러닝 학습 목적 \to 손실값이 가장 작은 모델 만들기
  • 즉, 손실함수 (ex.MSE) 최솟값을 찾아가는 과정 \to optimization (최적화) 과정
  • 대표적인 optimizer \to Gradient Descent
    • 다양한 Gradient Descent가 있음

BGD (Batch Gradient Descent)

  • 전체 데이터셋 한번에 학습
  • 학습 시간 너무 오래 걸리고, 최적화 값 못 뽑을 때 있음 \to local minima에 빠질 수 있음

SGD (Stochastic Gradient Descent)

  • BGD 대안으로 나옴
  • 특정 크기의 데이터를 랜덤으로 선택하여 학습

기본 모델 학습 구조

learning_rate = ..
epochs = ..
optimizer = torch.optim.SGD(model.parameters(), lr=learning_rate)

for epoch in range(epochs+1):

  y_pred = model(x)
  loss = F.mse_loss(y_pred, y)
   
  optimizer.zero_grad()
  loss.backward()
  optimizer.step()
  

* written on June 29th

profile
차가운 머리와 따뜻한 마음

0개의 댓글