サンプル外予測を改善しない「重要な変数」-解釈方法は?


10

多くのユーザーにとって非常に基本的なことだと思います。

線形回帰モデルを使用して、(i)いくつかの説明変数と私の応答変数の関係を調査し、(ii)説明変数を使用して私の応答変数を予測します。

特定の説明変数Xが、私の応答変数に大きな影響を与えているようです。私の応答変数のサンプル外予測の目的でこの説明変数Xの追加値をテストするために、2つのモデルを使用しました:すべての説明変数を使用するモデル(a)とすべての変数を使用するモデル(b)変数Xを除きます。両方のモデルで、サンプル外のパフォーマンスのみを報告します。どちらのモデルもほぼ同じように良好に機能するようです。つまり、説明変数Xを追加しても、サンプル外の予測は改善されません。モデル(a)、つまりすべての説明変数を持つモデルも使用して、説明変数Xが応答変数に大きな影響を与えることを確認しました。

私の質問は今です:この発見をどう解釈するか?直接的な結論は、変数Xは推論モデルを使用して私の応答変数に大きな影響を与えるように見えても、サンプル外の予測を改善しないということです。しかし、私はこの発見をさらに説明するのに苦労しています。これはどのようにして可能であり、この発見の説明は何ですか?

前もって感謝します!

追加情報:「有意に影響する」とは、パラメーター推定の最高95%事後密度間隔に0が含まれないことを意味します(ベイズアプローチを使用したIM)。頻度論的には、これはおおよそ0.05未満のp値を持つことに相当します。私はすべてのモデルパラメーターに拡散(情報のない)事前分布のみを使用しています。私のデータは縦方向の構造を持ち、合計で約7000の観測が含まれています。サンプル外予測では、90%のデータを使用してモデルを適合させ、10%のデータを使用して複数の複製を使用するモデルを評価しました。つまり、トレーニングテストの分割を複数回実行し、最終的に平均パフォーマンスメトリックを報告しました。


2
ベイジアンアプローチを使用しているため、結果はデー​​タに依存するだけでなく以前のデータにも依存します。データへの依存度はデータ量の増加とともに減少し、データと事前の不一致の範囲が増加するため、事前分布、データ量、およびデータのみがどれだけ厳密に準拠しているかについての情報を提供すると便利です。以前の配布に。
whuber

1
@whuber私は拡散(情報を提供しない)事前分布のみを使用していることを忘れていました。したがって、私の以前の仕様が私の調査結果と関係があるとは思えません。私は、頻出線形回帰モデルをフィッティングしても、まったく同じ結果が得られると確信しています。
dubvice

ありがとう-考えられるいくつかの説明を除外するのに役立ちます。
whuber

1
保持されたデータにモデルを再フィットしますか、または元のデータにフィットするモデルを使用しますか?どちらの場合も、考えられる問題の1つは、保留されたデータでタイプIIエラーが発生していることです。おそらく変数は関連していますが、もともと力不足でした(この場合、おそらく予測を悪化させる可能性のある影響を過大評価しているでしょう)。または、変数が無関係で、タイプIのエラーが発生しました。このようなことが起こる理由はたくさんあります。

1
私は、RSME、MAE、およびAUCのいくつかのメトリックを使用しました(連続的な依存変数が特定のしきい値を下回っているかどうかも予測しようとしています)。
dubvice

回答:


3

x1x2x1x2x1x2x1x2R2

関数は次のとおりです。

sim_ES <- function (effect_size = 1, sd = 2, n = 200) {
    # simulate some data
    DF <- data.frame(x1 = runif(n, -3, 3), x2 = runif(n, -3, 3))
    DF$y <- 2 + 5 * DF$x1 + (effect_size * sd) * DF$x2 + rnorm(n, sd = sd)

    # fit the models with and without x2
    fm1 <- lm(y ~ x1 + x2, data = DF)
    fm2 <- lm(y ~ x1, data = DF)

    # results
    list("95% CIs" = confint(fm1),
         "R2_X1_X2" = summary(fm1)$r.squared,
         "R2_only_X1" = summary(fm2)$r.squared)
}

たとえば、取得するデフォルト値については、

$`95% CIs`
               2.5 %   97.5 %
(Intercept) 1.769235 2.349051
x1          4.857439 5.196503
x2          1.759917 2.094877

$R2_X1_X2
[1] 0.9512757

$R2_only_X1
[1] 0.8238826

x2R2

しかし、エフェクトサイズを0.3に設定すると、次のようになります。

> sim_ES(effect_size = 0.3)
$`95% CIs`
                2.5 %    97.5 %
(Intercept) 1.9888073 2.5563233
x1          4.9383698 5.2547929
x2          0.3512024 0.6717464

$R2_X1_X2
[1] 0.9542341

$R2_only_X1
[1] 0.9450327

R2


統計的有意性予測パフォーマンスの間のあいまいな二分法は、私の分析生活の悩みの種ではありません。(+1-CV教授への一般的な歓迎!)
usεr118522018

-1

これは、重回帰で発生するかなり正常なことです。最も一般的な理由は、予測子が互いに関連していることです。つまり、他の予測子の値からXを推測できます。したがって、それが唯一の予測変数である場合は予測に役立ちますが、他のすべての予測変数を取得すると、それほど多くの情報は提供されません。これが当てはまるかどうかを確認するには、他の予測子でXを回帰します。また、無料のオンライン教科書「統計学習の要素」の線形回帰の章も参照します。


1
質問で説明されている特定の状況に対処するのではなく、重要ではない説明変数を説明しているようです。
whuber

私はそれ自体で応答に有意に関連している(つまり、単純な回帰で)説明変数について説明しています。これは、「Xが応答変数に大きく影響しているように見える」という質問の意味だと思います。
デンジロー

しかし、その場合、説明変数Xが私の応答変数に大きな影響を与えることはわかりませんでしたか?最初は質問で明確にしていないのかもしれませんが、すべての説明変数を含むモデルを使用して、説明変数Xが私の応答変数に大きな影響を与えることを発見しました。
dubvice

3
X

1
はいwhuber、あなたはそれを正しく理解しました。これが私の言いたいことです。うまくいけば、私の質問でこれを十分に明確にした。
dubvice
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.