컴공돌이의 스터디 블로그

[시즌1].Lecture 03 - Linear Regression Cost Function 최소화 본문

강의 Study/모두를 위한 머신러닝과 딥러닝 강의

[시즌1].Lecture 03 - Linear Regression Cost Function 최소화

제갈초아 2018. 2. 1. 15:00

* 이 글은 홍콩과기대 김성훈 교수님의 무료 동영상 강좌 "모두를 위한 머신러닝과 딥러닝 강의"를 보고 요점을 정리한 글 입니다.


Linear Regression Cost Function(선형 회귀에서의 비용 함수)



  Linear Regression(선형 회귀) 직선적 관계를 가지고 있기 때문에 Hypothesis(가설)은 1차 방정식인 으로 표현할수 있습니다. 그리고 Linear Regression에서 사용하는 Cost Function(비용 함수)는 모든 x에서의 실제 값 y와 예측한 값 H(x)간의 거리들의 제곱값을 모두 더한 입니다.


  일반적인 경우에는 W와 b를 변수로 가지고 있는 Cost Function을 사용하지만, 계산을 최대한 간단하게 해보기 위해서  Hypothesis 로 간략화한 뒤 에 대입해보면 W만을 변수로 가지는 Cost Function 를 확인할 수 있습니다. 이 Cost Function을 살펴보면 결국 W를 변수로 한 2차 방정식의 형태라는 것을 알 수 있습니다.



Gradient Descent Algorithm(기울기 감소 알고리즘)



  Gradient Descent Algorithm(기울기 감소 알고리즘) Cost Function을 최소화 하는 알고리즘들 중 하나이고 Machine Learning(머신 러닝) 이외에도 많은 최소화 문제에 사용됩니다. Cost Function에 Gradient Descent Algorithm을 사용한다면 Cost Function이 최소값을 가질 때의 W와 b의 값을 구할 수 있습니다. 뿐만 아니라 Gradient Descent Algorithm은 2개 이상의 변수를 가지고 있는 함수에도 적용이 가능한 매우 좋은 알고리즘 입니다.



  Gradient Descent Algorithm은 임의의 점에서 시작될 수 있습니다. 임의의 점에서의 Gradient(기울기)를 계산 한 뒤 이 값을 줄이기 위하여 W 값과 b의 값을 조금씩 변화시킨 지점을 찾습니다. W와 b값을 조금씩 변화시킨 지점들 중에서 Gradient가 가장 많이 감소된 지점을 찾아서 움직인 후 같은 과정을 계속 반복합니다. 이 과정을 반복하면 최종적으로 Cost Function이 최소가 되는 지점을 발견할 수 있습니다. 즉, 임의의 어떠한 지점에서 시작하더라도  Gradient Descent Algorithm를 사용하면 Cost Function이 최소가 되는 지점으로 갈 수 있습니다.(예외 상황 존재) 



  Gradient Descent Algorithm에서 Gradient를 구할때에는 Cost Function을 미분하여 구하는데, 계산을 조금 더 편하게 하기 위해서 Cost Function을 으로 바꾸어 준 후 계산을 시작합니다.


  Gradient Descent Algorithm의 공식을 표현하면 입니다. 이 공식은 W값을 현재의 값에서 Cost Function의 미분 값에 Learning Rate라는 임의의 값 를 곱한 값을 뺀 값으로 교체를 하라는 의미입니다.


  계산을 위해 바꾸어준 Cost Function을 위의 Gradient Descent Algorithm의 공식에 대입을 하면 

이라는 공식을 얻을 수 있습니다. 이 공식은 아래와 같은 과정을 거쳐 간단하게 정리할 수 있습니다.



  즉, Gradient Descent Algorithm 은 라는 공식을 만족한다는 결과를 얻을 수 있습니다.


  지금 살펴본 Gradient Descent Algorithm는 계산을 간단하게 하기 위해서 b값은 0이라고 가정한 것입니다. 만약 W 뿐만이 아니라 b를 고려하여 Gradient Descent Algorithm를 사용한다면 왼쪽의 그림과 같은 형태의 그래프가 완성될 것입니다.







* Summary *

1. Linear Regression(선형 회귀)의 Cost Function(비용 함수)의 최소값을 구하는 계산을 편하게 하기 위해서 b의 값을 0으로 가정한 뒤 계산하면 이 나온다.

2. Gradient Descent Algorithm(기울기 감소 알고리즘)은 Cost Function(비용 함수)을 최소화 하는 알고리즘들 중 하나이다.

3. Gradient Descent Algorithm(기울기 감소 알고리즘)은 임의의 점에서 W와 b값을 조금씩 변화시켜서 계산할 수 있는 지점들 중에서 Gradient(기울기)가 가장 많이 감소된 지점을 찾아서 움직인 후 같은 과정을 계속 반복해서 최종적으로 Cost Function(비용 함수)의 최소값이 위치한 지점으로 움직인다.

4.  Gradient Descent Algorithm(기울기 감소 알고리즘)에서 Gradient(기울기)를 구할때에는 Cost Function(비용 함수)을 미분하여 구한다.

5. Gradient Descent Algorithm(기울기 감소 알고리즘)의 공식을 표현하면 이다.

6. 계산을 편하게 하기 위해 Cost Function(비용 함수)을  로 변경시켜준 후 Gradient Descent Algorithm(기울기 감소 알고리즘)에 대입하면 최종적으로라는 공식을 얻을 수 있다.

반응형
Comments