이분산성을 다루는 가장 좋은 방법은?


19

이분산성이 매우 명확한 적합 값의 함수로 선형 모델의 잔차 값을 플롯했습니다. 그러나이 이분산성이 내 선형 모델을 무효화한다는 것을 이해하기 때문에 지금 어떻게 진행 해야할지 잘 모르겠습니다. (맞습니까?)

  1. 이분산성에 강하기 때문에 패키지 의 rlm()기능을 사용하여 강력한 선형 피팅을 사용하십시오 MASS.

  2. 이분산성으로 인해 계수의 표준 오차가 잘못되었으므로 이분산성에 견고하도록 표준 오차를 조정할 수 있습니까? 여기에서 스택 오버플로에 게시 된 방법을 사용하여 이분산성으로 인한 회귀 표준 오류 수정

내 문제를 처리하는 데 가장 좋은 방법은 무엇입니까? 솔루션 2를 사용하면 모델의 예측 기능이 완전히 쓸모가 없습니까?

Breusch-Pagan 검정은 분산이 일정하지 않음을 확인했습니다.

적합치의 함수 잔차는 다음과 같습니다.

https://i.gyazo.com/9407a829a168492b31dfa3d1dd33a21d.png

(더 큰 버전)


'stackexchange'가 아닌 'stackoverflow'를 의미합니까? (여전히 스택 교환을하고 있습니다.) SO 인 경우 일반적으로 두 번째 사본을 게시하는 대신 질문을 마이그레이션하는 것이 좋습니다 (도움말은 동일한 Q를 여러 번 게시하지 말고 가장 적합한 장소를 선택하도록 요청합니다).
Glen_b-복지 주 모니카

스프레드의 변동은 그다지 크지 않아 영향이 심각하지 않습니다 (즉, 표준 오류를 바이어스하고 영향을 추론하지만 큰 차이는 없을 것입니다). 스프레드가 평균과 관련이 있는지 고려하고 GLM 또는 변형을 살펴볼 수 있습니다 (확실히 적합과 관련이 있음). y- 변수는 무엇입니까?
Glen_b-복지 주 모니카

2
다른 가능성은, 예를 들어 gls패키지 nlme로부터의 분산 구조들 중 하나를 사용하여 이분산성을 모델링하는 것이다.
Roland

답변:


18

좋은 질문이지만 잘못된 질문 인 것 같습니다. 귀하의 수치는 이분산성보다 더 근본적인 문제가 있음을 분명히 보여줍니다. 즉, 모델에 설명하지 않은 비선형 성이 있습니다. 모델이 가질 수있는 많은 잠재적 인 문제 (비선형 성, 상호 작용, 특이 치, 이분산성, 비정규 성)는 서로 가장 할 수 있습니다. 나는 어렵고 빠른 규칙이 없다고 생각하지만 일반적으로 순서대로 문제를 다루는 것이 좋습니다.

outliers > nonlinearity > heteroscedasticity > non-normality

(예를 들어, 적합하지 않은 이상한 관측이 있는지 확인하기 전에 비선형성에 대해 걱정하지 마십시오. 이분산성에 대해 걱정하기 전에 정규성에 대해 걱정하지 마십시오).

이 특정한 경우에, 나는 차 모델에 딱 맞는 y ~ poly(x,2)(또는 poly(x,2,raw=TRUE)y ~ x + I(x^2)하고 문제가 사라질 수 있는지 확인합니다.


플롯이 작고 축에 레이블이 지정되지 않았습니다. 그것이 잔차 대 적합 플롯인지 모르겠습니다. 예를 들어 OP에 제곱 항이 포함되어 있다고 가정했습니다. 그렇지 않다면 분명히 옳습니다.
궁 - 분석 재개 모니카

1
내 브라우저에서 y 축 범위가 -4에서 3으로
바뀌는

1
안녕 벤, 네가하는 일을 좋아해. "이상 값"이 가장 큰 문제라는 생각을 확장 할 수 있습니까? 잔차가 적은 경우에도 높은 고가의 단일 포인트를 "이상 값"으로 포함합니까? 나는 항상 업무 라인 (환경 통계)에서 극단적 인 가치 관찰을 다루며, 어떤 사람들 (특히 EPA)은 특이 치 (비 의도적 인 펀드를 용서한다)에서 이상치 않은 사람들을 날려 버리고 싶어하는 경향이 있음을 발견한다 그들을 배제하기 위해. 데이터 (수집, 입력) 오류의 결과라는 명백한 증거를 찾을 수없는 경우 이상치에 관대 한 태도를 취하는 경향이 있습니다.
Dalton Hance

1
@DaltonHance : 아마도 같은 페이지에있을 것입니다. 내 요점은 (정의에 따라) 특이 치가 있고 사용 중인 통계 모델 / 접근 방식 (혼합 모델, 강력한 통계, 팻 테일 분포 등)에 의해 고려되지 않는 경우입니다. 나머지 모든 진단을 망치는 경향이 있습니다. 잔차가 비선형 /이 분산 / 비정상으로 보이게됩니다. 나는 당신이 단지 생각없이 / 반사적으로 그들을 버려서는 안된다는 것에 동의합니다.
벤 볼커

8

나는 이분산성을 다루는 여러 가지 방법을 R여기에 열거한다 ( 예제 와 함께 ) : 이 분산 데이터에 대한 일원 분산 분석의 대안 . 다중 수준 범주 형 변수가 아닌 단일 연속 형 변수가 있기 때문에 이러한 권장 사항 중 대부분은 덜 이상적이지만 어쨌든 개요로 읽는 것이 좋습니다.

상황에 따라 가중 최소 제곱 (아마도 특이 치가 있다고 의심되는 경우 강력한 회귀와 결합 됨)이 합리적인 선택입니다. Huber-White 샌드위치 오류를 사용하는 것도 좋습니다.

구체적인 질문에 대한 답변은 다음과 같습니다.

  1. 강력한 회귀는 실행 가능한 옵션이지만 가중치와 쌍을 이루면 더 좋을 것입니다. 이분산성이 이상치로 인한 것이 걱정되지 않는다면 가중치와 함께 정기적 인 선형 회귀를 사용할 수 있습니다. 분산은 특이 치에 매우 민감 할 수 있으며 결과는 부적절한 가중치에 민감 할 수 있으므로 최종 모델에 강력한 회귀를 사용하는 것보다 중요한 것은 가중치를 추정하기 위해 강력한 분산 측정을 사용하는 것입니다. 링크 된 스레드에서는 예를 들어 1 / IQR을 사용합니다.
  2. 이분산성으로 인해 표준 오류가 잘못되었습니다. Huber-White 샌드위치 추정기로 표준 오류를 조정할 수 있습니다. 이것이 @GavinSimpson이 연결된 SO 스레드에서 수행하는 작업입니다.

XX


1
lmrob 패키지에서 강력한 회귀를 사용하면 일부 가중치가 자동으로 추론됩니다. # 1 대신 가중치를 사용하지 않는 이유는 무엇입니까?
tool.ish

1

로로드하고 sandwich package회귀의 var-cov 행렬을 계산합니다 var_cov<-vcovHC(regression_result, type = "HC4")(의 설명서 읽기 sandwich). 이제 기능을 lmtest package사용하십시오 coeftest.

coeftest(regression_result, df = Inf, var_cov)

0

데이터 분포는 어떻게 생겼습니까? 종 모양처럼 보입니까? 주제에서 정상적으로 배포 할 수 있습니까? 예를 들어 전화 통화 시간이 음수가 아닐 수 있습니다. 따라서 특정 호출의 경우 감마 분포가이를 잘 설명합니다. 감마를 사용하면 일반 선형 모델 (glm in R)을 사용할 수 있습니다

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