728x90

데이터로 부터 패턴을 찾는 것은 오랫동안 연구되어온 문제인데,

 

대표적인 예시로 숫자 이미지로부터 이미지에 나온 수가 몇인지 분류하는 것이 있다.

 

입력 데이터로부터 분류를 하거나 회귀를 하는 패턴 인식 모델은

 

훈련 데이터 셋과 타겟 벡터로 훈련하여

 

새로운 입력 데이터를 분류 할 수 있게 된다.

 

 

 

 

 

커브 피팅 curve fitting(polynomial regression)을 하는 경우를 예로 들어보자

 

아래와 같이 입력 벡터 x와 타겟 벡터 t, 다항 계수 벡터 w가 있으며,

 

y는 입력 벡터 x와 다항 계수 벡터 w의 선형 결합으로 구한다.

 

이때 M은 다항식의 차수이며, M이 1인경우 선형 모델이라 부른다.

 

훈련 입력 벡터 x와 훈련 타겟 벡터 t를 이용하여 최적의 다항 계수 벡터를 구하면

 

새로운 입력 x_hat이 주어질때 이에 대한 예측 결과인 t_hat을 구할 수 있게 된다.

 

 

 

 

 

최적의 다항 계수 벡터 w를 구하는 방법은

 

오차 함수를 활용하면 된다.

 

오차 함수는 오차(실제 값과 타겟 값의 차이) 제곱 합으로 나타내며

 

 

 

이 오차 제곱합을 최소화 시키는 다항 계수 벡터 w*가 다항 회귀식의 최적 계수가 된다.

 

다항식의 차수에 따라 다항 회귀식은 다음과 같이 다양한 형태를 띌 수 있다.

 

차수가 0, 1인 경우 주어진 다항식을 잘 적합하지 못하고 있으나

 

차수가 3일때는 실제 다항식과 가장 유사한 형태를 띈다.

 

하지만 차수가 과하게 커진 경우 주어진 데이터에만 맞춰전 과적합 문제가 발생하게 된다.

 

 

 

 

 

과적합 over fitting 문제를 피하는 방법으로

 

규제 적용 regularization 이 있는데

 

비용함수에 패널티항을 추가하면 된다.

 

 

규제항의 람다는 얼마나 다항식 계수 벡터의 노름(벡터의 크기)에 가중치를 줄것인가를 의미하는데

 

람다가 작으면 제곱합 오차가 크게 반영이되고,

 

람다가 크다면 제곱합 오차가 상대적으로 적게 반영이 된다.

 

그런데 패널티가 부여된 비용함수를 최소화 시키는 W*를 찾아야 하므로 

 

람다가 클 수록 계수 벡터의 가중이 커지니 가능한 작은 W*을 찾고,

 

람다가 작은 경우 계수 벡터의 가중이 작으니 보다 큰 W*를 찾게 된다.

 

이 L2 규제의 가중치 값인 람다를 조정함으로서 모델 복잡도에 의한 과적합 문제를 완화 시킬수 있게 된다.

 

 

 

 

 

 

300x250

+ Recent posts