미분계수를 이용해 손실함수의 값을 최소화하는 경사하강법을 배우고 Ⅳ단원 전체를 정리합니다.
| 단계 | 활동 | |
|---|---|---|
| 활동1 | $a$의 값을 갱신하는 식 | 15분 |
| 활동2 | 경사하강법 시뮬레이터 | 20분 |
| 활동3 | Ⅳ단원 정리 퀴즈 | 15분 |
손실함수 $L(a)$는 $a$에 대한 이차함수이므로 $a=g$에서 최소일 때 $L'(g)=0$입니다. 임의로 정한 $a_0$에 대하여 $L'(a_0)\neq0$이면, 손실함수의 값이 작아지도록 $a$의 값을 $a_0$에서 $a_1$으로 갱신합니다. 이때
$a_1=a_0-kL'(a_0)$ (단, $k>0$)
이 식을 경사하강법의 학습을 위한 식이라 하고, 양의 상수 $k$를 학습률이라고 합니다. $L'(a_0)$의 부호에 따라 $a$의 값이 커지거나 작아지도록 갱신되고, $|L'(a_0)|$가 클수록 큰 폭으로 갱신됩니다.
세 점 $(1,1), (2,1), (2,3)$에 대하여 추세선 $f(x)=ax$의 손실함수는 $L(a)=3a^2-6a+\dfrac{11}{3}=3(a-1)^2+\dfrac{2}{3}$이므로 $a=1$일 때 최소입니다. 학습률 $k=0.1$, 종료 기준 $|L'(a)|<0.001$로 경사하강법을 직접 실행해 보세요.
확률과 추세선으로 데이터를 예측하는 방법, 손실함수로 추세선의 좋고 나쁨을 수치화하는 방법, 미분계수와 경사하강법으로 손실함수를 최소화하는 최적화 과정까지 살펴보았습니다. 수고 많았습니다!