인프런 커뮤니티 질문&답변

큰돌님의 프로필 이미지
큰돌

작성한 질문수

실전 인공지능으로 이어지는 딥러닝 개념 잡기

확률적 경사 하강법과 최적화 기법(Stochastic Gradient Descent and Optimizers)

SGD + 모멘텀 등의 코드

해결된 질문

작성

·

378

·

수정됨

0

안녕하세요 강사님 ㅎㅎ

강의 너무 잘 듣고 있습니다.

다름이 아니라.

15:40 에 많이 사용하는 것이

SGC + 스케줄링 또는 SGD + 모멘텀 + 스케줄링 이라고 말씀하셨는데요.

해당 부분을 코드로 나타내면 이렇게 되는게 맞을까요?

import torch
import torch.optim as optim 
# SGD + 스케줄링
optimizer = optim.SGD(model.parameters(), lr=0.01)  
# SGD + 스케줄링 + 모멘텀
optimizer = optim.SGD(model.parameters(), lr=0.01, momentum=0.9) 
scheduler = optim.lr_scheduler.StepLR(optimizer, step_size=30, gamma=0.1) 
for epoch in range(num_epochs):
...
    for inputs, targets in train_loader:
        optimizer.zero_grad()
        outputs = model(inputs)
        loss = criterion(outputs, targets)
        loss.backward()
        optimizer.step() 
    scheduler.step()
 

 

감사합니다.

답변 1

0

딥러닝호형님의 프로필 이미지
딥러닝호형
지식공유자

안녕하세요.

네 맞습니다!

 

추가적으로 말씀드리면

ADAM이랑 모멘텀+스케줄링이 지금까지 많이 쓰여져 왔는데요.

ADAM이 거의 디폴트처럼 쓰인다고 보시면 됩니다 :)

 

 

열공하세요!

큰돌님의 프로필 이미지
큰돌

작성한 질문수

질문하기