경사하강법 설명 영상
경사하강법은 비용함수의 기울기 반대 방향으로 가중치를 반복 갱신하는 최적화 기법이다. 갱신식에서 η는 학습률, E는 비용함수, w는 가중치다. 기울기는 함숫값이 가장 빠르게 증가하는 방향이므로 그 반대로 이동한다. 먼저 현재 위치 w에서 기울기 ∇J(w)를 계산한다.…
주요 장면
대본
경사하강법 정의
경사하강법은 비용함수의 기울기 반대 방향으로 가중치를 반복 갱신하는 최적화 기법이다.
갱신식에서 η는 학습률, E는 비용함수, w는 가중치다.
기울기는 함숫값이 가장 빠르게 증가하는 방향이므로 그 반대로 이동한다.
기울기 방향으로 내려가기
먼저 현재 위치 w에서 기울기 ∇J(w)를 계산한다.
기울기는 함숫값이 가장 빠르게 증가하는 방향을 가리킨다.
그러므로 그 반대 방향으로 학습률 η만큼 이동하면 비용이 줄어든다.
이 과정을 수렴할 때까지 반복한다.
계산 예제
가상의 예로 비용함수를 E(w) = (w − 3)²으로 둔다.
초기값 w₀은 0, 학습률 η는 0.1, 최적해 w*는 3이다.
첫 갱신에서 기울기는 −6이므로 w₁은 0.6이 된다.
둘째 갱신에서 기울기는 −4.8이고 w₂는 1.08이다. 최적해에 가까워진다.
학습률을 1.0으로 키우면 w₁이 6이 되어 3을 지나친다. 이것이 오버슈팅이다.
세 가지 변형 비교
경사하강법은 한 번 갱신할 때 쓰는 데이터 양에 따라 세 가지로 나뉜다.
배치 방식은 기울기가 정확하지만 전체 데이터를 읽어야 해서 느리다.
SGD는 샘플 1개마다 갱신해 빠르지만 기울기 노이즈가 커서 경로가 불규칙하다.
미니배치는 두 방식의 중간이며 GPU 병렬처리에 적합해 실무 딥러닝의 기본 선택이다.
헷갈리는 점
경사하강법이 항상 전역 최적해를 찾는다고 쓰면 틀린다.
볼록 함수에서는 기울기가 0인 점이 전역 최적해다.
비볼록인 신경망 손실함수에는 지역 최소점과 안장점이 존재할 수 있다.
그래서 지역 최소점 탈출을 위해 모멘텀, 확률적 노이즈, 미니배치를 활용한다.
개선 방향과 정리
학습률 문제를 줄이는 방법은 크게 네 가지다.
학습률 스케줄링은 에폭이 지날수록 η를 줄이고, 모멘텀은 이전 이동량을 누적한다.
적응적 학습률은 파라미터별로 η를 조정하고, 기울기 클리핑은 기울기 폭주를 막는다.
결국 학습률 η 선택이 수렴 속도와 안정성을 함께 좌우한다.