본문 바로가기

AI & Data Science/LG Aimers

3. 지도학습(회귀,분류) - 2. Hypothesis, Cost Function

728x90
반응형

<가설 함수(Hypothesis) & 비용  함수(Cost Function)>

비용함수(cost function)는 손실함수(loss function), 목적함수(objective function)이라고 부른다. 비용함수란 최적화 이론에 기반을 둔 함수이다. 신경망의 지도학습에 사용된다. 지도학습은 오차가 최소인 가중치를 구하는 것을 목적으로 한다. 이때 신경망의 오차를 측정하는 척도가 바로 비용함수다. 신경망의 오차가 크면 비용함수의 값도 크고 신경망의 오차가 작으면 비용함수도 작은 값을 갖는다. 즉 비용함수는 신경망의 오차에 비례한다.

 

<머신러닝 수식에서 사용되는 변수들>

학습 알고리즘에 Training Set을 넣게 되면 알고리즘은 해당 데이터를 바탕으로 가설함수(Hypothesis) h를 제시한다.

알고리즘이 잘 만들어졌다면 새로운 데이터에 대해서 적절한 price 값을 도출해 줄 것이다.

 

<가설함수 정의>

가설 함수를 위처럼 정의했다고 하자.

위에 보이는 파란선이 가설함수이다. 가설함수에 Training set에 존재하지 않는 입력값 x 즉, size를 입력해서 출력되는 y값이 예상되는 price 값이다. 이러한 과정을 단순 선형 회귀라고 부른다.

 

가설함수의 형태를 결정짓는 것은 매개변수(parameter) θ값이다. 우리는 θ를 적절하게 조정해서 실제값 y에 가장 근접한 가설함수를 trainig set을 통해서 도출하는것을 목표로 한다.

 

비용함수는 "원래 값과 오차가 가장 적은 가설함수를 도출하기 위해 사용되는 함수" 즉 성능이 좋은 가설함수를 얻기 위해 사용되는 함수이다.

<cost function>

 

위의 식은 cost function을 표현한 것이다. h(x)-y 은 가설함수를 통해서 도출괸 값과 실제 y값의 차이를 의미한다.

음수가 되지 않도록 제곱을 해주는 것이다. 데이터의 개수 m만큼 모두 더해서 평균을 낸다. 이때 2m인 이유는 제곱이 미분되면서 자연스럽게 사라지게 하기 위해서다. 해당 평균값이 최소가 된다는 의미는 "가설함수를 통해서 도출된 값과 실제값과의 오차가 최소"라는 의미다. 따라서 평균이 최소가 되도록 하는 θ를 구하고자 하는것이 cost function의 목표다.

 

단순한 예시를 들어보자

traing set을 (1,1), (2,2), (3,3)을 가진다고 해보자.

 

 

비용함수를 이해하기 위해 가설함수를 위와 같이 단순화하고 아래와 같이 θ값을 설정했다..

가설함수가 모두 1차함수라서 직접 계산해 보면 어렵지 않게 값차이의 평균을 구할 수 있다.

위에서는 θ가 1일때 평균이 0으로 최소가 된다. 실제로 주어진 데이터들로 1차 함수를 만들어 보면 y=x가 된다.

주어진 데이터와 완전이 동일하기 때문에 θ가 1일때 평균이 0이 되고 최소가 된다.

 

출처: https://box-world.tistory.com/6

 

[머신러닝] 비용함수(Cost Function)란

시작하며 오늘 포스팅에서는 머신러닝의 기본적인 모델과 함께 가설함수(hypothesis) 와 비용함수 (Cost Function) 를 알아보며 다음 포스팅에서 알아볼 경사 하강 알고리즘을 위한 기초를 다져보겠습

box-world.tistory.com

 

728x90
반응형