Study Room/Research Methodology

[Research⑬] 회귀분석 (Regression Analysis)

열린 공동체 사회 2015. 5. 19. 12:33


회귀(regression)이라는 말은

유전학자 프란시스 골턴이 유전의 법칙을 연구하다 나온 명칭이다.


프란시스 골턴은

아버지의 키가 아무리 크다고 할지라도

아들의 키는 아들 세대의 평균으로 접근하는 경향이 있다는 것을 발견했다.

(다행이다... 내 아들은 키가 작지 않을 수도 있다.)


골턴은 이러한 현상을

평균으로의 회귀(regression toward mean)이라 했다.


회귀의 법칙을 활용한다면

전체 평균 값을 가지고 알지 못하는

누군가의 키를 예측해볼 수 있는 것이다.

(남자 평균이 170정도 되니, 소개팅 남의 키도 170 정도 되겠지? 뭐 이런 거)


하지만, 단순히 평균으로만 예측하면,

예측의 정확도가 너무나 떨어지는 경향이 있다.


그래서, 몸무게같이

키에 영향을 주는 다른 요인을 활용하면

좀 더 정확하게 키를 예측해볼 수 있는 것이다.


따라서, 회귀분석이란

변수들 간의 함수 관계를 분석하는 방법 중에 하나로

아래와 같이 정의될 수 있다.


"독립변수가 종속변수에 미치는 영향력의 크기를 파악하여

독립변수의 특정한 값에 대응하는 종속변수 값을 예측하는 선형모형을 산출하는 방법"

(이훈영의 연구방법론 p.399)


쉽게 생각하면,

몸무게에 따라서, 키의 값은 어떻게 되는가?

담배판매량이 변하면, 폐암환자수는 어떻게 변하는가?

공장의 기계를 바꾸면, 생산량은 어떻게 변하는가?


이런 문제들에 대해서, 두 변수간의 관계를 예측하고 설명하는 것이다.


그러니까 회귀분석은

단순히 둘 사이에 상관관계가 있다에서 끝나는 것이 아니라

어떤 관계인지까지 좀 더 자세히 보는 것이다. (관계의 크기, 유의도, 성격 등)


아주 유용한 분석 방법이며,

사회과학에서 가장 많이 쓰는 이유는 여기에 있다고 한다.


회귀분석도 독립변수의 수와 척도의 종류,

그리고 독립변수와 종속변수의 관계에 따라서 종류가 구분된다. 



(Source: 이훈영의 연구방법론, p.400)


+


그렇다면, 일단 자료가 주어지면

회귀분석을 돌려보면 원하는 관계를 알아낼 수 있을까?


회귀분석도 회귀분석을 할 수 있는 경우가 있고, 없는 경우가 있다.


회귀분석을 하기 위해서는 다음과 같은 전제조건을 필요로 한다.


1) 특정한 독립변수 값에 해당하는 종속변수값들이 정규분포를 해야하며,

    모든 정규분포의 분산은 동일해야 한다.

 

2) 종속 변수값들은 통계적으로 서로 독립적이어야 함


3) 독립변수들이 여러 개인 경우

    이들 독립변수들 간에는 다중공선성이 존재하지 않아야 함

    (다중공선성이란 독립변수간에 서로 영향을 주는 것을 이야기한다.)


어떻게 보면 너무나 당연한 이야기들이다.


정규분포를 하고, 분산이 동일하지 않으면,

규칙성이 일관되지 않으니 당연히 예측하는 것은 무리가 있기 마련이고,


종속 변수나 독립변수들이 지들끼리 서로 영향을 미치면,

독립변수와 종속변수의 관계로만 현상을 분석하는 것이 불가능 하기 때문이다.


하지만, 문제는 이러한 내용을 사전에 파악하기 어렵다는 것이다.

데이터를 돌려봐야지, 정규 분포성이나 등분산성을 알 수 있기 때문에,

일단은 정규 분포를 따르고, 등분산성이 있다는 전제 하에 사후 검증을 해야만 한다.


독립변수들간의 다중 공정성의 문제도

공차 한계를 이용해서 확인해볼 수 있다.


공차 한계란 여러 개의 독립 변수들 중에

하나의 독립변수를 종속변수로 하고 나머지 다른 독립변수들을

독립변수로 한 회귀분석에서 모형의 설명력을 나타내는

결정계수(R2)를 구한 다음 이 값을 1에서 뺀 값(1- R2)을 의미한다. 


쉽게 이야기하면,

서로 영향을 미치는 겹치는 부분이 존재하는지를 확인해보는 것이고,

변수간 겹치는 부분이 많으면 많을수록 회귀분석의 결과를 신뢰할 수 없게 된다.


+


회귀분석의 과정은

독립변수를 X축으로 놓고,

종속변수를 Y축으로 놓은 후에,

독립변수와 종속변수간의 관계를 확인하기 위해서 산점도를 찍어본다.

그런 후 두 변수의 평균이 교차하는 점을 선으로 그어 최적의 회귀선이 확인하는 것이다.


(Source: 이훈영의 연구방법론, p.408)

 

이 때,

최적의 회귀선 도출에 사용되는

가장 대표적인 방법이 최소자승법이다.


최소자승법은 회귀선과 관측치들 간의 차이를 제곱하여 모두 더한 값,

즉 잔차의 제곱합이 최소가 되도록 하는 최적의 직선식을 구하는 방법이다.


뭔가 말이 어렵다.


좀 더 쉽게 풀어보면, 일단 회귀선을 그려본다.

그런 후에 실제 값들과 회귀선의 차이(잔차)를 확인 한다.

(회귀선은 평균을 기준으로 그린 선이기 때문에 차이가 발생할 수도 아닐 수도 있다.)


그리고 나서,

그 차이(잔차)를 그냥 합하는 것이 아니라 제곱을 시킨다.

굳이 그냥 합하지 않고 제곱을 시키는 이유는 잔차가 (+)도 있고 (-)도 있기 때문이다.


이렇게 더한 값이 최소인 선이 바로 회귀선이 되는 것이다.


+


일단 회귀선을 구했다.

그렇다면, 이 회귀선으로 종속변수(Y값)의 변화를 어느 정도 설명할 수 있을까?


이 설명력을 지수로 나타낸 것이 바로 결정계수이다.

결정계수(R2)란 전체 편차중에 회귀선이 설명하여 줄일 수 있는 비율을 의미한다.


더 쉽게 이야기하면,

Y값은 평균과 차이가 발생할 수 밖에 없다.


그  Y값을 추정하는데 있어서,

어느 정도까지는 회귀선으로 설명할 수 있지만,

회귀선으로도 설명할 수 없는 잔차라는 부분이 존재할 수 밖에 없다.


그렇기 때문에,

회귀선이 Y값을 얼마나 설명할 수 있냐를

평균과의 차이 중에 회귀선이 설명할 수 있는 부분이 차지하는 비율로 측정할 수 있다.


그러니,

결정계수 값이 1에 가까울수록 설명력이 높고,

그 만큼 회귀선이 정확한 것이 된다는 것을 검증할 수 있다.


또 하나 남은 이슈는

이러한 회귀모형을 실제적으로 일반화할 수 있는지 확인하는 것이다.

대부분의 자료가 모집단이 아닌 표본이기 때문에, 적합도에 대한 확인이 추가로 필요하다.


회귀식에 대해서 통계적으로 유의한가를 평가하기 위해서는

분산분석의 원리를 이용해 희귀평균제곱(MSR)을 잔차평균제곱(MSE)를 나누어,


회귀선이 전체 평균으로부터 떨어져 있는 정도가

개별 관측치들이 회귀선으로부터 떨어져 있는 정도의 몇 배인가를 나타내는

통계량 F 값을 구한 후 회귀식의 유의성을 검정하는 방식을 따른다.


+


하지만, 이렇게 단순회귀분석은 현실을 설명하기 어렵다.

대다수의 경우가 2개 이상의 독립변수를 가지는 다중회귀분석을 따르기 때문이다.


예를 들면, 키를 예측하기 위해서

몸무게뿐만 아니라 허리둘레를 기준으로 활용하는 것이다.


다행인 것은 뭔가 굉장히 복잡할 것 같지만,

변수가 늘었을 뿐 원리는 단순회귀분석과 동일하다.


하지만, 변수가 여러개이다보니,

여러 개의 변수 중에 어떤 것을 사용할지의 문제 등이 발생한다.


아무래도 다중공선성 같은 문제가 발생할 수 있기에,


독립변수가 많다는 것은 좋은 것이 아니며,

가장 적은 숫자로 가장 많은 부분을 설명할 수 있다면 그것이 최선일 것이다.


그렇기 때문에 변수의 선택 문제가 발생하는데,

일단, 변수들의 통계적 유의성 검정을 해봐야한다.

(유의하지 않은 변수는 당연히 버려야 된다.)


그런 다음 표준화 계수를 구해서

독립변수가 종속변수에 미치는 상대적 영향력을 비교해야한다.


표준화 계수란,

단위와 분포의 평균이 변수마다 다르기 때문에,

이를 비교해보기 위해서 변환한 수치를 의미한다.


표준화 계수는 단순히 비교를 위한 계수이며,

실제로 종속변수값을 구할 때는 표준화 이전의 원래 수치(비표준화 계수)를 이용해야 한다.


그런 다음 독립변수를 선택하는 방법에는

입력(enter), 전진선택(forward selection), 후진제거(backward elimination),

단계선택(stepwise selection), 제거(remove)의 방법이 존재한다.


1) 입력은 임의로 지정한 모든 변수를 독립변수로 사용해 분석해보는 것이고,

2) 전진선택은 가장 중요한 변수순으로 하나씩 선택해 나가는 방법이다.

3) 후진제거방식은 불필요한 변수를 하나씩 제거해 나가는 방식

4) 단계선택방식은 전진과 후진을 결합해서 동시에 진행하는 형태이며,

5) 제거방식은 다른 방식들을 사용해본 후 원하는 특정 변수를 제거하는 방식이다.


+


회귀분석이라는 방식이

등간과 비율 척도만 계산할 수 있지만,

명목과 서열척도도 수치화해서 회귀분석을 할 수 있다.


이렇게 명목척도를 서로 구분하기 위해서 가상으로 만든 변수를 더미변수라 부르며,

더미 변수를 이용한 회귀 분석을 통해서 명목척도도 회귀분석을 해볼 수 있다.


일반적으로 서열척도는 명목척도보다 더 많은 정보를 가지고 있으므로

경우에 따라서는 더미변수로 바꾸지 않고 서열값을 그대로 사용해 분석하기도 한다.


마지막으로,

두 변수가 선형이 아닌 다른 형태의 관계가 있다고 판단되는 경우

독립변수를 치환하여 얻은 새로운 변수를 이용하는 것을 비선형회귀분석이라 부른다.

(경우에 따라서는 종속변수를, 또는 독립변수와 종속변수 모두를 변환할 수도 있음)



* 이상의 내용은 <이훈영의 연구방법론>를 기반으로

   개인적으로 정리한 것으로 다소 내용이 부정확할 수 있으니,

   해당 내용을 공부하시는 분은 반드시 교재 내용을 확인해보세요~