Coding Log

비용함수 (Cost Function)

앞의 포스팅에서 hypothesis function에 대해서 알아보았다

다시 한 번 hypothesis function를 상기해보면 아래와 같다

h_{\theta}(x) = \theta_0 + \theta_1x

위의 함수에서 \theta_{i}'s를 앞으로 매개변수(이하 parameter)라고 하자

아래의 그림을 보자

위의 그림처럼 hypothesis function을 뜻하는 h_{\theta}(x)는 \theta_0와 \theta_1에 의하여 값이 결정된다

그렇다면 어떤 parameter 를 선택해야 Training set을 가장 잘 표현하는 hypothesis function이 될까?

Training set y 와 가장 차이가 적게나는 \theta를 선택했을 때 가장 잘 표현된 hypothesis function이라 할 수 있을 것이다

즉, h_{\theta}(x)가 Training set을 잘 표현하는 지 구하는 방법이 필요하다

우리는 비용함수(이하 cost function)을 이용하여 hypothesis function의 정확성을 구할 수 있다

cost function은 x에 대한 hypothesis function의 결과 h(x^{(i)})와 실제 결과 y의 차이의 평균을 구하는 것이다

이를 수식으로 나타내면 아래와 같다

J(\theta_0, \theta_1) =\frac{1}{2m}\sum(h_{\theta}(x^{(i)})-y^{(i)})^2

위의 수식에서 2m에서 2는 임의로 붙인 것인데 편미분 후 등장하는 2를 상쇄시키기 위해서 붙인 것이다

cost function은 Squared error function 혹은 Mean squared error로도 불리지만 본 블로그에서는 cost function이라고 정의하겠다

위에서 선술했듯이 cost function을 통해 hypothesis function이 얼마나 training set과 유사하게 표현하는 지 알 수 있다

결국 hypothesis function를 가장 잘 표현할 수 있는 cost function의 결과를 최소로 하는 \theta값을 구하는 것이며 이를 minimization problem 이라고 부른다


DISQUS 로드 중…
댓글 로드 중…

트랙백을 확인할 수 있습니다

URL을 배껴둬서 트랙백을 보낼 수 있습니다