중다회귀분석(Multiple Regression)

 

F-test for R^2

-       방법1) 처음에 기본적 통제변수 넣고 돌린 값 보여주고, 관심있는 변수를 넣은 모델을 보여주고, 기존에 변수들과 비교했을 때 내 것이 얼마나 설명력 있는가를 보여주는 것.

n  단계적으로 독립변수를 넣는다고 하는데, 어느 교과에서 위계라고 했다. 위계가 아니라 단계이다.

-       방법2) 관심있는 변수 먼저 넣고, 그 다음에 통제변수 넣기

n  반드시 통제변수 넣고, 내가 추가한 변수가 효과 있다라고 할 필요는 없다.

n  통제하고 난 이후에도 효과가 줄어들거나 insignificant해지지 않는다면 그렇게 할 수도 있다.

n  통제 안한상태에서 효과 어떤지위해서 새로운 회귀계수값이 통제하든 안하든 변하지 않는 것이 좋은 것이다.

 

F t statistics와의 관계

-       t 값이 충분히 나오면 모델 비교하는 F statistics를 굳이 볼 필요가 없다. 같은 값이다.

n  변수 하나 넣었을 때 변수값이 유의미하게 나오면 모델 비교 안 해도 된다.

-       t분포의 자유도가 d라고 할 때, t분포의 제곱값은 df1=1이고 df2=d F분포를 갖는다.

-       오히려 실용적이 정보는 F test하는 경우와 t test하는 경우에 무슨 관계가 있는지를. 모델 비교 위해서는 F test하는 것이 맞는데, 최근에는 그냥 단순 regression에서는 모델 비교 잘 안한다. 모델비교보다는 추가한 변수의 통계적 유의성을 보는 것이 중요하다.

-       기존에 사용되었던 독립변수에 내가 관심있는 독립변수를 추가한 뒤가 어떤지가 더 중요하다.

-       Parsimony의 원칙에 근거하서 간결하게 더 많은 분산을 설명해내는 과정에서 F test를 했는데, 기존의 모델이 갖춰진 다음에 새롭게 변수를 구축하거나 변형하거나 해서 improve하는 경우가 대부분이고, 그렇기 때문에 모델 비교하는 일이 많지는 않다. 그리고 실제로 손으로 계산해서 모델 비교할 일은 거의 없다

-       모델 비교할 때 하나의 원칙은,, Y=a + b1x2 + b2x2 , Y=a+b1x2 + b2x2 + b3x3 + b4x4 정도 되어야 모델비교 하는 것이지, Y=a + b1x1 + b2x2 + b3x3 만 있을 때는 b3의 유의성만 보면 된다. 기존 모델에 있는 a, b1 ,b2는 포함된 상태에서(nested) 모델 비교가 가능하다.

n  작은 모델에 있는 독립변수가 들어가 있어야 한다. x1 x2뺀 상태에서 보는 것은 안된다.!

 

진단

-       진단을 잘 안하는 경우가 많다. 모델을 잘 만들면 문제가 없다. 모델을 잘 못 만들면 문제가 있고.

 

회귀분석의 기본가정

-       기본 가정이 중요한 이유는, b를 구할 때 sigma(Xi-X_bar)*(Yi-Y_bar) / (sigma(Xi-X_bar))^2

-       이것이 구하는 공식이었는데이것이 공분산이니까, x가 평균적으로 변하는 정도이다. 독립변수가 평균적으로 흩으져 있는 정도. X가 변화할 때 같이 Y가 얼마나 변화하는지이다.

n  회귀계수를 구하는 방식이 공분산을 분산으로 나누는 것이다.

-       잘 생각해보면 이 공식 자체에 assumption이 들어 있다.

-       )교육-소득 관계 :5à6년 변할 때와 15à16년 변할 때의 변화량이 동등하다가고 받아들이기가 힘들 것임

n  이처럼 직선관계가 아닌 사회가 많다.

n  자료가 이런 식으로 흩어져있지 않다면 회귀분석을 하지 말라!”라는 전제가 있다는 것.

-       실제 자료들을 보면 직선관계가 안 나타나는 경우가 많다는 것.

 

-       종속변수 : 종속변수가 연속변수가 아니면 회귀분석을 하면 안된다.

n  Logistic Regression에서는 명목변수도 한다면서요! è 0/1로 되어있는 것을 linear하게 바꾸는 것.

-       Ordinal도 원칙적으로는 그 간격을 모두 동일하다고 할 수 없으니 안되는데, 5분변수든 4분변수든, 심지어 3분변수만 있어도 … ordinal일 경우에 사용하는 ordered logit이 있지만할 수 있다.

 

-       기본 가정들을 보면 모두 error에 대한 것이다.

n  Expected error term, e_i=0 (population error)

n  Linearity

u  직선관계가 아니면 직선으로 만들어야 회귀분석 할 수 있다. Logistic 0/1관계를 직선관계로 바꿔야 분석 가능하다.

n  Homoscedasticity(등분산성)

n  Errors (e_i, e_j) are not correlated

n  No perfect collineraity

n  Normality(정상성)

 

선형성 : 평균들을 이어보니 직선이 나온다.

등분산성 : 예측하고 나서 분산의 양의 크기가 같다.

정상성 : 조건평균을 중심으로 정상분포를 보인다.

 

-       이 세 가지 조건이 충족되지 않으면 회귀분석 할 수 없다.

-       모두 회귀분석을 하고 난 다음의 편차(error, prediction을 했기 때문에 error라고 부른다)에 대한 것들이다. 이 때 error의 분산의 양이 분산이 다 같아야하고, 개별 조건에서 (조건평균에 대한) error의 분포가 정상성을 보이고, 독립변수와 종속변수의 관계가 직선관계이다.

-       예측한 이후에 독립변수의 특정 값에서 분산의 크기가 같아야 한다.

-       Error term이 정상 분포를 보인다.

 

 

1)    오류항의 기대값은 0이라고 가정한다.

-       현실적으로 종속변수에 영향을 미치는 모든독립변수를 고려한다는 것은 불가능하다.

n  불가능할 뿐더러 통계학의 목적도 아니다. 통계학의 목적은 uncertainty reduction.

-       따라서 회귀분석 모델에는 포함되지 않았지만, 종속변수와 연관이 있을 것으로 예상되는 기타 변수들은

n  우리가 예측한 종속변수의 평균값에 systematic한 영향을 주지 않았을 것이라고 가정한다.

u  어떤 변수가 사실은 종속변수에 영향을 주나, 모델이 포함을 안 시켰다면 error로 남을 것이다. 그 변수가 포함이 안 되었기 때문에 분산의 양을 못 줄였으니 error로 남아야 한다. 그러나 이 변수를 안 넣는다고 정상성으로 안 보이는 것은 아니다.

n  e_i=0이 아니라면, 모델에 포함되지 않은 어떤 변수에 의해서 종속변수의 기대값이 달라질 수 있다.

n  모델에 포함되지 않은 변수가 모델 안의 다른 변수들과 상관관계를 맺고 있다면, 추정된 회귀계수의 값이 biased 된다.

u  매우 중요한 변수를 빠뜨렸다. 그런데 모델에 포함된 독립변수하고 상관관계 없다면 진단을 해봐도 문제가 나타나지 않는다.

 

n  중요한 변수가 모델에 빠졌으면, 이것은 error에 남을 것. 그런데 이 error가 모델에 포함된 독립변수와 상관관계를 맺고 있으면 빠진 변수도 상관관계를 맺고 있을 것이다.

 

2)    선형성

3)    등분산성

-       퍼진 정도가 회귀선을 따라서 일정한 간격을 이루고 있다.

-       Prediction 값을 중간에 긋고 scatter를 보게 된다.

n  오른쪽으로 삐죽한 삼각형이라면 à Y값이 커질수록 X값이 Y값의 변화에 미치는 영향이 작다.

-       표준오차가 왜곡되면 유의미했어야 할 회귀계수가 유의미하지 않게 나올 수 있다.

-       등분산성의 가정이 위배되더라도

n  다행히 회귀계수가 biased 되는 문제는 없다.

n  하지만 다음과 같은 2 가지 문제가 뒤따른다.

u  Inefficiency : 이분산성인 경우 최소자승화 방법으로는 더 이상 최적의 모델을 얻을 수 없다. Minimum standard error라는 보장이 없기 때문

u  Biased standard error : 이분산성인 경우 표준오차가 편파적으로 측정되어 결과적으로 통계적 검증(t-test)을 하거나 신뢰구간을 측정하는 데에도 bias를 초래한다.

4)    Errors across cases are not correlated

-       COV는 곧 correlation이다. COV(e_i, e_j)=0이어야 한다. 사례들이 independent해야 한다는 것.

-       사실 independent하지 않은 사례들이 있다. Sampling 방법 자체가 사례들을 독립적이지 않게 만든다.

-       어떤 경우에 이 문제가 발생하는가?

n  시간에 따라 수집된 데이터들에서 흔히 나타나는 문제 (1학년 성적 - 2학년 성적)

n  또는 지리학적 데이터에서 발생하는 spatial correlation

u  다음과 같은 사례 : 전국의 교육비 수준을 측정한다고 할 때, 강남구(서초동-반포동) case는 타지역에 비해 밀접한 상관이 있을 가능성이 높다.


-       다른 예

n  자신의 이웃에 대한 만족도 조사에서 100커플을 조사한다면 2명씩(=부부)은 자신 이웃에 대한 만족도에서 서로 높은 상관을 가지고 있을 것. 부부 중 한 사람만 조사하는 방법을 써야 한다.

n  Time series data

-       만약 가정이 위배되면

n  다행히 회귀계수가 bias 되는 문제는 발생하지 않는다.

n  하지만 추정된 회귀계수의 standard error에서 bias가 발생하게 된다.

-       하지만, 다행히 앞에서 살펴본 데이터의 종류(time series )를 제외하고는 크게 문제될 일이 없다.

 

5)    다중공선성

-       변수 하나를 빼든가, correlation이 높은 두 변수를 합해버리면 된다.

-       독립변수 두 개가 너무 상관성이 높다면, 어느 하나는 불필요하다(redundant)하다는 것.

-       상관계수가 0.4~0.6 이상이면 사실상 같은 변수일 가능성.

-       그런데, 다중공선성은 상관관계와 어떻게 다른가?

n  상관성 : 피어슨 상관계수 등에 의해 계산

u  두 변수 간의 상관정도를 계산하고

u  독립변수와 종속변수를 구분하지 않는다.

n  반면, 다중공선성은

u  두 개 이상의 변수들 간의 상관정도를 계산하고

u  독립변수들 간의 관계만을 고려한다.

u  VIF(variance inflation factor : 분산팽창계수) 또는 Tolerance(공차한계)로 측정한다.

-       완전공선성 : R^2=1, 완전공선성일 때 회귀계수를 추정할 수 없다.

-       다중공선성이 높다는 것 자체만으로는 회귀분석의 기본가정을 위배했다고 판단할 수는 없다. 다만

-       Highly multicollinearity일 경우 여러가지 문제들이 뒤따르므로 이를 주의깊게 살펴야 한다.

n  VIF Tolerance 값을 보면 되기 때문에 굉장히 손쉽게 찾을 수 있다.

 

6)    e is normally distributed

-       normality는 등분산성을 포함한 이야기는 아니다.

-       정규성을 따르지 않을 경우 outlier 를 제거해서 해결하기도 한다.



+ Recent posts