다중 공선 성을 다루기


13

패키지 vif()방법 을 사용하여 car모델에서 입력의 다중 공선도를 계산할 수 있다는 것을 배웠습니다 . 에서 위키 피 디아 경우, vif값이보다 큰 경우 5우리는 입력이 다중 공선 성 문제를 앓고 있음을 고려할 수 있습니다. 예를 들어, lm()방법을 사용하여 선형 회귀 모델을 개발 vif()했으며 다음과 같이 제공합니다. 우리가 볼 수 있듯이, 입력 ub, lbtb다중 공선 고통 받고있다.

 vif(lrmodel)
     tb        ub        lb          ma     ua        mb         sa     sb 
 7.929757 50.406318 30.826721  1.178124  1.891218  1.364020  2.113797  2.357946

다중 공선 성 문제를 피하고 모델을보다 강력하게 만들기 위해 ub와 사이의 상호 작용을 취 lb했으며 이제 새 모델의 vif 테이블은 다음과 같습니다.

   tb     ub:lb      ma       mb      sa        sb     ua
1.763331 1.407963 1.178124 1.327287 2.113797 1.860894 1.891218

R^2위의 두 경우 모두 에서 값의 차이는 크지 않으며 일회성 CV 테스트의 오류에는 큰 차이가 없습니다.

내 질문은 :

  1. 위와 같이 상호 작용을 취함으로써 다중 공선 성 문제를 피하는 것이 좋습니까?

  2. 위의 vif 방법 결과와 비교하여 다중 공선 성 문제를 제시하는 더 좋은 방법이 있습니까?

나에게 당신의 제안을 제공하십시오.

감사.


모델 로그 로그 회귀 분석입니까 (제한과의 상호 작용이 정상입니까?) 위키에는 다중 공선 성 문제에 관한보다 완전한 기사가 있습니다. en.wikipedia.org/wiki/Multicollinearity 또한이 사이트의 다중 공선 성 태그를 살펴 보는 것이 좋습니다.
Dmitrij Celov

@Dmitrij Celov : 감사합니다. 아니오, 내 모델은 로그가없는 단순한 선형 회귀입니다 ...
samarasa

답변:


11

당신은 상호 작용 용어를 포함하는 것 ub:lb,하지만 ublb별도의 예측 인자로서 자신을. 이것은 고 차항에는 하차 항에 존재하는 변수 만 포함되어야한다는 소위 "마진의 원리"를 위반하는 것입니다 ( 위키 백과 ). 효과적으로, 당신은 지금 막 요소 현명의 제품입니다 예측 포함한 ublb.

VIFj 는 여기서 원래 예측 변수로 회귀 분석을 실행할 때 는 값입니다. 나머지 모든 예측 변수에 의해 예측 된 기준으로 예측값 의 상관 행렬의 역수 인 의 번째 대각선 요소 임 ) 따라서 VIF 값이 50 인 경우 다른 예측 변수를 사용하여 예측할 때 가 .98 임을 나타내며 이는 거의 완전히 중복 됨을 나타냅니다 ( . 와 .97과 동일).11Rj2Rj2R2jjRx1R2ubublbR2

나는 예측 사이의 모든 페어의 상관 관계를 일을 시작하고, 변수를 예측하는 확인하기 위해 상기 회귀 분석을 실행하는 것입니다 ublb중복 쉽게 설명되어 있는지. 그렇다면 중복 예측 변수를 제거 할 수 있습니다. 능선 회귀를 살펴볼 수도 있습니다 ( R의 lm.ridge()패키지 MASS에서).

보다 진보 된 다중 공선 성 진단은 의 고유 값 구조를 사용합니다. 여기서 는 회귀의 설계 행렬입니다 (즉, 모든 예측 변수를 열 벡터로 사용). 조건 은 여기서 및 은 가장 크고 가장 작습니다 ( 의) 고유 . R에서는 사용할 수 경우, 모델은 일반적으로 표준화 된 변수를 사용합니다.XtXXκλmaxλminλmaxλmin0XtXkappa(lm(<formula>))lm()

기하학적으로, 는 예측 변수에 의해 형성된 데이터 구름의 모양에 대한 아이디어를 제공합니다. 예측 변수가 2 개인 경우 산점도는 주축이 2 개인 타원처럼 보일 수 있습니다. 는 타원이 얼마나 "평평한"지, 즉 가장 큰 축의 길이와 가장 작은 주축의 길이의 비율에 대한 척도입니다. 예측 변수가 3 개인 경우 시가 모양과 주축이 3 개있을 수 있습니다. 데이터 클라우드의 "평평한"방향이 일정할수록 변수가 더 중복 될 수 있습니다.κκ

중요하지 않은 값에 대한 몇 가지 규칙이 있습니다 (20 개 미만). 그러나 는 표준화와 같이 변수의 단위를 변경하는 데이터 변환에서 변하지 않습니다. 이것은 VIF와 다릅니다 : (모델에 곱셈 항이없는 한) 같은 결과를 제공 하지만 , 거의 다를 것입니다.κκvif(lm(y ~ x1 + x2))vif(lm(scale(y) ~ scale(x1) + scale(x2)))kappa(lm(y ~ x1 + x2))kappa(lm(scale(y) ~ scale(x1) + scale(x2)))


첫 번째 참고 사항 : 다변량 모델의 ​​경우 상호 작용 항만 남겨 두는 것이 좋습니다. 후자는 단지 ub lb( ) 그러나 일반적인 선형 회귀 모델의 경우 (+1) ^ _ ^ 그런데 lb-하한, ub-상한은?! 그렇다면 두 의 차이를 만들면 아마도 더 나은 변환 일 것입니다. u b l balogub+aloglb=alogublbublb
Dmitrij Celov

@Dmitrij : 아니, UB + LB + SB = 100
samarasa

다중 공선 성을 나타내는 멋진 그래픽 표현이 있습니까? R에 thi에 대한 방법이 있다면 제안하십시오.
사마 라사

2
@kkp 내가 지금 생각할 수있는 유일한 방법 pairs()은 예측 변수의 모든 쌍으로 분포를 보여주는 산점도 행렬입니다. 패키지 scatterplot3d는 3 가지 변수의 산점도를 시각화하는 데 사용할 수 있습니다. 이변 량 사례에서 축 비가 인 타원을 그리려면 이 답변 을 참조하십시오 . 추가 다중 공선 성 진단, 아마도 그래픽을 제공하는 패키지 를 확인할 수도 있습니다 . κ2perturb
caracal

1

변수를 고려할 때 P- 값도 고려해야합니다.

  1. P- 값이 매우 낮 으면 (p <0.05) VIF가 높으면 (> 5) 다른 중요하지 않은 변수를 고려해야합니다. 그리고 모델을 재구성하십시오.
  2. P- 값과 VIF가 모두 높으면이 변수는 중요하지 않습니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.