작성
·
231
2
scheduler를 업데이트시켜줄때, 배치단위로 업데이트 시킬 때의 장점과, 에폭 단위로 업데이트 시켜줄때의 장점이 궁금합니다 :)
답변 1
0
안녕하세요.
기본적으로 배치 단위로 스케줄링을 하지는 않습니다.
예를 들어 10번의 이터레이션을 기준으로 학습률이 변경된다고 하고 에폭 100, 배치 이터레이션 20으로 가정해봐요. 그러면 에폭 기준으로하면 9번의 변화가 있지만 배치 기준으로 하면 199번의 많은 변화가 생깁니다. 또한 배치 하나가 학습 되고 있다는 것은 데이터 전체를 사용하는 중이라는 의미이기 때문에 이 사이에 학습률을 변경하면 데이터마다 다른 학습률로 학습이 됩니다. 따라서 기본적으로 배치 단위로 스케줄링을 하지는 않습니다.
감사합니다 :)
일부만 보고 다른 분의 것을 판단하기는 어렵구요. 만약 일반적인 상황에서 배치 기준 스케줄링이라면 구동방식 상은 가능합니다만 기본적으로는 하지 않습니다. 링크 하나 남겨드릴께요!
https://pytorch.org/docs/stable/optim.html
여기서 보면 step단위로 scheduler를 업데이트해주는데 이러한 것에 효과가 따로 있는지 궁금합니다.