この近似対残差プロットをどのように解釈しますか?


17

ここに画像の説明を入力してください

私は不均一分散性を本当に理解していません。私のモデルがこのプロットに従って適切かどうかを知りたいです。


残差対観測値のプロットを作成してください。エラーの変動が観測値にリンク可能な場合、これは不均一性の問題を示唆している可能性があります
IrishStat 14年

1
@IrishStateの残差と観測値は相関を示します。このため、解釈がより困難です。残差vs適合は、誤差が母平均にどのように関連するかについての最良の近似を示し、分散が平均に関連するかどうかの回帰におけるより一般的な考慮事項を調べるのにいくらか役立ちます。
Glen_b -Reinstateモニカ

回答:


18

@IrishStatがコメントしたように、観測された値をエラーと照合して、変動性に問題があるかどうかを確認する必要があります。最後にこれに戻ります。

yyNバツβσ2yバツβσ2y=バツβ+ϵϵN0σ2。OK、これまでのところ、コードでそれを見てみましょう:

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");

次のようになります: ここに画像の説明を入力してください つまり、あなたの残差はあなたの任意のインデックスに基づいて明白な傾向を持たないように見えます(1番目のプロット-実際には最も情報が少ない)、それらの間には本当の相関がないようですおそらく等分散性よりも重要です)、その近似値には明らかな失敗の傾向がありません。近似値と残差は非常にランダムに見えます。これに基づいて、残差がどこでも同じ分散を持っているように見えるため、不均一分散の問題はないと言います。

でも、あなたは不均一分散性が必要です。線形性と加法性の同じ仮定が与えられた場合、「明らかな」異分散性問題を持つ別の生成モデルを定義しましょう。つまり、いくつかの値の後、私たちの観察ははるかにうるさくなるでしょう。

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");

次のようになります。 ここに画像の説明を入力してください ここでは、最初のプロットは少し「奇妙」に見えます。小さいマグニチュードでクラスター化するいくつかの残差があるように見えますが、それは必ずしも問題ではありません... 2番目のプロットはOKです。つまり、異なるラグの残差間に相関がないので、しばらく息を吸うかもしれません。そして、3番目のプロットは豆をこぼします。より高い値になると、残差が爆発することは明らかです。このモデルの残差には間違いなく不均一分散性があり、何かをする必要があります(例:IRLSTheil–Sen回帰など)。

ここでは問題は本当に明らかでしたが、他のケースでは見逃していたかもしれません。それを逃す可能性を減らすために、別の洞察に満ちたプロットがIrishStatによって言及されたものでした:残差対観測値、または手元のおもちゃの問題:

 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")

次のようになります:

ここに画像の説明を入力してくださいR2R20.59890.03919

あなたの状況の公平さにおいて、あなたの残差対適合値のプロットは相対的なOKのようです。残差と観測値を確認することは、おそらく安全な側にいることを確認するのに役立つでしょう。(QQプロットやそのようなものについては、これ以上混乱しないように言及しませんでしたが、それらも簡単に確認することをお勧めします)。


4
残差と観測値の関係を見て驚かないでください。正しく指定されたモデルの理論的な結果を計算してみてください。
Scortchi -復活モニカ


両方のコメントに+1します。その問題を指摘していただきありがとうございます。あなたのコメントはスポットである/あった。私はその文章を編集して、正しく読めるようにしました。
–usεr11852によると、Reinstate Monic 14

1
どういたしまして。観測された応答値に対する残差のプロットがどのような値を追加すると思うかはまだわかりません。不均一分散の存在と性質は、残差対適合応答値のプロットよりも明白ではありません
Scortchi -復活モニカ

私は(ほぼ)同意します。あなたが見たように、それは私の最初の診断プロットでもありませんでした。IrishStatによって提案されましたが、OPへの完全な回答に必要だと思いました。
usεr11852は回復モニック言う

9

あなたの質問は不均一分散に関するもののようです(名前で言及し、タグを追加したため)プロット"。異分散性を評価することよりも、モデルが不適切であるかどうかを判断すること以上のものがあります。

このWebサイト(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プロット)からも、正規性の仮定に問題はないようです。

一方、赤の低い適合(左上のプロット)の「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つの「ベンド」があるため、を追加する必要があります。バツ2バツ3ため、モデルに用語をして、そのことを説明します。

明確な質問に答えるには:プロットは、自己相関/残差の非独立性を示します。これは、モデルが現在の形式では適切でないことを意味します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.