2 차 IV를 추가하면 1 차 IV를 어떻게 중요하게 할 수 있습니까?


64

아마도 간단한 질문이 있지만 지금 당황하고 있습니다. 그래서 당신이 나를 도울 수 있기를 바랍니다.

하나의 독립 변수와 하나의 종속 변수가있는 최소 제곱 회귀 모델이 있습니다. 관계는 중요하지 않습니다. 이제 두 번째 독립 변수를 추가합니다. 이제 첫 번째 독립 변수와 종속 변수의 관계가 중요해집니다.

어떻게 작동합니까? 이것은 아마도 내 이해에 문제가 있음을 보여 주지만 나에게이 두 번째 독립 변수를 추가하여 첫 번째 변수를 어떻게 만들 수 있는지 알지 못합니다.


4
이 사이트에서 매우 광범위하게 논의되는 주제입니다. 이것은 아마도 공선 성 때문일 것입니다. "공선 성"을 검색하면 수십 개의 관련 스레드가 있습니다. stats.stackexchange.com/questions/14500/…
Macro

3
다중 예측 로지스틱 회귀 분석에서 유의 한 예측 변수의 중복 가능성은 중요하지 않습니다 . 이것은 실제로 복제 본인 스레드가 많이 있습니다. 2 분 안에 가장 가까운 스레드였습니다
Macro

3
이것은 @macro 스레드에서 찾은 것과 반대되는 문제이지만 그 이유는 매우 비슷합니다.
Peter Flom

3
@ Macro, 나는 이것이 중복 될 수 있다고 생각하지만 여기의 문제는 위의 두 가지 질문과 약간 다르다고 생각합니다. OP는 전체 모델의 중요성이나 추가 IV가 아닌 중요하지 않은 변수를 의미하지 않습니다. 나는 이것이 다중 공선성에 관한 것이 아니라 권력 또는 억제에 관한 것이라고 생각합니다.
gung-Monica Monica 복원

3
차이가 해석에 대해, 그래서 "이 다중 공선에 대한 것이 아니라 대한 가능성 억제"잘못된 이분법 설정 -이 공선 인 경우도, @gung, 선형 모델의 억제가 발생합니다
매크로

답변:


78

예측 변수의 공선 성이 가능한 설명이지만, 예측 변수 사이에 공선 성이 "공통 정보"와 관련되어 있다는 것을 알고 있기 때문에 설명이 아니라고 제안하고 싶습니다. 두 번째 상관 예측자를 모형에 도입하는 효과.

그리고 나서 실제로 직교하는 두 예측 변수 의 경우를 생각해 보자 . 그들 사이에는 공선 성이 전혀 없다. 여전히 유의미한 변화가 일어날 수 있습니다.

예측 인자 변수 지정 X 2 및하자 Y가 predictand 이름을 지정합니다. 회귀 YX 1 에서 변동 할 때 상당한 것으로 실패 Y 때 그 평균 주위가 상당히 감소되지 X 1 독립 변수로서 사용된다. 그 변화가 강하게 번째 변수와 관련되는 경우 X 2 , 그러나, 상황 변화. X 1X 2 에 대한 Y의 다중 회귀 는 다음과 같습니다.X1X2YYX1YX1X2YX1X2

  1. X 2 에 대해 X 1을 별도로 회귀 분석 합니다.YX1X2

  2. X 1 잔차 에 대해 잔차를 회귀합니다 .YX1

첫 번째 단계의 잔차는 의 영향을 제거했습니다 . X 2Y 와 밀접한 상관 관계가 있으면 이전에 마스킹 된 비교적 적은 양의 변형이 노출 될 수 있습니다. 변형이 X 1 과 관련 있으면 유의미한 결과를 얻습니다.X2X2YX1


이 모든 것은 아마도 구체적인 예를 통해 분명해질 것입니다. 시작하기 R위해 독립적 인 임의의 오류 과 함께 두 개의 직교 독립 변수를 생성 하는 데 사용합시다 .ε

n <- 32
set.seed(182)
u <-matrix(rnorm(2*n), ncol=2)
u0 <- cbind(u[,1] - mean(u[,1]), u[,2] - mean(u[,2]))
x <- svd(u0)$u
eps <- rnorm(n)

(이 svd단계는 행렬의 두 열 x( X 2를 나타냄)이 직교하므로 후속 결과에 대한 가능한 설명으로 공선 성을 배제합니다.)X1X2

다음으로 X 와 오류의 선형 조합으로 를 만듭니다 . 반 직관적 인 동작을 생성하기 위해 계수를 조정했습니다.YX

y <-  x %*% c(0.05, 1) + eps * 0.01

이는 n = 32 인 경우 모델 을 실현 한 것 입니다.YiidN(0.05X1+1.00X2,0.012)n=32

문제가되는 두 가지 회귀를보십시오. 먼저 X 1에 대해서만 를 회귀하십시오 .YX1

> summary(lm(y ~ x[,1]))
...
             Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.002576   0.032423  -0.079    0.937
x[, 1]       0.068950   0.183410   0.376    0.710

높은 p- 값 0.710은 이 완전히 중요하지 않음을 나타냅니다.X1

다음으로 X 1X 2 에 대해 를 회귀하십시오 .YX1X2

> summary(lm(y ~ x))
...
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) -0.002576   0.001678  -1.535    0.136    
x1           0.068950   0.009490   7.265 5.32e-08 ***
x2           1.003276   0.009490 105.718  < 2e-16 ***

갑자기, 의 존재 하에서 , X 1 은 두 변수에 대해 거의 0에 가까운 p- 값에 의해 지시 된 바와 같이 매우 중요하다.X2X1

변수 , X 2Y 의 산점도 행렬 과 다중 회귀 분석의 2 단계 특성화에 사용 된 잔차함께이 동작시각화 할 수 있습니다 . 때문에 X 1X 2가 직교의 X 1 잔차와 동일 할 것이다 X 1 따라서 재기록 될 필요가 없다. 산점도 행렬 에 X 2 에 대한 Y 의 잔차를 포함시켜 다음 그림을 제공합니다.X1X2YX1X2X1X1YX2

lmy <- lm(y ~ x[,2])
d <- data.frame(X1=x[,1], X2=x[,2], Y=y, RY=residuals(lmy))
plot(d)

다음은 (약간의 prettification) 렌더링입니다 :

SPM

이 그래픽 매트릭스에는 4 개의 행과 4 개의 열이 있으며 위에서 아래로 왼쪽에서 오른쪽으로 카운트 다운합니다.

주의:

  • (X1,X2)

  • (X1,Y)YX1ρ0.07

  • (X2,Y)Y0.996

  • YX2

    • YX2

    • X1ρ=0.80X2

    • X2

    • Yρ=0.09YX1

X10.068950.05X1X2


X1X2X2X1X1X2

n=32

23

어디를보아야하는지 알고 있다면이 문제가이 사이트에서 상당히 철저하게 논의 된 것 같습니다. 따라서 나중에 다른 질문에 대한 링크와 함께 주석을 추가하거나 찾을 수없는 경우 더 자세한 설명을 제공하도록 편집 할 수 있습니다.

두 가지 기본 가능성이 있습니다. 첫째, 다른 IV는 일부 잔류 변동성을 흡수하여 초기 IV의 통계 검정의 검정력을 높일 수 있습니다. 두 번째 가능성은 억제 변수가 있다는 것입니다. 이것은 매우 반 직관적 인 주제이지만 여기서 *, 여기 또는 이 뛰어난 CV 스레드에 대한 정보를 찾을 수 있습니다 .

* 서프 레서 변수를 설명하는 부분에 도달하려면 맨 아래까지 완전히 읽어야합니다. 단순히 건너 뛸 수는 있지만 전체를 읽으면 가장 잘 처리됩니다.


편집 : 약속대로 다른 IV가 잔차 변동을 흡수하여 초기 IV의 통계 테스트의 힘을 높이는 방법에 대한 요점에 대한 자세한 설명을 추가하고 있습니다. @ whuber는 인상적인 예를 추가했지만이 현상을 다른 방식으로 설명하는 무료 예를 추가하여 일부 사람들 이이 현상을보다 명확하게 이해하는 데 도움이 될 수 있다고 생각했습니다. 또한 두 번째 IV가 더 강력하게 연관 될 필요는 없음을 보여줍니다 (실제로 거의 항상이 현상이 발생합니다).

tFt

SourceSSdfMSFx1(y^iy¯)21SSx1dfx1MSx1MSresResidual(yiy^i)2N(1+1)SSresdfresTotal(yiy¯)2N1

y¯yyiyiy^iiN

SourceSSdfMSFx1(y^x1ix¯2y¯)21SSx1dfx1MSx1MSresx2(y^x¯1x2iy¯)21SSx2dfx2MSx2MSresResidual(yiy^i)2N(2+1)SSresdfresTotal(yiy¯)2N1

y^x1ix¯2ix1x2x2x¯2 x2어떤 경우에는 조정할 사항이 없지만 일반적으로 그렇지는 않습니다. 분산 분석 테이블 작성 방법은 모든 변수가 직교 인 경우에만 유효합니다. 이것은 설명 목적으로 만들어진 매우 단순화 된 사례입니다.

x2yy¯x1x2SSx1x2SSx1SSresdfx2dfres

Fx1MSx1MSresMSx1MSresx2x2Ftx2x2MSresFx1p

x2x1ppR

x1 = rep(1:3, times=15)
x2 = rep(1:3, each=15)
cor(x1, x2)     # [1] 0
set.seed(11628)
y       = 0 + 0.3*x1 + 0.3*x2 + rnorm(45, mean=0, sd=1)
model1  = lm(y~x1)
model12 = lm(y~x1+x2)

anova(model1)
#  ...
#           Df Sum Sq Mean Sq F value  Pr(>F)  
# x1         1  5.314  5.3136  3.9568 0.05307 .
# Residuals 43 57.745  1.3429                  
#  ...
anova(model12)
#  ...
#           Df Sum Sq Mean Sq F value  Pr(>F)  
# x1         1  5.314  5.3136  4.2471 0.04555 *
# x2         1  5.198  5.1979  4.1546 0.04785 *
# Residuals 42 52.547  1.2511                  
#  ...

x2

set.seed(1201)
y       = 0 + 0.3*x1 + 0.3*x2 + rnorm(45, mean=0, sd=1)
anova(model1)
# ...
#           Df Sum Sq Mean Sq F value  Pr(>F)  
# x1         1  3.631  3.6310  3.8461 0.05636 .
# ...
anova(model12)
# ...
#           Df Sum Sq Mean Sq F value  Pr(>F)  
# x1         1  3.631  3.6310  4.0740 0.04996 *
# x2         1  3.162  3.1620  3.5478 0.06656 .
# ...

이것들은 @whuber의 게시물에있는 극적인 예와 같은 것은 아니지만 사람들이 여기에서 무슨 일이 일어나고 있는지 이해하는 데 도움이 될 수 있습니다.


1
"첫째, 다른 IV는 잔여 변화의 일부를 흡수하고, 따라서 초기 IV의 통계적 테스트의 힘을 증가시킬 수있다"의 좋은 예를 준 @whuber에 대해 (1)
매크로

(+1) 처음에는 세 개의 링크를 제공합니다. 첫 번째 것 (외부 것)이 불행히도 깨졌습니다 (404 오류). 그 외에도에서 : 당신이 "두 가지 기본적인 가능성"이 있다고 말 : 추가 된 두 번째 IV는 첫 번째 IV를 테스트 할 수있는 능력을 증가 (이 정확히 대답에 웨인 Whuber에 의해에 의해 기술 된 상황) 또는 supressor 변수가있다 (어느 하나, btw? 첫 번째 또는 두 번째?). 내 질문 :이 두 가지 별개의 상황입니까? 아니면 본질적으로 같은 것입니까, 조금 다르게 보았습니까? 그것을 확장 할 수 있다면 좋을 것입니다.
amoeba는 Reinstate Monica

@amoeba, ttnphns는 여기에 대해 이야기합니다 : 회귀의 억제 효과 : 정의 및 시각적 설명 / 묘사 , 그리고
복원 Monica Monica

@ gung, 답변 주셔서 감사합니다. Ttnphns는 억제 및 기타 관련 효과를 논의하는 논문에 대한 링크를 제공하는 것으로 시작하며, 이 논문 은 "억제 변수의 가장 일반적으로 허용되는 정의 (Tzelgov & Henik, 1991) [is]"예측 유효성을 증가시키는 변수 회귀 방정식에 포함되어 다른 변수 (또는 변수 세트) "". 이것은 OP가 여기에 요청한 것과 정확히 같으므로 두 가지 다른 이유 가 있다고 말하면서 혼란 스럽습니다 .
amoeba는 Reinstate Monica

1
@amoeba, 요점은 두 가지 메커니즘이 있다는 것입니다. 즉, 2 개의 서로 다른 기본 DAG가 있습니다. 외형 적 표현은 비슷할 수 있으며, 추가 검정력은 다소 비슷할 수 있지만, 두 번째 변수가 도움이되는 이유는 b / c와 다릅니다. 두 번째 변수와 x1 & y의 관계는 다릅니다. 확실하지 않으면 새로운 질문을해야 할 수도 있습니다. 댓글에 너무 많은 일을하기가 어렵습니다.
gung-복직 모니카

17

OP의 질문은 두 가지 다른 방식으로 해석 될 수 있다고 생각합니다.

  1. 수학적으로 OLS는 어떻게 작동합니까? 독립 변수를 추가하면 예기치 않은 결과가 발생할 수 있습니까?

  2. 하나의 변수를 추가하여 모델을 수정하면 모델에서 다른 독립 변수의 효과가 어떻게 변경됩니까?

질문 # 1에 대한 몇 가지 좋은 답변이 이미 있습니다. 그리고 2 번 질문은 전문가들에게 너무 명백하여 OP가 대신 1 번 질문을해야한다고 생각합니다. 그러나 2 번 질문에는 다음과 같은 답변이 필요하다고 생각합니다.

예를 들어 보자. 많은 어린이의 키, 나이, 성별 등이 있고 키를 예측하기 위해 회귀를 원한다고 가정하십시오.

성별을 독립 변수로 사용하는 순진한 모델로 시작합니다. 그리고 통계적으로 중요하지 않습니다. (어떻게 할 수 있니, 3 살짜리와 십대 연령대를 섞고 있습니다.)

그런 다음 나이를 추가하면 갑자기 나이도 중요 할뿐만 아니라 성별도 중요합니다. 어떻게 그럴 수 있니?

물론, 나의 예에서, 나이가 어린이 / 청소년의 키에 중요한 요소임을 분명히 알 수 있습니다. 아마도 당신이 데이터를 가지고있는 가장 중요한 요소 일 것입니다. 성별은 특히 나이가 많은 어린이와 성인에게 중요 할 수 있지만 성별만으로는 어린이의 키가 큰 모델이 아닙니다.

연령과 성별은 작업에 적합한 합리적인 (물론 단순화 된) 모델입니다. 나이와 성별,식이 요법, 부모의 키 등의 다른 데이터를 추가하면 더 나은 모델을 만들 수 있습니다. 물론 실제로 아이의 키를 결정하는 여러 가지 요소에 비해 더 단순화 된 모델을 만들 수 있습니다. 그러나 모든 모델은 현실의 단순화 된 버전입니다. (1 : 1 규모의 세계지도는 여행자에게 너무 유용하지 않습니다.)

오리지널 모델 (성별 만 해당)이 너무 단순화되어 단순화되었습니다. 그렇다고해서 성별이 더 나은 모델에는 유용하지 않다는 의미는 아닙니다.

편집 : gung의 제안 re : 연령과 성별의 상호 작용 용어를 추가했습니다.


1
+1, nb, 연령 및 성별은 아마도 상호 작용 용어가 필요할 것입니다.
gung-Monica Monica 복원

1
+1 그것은 매우 간단하고 직관적으로 명확하고, 훨씬 더 자세하게 설명되어 있지만 @whuber에 의해 추상적으로 받아 들여진 상황 에 정확히 맞기 때문에 훌륭한 예 입니다.
amoeba는 Reinstate Monica

10

이 스레드에는 이미 세 가지 우수 답변이 있습니다 (각각 +1). 내 대답은 @gung이 작성한 시점까지의 확장 된 주석과 설명입니다 (이를 이해하는 데 시간이 걸렸습니다).

두 가지 기본 가능성이 있습니다. 첫째, 다른 IV는 일부 잔류 변동성을 흡수하여 초기 IV의 통계 검정의 검정력을 높일 수 있습니다. 두 번째 가능성은 억제 변수가 있다는 것입니다.

x1x2ynRnyx1x2( "모자 매트릭스"는 단순히 프로젝터 임). 이 접근법에 익숙하지 않은 독자는 예를 들어 통계 학습의 요소 , 섹션 3.2 또는 다른 많은 책을 볼 수 있습니다.

"상승"

다음 그림은 @gung으로 나열된 두 가지 가능성을 보여줍니다. 처음에는 파란색 부분 만 고려하십시오 (즉, 모든 빨간색 선은 무시).

향상과 억제

x1x2Xyy^

x2yx1α90yx1x1

x2x1x2x1x2x2yβα90x1

이를 테스트하는 또 다른 방법은 OF의 길이를 이전과 같이 OC가 아닌 OC와 비교하는 것입니다. OF는 OC에 비해 작고 "중요하지 않지만"OG에 비해 "중요"할만큼 충분히 큽니다.

입니다 정확히 대답에 @whuber, @gung 및 @Wayne 제시 한 상황. 이 효과가 회귀 문헌에서 표준 이름인지 알지 못하므로이를 "향상"이라고합니다.

억압

α=90β=90x1

억압에서는 그렇지 않다.

x3x1x2x3Xx1x3x1Xy

x1x1y


1
나는 당신의 대답이 기하학적 해석의 도움으로 이해하기 가장 쉬운 것으로 나타났습니다. 훌륭한!
zsljulius

1
α=0yx1yx1cor(x1,y)=1x1yyx1
qoheleth

α=90
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.