Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

9시 24분

손실 함수와 경사 하강법의 관계 본문

인공지능

손실 함수와 경사 하강법의 관계

leeeee.yeon 2021. 7. 13. 17:58

경사 하강법을 좀 더 기술적으로 표현하면 '어떤 손실 함수가 정의되었을 때 손실 함수의 값이 최소가 되는 지점을 찾아가는 방법'이다.

( 손실 함수: 예상한 값과 실제 타깃값의 차이를 함수로 정의한 것 )

'오차를 변화율에 곱하여 가중치와 절편 업데이트하기' = 제곱 오차를 미분한 것

 

제곱 오차(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