코딩뚠뚠

[머신러닝 공부] 11. 선형회귀와 경사하강법 본문

공부/ML&DL

[머신러닝 공부] 11. 선형회귀와 경사하강법

로디네로 2021. 2. 6. 16:21
반응형

머신러닝 입문자들의 필수코스라고 할 수 있는 앤드류 응 님의 강의를 번역해놓은 아래 브런치를 참고하여 공부하고 핵심내용만 정리해보고자 한다.

 

원문 출처 : brunch.co.kr/@linecard/448

 

앤드류 응의 머신러닝 (2-7):선형회귀의 경사 하강법

온라인 강의 플랫폼 코세라의 창립자인 앤드류 응 (Andrew Ng) 교수는 인공지능 업계의 거장입니다. 그가 스탠퍼드 대학에서 머신 러닝 입문자에게 한 강의를 그대로 코세라 온라인 강의 (Coursera.org

brunch.co.kr

 


이전 챕터에서 Optimization 中 Gradient descent algorithm(경사하강법) 과, Linear Regression model(선형회귀모델) 을배웠다. 이번에는 선형회귀와 경사하강법을 조합해서 데이터에 적합한 직선을 그릴 수 있도록 한다.

 

경사하강 알고리즘 :

선형회기모델 수식 (선형가설, 제곱오차비용함수) : 

 


 

가설함수 h(x)=θ0 + θ1*x 일 때  θ값들이 변할때마다 변하는 비용함수 J( θ0, θ1) 가 존재한다.

 

비용함수 J와 경사하강 알고리즘 을 조합해서 하나의 정의로 나타낼 수 있다.

 

이는 j=0 인 경우와 j=1 인 경우로 나누어지므로 미분항을 따로 떼어내어 두개의 식으로 나타내야 한다.

 

 

 

ex)

 

가설함수가 h(x) = θ1 * x 로 존재 할 때 비용함수 J(θ1)가 있다. 이에 비용함수와 경사하강알고리즘을 합쳐서 수학적 정의로 표현해보면 다음과 같다.

 

 

 


 

지금까지 배웠던 Gradient Descent 는 다른말로 Batch Gradient Descent 라고도 부른다.

 

저번 포스팅에서 언급한 SGD, Mini Batch .. 등의 여러 갈래가 있지만 기본적인 Gradient Descent algorithm = Batch Gradient Descent algorithm 인 것이다. 

 

Batch Gradient Descent 의 의미는 모든 학습데이터들을 계산한다는 뜻이다. 

반응형