独立変数を標準化すると共線性が低下しますか?


12

私はベイズ/ MCMCで非常に良いテキストに出くわしました。ITは、独立変数の標準化によってMCMC(メトロポリス)アルゴリズムがより効率的になることを示唆していますが、(マルチ)共線性を低下させる可能性もあります。それは本当ですか?これは私が標準としてやるべきことです(申し訳ありません)。

Kruschke 2011、ベイズデータ分析の実施。(AP)

編集:たとえば

     > data(longley)
     > cor.test(longley$Unemployed, longley$Armed.Forces)

Pearson's product-moment correlation

     data:  longley$Unemployed and longley$Armed.Forces 
     t = -0.6745, df = 14, p-value = 0.5109
     alternative hypothesis: true correlation is not equal to 0 
     95 percent confidence interval:
     -0.6187113  0.3489766 
     sample estimates:
      cor 
     -0.1774206 

     > standardise <- function(x) {(x-mean(x))/sd(x)}
     > cor.test(standardise(longley$Unemployed), standardise(longley$Armed.Forces))

Pearson's product-moment correlation

     data:  standardise(longley$Unemployed) and standardise(longley$Armed.Forces) 
     t = -0.6745, df = 14, p-value = 0.5109
      alternative hypothesis: true correlation is not equal to 0 
     95 percent confidence interval:
      -0.6187113  0.3489766 
      sample estimates:
       cor 
     -0.1774206 

これは相関を減少させず、したがって、ベクトルの線形依存性を制限しません。

どうしたの?

R

回答:


19

主効果間の共線性はまったく変わりません。スケーリングもしません。線形変換はそれを行いません。それが変化するのは、主効果とそれらの相互作用の間の相関です。AとBが相関関係0で独立している場合でも、AとA:Bの相関関係はスケールファクターに依存します。

Rコンソールで以下を試してください。rnorm設定した母集団値を使用して正規分布からランダムサンプルを生成することに注意してください。この場合は50サンプルです。このscale関数は、サンプルを0の平均と1のSDに標準化します。

set.seed(1) # the samples will be controlled by setting the seed - you can try others
a <- rnorm(50, mean = 0, sd = 1)
b <- rnorm(50, mean = 0, sd = 1)
mean(a); mean(b)
# [1] 0.1004483 # not the population mean, just a sample
# [1] 0.1173265
cor(a ,b)
# [1] -0.03908718

これらの独立したサンプルでは、​​偶発的な相関は0に近くなります。次に、平均0とSD 1に正規化します。

a <- scale( a )
b <- scale( b )
cor(a, b)
# [1,] -0.03908718

繰り返しますが、これは、平均が0であり、SDが1との両方aであっても、まったく同じ値bです。

cor(a, a*b)
# [1,] -0.01038144

これも非常に0に近いです。(a * bは相互作用項と見なすことができます)

ただし、通常、SDと予測子の平均はかなり異なるため、変更しましょうb。新しいサンプルを取得する代わりにb、平均を5に、SDを2にするために元のサンプルを再スケーリングします。

b <- b * 2 + 5
cor(a, b)
 # [1] -0.03908718

繰り返しになりますが、これまでずっと見てきました、おなじみの相関関係です。スケーリングの間の相関に影響有していないaとしますb。だが!!

cor(a, a*b)
# [1,] 0.9290406

これでかなりの相関関係が得られます。これは、センタリングまたは標準化、あるいはその両方を行うことで解消できます。私は通常、中心点だけで行きます。


1
包括的でわかりやすい回答(コード付き!)の+1
ピーターフロム-モニカの

1
たとえば、2次項を含める場合にも役立ちます。
Aniko、2011年

絶対にアニコ
ジョン

1
ベストアンサー-これをありがとう。私はこの本を誤解することで不正義を犯したかもしれませんが、おそらく私の無知を暴露する価値はありました。
ross '10 / 10/11

7

他の人がすでに述べたように、標準化は共線性とはまったく関係ありません。

完璧な共線性

XμXσX

ZX=XμXσX

たことを意味と標準偏差の特性所定の期待値分散を、その、と、、ここではrvでは定数です。μZ=0σZ=1E(X+a)=E(X)+aE(bX)=bE(X)Var(X+a)=Var(X)Var(bX)=b2Var(X)Xa,b

我々は2つの変数と言うとある完全に同一直線上にこのような値が存在する場合とことをXYλ0λ1

Y=λ0+λ1X

あれば何が続く、平均ありと標準偏差、そして平均ていると標準偏差。ここで、両方の変数を標準化(平均を削除して標準偏差で除算) ...XμXσXYμY=λ0+λ1μXσY=λ1σXZX=ZX

相関

もちろん、完全な共線性は私たちがよく目にするものではありませんが、強く相関する変数も問題になる可能性があります(そしてそれらは共線性と関連する種です)。では、標準化は相関に影響を与えますか?スケーリングの前後の2つのプロットで2つの相関変数を示す次のプロットを比較してください。 ここに画像の説明を入力してください

違いを見つけられますか?ご覧のとおり、軸のラベルを意図的に削除したので、私がだまされていないことを納得させるために、ラベルが追加されたプロットを表示します。

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

数学的に言えば、相関関係

Corr(X,Y)=Cov(X,Y)Var(X)Var(Y)

次に、共線変数を使用して

Corr(X,Y)=E[(XμX)(YμY)]σXσY=E[(XμX)(λ0+λ1Xλ0λ1μX)]σXλ1σX=E[(XμX)(λ1Xλ1μX)]σXλ1σX=E[(XμX)λ1(XμX)]σXλ1σX=λ1E[(XμX)(XμX)]σXλ1σX=E[(XμX)(XμX)]σXσX

今から、Cov(X,X)=Var(X)

=Cov(X,X)σX2=Var(X)Var(X)=1

標準化された変数で

Corr(ZX,ZY)=E[(ZX0)(ZY0)]1×1=Cov(ZX,ZY)=Var(ZX)=1

以来 ...ZX=ZY

最後に、Kruschkeが話していることは、変数を標準化すると、ギブスサンプラーが使いやすくなり、ギブスサンプラーが提示する回帰モデルの切片と勾配の間の相関低下することです。変数を標準化すると、変数間の共線性が低下するとは述べていません。


0

標準化は変数間の相関には影響しません。それらはまったく同じままです。相関は、変数の方向の同期をキャプチャします。変数の方向を変更する標準化には何もありません。

変数間の多重共線性を排除したい場合は、主成分分析(PCA)を使用することをお勧めします。ご存知のように、PCAは多重共線性の問題を解消するのに非常に効果的です。一方、PCAは結合された変数(主成分P1、P2など)を不透明にします。PCAモデルは、従来の多変量モデルよりも常に説明が困難です。


現代の代替手段は、多くの場合より良いですが、正則化です。
kjetil b halvorsen

標準のステップワイズアルゴリズムとLASSO間の変数選択をテストしました。そして、LASSOはもうすぐです。LASSOは変数の影響にペナルティを課し、強い変数よりも弱い変数を選択できます。変数の符号が変化することもあります。また、統計的有意性、信頼区間、予測区間のフレームワーク全体を分類します。LASSOは時々働くことができます。ただし、MSE対Lambdaグラフと係数対Lambdaグラフを注意深く確認してください。LASSOモデルが機能したかどうかを視覚的に確認できる場所です。
Sympa

0

共線性は低下しませんが、VIFを低下させる可能性があります。一般に、共線性の懸念の指標としてVIFを使用します。

出典:http : //blog.minitab.com/blog/adventures-in-statistics-2/what-are-the-effects-of-multicollinearity-and-when-can-i-ignore-them


2
サイトへようこそ。現時点では、これは回答というよりはコメントです。リンクで情報の要約を提供することにより、拡張できます。または、コメントに変換することもできます。さらに、リンクされた投稿を読んだだけでは、共線性を低下させることなく標準化することでVIFを低下させることができません。彼らの例は非常に具体的で、それよりも微妙です。
ガン-モニカを

-3

標準化は、共線性を低減する一般的な方法です。(変数のペアをいくつか試すことで、それが機能することを非常に迅速に確認できるはずです。)定期的に行うかどうかは、分析における共線性の問題の程度に依存します。

編集:エラーが発生したようです。ただし、標準化が行うことは、積項(相互作用項)との共線性を減らすことです。


うーん、説明してもらえますか?標準化は、確率変数の平均と分散を(それぞれ0と1に)変更するだけです。これにより、2つの変数間の相関関係が変わることはありません。標準化によって計算効率を向上させる方法はわかりますが、多重共線性をどのように低下​​させるかはわかりません。
チャーリー

いいえ、失われました...予測変数の行列の列要素の線形依存性をどのように変更できるでしょうか。(共線性とはどういう
意味

標準化によって共線性が純粋に数学的な意味で変化することは正しくありませんが、線形システムを解くアルゴリズムの数値的安定性を向上させることができます。これが、この返信の混乱の原因である可能性があります。
whuber

標準化によって多重共線性が低下することはありません。通常、変数間の相関はまったく変更されません。
Sympa
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.