# ML : Cost Function

1. Cost Function 

  • To measure accuracy of our hypothesis function
  • Average difference of all the results of the hypothesis with inputs from x's and the actual output y's
  • 가설과 x를 통해 만들어진 결과 값 y 사이의 차이 값들의 평균
  • Difference between the predicted value and the actual value
  • Squared error function 또는 Mean squared error라고도 불림
    • 1/2 계산이 gradient descent 계산에 매우 편리하기 때문이라는데..
    • 에러 값 자체를 구하는 것이 목적이 아니라, 에러를 최소화 하는 것이 목표이기 때문.
    • 2m으로 나누어도 결과에 영향이 없을 뿐만 아니라, 추후 미분시 제곱(square)이 앞으로 튀어나오는 것을 방지할 수도 있다.

2. Straight Line

  • x, y 평면에 점으로 흩어져 표현되어 있는 data set을 직선 형태 hθ(x)로 표현
  • 우리의 목적은 'best possible line'을 만들어내는 것
    • best possible line : 각 포인트 점으로부터 직선까지의 수직거리의 제곱이 가장 작을 경우 = 직선이 모든 점을 통과하는 경우 (하지만 이럴순 없지)
    • 다르게 표현하면 'Cost Function J(θ0,θ1)'의 값이 최소(0)인 경우를 의미
    • 추가적으로 설명하면, 1) 여러 포인트 들이 먼저 생기게 되고, 2) 각 점들을 수직으로 한 거리를 최소로 만들어주는 직선을 구하기 위한 theta값을 찾는 과정이 진행된다.


  • 위의 그림은 θ1 = 1인 그래프가 존재할 때와 θ= 0.5인 경우, 각 상황에서 볼 수 있는 수직 차이(vertical distance)가 생기는 것을 나타낸다.
  • 이 경우 cost function은 약 0.58이 되는데, 이는 그래프로 표현하면 다음과 같다.
  • θ= 1일 때 J(θ1)은 0이 되므로, 이 때가 최소 Cost Function이 된다.

3. Contour plot

  • 많은 등고선들로 이루어진 그래프
  • A contour line of a two variable function has a constant value at all points of the same time = 두 변수 함수의 등고선은 같은 상수 값으로 이루어진 점들을 가짐
  • J(θ0,θ1)의 등고선의 중심원에 다가갈수록, Cost Function Error의 차이는 작아진다
  • J(θ0,θ1)의 원을 따라 한 점을 선택하게 되면, 그 부분은 동일한 J(θ0,θ1) 값을 갖는다.
    • 초록색 표시가 된 세 점은 모두 같은 J(θ0,θ1)를 갖는다 = 같은 선 상에 위치
    • 동그라미로 표시된 X는 θ= 800일 때, θ= -0.15를 갖는다.

  • 위의 그림은 θ= 360일 때, θ= 0을 표현하고 있다.
    • 아직 조금 더 중심에 가야할 것 같다.

  • 위의 그림은 θ= 250일 때, θ= 0.12을 표현하고 있다.
    • J(θ01)에서 중심 원에 매우 가깝게(거의 딱 맞게) 위치하고 있다.








댓글