이 레슨과 관련된 학습 키워드
인공지능(AI) — 기계가 생각하는 법 → 딥러닝(Deep Learning) — 인공 신경망의 세계 → 대규모 훈련 — 거대한 모델을 효율적으로 → 최적화 심화 학습
현대적인 옵티마이저의 모멘텀(momentum), 적응적 학습률, 가중치 감쇠(weight decay)를 이해합니다.
여러분, 딥러닝 모델을 훈련할 때 가장 기본이 되는 에스지디부터 시작해볼게요.
에스지디는 확률적 경사 하강법인데요, 미니배치에서 그래디언트를 구해서 파라미터를 업데이트하는 방식이에요.
수식으로 보면 세타를 세타 빼기 에타 곱하기 그래디언트로 업데이트하는 단순한 구조죠.
그런데 이 단순한 방식에 심각한 문제 세 가지가 있어요.
그림 왼쪽을 보세요. 첫 번째 문제는 진동이에요. 영어로 오실레이션이라고 하죠.
손실 함수가 좁고 긴 골짜기 모양일 때 그래디언트가 최적점이 아니라 벽 방향을 가리켜요.
그래서 주황색 점선처럼 지그재그로 움직이면서 500스텝 넘게 걸리는 거예요.
그림 가운데를 보세요. 두 번째 문제는 고정 러닝레이트예요.
파라미터 세타원의 그래디언트가 50이고 세타투의 그래디언트가 0.001이라고 해볼게요.
같은 에타 0.01을 쓰면 업데이트 크기가 5만 배나 차이가 나요.
에타를 키우면 세타원이 발산하고 줄이면 세타투가 학습이 안 되는 딜레마에 빠지죠.
그림 오른쪽을 보면 세 번째 문제가 보여요. 희소 특징 무시예요.
엔엘피에서 10만 단어 중 배치에 128개만 나오면 대부분의 단어 임베딩은 업데이트가 안 돼요.
더 라는 단어는 매 배치마다 나오지만 세렌디피티 같은 희귀 단어는 거의 안 나와요.
에스지디는 모든 단어에 같은 에타를 적용하니까 희소 단어의 학습이 부족한 거예요.
해결책은 적응형 러닝레이트예요. 자주 나오는 파라미터는 에타를 줄이고 드문 파라미터는 키우는 거죠.
이 아이디어가 아다그래드, 알엠에스프롭을 거쳐 아담까지 발전하게 돼요.
하단 파란 박스를 보세요. 이 세 문제를 동시에 해결하는 게 바로 아담 옵티마이저예요.
다음 슬라이드에서 그 첫 번째 재료인 모멘텀부터 자세히 살펴볼게요.
모멘텀이 어떻게 진동을 줄이는지 직관적으로 이해해봐요.
선생님: 에스지디의 세 가지 문제점을 말해볼 수 있어요?
학생: 진동, 고정 러닝레이트, 희소 특징 무시요!
선생님: 정확해요! 진동이 왜 발생하는지 직관적으로 설명해볼래요?
학생: 손실 함수가 좁고 긴 골짜기 모양이면 기울기가 최적점 방향이 아니라 벽 방향을 가리키니까요.
선생님: 완벽해요. 고정 러닝레이트의 딜레마는 뭔가요?
학생: 키우면 큰 그래디언트 파라미터가 발산하고 줄이면 작은 그래디언트 파라미터가 학습 안 돼요.
선생님: 그래서 파라미터마다 다른 러닝레이트가 필요한 거예요. 이게 적응형 옵티마이저의 핵심이죠.