이 적합치 대 잔차 그림을 어떻게 해석합니까?


17

여기에 이미지 설명을 입력하십시오

나는 이분산성을 정말로 이해하지 못한다. 이 플롯에 따라 모델이 적합한 지 여부를 알고 싶습니다.


잔차 대 관측치의 도표를 준비하십시오. 오류의 변동성이 관측 된 값과 연결될 수 있다면, 이질성 문제를 시사 할 수 있습니다
IrishStat

1
@IrishState 잔차 대 관찰 된 상관 관계가 표시됩니다. 이 때문에 해석하기가 더 어렵습니다. 잔차 대 적합치는 오차가 모집단 평균과 어떤 관련이 있는지에 대한 최상의 근사치를 보여 주며 분산이 평균과 관련되어 있는지 여부의 회귀 분석에서보다 일반적인 고려 사항을 검토하는 데 다소 유용합니다.
Glen_b-복지국 Monica

답변:


18

@IrishStat가 주석을 달았을 때 변동성과 관련된 문제가 있는지 확인하기 위해 관찰 된 값을 오류와 비교해야합니다. 나는 이것을 끝까지 다시 올 것이다.

와이와이(엑스β,σ2)와이엑스βσ2와이=엑스β+ϵϵ(0,σ2). 좋아, 지금까지 멋지게 코드에서 보자.

set.seed(1);            #set the seed for reproducability
N = 100;                #Sample size
x = runif(N)            #Independant variable
beta = 4;               #Regression coefficient
epsilon = rnorm(N);     #Error with variance 1 and mean 0
y = x * beta + epsilon  #Your generative model
lin_mod <- lm(y ~x)  #Your linear model

내 모델은 어떻게 작동합니까?

x11(); par(mfrow=c(1,3));   #Make a new 1-by-3 plot
plot(residuals(lin_mod)); 
title("Simple Residual Plot - OK model")
acf(residuals(lin_mod), main = ""); 
title("Residual Autocorrelation Plot - OK model");
plot(fitted(lin_mod), residuals(lin_mod)); 
title("Residual vs Fit. value - OK model");

이것은 당신에게 다음과 같은 것을 줄 것입니다 : 여기에 이미지 설명을 입력하십시오 이것은 잔차가 임의의 지수 (첫 번째 음모-가장 유익하지 않은)를 기반으로 분명한 경향이없는 것처럼 보이고, 그들 사이에 실제 상관 관계가없는 것처럼 보입니다 (두 번째 음모-매우 중요하며 아마도 동종 동력보다 더 중요 할 것입니다. 적합치 대 잔차는 매우 무작위로 나타납니다. 이를 바탕으로 잔차가 모든 곳에서 동일한 분산을 갖는 것처럼 보이기 때문에 이분산성의 문제는 없다고 말할 수 있습니다.

그래, 당신은 이분산성을 원합니다. 선형성과 가산성에 대한 동일한 가정이 주어지면 "명백한"이분산성 문제가있는 또 다른 생성 모델을 정의 해 봅시다. 즉, 일부 값 이후에 우리의 관찰은 훨씬 시끄 럽습니다.

epsilon_HS = epsilon;               
epsilon_HS[ x>.55  ] = epsilon_HS[x>.55 ] * 9       #Heteroskedastic errors

y2 = x * beta + epsilon_HS      #Your generative model
lin_mod2 <- lm(y2 ~x)            #Your unfortunate LM

모델의 간단한 진단 플롯 :

 par(mfrow=c(1,3));   #Make a new 1-by-3 plot
 plot(residuals(lin_mod2)); 
 title("Simple Residual Plot - Fishy model")
 acf(residuals(lin_mod2), main = ""); 
 title("Residual Autocorrelation Plot - Fishy model");
 plot(fitted(lin_mod2), residuals(lin_mod2)); 
 title("Residual vs Fit. value - Fishy model");

다음과 같은 내용을 제시해야 여기에 이미지 설명을 입력하십시오 합니다. 첫 번째 줄거리는 "홀수"입니다. 작은 크기로 군집하는 잔차가 몇 개있는 것처럼 보이지만 항상 문제가되지는 않습니다 ... 두 번째 줄거리는 괜찮습니다. 다른 지연에서 잔차간에 상관 관계가 없으므로 잠시 숨을 쉴 수 있습니다. 그리고 세 번째 줄거리는 콩을 흘립니다. 더 높은 값에 도달하면 잔차가 폭발한다는 것은 분명합니다. 우리는이 모형의 잔차에서 이분산성을 확실히 가지고 있으며, 우리는 무언가를 수행해야합니다 (예 : IRLS , Theil–Sen 회귀 등).

여기서 문제는 분명했지만 다른 경우에는 놓쳤을 수도 있습니다. 그것을 놓칠 가능성을 줄이기 위해 또 다른 통찰력있는 줄거리는 IrishStat에 의해 언급 된 것입니다 : Residuals vs Observed 값 또는 장난감 문제에 대한 것입니다.

 par(mfrow=c(1,2))
 plot(y, residuals(lin_mod) ); 
 title( "Residual vs Obs. value - OK model")
 plot(y2, residuals(lin_mod2) ); 
 title( "Residual vs Obs. value - Fishy model")

다음과 같은 것을 제공해야합니다.

여기에 이미지 설명을 입력하십시오아르 자형2아르 자형20.59890.03919

공정한 상황에서 잔차 대 적합치 그림은 상대적으로 괜찮은 것처럼 보입니다. 잔차와 관측 값을 확인하면 안전을 확보하는 데 도움이 될 수 있습니다. ( QQ-plots 또는 이와 유사한 것을 언급하지 않았지만 더 복잡하지는 않지만 간단히 확인하고 싶을 수도 있습니다.) 이것이 이분산성에 대한 이해와 무엇을주의해야하는지에 도움이되기를 바랍니다.


4
잔차와 관측 값 사이의 관계를보고 놀라거나 걱정해서는 안됩니다 . 올바르게 지정된 모델에 대한 이론적 결과를 계산하십시오.
Scortchi-Monica Monica 복원


댓글 모두에 +1 그 문제를 지적 해 주셔서 감사합니다. 귀하의 의견이 발견되었습니다. 그 구절을 편집하여 이제 올바르게 읽습니다.
usεr11852는 Reinstate Monic

1
천만에요. 여전히 잔차 그림과 관찰 된 반응 값이 어떤 값을 더한다고 생각하는지 잘 모르겠습니다. 이 분산의 존재 및 특성 은 잔차 대 적합 반응 값의 플롯에서보다 분명하다.
Scortchi-Monica Monica 복원

나는 (주로) 동의합니다. 보시다시피 그것은 첫 번째 진단 플롯이 아닙니다. 그것은 IrishStat에 의해 제안되었지만 OP에 대한 완전한 대답이 필요하다고 생각했습니다.
usεr11852는 Reinstate Monic

9

귀하의 질문은 이분산성에 관한 것으로 보입니다 (이름으로 언급하고 태그를 추가했기 때문에). 음모". 이분산성을 평가하는 것보다 모델이 부적절한 지 판단하는 것이 더 중요합니다.

이 웹 사이트 (ht @Alexis)를 사용하여 데이터를 스크랩했습니다 . 데이터는 오름차순으로 정렬됩니다 fitted. 회귀 및 왼쪽 위 그림을 기반으로 충분히 충실한 것 같습니다.

mod = lm(residuals~fitted)
summary(mod)
# ...
# Residuals:
#   Min       1Q   Median       3Q      Max 
# -0.78374 -0.13559  0.00928  0.19525  0.48107 
# 
# Coefficients:
#   Estimate Std. Error t value Pr(>|t|)
# (Intercept)  0.06406    0.35123   0.182    0.856
# fitted      -0.01178    0.05675  -0.208    0.836
# 
# Residual standard error: 0.2349 on 53 degrees of freedom
# Multiple R-squared:  0.0008118,  Adjusted R-squared:  -0.01804 
# F-statistic: 0.04306 on 1 and 53 DF,  p-value: 0.8364

여기에 이미지 설명을 입력하십시오

나는 이분산성의 증거를 보지 못했다. 오른쪽 상단 (qq-plot)에서 정규성 가정에도 아무런 문제가없는 것 같습니다.

반면, 빨간색 lowess fit의 "S"곡선 (왼쪽 상단 플롯)과 acf 및 pacf 플롯 (하단)은 문제가있는 것으로 보입니다. 가장 왼쪽에있는 대부분의 잔차는 회색 0 선 위에 있습니다. 오른쪽으로 이동하면 잔차의 대부분이 0 아래로, 그 다음 위로, 다시 아래로 떨어집니다. 그 결과 내가 특정 잔차를보고 있다고 말했고 그 값이 음의 값을 가졌다 고 말했지만 (내가 어느 것을보고 있는지는 말하지 않았지만) 잔차가 근처에 있다는 것을 정확하게 추측 할 수있었습니다. 또한 부정적인 가치가있었습니다. 다시 말해, 잔차는 독립적 이지 않습니다. 하나에 대해 알고 있으면 다른 것에 대한 정보를 얻을 수 있습니다.

플롯 외에도 테스트 할 수 있습니다. 간단한 접근 방식은 런 테스트 를 사용하는 것입니다 .

library(randtests)
runs.test(residuals)
#  Runs Test
# 
# data:  residuals
# statistic = -3.2972, runs = 16, n1 = 27, n2 = 27, n = 54, p-value = 0.0009764
# alternative hypothesis: nonrandomness

엑스2엑스

당신의 명백한 질문에 답하기 위해 : 당신의 줄거리는 연속 자기 상관 / 잔차의 비 독립성을 보여줍니다. 모델이 현재 형식으로 적합하지 않다는 것을 의미합니다.

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