9시 24분
손실 함수와 경사 하강법의 관계 본문
경사 하강법을 좀 더 기술적으로 표현하면 '어떤 손실 함수가 정의되었을 때 손실 함수의 값이 최소가 되는 지점을 찾아가는 방법'이다.
( 손실 함수: 예상한 값과 실제 타깃값의 차이를 함수로 정의한 것 )
'오차를 변화율에 곱하여 가중치와 절편 업데이트하기' = 제곱 오차를 미분한 것
제곱 오차(squared error): 타깃값과 예측값을 뺀 다음 제곱한 것
제곱 오차가 최소가 될 때, 산점도 그래프를 가장 잘 표현한 직선이 그려진다.
즉, 제곱 오차의 최솟값을 찾는 방법을 알면 모델을 쉽게 만들 수 있다.
제곱 오차의 최솟값을 알아내려면 기울기에 따라 함수의 값이 낮은 쪽으로 이동해야 한다.
기울기는 제곱 오차를 가중치나 절편에 대해 미분하여 구한다.
가중치에 대하여 제곱 오차 미분하기
제곱 오차를 가중치(w)에 대하여 편미분하자.
편미분: 미분의 대상 변수(w)를 제외한 다른 변수를 상수로 취급하여 미분한 것
여기서 y는 준비된 타깃 데이터이므로 w의 함수가 아니고, ŷ은 w의 함수( ŷ= w*x+b )이다.
제곱 오차를 2로 나눈 것으로 정의했다면 미분 값이 위와 같이 깔끔하게 표현될 것이다.
그래서 보통 제곱 오차를 2로 나눈 함수를 편미분하며, 앞으로도 -(y-ŷ)x를 사용하자.
** 손실 함수에 상수를 곱하거나 나누어도 최종 모델의 가중치나 절편에 영향을 주지는 않는다.
앞에서 가중치 업데이트에 변화율을 더했던 것과 비슷하게 가중치를 업데이트하자.
67쪽 아래부터 하깅 ^ㅅ^,,,
'인공지능' 카테고리의 다른 글
kNN & Spam Filter (0) | 2021.07.13 |
---|---|
1일차 실습 (0) | 2021.07.12 |
빅데이터와 머신러닝 (0) | 2021.07.12 |
여기서부터는 Tenserflow 2로 배우는 빅데이터와 머신러닝 (0) | 2021.07.12 |
경사 하강법 (0) | 2021.06.28 |