To love

선형회귀분석의 이해와 한계 본문

통계학 /다변량 분석

선형회귀분석의 이해와 한계

Student9725 2020. 8. 9. 07:52

1. 선형회귀분석에 관한 이해

 

통계학의 주 된 관심사는 어떤 현상에 내재된 다양성 또는 불확실성입니다. 통계학 입문 교과서 맨 앞에서는 다양성을 표현하기 위한 한 형태로 변수라는 개념을 약속합니다. 두 개 이상의 변수가 존재할 때, 이 변수들간의 관계에도 관심을 가지게 됩니다.

 

각각의 변수들이 수량형인지 범주형인지에 따라 다양성의 형태가 달라지므로 분석 방법도 달라집니다.

많은 책들이 두 변수간의 관계를 서술하기 시작하면서 갑자기 XY라고 이름 붙이고 시작하는 이유는 이를 명확하게 구분하기 위함이 아닐까 합니다.

 

회귀분석이란 데이터를 통해 Input변수(X)를 기반으로 output변수(Y)의 값을 알아내고자 하는 통계적 모델을 만드는 것과 관련이 있습니다. Input변수를 기반으로 output변수를 예측(forecast)하거나 추정(predict)하기 위해 사용합니다.

 

Input(입력)변수 = 설명변수 = 예측변수(predictor) = 독립변수 = 특징(feature)

Output(출력)변수 = 반응변수 = 응답변수(response) = 종속변수

 

참고 : attributefeature : 머신러닝에서는 엄밀히 말해 변수와 feature는 다르다고 한다. 변수는 학교생활만족도와 같이 표현하지만, feature학교생활만족도 = 75과 같이 변수와 값을 함께 표시하는 것이라고 한다. (출처 : 핸즈온 머신러닝 p.39)

 

회귀분석이 나타내고자 하는 통계적 모델을 수학적으로 표현하면,

입력변수 X출력변수 Y의 특수한 대응관계, 함수function의 형태로 나타나게 됩니다.

f(x)의 형태가 어떤 방식으로 표현될 것인가에 대해 가정을 하면 모수적 방법이고,

가정을 하지 않는다면 비모수적 방법입니다.

 

f(x)의 형태 또는 모양에 대한 가정(모수적 방법)을 사용할 때 가장 자주 사용되는 것은 선형 가정입니다. 함수가 선형이라는 가정이 있다면, f(x)를 추정하기 굉장히 쉽기 떄문입니다. 만약 선형 가정이 없다면 임의의 모르는 함수를 만들어내야 하지만, 선형 가정이 있다면 회귀식의 계수만 추정하면 됩니다.

 

f(x)의 형태는 같은 데이터에서 여러가지로 표현이 가능합니다. 따라서 가장 좋은 f(x)는 무엇일까에 관심을 가지게 되고, 그 모형을 선택하기 위해 ‘f(x)가 얼마나 좋아?’라는 질문에 답하기 위한 척도를 만들게 됩니다. 예를 들면, 최소제곱법을 사용하여 추정한 단순선형회귀모형에서는 MSE라는 척도가 가장 작은 모형이 좋습니다. 추정한 f(x)가 예측을 잘 할수록, 머신 러닝에서는 성능이 좋다고 합니다.

 

 

2. 선형회귀분석의 한계

 

그런데 내가 가진 data에 가장 잘 맞는 모형이 새로운 data에도 잘 맞는 모형이 아닐 수도 있습니다. 이 문제의 해결을 위해 통계학에서는 표본 평균의 표준오차를 고려하고, 머신 러닝에서는 training datatest data를 나누어, training data에서 만든 모형으로 test data로의 확장성을 생각하게 됩니다. 데이터가 전체 현상(모집단)을 잘 대표하지 못할 수도 있다는 생각 때문이입니다.

 

내가 가진 data에 가장 잘 맞는 모형은 변수의 개수가 최대한 많을 수록 좋은 모형입니다. 그 이유는 모형과 데이터의 차이(variance)가 작아지기 떄문입니다. 그러나 새로운 데이터를 만나게 되면 이 모형은 일부 데이터만 잘 설명하고 나머지는 더욱 더 설명하지 못하는 bias(편향)이 많아지는 경향이 있습니다. 이 경우를 일부 데이터에만(training data) 너무 잘 맞는다는 의미에서 overfitting이라고 합니다.

 

선형회귀분석의 경우에 training dataMSEtest dataMSE보다 많이 작게 나오는 경우가 되겠습니다. 그렇다고 bias를 최대한 줄이기 위해 변수의 개수를 무작정 줄이면 variance(분산)이 커지기 떄문에 모형의 설명 자체가 설득력이 떨어지게 됩니다.

 

모순적인 상황을 bias – variance tradeoff라고 이야기합니다. 어떻게 해야 두 척도의 균형점을 잘 찾을 수 있을까요? 가장 좋은 biasvariance의 균형을 찾기 위한 방법은, 모형을 세우는 목적에 따라 여러가지가 있습니다.

 

균형점을 찾는 여러 분석법

 

다중선형회귀분석에서는 bias의 해결을 위해 다중공선성(Input변수들 간의 상관성)을 파악하여 처리합니다. 원인에 따라 여러가지 처리 방법이 있습니다.

 

다중공선성의 원인은 크게 두 가지가 있습니다. 다른 Input변수로부터 만들어진 파생변수 떄문에 생기는 경우가 있고, 순전히 데이터에 의한 경우가 있습니다. 파생변수로 인한 문제는 변수의 중심화나 표준화를 통해 해결할 수 있습니다.

 

데이터에 의한 다중공선성 문제의 해결은 크게 세가지로 나뉩니다.

 

1) 상관성이 높은 input변수를 제거 : 변수선택법, 최적부분회귀 등

2) 벌점 회귀(penalized regression) : ridge, lasso, 주성분 회귀 등

3) 통계적 학습 회귀 : 회귀나무, 베깅, 랜덤포리스트, 신경망 등

 

 

reference

Introduction to statistical learning

회귀분석(김충락, 강근석 지음)

R 응용회귀분석(나종화 지음)

따라하며 배우는 데이터과학(권재명 지음)

핸즈온 머신러닝(오렐리앙 제롱 지음)

영문 위키피디아

Comments