학습률 웜업
훈련을 시작하자마자 큰 폭으로 고치면 어떻게 될까요?
해 보면
손실이 이리저리 튑니다
훈련을 막 시작한 모델은 파라미터가 아무렇게나 채워져 있습니다. 이때 큰 폭으로 고치면 엉뚱한 쪽으로 크게 움직여 손실이 오히려 올라갈 수 있습니다.
모양을 보인 그림입니다. 골짜기의 높이가 손실, 공이 파라미터입니다.
해법
작은 폭으로 시작해 차츰 키웁니다
처음 몇 걸음은 아주 낮은 학습률, 곧 작은 폭으로 고치고 걸음마다 조금씩 올립니다. 이것을 학습률 웜업이라고 합니다.
웜업(warm-up)은 운동 전에 몸을 푸는 준비 운동이라는 뜻입니다.
두 숫자
0.0001에서 0.01까지 올립니다
웜업에는 숫자 두 개를 정합니다. 시작하는 값인 처음 학습률과, 올라갈 꼭대기인 최고 학습률입니다.
0.01은 곡선 모양을 보려고 고른 예제 값입니다. 실제 훈련에 쓴 값은 5편에서 나옵니다.
얼마 동안
135걸음 가운데 처음 27걸음
이번 훈련은 15 에포크입니다. 8강처럼 9걸음이 1 에포크이니 모두 135걸음이고, 그 20%인 처음 27걸음 동안 학습률을 올립니다.
에포크는 훈련할 글을 끝까지 한 번 다 본 것입니다. 8강은 10 에포크, 90걸음이었습니다.
얼마씩
한 걸음에 0.000367씩 올립니다
올려야 할 폭은 0.01에서 0.0001을 뺀 0.0099입니다. 이것을 27걸음으로 똑같이 나눠 걸음마다 같은 양을 더합니다.
막대 위 숫자는 소수 다섯째 자리까지만 적은 값입니다.
그래프로 보면
27걸음 오르고, 그 뒤는 그대로
가로는 걸음, 세로는 학습률입니다. 27걸음 동안 곧게 올라 28걸음째에 0.01에 닿습니다.
웜업만 넣은 모습입니다. 꼭대기에 오른 뒤를 어떻게 할지는 다음 편에서 다룹니다.
다음 편