ロジスティック回帰における相対変数の重要度をpで定量化する方法


11

オンライン買い物客が一連のオンライン広告(予測子:Ad1、Ad2、およびAd3)をクリックした後に、オンライン買い物客が商品を購入する(結果:購入)かどうかを予測するためにロジスティック回帰モデルを使用するとします。

結果はバイナリ変数です。1(購入済み)または0(購入済みではありません)。予測子も2変数です:1(クリック)または0(クリックされません)。したがって、すべての変数は同じスケールです。

Ad1、Ad2、およびAd3の結果の係数が0.1、0.2、および03である場合、Ad3はAd2よりも重要であり、Ad2はAd1よりも重要であると結論付けることができます。さらに、すべての変数は同じスケールであるため、標準化された係数と標準化されていない係数は同じである必要があり、ロジット(対数オッズ)レベルへの影響の観点から、Ad2はAd1よりも2倍重要であると結論付けることができます。

しかし、実際には、logit(log-odds)ではなく、p(購入の確率)レベルの観点から変数の相対的な重要性を比較および解釈する方法をより重視します。

したがって問題は次のとおりです。これらの変数の相対的な重要度をpで定量化するアプローチはありますか?


この記事は役に立ちました。ロジスティック回帰モデルから予測因子の重要性を定義するために使用できる6つの異なる方法と、各方法に関連する小道具と短所について説明しています。
gchaks 2017

回答:


5

線形モデルの場合、各モデルパラメーターのt統計の絶対値を使用できます。

また、ランダムなフォレストのようなものを使用して、機能の重要性の非常に優れたリストを取得できます。

Rチェックアウト(http://caret.r-forge.r-project.org/varimp.html)を使用している場合、Pythonチェックアウト(http://scikit-learn.org/stable/auto_examplesを使用している場合)/ensemble/plot_forest_importances.html#example-ensemble-plot-forest-importances-py

編集:

ロジットにはこれを行う直接的な方法がないため、各予測子にROC曲線を使用できます。

分類のために、ROC曲線分析が各予測子で実行されます。2つのクラスの問題の場合、一連のカットオフが予測子データに適用され、クラスが予測されます。感度と特異度はカットオフごとに計算され、ROC曲線が計算されます。台形規則は、ROC曲線の下の面積を計算するために使用されます。この領域は、変数の重要度の尺度として使用されます

これがRでどのように機能するかの例は次のとおりです。

library(caret)
mydata <- data.frame(y = c(1,0,0,0,1,1),
                 x1 = c(1,1,0,1,0,0),
                 x2 = c(1,1,1,0,0,1),
                 x3 = c(1,0,1,1,0,0))

fit <- glm(y~x1+x2+x3,data=mydata,family=binomial())
summary(fit)

varImp(fit, scale = FALSE)

1
お返事をありがとうございます!はい、線形モデルとランダムフォレストの場合は簡単ですが、ロジスティック回帰の場合にそれを行う方法について何か考えがありますか?どうもありがとう!
xyhzc 14

上記の編集を参照してください。
mike1886 14

比率レベルの比較についての質問はまだ回答されていないようです。たとえば、AUCがx1のみを使用して.6であり、x2のみを使用して.9であることがわかっていても、x2の重要性が50%大きいとは言えません。また、(1-10%/ 40%)= 75%大きいとも思いません。感度や特異性だけを使用して、類似のことを行うこともできません。ここで、Wald統計の適用性についても疑問があります。最も役立つのは、標準化された係数の説明です(Scott Menardのオンラインブックを参照)。
rolando2 14

rolando2、ありがとう!この質問の変数はすべて同じメトリックスのメジャーであるため、標準化係数と非標準化係数は同じである必要があります。さらに、標準化された係数を使用してロジット(log-odds)レベルの変数を比較できますが、Pの変数(この場合はオンライン買い物客が購入する確率)をどのように解釈できますか?どうもありがとう!
xyhzc 14

1
質問の答えはわかりません。
HelloWorld 2017

4

確率スケールでの解釈を具体的に求めていたため、ロジスティック回帰では、成功の推定確率は次のように与えられます。

π^(x)=exp(β0+βx)1+exp(β0+βx)

インターセプト、係数ベクトルとあなたの観測値。したがって、係数が0.1、0.2、0.3であり、切片がないと仮定した場合(ほとんどの場合は正しくないが、簡単にするため)、広告1のみをクリックした人の購入確率は次のようになります。β0βx

exp(0.1)1+exp(0.1)=0.52

広告3のみをクリックした人:

exp(0.3)1+exp(0.3)=0.57

ただし、ユーザーが広告1または広告3だけでなく広告2もクリックした場合(これがプラスビレシナリオの場合)、確率は

exp(0.1+0.2)1+exp(0.1+0.2)=0.57

exp(0.3+0.2)1+exp(0.3+0.2)=0.62

この場合、確率の変化は両方とも0.05ですが、通常、この変化はレベルの異なる組み合わせでは同じではありません。(たとえば、上記と同じアプローチを使用するが、係数0.1、1.5、0.3を使用する場合、これを簡単に確認できます。)したがって、確率スケールでの変数の重要性は、他の変数の観測レベルに依存します。これにより、確率スケールで絶対的で定量的な変数の重要度の測定を行うことが困難になります(不可能ですか?)。


説明ありがとうございます!次に、予測変数の相対的な重要性を定量化するための間接的な方法があることを知っていますか?mike1886は彼の回答で「ROC曲線分析」について言及しましたが、rolando2で言及されているようにいくつかの問題があります。どうもありがとう!
xyhzc 14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.