본문 바로가기
머신러닝

[머신러닝 이론] 2. 단변수 선형회귀(2) - 앤드류응 강의

by jasNote 2022. 5. 14.
순서가 있는 게시물 입니다.
[머신러닝 이론] 2. 단변수 선형회귀(1) - 앤드류응 강의
[머신러닝 이론] 2. 단변수 선형회귀(2) - 앤드류응 강의

 

목표

  • 예제를 통해 단변수 선형회귀(Linear Regression with One Variable)를 이해한다.
  • 비용함수(Cost Function)과 경사하강법(Gradient Descent)를 이해한다.

 

 

2. Linear Regression with One Variable

앞서 비용함수에 대해 이해했다. 비용함수에 대해서 경사하강법을 이용하여 최소 비용함수를 찾을 것 이다.

2.3. Gradient Descent

Gradient Descent(경사하강법)은 말 그대로 “경사가 있는 상황에서 어떻게 내려갈 것인가?” 이다. 



매개변수 두개(θ0, θ1)를 갖는 비용함수를 도식화하였다. 경사하강법은 θ0, θ1을 조금씩 바꾸면서 비용함수J(θ0, θ1)의 값의 최소값을 찾는 것이다. 주변을 살피고 어느쪽으로 가야할지 결정을 하고 한걸음을 내딛는다. 이 과정을 반복하여 경사에서 내려오는 것이며 왼쪽사진과 오른쪽사진과 같이 시작점에 따라 도달 지역이 달라지기도 한다. (이런 특징은 나중에 더 자세히 다룬다.)

 

경사하강법의 수학적 정의를 살펴보자.

우선 설명의 편의를 위해 용어를 정리한다.

  • α (학습률) : 최소값을 찾아갈 때 스텝의 크기를 설정 (언덕을 내려갈 때 보폭을 결정)
  • := (지정 연산자) : 지정 연산자 뒤의 값을 앞에 대입 ('a := b'라면 b의 값을 a에 대입)
  • ∂ or d(편미분기호 or 도함수기호) : 접선의 기울기를 구하기 위한 편미분항을 표시

* 매개변수가 하나일때 도함수기호, 매개변수가 두개 이상일때 편미분기호를 사용한다. 이 내용에는 큰 의미를 두지 않아도 된다

 

파란색 곡선은 비용함수 J(θ1)이고, 미분항(=a*(d/dθj)J(θ1))이 빨간색 점(θ1)의 기울기이다. 경사하강법은 아래의 공식을 반복적으로 업데이트하여 기울기가 0이 되는 순간을 찾는 것이다.

 

θ1은 아직 최소값이 아니기 때문에 식을 업데이트한다. 기울기는 양수이고 빨간색 점을 기준으로 마이너스를 한다. 즉, 왼쪽을 한 스텝 움직일 것이다. 이렇게 반복적으로 업데이트를 한다면 결과적으로 기울기가 0인 곳에 도착할 것이다.

 

 

 

일정 보폭(학습률)때문에 계속해서 0주위를 멤돌지는 않을까?

궁금증이 생길수있다. 학습률α는 보폭이며 보폭을 상수로 고정했을때 기울기가 0이 되는 지점까지 도달할수가 있을까? 일정 보폭때문에 계속해서 0주위를 멤돌지는 않을까? 그렇지 않다. 미분항의 기울기는 0에 접근할수록 작아지기 때문에 보폭이 고정되어 있더라도 기울기의 변화로 인해 점점 작은 보폭으로 가서 최소값에 수렴하게 된다.

 

정리하며

비용함수와 경사하강법을 거치며 선형회귀를 배웠다. 

  • 비용함수 : 가설이 데이터와 얼마나 일치하는지 알기 위한 지표
  • 경사하강법 : 비용함수를 최소화하여 최적의 가설을 찾기위한 알고리즘
  • 선형회귀 : 데이터셋을 잘 설명할수 있는 선을 분석하는 방법

첫 머신러닝 알고리즘을 학습해 보았고, 앞으로 다양한 알고리즘을 배워본다.

 

 

 

 

참조
머신러닝 코세라 : https://ko.coursera.org/learn/machine-learning
라인하트 브런치 : https://brunch.co.kr/@linecard