タグ付けされた質問 「lasso」

係数をゼロに向かって縮小し、それらの一部をゼロに等しくする回帰モデルの正則化方法。したがって、投げ縄は特徴選択を実行します。


1
Rでの投げ縄回帰の交差検証
R関数cv.glm(ライブラリ:ブート)は、一般化線形モデルの推定K分割交差検定予測誤差を計算し、デルタを返します。なげなわ回帰(ライブラリ:glmnet)にこの関数を使用することには意味がありますか?その場合、どのように実行できますか?glmnetライブラリは、交差検証を使用して最適な回転パラメーターを取得しますが、最終的なglmnet方程式を交差検証する例は見つかりませんでした。

1
説明モデルのLASSO:パラメーターが縮小されているかどうか?
データを理解することを主な目的とする分析を行っています。データセットは相互検証(10k)に十分な大きさで、予測子には連続変数とダミー変数の両方が含まれ、結果は連続です。主な目標は、モデルを解釈しやすくするために、いくつかの予測子を除外することが理にかなっているかどうかを確認することでした。 質問: 私の質問は、「どの変数が結果を説明し、その説明の「十分に強い」部分であるか」です。ただし、Lassoのラムダパラメーターを選択するには、交差検証、つまり予測有効性を基準として使用します。推論を行う場合、予測有効性は、私が尋ねている一般的な質問に対する十分な代案ですか? LASSOは8つの予測子のうち3つだけを保持したとしましょう。そして今、私は「これらが結果にどのような影響を与えるか」と自問します。たとえば、性別の違いを発見しました。投げ縄収縮後の係数は、女性のスコアが男性よりも1ポイント高いことを示しています。しかし、収縮がない場合(つまり、実際のデータセットでは)、スコアは2.5ポイント高くなります。 私の「本当の」性別効果としてどれをとりますか?予測の妥当性によってのみ行くと、それは収縮係数になります。 または、ある文脈で、統計に精通していない人々のためにレポートを書いていると言います。どの係数を彼らに報告しますか?

1
投げ縄モデルから除外または含まれている変数を解釈するにはどうすればよいですか?
他の投稿から、ラッソーモデルに入る予測変数に「重要度」または「重要度」を帰属させることはできないと述べました。これらの変数のp値または標準偏差の計算はまだ進行中であるためです。 その推論の下で、投げ縄モデルから除外された変数は「無関係」または「重要ではない」とは言えないと断言するのは正しいですか? もしそうなら、ラッソーモデルに除外または含まれている変数について実際に何を主張できますか?私の特定のケースでは、ランダム値を減らし、エラー曲線を平均化するために、10倍の交差検証を100回繰り返すことにより、調整パラメーターlambdaを選択しました。 UPDATE1:以下の提案に従い、ブートストラップサンプルを使用して投げ縄を再実行しました。100個のサンプルを試してみました(その量は私のコンピューターの電源で一晩で管理できる量でした)と、いくつかのパターンが現れました。41の変数のうち2つがモデルに95%以上入り、3つの変数が90%を超え、5つの変数が85%を超えました。これらの5つの変数は、元のサンプルで実行したときにモデルに入力された9つの変数の1つであり、そのとき係数値が最も高かったものです。1000のブートストラップサンプルを使用してLassoを実行し、それらのパターンが維持されている場合、私の結果を提示する最良の方法は何ですか? 1000のブートストラップサンプルで十分ですか?(私のサンプルサイズは116です) すべての変数とそれらがモデルに入力される頻度をリストし、より頻繁に入力される変数が有意である可能性が高いと主張する必要がありますか? それは私の主張でできる限りですか?仕掛品ですので(上記参照)カットオフ値は使えませんよね? UPDATE2:以下の提案に従って、私は以下を計算しました。平均して、元のモデルの変数の78%が100のブートストラップサンプルに対して生成されたモデルに入りました。一方、その逆では41%に過ぎません。これは、ブートストラップサンプル用に生成されたモデルには、元のモデル(9)よりもはるかに多くの変数(平均17)が含まれる傾向があるという事実に大きく関係しています。 UPDATE3:ブートストラップとモンテカルロシミュレーションから得た結果の解釈を手伝っていただけるなら、この他の投稿をご覧ください。

1
Lassoの公式間の関係
この質問は馬鹿げているかもしれませんが、ラッソ回帰には2つの異なる定式化があることに気づきました。Lasso問題は、次のように表される、二乗損失と -1ペナルティ項からなる目的を最小化することであることを知っています。 LLLminβ∥y−Xβ∥22+λ∥β∥1minβ‖y−Xβ‖22+λ‖β‖1 \min_\beta \|y - X \beta\|_2^2 + \lambda \|\beta\|_1 \; しかし、なげなわ推定器が β^n(λ)=argminβ{12n∥y−Xβ∥22+λ∥β∥1}β^n(λ)=arg⁡minβ{12n‖y−Xβ‖22+λ‖β‖1} \hat{\beta}_n(\lambda) = \displaystyle\arg \min_{\beta} \{\frac {1}{2n} \|y - X \beta\|_2^2 + \lambda \|\beta\|_1 \} 私の質問は、同等ですか?\ frac {1} {2n}という用語はどこから来るのですか?12n12n\frac {1}{2n}2つの製剤間の関係は私には明らかではありません。 [更新]私が尋ねるべきもう一つの質問は、 なぜ2番目の定式化があるのですか?理論的または計算的に、そのように問題を定式化する利点は何ですか?
9 lasso 

1
glmnetは過剰分散をどのように処理しますか?
カウントデータに対してテキストをモデル化する方法、特にこの機能を使用してlasso機能を削減する方法について質問があります。 オンライン記事がN個あり、各記事のページビュー数があるとします。記事ごとに1グラムと2グラムを抽出しましたが、1,2グラムに対して回帰を実行したいと思いました。特徴(1,2グラム)は観測数よりもはるかに多いため、なげなわは特徴の数を減らすための良い方法です。また、glmnetなげなわ分析を実行するのに本当に便利であることがわかりました。 しかし、ページビューのカウント数は、(分散>平均)overdispersedされていますが、glmnet提供していませんquasipoisson(明示的)またはnegative binomialが、poissonカウントデータについて。私が考えた解決策はlog transform、カウントデータ(社会科学者の間で一般的に使用される方法)であり、応答変数をほぼ正規分布に従うようにすることです。そのため、を使用して、ガウスファミリーでデータをモデル化できglmnetます。 だから私の質問は、そうすることは適切ですか?または、glmnetケースglmnetハンドルにpoissonを使用しますquasipoissonか?または、他のRパッケージがこの状況を処理しますか? どうもありがとうございました!

3
kカテゴリ変数に相当する回帰平滑化スプラインでのkノットの選択?
私は、患者の年齢(年で測定された整数量)が予測変数の1つである予測コストモデルに取り組んでいます。年齢と入院のリスクの間の強い非線形関係は明らかです: 患者の年齢に応じて、ペナルティ付き回帰平滑化スプラインを検討しています。よると、統計的学習の要素(Hastieら、2009、P.151)、最適な結び目の配置は、会員の年齢のユニークな値ごとに結び目があります。 年齢を整数として保持しているとすると、ペナルティ付きスムージングスプラインは、データセットで見つかった年齢の値ごとに1つ(マイナス1つ)の、101の異なる年齢インジケーター変数でリッジ回帰または投げ縄を実行することに相当しますか?各年齢インジケーターの係数がゼロに向かって縮小されるため、過剰パラメーター化は回避されます。

4
ラグの順序をなげなわにしますか?
という形式の縦断データがあるとします(複数の観測結果があり、これは単一の観測値の形式です)。制限に興味があります。無制限のは、 with。Σ Σ YのJ = α J + J - 1 Σ ℓ = 1つの φのℓのJ YのJ - ℓ + ε jのε J〜N (0 、σ J)Y =( Y1、… 、YJ)〜N(μ 、Σ )Y=(Y1,…,YJ)∼N(μ,Σ)\mathbf Y = (Y_1, \ldots, Y_J) \sim \mathcal N(\mu, \Sigma)ΣΣ\SigmaΣΣ\SigmaYj= αj+ ∑ℓ = 1j − 1φℓのJYJ - ℓ+ εjYj=αj+∑ℓ=1j−1ϕℓjYj−ℓ+εj Y_j …

1
カテゴリカルデータのペナルティ付き方法:因子のレベルを組み合わせる
ペナルティモデルは、パラメーターの数がサンプルサイズ以上のモデルを推定するために使用できます。この状況は、カテゴリデータまたはカウントデータの大きなスパーステーブルの対数線形モデルで発生する可能性があります。これらの設定では、他の因子との相互作用の観点からそれらのレベルが区別できない因子のレベルを組み合わせることにより、テーブルを折りたたむことが望ましいまたは役立つこともよくあります。2つの質問: LASSOやエラスティックネットなどのペナルティモデルを使用して、各要素内のレベルの折りたたみ性をテストする方法はありますか? 最初の質問に対する答えが「はい」の場合、レベルの崩壊とモデル係数の推定が1つのステップで発生するように設定できますか?

2
データのROC曲線を計算する
そのため、ハミング距離を使用して生体認証特性から個人を認証しようとしている16のトライアルがあります。しきい値は3.5に設定されています。私のデータは以下であり、トライアル1のみが真陽性です。 Trial Hamming Distance 1 0.34 2 0.37 3 0.34 4 0.29 5 0.55 6 0.47 7 0.47 8 0.32 9 0.39 10 0.45 11 0.42 12 0.37 13 0.66 14 0.39 15 0.44 16 0.39 私の混乱のポイントは、このデータからROC曲線(FPR対TPR OR FAR対FRR)を作成する方法が本当にわからないということです。どちらでもかまいませんが、どうやって計算するのか混乱しています。任意の助けいただければ幸いです。
9 mathematical-statistics  roc  classification  cross-validation  pac-learning  r  anova  survival  hazard  machine-learning  data-mining  hypothesis-testing  regression  random-variable  non-independent  normal-distribution  approximation  central-limit-theorem  interpolation  splines  distributions  kernel-smoothing  r  data-visualization  ggplot2  distributions  binomial  random-variable  poisson-distribution  simulation  kalman-filter  regression  lasso  regularization  lme4-nlme  model-selection  aic  r  mcmc  dlm  particle-filter  r  panel-data  multilevel-analysis  model-selection  entropy  graphical-model  r  distributions  quantiles  qq-plot  svm  matlab  regression  lasso  regularization  entropy  inference  r  distributions  dataset  algorithms  matrix-decomposition  regression  modeling  interaction  regularization  expected-value  exponential  gamma-distribution  mcmc  gibbs  probability  self-study  normality-assumption  naive-bayes  bayes-optimal-classifier  standard-deviation  classification  optimization  control-chart  engineering-statistics  regression  lasso  regularization  regression  references  lasso  regularization  elastic-net  r  distributions  aggregation  clustering  algorithms  regression  correlation  modeling  distributions  time-series  standard-deviation  goodness-of-fit  hypothesis-testing  statistical-significance  sample  binary-data  estimation  random-variable  interpolation  distributions  probability  chi-squared  predictor  outliers  regression  modeling  interaction 

2
多重共線性が高い場合、LASSO係数は0に縮小されますか?
与えられた、LASSO係数と理由の理論的な行動は何ですか?x2=2x1x2=2x1x_2 = 2 x_1 のでしょうが1やにシュリンクまたはその両方?x1x1x_1x2x2x_2000 require(glmnet) x1 = runif(100, 1, 2) x2 = 2*x1 x_train = cbind(x1, x2) y = 100*x1 + 100 + runif(1) ridge.mod = cv.glmnet(x_train, y, alpha = 1) coef(ridge.mod) #3 x 1 sparse Matrix of class "dgCMatrix" # 1 #(Intercept) 1.057426e+02 #x1 9.680073e+01 #x2 3.122502e-15

1
LARSアルゴリズムからのLASSO正則化パラメーター
彼らの独創的な論文'Least Angle Regression'で、Efron らは、完全なLASSO正則化パスを計算できるようにするLARSアルゴリズムの簡単な修正について説明しています。 私はこのバリアントを正常に実装し、通常、出力パスをステップ数(LARSアルゴリズムの連続反復)または回帰係数のノルム()ます。l1l1l_1∥β∥1‖β‖1\Vert \beta \Vert_1 それでも、そこにあるほとんどのパッケージは、LASSOペナルティ係数観点から正則化パスを提供しているようです(たとえば、「mode」引数を使用してさまざまな表現を切り替えることができるLARSのLARS)。λλ\lambda 私の質問は、ある表現から別の表現に切り替えるために使用されるメカニズムは何ですか?私はそれに関連するさまざまな質問を見てきました(より具体的には、不等式制約を適切なペナルティ用語)。満足のいく答えは見つかりませんでした。λ ‖ β ‖ 1∥β∥1≤t‖β‖1≤t\Vert \beta \Vert_1 \leq tλ∥β∥1λ‖β‖1\lambda \Vert \beta \Vert_1 [編集] 必要な変換を実行するいくつかのMATLABコードの内部を調べました。各LARSステップ、これは計算方法のようです。λkkkλλ\lambda λ(k)=max(2|XTy|), for k=1λ(k)=max(2|XTy|), for k=1 \lambda(k) = \max( 2 \vert X^T y \vert ),\ \ \ \text{for } k=1 λ(k)=median(2|XTAkrAk|), ∀k>1λ(k)=median(2|XAkTrAk|), ∀k>1 \lambda(k) = \text{median}( 2 \vert X_{\mathcal{A}_k}^T …

1
エラスティックネット回帰におけるラムダの範囲
\def\l{|\!|} 弾性ネット回帰が与えられた minb12||y−Xb||2+αλ||b||22+(1−α)λ||b||1minb12||y−Xb||2+αλ||b||22+(1−α)λ||b||1\min_b \frac{1}{2}\l y - Xb \l^2 + \alpha\lambda \l b\l_2^2 + (1 - \alpha) \lambda \l b\l_1 クロス検証のために適切な範囲の\ lambdaをどのように選択できλλ\lambdaますか? でα=1α=1\alpha=1の場合(リッジ回帰)式 dof=∑js2js2j+λdof=∑jsj2sj2+λ\textrm{dof} = \sum_j \frac{s_j^2}{s_j^2+\lambda} 各ラムダに同等の自由度を与えるために使用でき(ここでsjsjs_jはXの特異値ですXXX)、自由度は適切な範囲で選択できます。 ではα=0α=0\alpha=0の場合(なげなわ)私たちが知っていること λ>λmax=maxj|∑tytXtj|λ>λmax=maxj|∑tytXtj|\lambda > \lambda_{\textrm{max}} = \max_j|\sum_t y_t X_{tj}| 結果として、すべてのbjbjb_jはゼロになり、λλ\lambdaは(0、\ lambda_ \ textrm {max})の範囲で選択できます(0,λmax)(0,λmax)(0, \lambda_\textrm{max})。 しかし、どのように混合ケースを処理するのですか?

3
glmnetを使用する場合、予測子の有意性を主張するためにp値の有意性を報告する方法は?
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)を試しました。ただし、なげなわペナルティモデルでは、リッジペナルティモデルよりもはるかに低い逸脱度が得られます。共線性が非常に高い両方の予測子を報告できる他の方法はありますか?

1
機能選択に投げ縄を使う理由
高次元のデータセットがあり、特徴選択を実行したいとします。1つの方法は、このデータセットで最も重要な機能を特定できるモデルをトレーニングし、これを使用して最も重要でない機能を破棄することです。 実際には、これにsklearnのSelectFromModelトランスフォーマーを使用します。ドキュメントによると、feature_importances_またはcoef_属性のいずれかを持つ任意の推定量はそうするでしょう。 ほかになげなわ、他の多くの線形モデルは、この属性を持つ(線形回帰、リッジとElasticNetは少数を示すために)との識別のために使用することができる最も重要な機能を。 Lassoがデータセットの最も重要な特徴を特定するための最も人気のあるモデルになっている理由は何ですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.