IT하는 참새

05. 비용함수(Cost Function)(3) 본문

인공지능

05. 비용함수(Cost Function)(3)

pshot 2018. 7. 14. 01:53

우선 Linear Regression(선형 회귀)알고리즘을 통해 공부를 진행했음

(Supervised Learning, 지도 학습)

-----------------------------------------------------------------------------


가설식


h(x) = Θ0 + Θ1x


이번에는 Θ0과 Θ1 두개를 활용하여 비용함수를 구해보겠다


우선 두 개의 값을 이용한다면 대략 이런 그래프가 그려질 것이다

(이런 그래프로 예측이 된다면 다시 비용함수를 줄여야 한다)




그리고 Θ1만 사용한 비용함수 그래프는 두개의 축으로 나타냈지만


이번에는 Θ0, Θ1두개를 이용하여 비용함수가 나오기에 세개의 축으로 나타내야한다


다음은 두 개의 세타를 이용하여 나온 비용함수 그래프이다 = J(Θ0, Θ1)

또한 그 비용함수에 따른 가설그래프도 나와있다


비용함수를 나타내는 그래프가 등고선으로 나타난다

이를 해석하는 것은 화살의 과녁이라고 생각하면된다


가운데 동그라미로 갈 수록 정확한 값 = 최소값 

그리고


Θ0 = 800, Θ1 = -0.15


가설식은 이렇게 세워진다


h(x) = 800 + (-0.15x) = ( y = -0.15x + 800 )


왼쪽을 보면 그래프가 그려져있다

하지만 가설그래프와 실제값의 오차가 너무크다


그렇다면 현재 비용함수값을 더 최소화시켜야하고 Θ값들을 다시 찾아야한다는 것이다

또한 오른쪽을 보면 800, -0.15의 비용함수값이 가운데와 멀어 오차가 심하다고 알 수 있다



다음은 좀더 최소화 시켜본 것이다



Θ0 = 350, Θ1 = 0


가설식은 이렇게 세워진다


h(x) = 350 + 0x = ( y = 0 + 350 )


아까보다는 나아졌는데 아직도 값들간의 오차가 너무 심하게 튄다


더 최소화해본다 (계속 최소값을 찾아가는 것임. Θ0, Θ1의 값들을 바꿔가면서)



Θ0 = 220, Θ1 = 0.13


가설식은 이렇게 세워진다


h(x) = 220 + 0.13x = ( y = 0.31x + 220 )


예측그래프와 실제값 간의 오차가 매우 줄었고

비용함수 그래프를 보니 가운데에 위치해있다 (값이 최소화 되었다)


이 상황은 그러면 이정도의 값으로 기계학습을 시키는 것이다




이렇게 비용함수의 역할과 경우들을 나누어 살펴보았다


어찌됐든 머신러닝의 핵심은


1. 가설을 세운다

2. 비용함수가 최소화 되는 세타값들을 찾는다


-----------------------------------------------------------------------------------------------------


Coursera 사이트의 인공지능 강의를 토대로 작성됨