段階的回帰は、母集団のr平方の偏った推定値を提供しますか?


14

心理学やその他の分野では、次のような段階的な回帰の形式がよく使用されます。

  1. 残りの予測子(最初はモデルにない予測子)を見て、最大のr平方変化をもたらす予測子を特定します。
  2. r平方変化のp値がアルファ(通常.05)より小さい場合は、その予測子を含めて手順1に戻ります。それ以外の場合は停止します。

たとえば、SPSSのこの手順を参照してください。

この手順は、さまざまな理由で日常的に批判されています(StataのWebサイトでこの議論を参照してください)。

特に、StataのWebサイトには、Frank Harrellによるいくつかのコメントがまとめられています。私は主張に興味があります:

[ステップワイズ回帰]は、大きく偏ったR乗値を生成します。

具体的には、私の現在の研究のいくつかは、母集団r-squareの推定に焦点を当てています。母集団のr二乗によって、母集団の方程式を生成する母集団データによって説明される分散の割合を参照します。私がレビューしている既存の文献の多くは、段階的な回帰手順を使用しており、提供された推定値が偏っているかどうか、もしそうであればどの程度かを知りたいです。特に、典型的な研究では、30の予測変数、n = 200、.05のエントリのアルファ、および.50前後のr二乗推定値があります。

私が知っていること:

  • 漸近的に、係数がゼロでない予測子は統計的に有意な予測子となり、r-squareは調整されたr-squareと等しくなります。したがって、漸近的な段階的回帰では、真の回帰方程式と真の母集団r平方を推定する必要があります。
  • サンプルサイズが小さい場合、一部の予測子が省略される可能性があるため、すべての予測子がモデルに含まれていた場合よりもr平方が小さくなります。しかし、データをサンプリングするためのr-squareの通常のバイアスもr-squareを増加させます。したがって、私の素朴な考えは、これらの2つの対立する力が特定の条件下で不偏のr二乗になる可能性があるということです。より一般的には、バイアスの方向は、データのさまざまな機能とアルファ包含基準に依存します。
  • より厳密なアルファ包含基準(たとえば、.01、.001など)を設定すると、データの生成に予測子が含まれる確率が低くなるため、予想される推定r-squareが低くなります。
  • 一般に、r-squareは母集団r-squareの上方に偏った推定値であり、この偏りの程度は、予測子が多くなり、サンプルサイズが小さくなると増加します。

質問

最後に、私の質問:

  • 段階的回帰からのr 2乗は、どの程度まで人口r 2乗の偏った推定値になりますか?
  • このバイアスは、サンプルサイズ、予測子の数、アルファ包含基準、またはデータのプロパティにどの程度関連していますか?
  • このトピックに関する参照はありますか?

3
あなたが引用するStata FAQのメインバージョンは、Frank Harrellの2001年の書籍Regression modelling strategyに先行しています。ニューヨーク:スプリンガー、これは私がここから始める参考文献です。
ニックコックス

3
Nick Coxが言及している@FrankHarrellの本を読むことを強くお勧めします。私は定期的に大学院生を割り当て、それから読んでいる学生に敬意を表しています(特に第4章)。変数選択の存在下でR ^ 2がバイアスされることは、母集団相関がゼロの多くのデータセット(n = 100、p = 50など)をシミュレートすることにより、簡単に確認できます。それで。
Glen_b-モニカを復元

5
コメントが指摘しているように、シミュレーションは、既知の状況では、段階的回帰がを過大評価することを示し、その量を示すことができます。しかし、人口価値がどうあるべきかわからない状況では、どれだけのインフレがあるかを示すことはできません。つまり、段階的なバイアスの結果だけでなく、推定が非常に難しい(不可能ではないにしても)方法でバイアスがかけられます。R2
ピーターフロム-モニカの復職

3
母集団R ^ 2がゼロの場合、ステップワイズ選択を使用しなくても、サンプルR ^ 2はバイアスされていると思います。母集団R ^ 2がゼロ以外の場合にもバイアスがかかると思われます(しかし確信はありません)。
mark999

2
母集団にあり、何らかのモデル選択を行っていると言うことは、サンプリング状況についていくつかの特定の仮定を行うことです-「真の」モデルがあり、特定のサイズがあり、真のモデルにあるよりも多くの変数(少なくとも潜在的にはそれ以上)などが考慮されます。すべての変数が応答に等しく強く関連しているわけではないという意味すらあると思います。そのためには、プロパティを調査するために行うシミュレーションでは、設定するすべての影響を尊重する必要があると思います。R2
Glen_b-モニカを復活

回答:


5

私の本で言及されているように、変数選択を行うときにほぼ公平な推定を得るには、調整されたR 2の式に「選択」予測子の数ではなく候補予測子の数を挿入する必要があることを示す文献があります。したがって、変数の選択に起因するバイアスは相当なものです。おそらくもっと重要なのは、変数選択の結果、実際のR 2が悪化し、実際に「正しい」変数を見つけることができなくなることです。R2R2R2


特に、候補予測子の数が観測数を超える場合!
アレクシス

2

概要

多くの研究者は、段階的回帰に関する多くの問題について議論しています(例えば、4.3節の@FrankHarrell(2001))。特に、ハレルは「それは高いバイアスのかかった値を生み出す」と述べている(p.56)。あなたが推定値であると仮定するものに基づいて、この声明のいくつかの可能な解釈があります。あなたは推定値が、何らかの形であると仮定した場合ρ 2、その後、次のように言うことができます。これは、データ生成プロセスのいくつかの組み合わせのための真のサンプルサイズ、予測因子との予測エントリのp値基準のセットですが、それは真実ではありませんすべての場合。R2ρ2

R2ρ2R2ρ2R2R2R2ρ2

R2

R2ρ2ρ2

シミュレーション

次のシミュレーションには、母集団の二乗が40%である4つの非相関予測子があります。2つの予測子はそれぞれ20%を説明し、他の2つの予測子は0%を説明します。シミュレーションは1000個のデータセットを生成し、各データセットのパーセンテージとして段階的回帰r平方を推定します。

# source("http://bioconductor.org/biocLite.R")
# biocLite("maSigPro") # provides stepwise regression function two.ways.stepfor 
library(maSigPro)
get_data <- function(n=100) {
    x1 <- rnorm(n, 0, 1)
    x2 <- rnorm(n, 0, 1)
    x3 <- rnorm(n, 0, 1)
    x4 <- rnorm(n, 0, 1)
    e  <- rnorm(n, 0, 1)
    y <- 1 * x1 + 1 * x2 + sqrt(3) * e
    data <- data.frame(y, x1, x2, x3, x4)
    data
}

get_rsquare <- function(x, alpha=.05) {
    fit <- two.ways.stepfor(x$y, subset(x, select=-y),  alfa=alpha)
        class(fit) <-'lm'
        summary.lm(fit)$r.square * 100
}

次のコードは、エントリのアルファが.01、.001、.0001、および.00001のr平方を返します。

set.seed(1234)
simulations <- 1000
datasets <- lapply(seq(simulations), function(X) get_data(n=100))
rsquares01 <- sapply(datasets, function(X) get_rsquare(X, alpha=.01))
rsquares001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.001))
rsquares0001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.0001))
rsquares00001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.00001))

次の結果は、エントリの5つのアルファそれぞれのバイアスを示しています。違いを見やすくするために、r-squareを100倍したことに注意してください。

mean(rsquares01) - 40 
mean(rsquares001) - 40 
mean(rsquares0001) - 40 
mean(rsquares00001) - 40 
sd(rsquares01)/sqrt(simulations) # approximate standard error in estimate of bias 

結果は、.01および.001のエントリのアルファが正のバイアスになり、.0001および.00001のエントリのアルファが負のバイアスになることを示唆しています。したがって、おそらく.0005付近のエントリのアルファは、不偏の段階的回帰になります。

> mean(rsquares01) - 40 
[1] 1.128996
> mean(rsquares001) - 40 
[1] 0.8238992
> mean(rsquares0001) - 40 
[1] -0.9681992
> mean(rsquares00001) - 40 
[1] -5.126225
> sd(rsquares01)/sqrt(simulations) # approximate standard error in estimate of bias
[1] 0.2329339

これから私がとる主な結論は、ステップワイズ回帰は本質的に特定の方向に偏っていないということです。そうは言っても、予測変数エントリの1つのp値を除くすべてについて、少なくともある程度バイアスがかかります。@Peter Flomのポイントは、現実の世界ではデータ生成プロセスを知らないという点です。ただし、このバイアスがどのように変化するか、エントリのn、アルファ、データ生成プロセス、および段階的回帰手順(たとえば、バックワードパスを含む)のより詳細な調査は、そのようなバイアスの理解に大いに役立つと思います。

参照資料

  • ハレル、FE(2001)。回帰モデリング戦略:線形モデル、ロジスティック回帰、および生存分析への応用。スプリンガー。

それはまだ偏っています(私が言うだろう)、あなたは偏りを大きく減らしました。
ジェレミーマイルズ

@JeremyMilesはい。しかし、特定の方向に本質的に偏っていません。
ジェロミーアングリム

@FrankHarrellがこれに取り組んでいるのを見てとても興味があります。
Glen_b-モニカを復活

1
SW(pR2ppSWppSWpp

1
@whuber最終段落を微調整して、あなたが言及したポイントのいくつかをより明確にすることを願っています。
ジェロミーアングリム
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.