kwan's note

regularization - 정규화 본문

ML and AI/Machine learning - Andrew Ng

regularization - 정규화

kwan's note 2021. 1. 27. 02:49
반응형

출처: machine learning by andrew ng, stanford cousera lecture

수강일시: 2021.01.27

 

reminder-by-kwan.tistory.com/93

 

overfitting- 과적합

출처: machine learning by andrew ng, stanford cousera lecture 수강일시: 2021.01.26 reminder-by-kwan.tistory.com/88 Cost function -비용함수/ 손실함수 출처: machine learning by andrew ng, stanford cou..

reminder-by-kwan.tistory.com

직전강의에서 overfitting의 문제를 해결하기 위한 방안중 하나로 regularization 즉 정규화를 소개했다.

지수들의 영향력을 줄임으로서 overfitting의 정도를 줄이도록 하는 이 방법에 대해 자세히 알아보도록 하자.

 

다음의 가설함수가 있다고 해보자.

θ0+θ1x+θ2x2+θ3x3+θ4x4

해당 함수에 대해 cost function J의 최솟값을 구하는 식을 만들었는데 뒤에 3번과 4번항의 계수를 제곱해 천을 더해보도록 하자. 

이러한 식을 만족하려면 theta3 theta4가 매우 작은 값을 가져야 한다.

(0에 가까운 값)

따라서 고차항의 weight가 줄어듦으로서 overfitting을 방지할 수 있다.

여기서는 2차함수처럼 거동하는 4차함수가 된다.

그림에서 보면 원래는 파란색으로 overfitting되었던 cost function이 regularization을 통해 일정부분 해소되었다.

 

 

 

 

즉 모든 세타에 대해 lambda를 두어 regularization을 하게 된다. lambda의 값이 작을수록 원래와 유사한 값이되고 클수록 강하게 regularization이 된다. 이때 j=0이 아닌 j=1부터 이용한다. 교수님은 관습적으로 이렇게 사용하고 결과값에 큰 차이가 없다고 하셨는데 말을 인용하면 다음과 같다.

 

 

여기서 주의할점은 너무 높은 세타를 가지게 된다면 underfitting의 위험이 발생한다.

 

선형회귀에서의 정규화

 

선형회귀에서 정규화를 이용해보도록 하자. 이전에 배웠전 선형회귀의 경사하강법에 마지막 항을 추가하면 다음과 같다. 다만 여기서는 theta0를 따로 분리하여 계산한다.

normal equation에서는 다음과 같이 사용한다.

 

로지스틱 회귀에서의 정규화

 

로지스틱회귀에서도 선형회귀와 마찬가지로 기존의 cost function에 마지막 항을 추가하는 형태이므로 겉보기에는 동일하다. 하지만 가설함수 h가 달라졌으므로 실제로는 전혀 다른함수이다.

반응형