coursera에서 Andrew Ng 교수님의 Machine Learning 강의를 듣고 정리하였습니다.
Cost Function
그럼, hypothesis function에서 θ0 과 θ1은 어떻게 고를까요?
θ0 과 θ1을 어떻게 선택하냐에 따라서 hypothesis function은 달라질 것입니다.
linear regression에서 우리가 하려는 것은 최소화 문제를 푸는 것입니다.
우리는 적절한 θ0 과 θ1 선택해서 h(x) 와 y의 차이를 작게 만들것입니다.
minθ0,θ1 2m1∑i=1m(hθ(x(i))−y(i))2
i : i 번째 샘플
m : 전체 트레인 샘플 수
h(x) : 예측한 값 → hθ(x(i))=θ0+θ1x(i)
y : 실제 값
식에 1/2을 곱해주는 것은 계산 쉽게하기위해서 곱해줍니다.
J(θ0,θ1)= 2m1i=1∑m(hθ(x(i))−y(i))2minθ0,θ1J(θ0,θ1)
식을 명확하게 해주면 위와 같습니다. 여기서 J(θ0,θ1) 을 Cost function 이라고 합니다. 이 Cost function 을 Squared error function 이라고도 합니다.
hypothesis function을 단순화하여, 다시 살펴보겠습니다.
θ0을 0 이라고 하면, hypothesis function은 다음과 같이 단순화됩니다.
hθ(x)=θ1x
그럼, Cost function 도 다음과 같게됩니다.
J(θ1)= 2m1i=1∑m(hθ(x(i))−y(i))2minθ1J(θ1)
x,y = [1,1], [2,2], [3,3] 인 데이터에 대해서 예시를 살펴봅시다.
hθ(x)
(θ1은 고정되어있고, x 에 대한 함수입니다.)
θ1 = 1 → hθ(x) = x
θ1 = 0.5 → hθ(x) = 0.5x
θ1 = 0 → hθ(x) = 0
J(θ1)
(θ1 에 대한 함수입니다.)
J(θ1) = 2m1(02+02+02)=0
J(θ1) = 2m1((0.5−1)2+(1−2)2+(1.5−3)2)=0.68
J(θ1)= 2m1((1)2+(2)2+(3)2)=2.3
J(θ1) 에 대해서 그래프를 그려보면 위와 같을 것입니다.
θ0가 0 이 아닌 경우에 대해서도 살펴보겠습니다. J(θ0,θ1) 에 대해서 그래프를 그려보면 다음과 같을 것입니다.
등고선 형태의 그래프로 그려보면 다음과 같을 것입니다.
이 그래프에서는 중심으로 갈수록 최솟값을 나타냅니다.
notion 정리
[notion] Andrew Ng - Machine Learning Cost Function