glmnetを使用する場合、予測子の有意性を主張するためにp値の有意性を報告する方法は?


9

2つの値(0または1)を取ることができる従属変数を予測するための予測子の大規模なセット(43,000以上)があります。観測数は45,000以上です。ほとんどの予測子は、単語のユニグラム、バイグラム、およびトライグラムであるため、それらの間には高い共線性があります。私のデータセットにも多くのスパース性があります。私が持っている種類のデータセットで機能するglmnetパッケージからのロジスティック回帰を使用しています。私の問題は、予測変数のp値の有意性をどのように報告できるかです。ベータ係数を取得しましたが、ベータ係数が統計的に有意であると主張する方法はありますか?

これが私のコードです:

library('glmnet')
data <- read.csv('datafile.csv', header=T)
mat = as.matrix(data)
X = mat[,1:ncol(mat)-1] 
y = mat[,ncol(mat)]
fit <- cv.glmnet(X,y, family="binomial")

もう1つの質問は、デフォルトのalpha = 1、投げ縄ペナルティを使用しているため、2つの予測子が同一線上にある場合、投げ縄がそれらの1つをランダムに選択し、他に0のベータ重みを割り当てるという追加の問題を引き起こします。また、類似性の高い係数を、相関係数の1つを選択するのではなく、それらに割り当てるリッジペナルティ(alpha = 0)を試しました。ただし、なげなわペナルティモデルでは、リッジペナルティモデルよりもはるかに低い逸脱度が得られます。共線性が非常に高い両方の予測子を報告できる他の方法はありますか?


このように聞こえるのは、線形モデルではなく、多変量分類の問題です。
ADP

@ADPに感謝します。この種の状況で推奨されるモデルは何ですか。
日焼け

回答:


8

この問題に関する結果を報告する作者としてLASSOの発明者を含む、新しい論文、「ラッソのための有意義なテスト」があります。これは比較的新しい研究分野であるため、このペーパーでの参照は、現時点で判明していることの多くをカバーしています。

2番目の質問については、を試しましたか?多くの場合、この中間の範囲には、適切な妥協点を示す値があります。これはElastic Net正則化と呼ばれます。cv.glmnetを使用しているので、値のグリッドで交差検証する必要があるでしょう。λ α α(0,1)(λ,α)


2

選択後の推論は、統計調査の非常に活発なトピックです。私の見解では、「なげなの有意差検定」で説明されている方法の問題は、厳しい仮定が必要であるということです(ここから再現)。

  1. 線形モデルは正しいです。
  2. 分散は一定です。
  3. エラーには正規分布があります。
  4. パラメーターベクトルはスパースです。
  5. 計画行列の共線性は非常に弱いです。これは通常、非干渉性、固有値制限、または非互換性の仮定の形で示されます。

私が有用であるとわかったアプローチは、利用可能な十分なデータがある限り、データ分割です。データ分割の考え方は、少なくともMoran(1974)に遡り、データをランダムに2つのセットに分割し、最初のセットでモデリングを選択し、2番目のセットで推論を行うことを伴います。

したがって、この場合、データを2つに分割し、前半で変数の選択を行い、次に(仮定して)後半で標準の回帰手法を使用して、係数の統計的有意性を決定します。もちろん、両方の段階で前提条件がまだ必要ですが、各段階で個別に満たすほうが簡単な場合があります。n>p

共変量はユニグラム、バイグラム、トリグラムであるため、共線性が高いとおっしゃっています。したがって、この場合、最初の段階で投げ縄を適用すると、特に上記の#5の仮定にも違反します。したがって、そのようなアプローチを本当に有用で理論的に健全なものにするためには、ラッソ前の共線性スクリーニングのようなものを行う必要があります。


0

多分CRANパッケージhdiを見てください。これは高次元モデルの推論を提供し、トリックを実行する必要があります...完全なメソッドはここで繰り返すのが少し面倒です(いくつかありますが、それでもまだかなりアクティブな領域です)研究)、しかしそれらはこのペーパーでよく説明されています:http : //projecteuclid.org/euclid.ss/1449670857(いくつかのテストデータを公開するか、いくつかのデータをシミュレートする場合は、具体的な例も提供できます)


これを実行して意味のあるp値を取得することはできません。それらは変数選択の差異を考慮していません。
Matthew Drury

私の回答を編集しました-引用したパッケージhdiはOKであり、変数の選択による変動を考慮に入れています...
Tom Wenseleers 2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.