[ML 시작하면 처음 튀어나오는 중요 개념!!]



확보된 데이터셋(입력, 결과)의 수량(m)은 3개, 아래와 같다.




척봐도  1차 함수지만 바로 이 0.5를 찾는 것이 바로 이 짓의 목표다! 

에서를 찾기 위해 를 무작위로 대입해본다고 가정하고 MSE(mean square error) 산출해보자.




1. 를 2로 가정하면 라는 함수가 만들어진다. 이것을라고 칭한다. 

(의 h는 ML판에서 보통 hypothesis를 칭하는 듯 하다)



2. 함수에 데이터셋을 넣는다.

여기서 실제 데이터 셋의 값과의 오차를 구하고 MSE 산출 공식에 집어 넣자.




3. 실제 데이터셋의 결과값(=y)에서 함수 결과값을 빼서 차이값(Error)을 구한 후 제곱(Square)!





4. 이걸 모조리 더한 다음데이터셋 수량(m = 3)*2 값으로 나눠 평균(Mean)을 구한다.

즉, 함수의 MSE는 5.25이다.





5. 값을 바꿔가면서  함수의 MSE를 계속 계산하다.


이라면?



라면?

<=이거다!



6.  정리하면

의 MSE 5.25

의 MSE 0.25

의 MSE 0



7. 이를 찾고자 하는 값에 대한 함수로 표현하면, 흔히 라는 가충치 함수(Cost function)가 된다.



8. 즉 가 최소가 되는 이 이짓을 통해 찾고자 하는 값이된다.





위에서 한 과정을 그대로, 가 2개인  함수를 가정하고 과 를 무작위로 바꿔가면서 MSE를 산출하자.


바닥 평면의 xy축은 각각과 이고, z축은 인 그래프로 표현한다면,

ML 관련 글에 주구장창 보던 3차원 가중치 그래프가 튀어나온다! 

즉, 그래프에서 가장 바닥과 가까울 때의 과 값이 구하고자 하는 최소의 Error를 가지는 함수인 것!!




이게 바로 맨날 보는 아래 수식의 정체인 것이다!


J(θ0,θ1)=2m1i=1m(y^iyi)2=2m1i=1m(hθ(xi)yi)2