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

モデルフィッティングプロセスに追加の制約を含める(通常は複雑さのペナルティ)。過剰適合の防止/予測精度の向上に使用されます。


2
glmnetの解釈方法は?
約60の予測変数と30の観測値を持つ多変量線形回帰モデルを近似しようとしています。そのため、p> nであるため、正規化回帰にglmnetパッケージを使用しています。 私はドキュメントや他の質問を行ってきましたが、結果を解釈することはまだできません。サンプルコード(簡単にするために20の予測子と10の観測値を使用)を次に示します。 num rows = numの観測値とnum cols = numの予測子、および応答変数を表すベクトルyを含む行列xを作成します > x=matrix(rnorm(10*20),10,20) > y=rnorm(10) アルファをデフォルトのままにしてglmnetモデルに適合します(投げ縄ペナルティの場合= 1) > fit1=glmnet(x,y) > print(fit1) ラムダの値が減少すると異なる予測が得られることを理解しています(つまり、ペナルティ) Call: glmnet(x = x, y = y) Df %Dev Lambda [1,] 0 0.00000 0.890700 [2,] 1 0.06159 0.850200 [3,] 1 0.11770 0.811500 [4,] 1 0.16880 0.774600 . . . …


4
(なぜ)オーバーフィットモデルは大きな係数を持つ傾向がありますか?
変数の係数が大きいほど、モデルはその次元で「スイング」する能力が大きくなり、ノイズに適合する機会が増えると思います。モデルの分散と大きな係数との関係については合理的な意味を持っていると思いますが、オーバーフィットモデルでそれらが発生する理由についてはあまり意味がありません。それらが過剰適合の症状であり、係数の収縮はモデルの分散を減らすための技術であると言うのは間違っていますか?係数の縮小による正則化は、大きな係数は過剰適合モデルの結果であるという原則に基づいているようですが、おそらくこの手法の背後にある動機を誤解しているのでしょう。 大きな係数は一般に過剰適合の症状であるという私の直感は、次の例から得られます。 すべてがx軸上にある点をフィットさせたいとしましょう。これらの点がある多項式を簡単に構築できます。私たちのポイントがでているとしましょう。この手法は、10以上のすべての係数を提供します(1つの係数を除く)。さらにポイントを追加すると(したがって、多項式の次数が増加します)、これらの係数の大きさは急速に増加します。f (x )= (x − x 1)(x − x 2)。。。。(X - X N - 1)(X - X N)のx = 1 、2 、3 、4nnnf(x)=(x−x1)(x−x2)....(x−xn−1)(x−xn)f(バツ)=(バツ−バツ1)(バツ−バツ2)。。。。(バツ−バツn−1)(バツ−バツn)f(x) = (x-x_1)(x-x_2)....(x-x_{n-1})(x-x_n)x=1,2,3,4バツ=1、2、3、4x=1,2,3,4 この例は、現在、モデル係数のサイズと生成されたモデルの「複雑さ」をどのように結びつけているのかを示していますが、実際の動作を実際に示すためにこのケースが不毛になることを心配しています。私は意図的にオーバーフィットモデル(2次サンプリングモデルから生成されたデータにフィットする10次多項式OLS)を構築し、私のモデルでほとんど小さな係数を見ることに驚きました: set.seed(123) xv = seq(-5,15,length.out=1e4) x=sample(xv,20) gen=function(v){v^2 + 7*rnorm(length(v))} y=gen(x) df = data.frame(x,y) model = lm(y~poly(x,10,raw=T), data=df) summary(abs(model$coefficients)) # Min. 1st Qu. Median …

1
L1正則化による回帰はLassoと同じであり、L2正則化による回帰はリッジ回帰と同じですか?そして、「投げ縄」の書き方は?
私は、特にAndrew Ngの機械学習コースを通じて機械学習を学習するソフトウェアエンジニアです。正則化で線形回帰を研究していると、混乱する用語が見つかりました。 L1正則化またはL2正則化による回帰 ラソ リッジ回帰 だから私の質問: L1正則化による回帰はLASSOとまったく同じですか? L2正則化による回帰は、リッジ回帰とまったく同じですか? 「LASSO」は書面でどのように使用されますか?それは「LASSO回帰」でしょうか?「投げ縄がより適切である」などの使用法を見てきました。 上記の1と2の答えが「はい」の場合、なぜこれら2つの用語に異なる名前があるのですか?「L1」と「L2」はコンピューターサイエンス/数学から、「LASSO」と「リッジ」は統計から来ていますか? これらの用語の使用は、次のような投稿を見たときに混乱を招きます。 「L1とL2の正則化の違いは何ですか?」(quora.com) 「なげなわとリッジのどちらを使用すべきですか?」(stats.stackexchange.com)



2
部分最小二乗回帰の背後にある理論
SVDとPCAを理解している人のために、部分最小二乗回帰(オンラインで入手可能)の背後にある理論の説明をお勧めできますか?私は多くのソースをオンラインで見てきましたが、厳密さとアクセシビリティの適切な組み合わせを備えたものは見つかりませんでした。 統計的学習の要素を調べました。これは、相互検証、QLS(部分最小二乗法)回帰とは何か、OLSとはどう違うのかという質問に対するコメントで提案されました。、しかし、私はこの参照がトピックの正義を行うとは思わない(そうするのは簡単すぎて、主題に関する多くの理論を提供しない)。私が読んだから、PLS、予測変数の線形結合を利用その最大化共分散制約を受けるとz_i ^ Tz_j = 0であれば、私\ NEQ j、ここで\ varphi_iz私= Xφ私zi=Xφiz_i=X \varphi_iyTz私yTzi y^Tz_i Z T I Z 、J = 0 、I ≠ jは、φ I∥はφ私∥ = 1‖φi‖=1\|\varphi_i\|=1zT私zj= 0ziTzj=0z_i^Tz_j=0i ≠ ji≠ji \neq jφ私φi\varphi_i共分散を最大化する順序で繰り返し選択されます。しかし、私が読んだ後でも、それが本当かどうか、もしそうなら、メソッドがどのように実行されるかはまだわかりません。

4
次数を下げるのではなく、多項式回帰で正則化を使用するのはなぜですか?
たとえば、回帰を行う場合、選択する2つのハイパーパラメーターは、多くの場合、関数の容量(たとえば、多項式の最大指数)と正則化の量です。私が混乱しているのは、なぜ低容量の機能を選択し、正規化を無視しないのですか?そのように、それは過剰適合しません。正則化とともに高容量機能を持っている場合、それは低容量機能と正則化を持たないことと同じではありませんか?

2
L1の正則化はL2よりもうまく機能しますか?
注:L1には機能選択プロパティがあります。機能選択が完全に無関係であるときに、どれを選択するかを理解しようとしています。 使用する正則化(L1またはL2)の決定方法 L1 / L2正則化のそれぞれの長所と短所は何ですか? 最初にL1を使用して機能を選択し、選択した変数にL2を適用することをお勧めしますか?

1
メチル化データのglmnetを使用した機能の選択とモデル(p >> N)
GLMとElastic Netを使用してそれらの関連機能を選択し、線形回帰モデルを構築します(つまり、予測と理解の両方であるため、比較的少ないパラメーターを残しておく方が良いでしょう)。出力は連続的です。それはだあたりの遺伝子例でした。私はパッケージについて読んでいますが、従うべき手順について100%確信が持てません。200002000020000505050glmnet CVを実行してラムダを選択します: cv <- cv.glmnet(x,y,alpha=0.5) (Q1)入力データが与えられたら、別のアルファ値を選択しますか? (Q2)モデルを構築する前に他に何かする必要がありますか? モデルに適合: model=glmnet(x,y,type.gaussian="covariance",lambda=cv$lambda.min) (Q3)「共分散」よりも優れているものはありますか? (Q4)ラムダがCVによって選択された場合、なぜこのステップが必要なのnlambda=ですか? (Q5)lambda.minまたはを使用する方が良いlambda.1seですか? 係数を取得して、どのパラメーターが抜けているか( "。")を確認します。 predict(model, type="coefficients") ヘルプページでは、多くがあるpredict方法(例えば、predict.fishnet、predict.glmnet、predict.lognet、など)。しかし、例で見たように、「プレーン」は予測します。 (Q6)またはその他を使用する必要がありますpredictかpredict.glmnet? 正則化方法について読んだことにもかかわらず、私はRとこれらの統計パッケージがまったく新しいので、問題をコードに適合させているかどうかを確認することは困難です。どんな提案も歓迎します。 UPDATE に基づいて、クラス列のオブジェクトがという要素が含まれ先に述べたように、」finalModelリサンプリングによって選択されたチューニングパラメータの値を装着したモデルで、このオブジェクトはことを使用して、新しいサンプルの予測を生成するために、伝統的な方法で使用することができますモデルの予測関数。」 caretアルファとラムダの両方を調整するために使用: trc = trainControl(method=cv, number=10) fitM = train(x, y, trControl = trC, method="glmnet") fitM前のステップ2を交換しますか?その場合、glmnetオプション(type.gaussian="naive",lambda=cv$lambda.min/1se)を今指定する方法は? そして、次predictのステップでは、私は置き換えることができますmodelにfitM? 私が行った場合 trc = trainControl(method=cv, number=10) fitM = train(x, y, trControl = trC, method="glmnet") …

2
正則化またはペナルティ化によるARIMAXモデルの適合(たとえば、なげなわ、エラスティックネット、またはリッジ回帰)
予測パッケージのauto.arima()関数を使用して、ARMAXモデルをさまざまな共変量に適合させます。ただし、選択する変数は多数あることが多く、通常はそれらのサブセットで機能する最終モデルになります。私は人間であり、バイアスの影響を受けるため、変数選択のアドホックな手法は好きではありませんが、時系列の相互検証は難しいので、利用可能な変数のさまざまなサブセットを自動的に試す良い方法が見つかりませんでした。自分の最高の判断力を使ってモデルを調整するのにこだわっています。 glmモデルを適合させると、glmnetパッケージを介して、正則化と変数選択にエラスティックネットまたは投げ縄を使用できます。ARMAXモデルでエラスティックネットを使用するための既存のツールキットがRにありますか、それとも自分でロールバックする必要がありますか?これは良いアイデアですか? 編集:ARとMAの項(例えばAR5とMA5まで)を手動で計算し、glmnetを使用してモデルに適合させるのは理にかなっていますか? 編集2:FitARパッケージは、そのすべてではなく一部を私に与えているようです。

1
閉じた形のなげなわソリューションの派生が正しくないのはなぜですか?
投げ縄問題には閉じた形式のソリューションがあります:\ beta_j ^ {\ text {lasso}} = \ mathrm {sgn}(\ beta ^ {\ text {LS}} _ j)(| \ beta_j ^ {\ text {LS }} |-\ alpha)^ + Xに正規直交列がある 場合。これは、このスレッドに示された:閉じた形投げ縄ソリューションの導出を。βlasso=argminβ∥y−Xβ∥22+α∥β∥1βlasso=argminβ⁡‖y−Xβ‖22+α‖β‖1\beta^{\text{lasso}}= \operatorname*{argmin}_\beta \| y-X\beta\|^2_2 + \alpha \| \beta\|_1βlassoj=sgn(βLSj)(|βLSj|−α)+βjlasso=sgn(βjLS)(|βjLS|−α)+ \beta_j^{\text{lasso}}= \mathrm{sgn}(\beta^{\text{LS}}_j)(|\beta_j^{\text{LS}}|-\alpha)^+ XXX ただし、一般に閉じた形式のソリューションがない理由はわかりません。亜微分を使用して、以下を取得しました。 (XXXはn×pn×pn \times p行列です) f(β)=∥y−Xβ∥22+α∥β∥1f(β)=‖y−Xβ‖22+α‖β‖1f(\beta)=\|{y-X\beta}\|_2^2 + \alpha\|{\beta}\|_1 =∑i=1n(yi−Xiβ)2+α∑j=1p|βj|=∑i=1n(yi−Xiβ)2+α∑j=1p|βj| =\sum_{i=1}^n (y_i-X_i\beta)^2 + …

2
Lassoの前の標準化は本当に必要ですか?
Lasso回帰などの前に変数を標準化する3つの主な理由を読みました。 1)係数の解釈可能性。 2)収縮後の係数推定値の相対的な大きさにより、係数の重要度をランク付けする機能。 3)傍受の必要はありません。 しかし、私は最も重要な点について疑問に思っています。標準化によってモデルのサンプル外の一般化が改善されると考える理由はありますか?また、モデルにインターセプトが必要ないかどうかは気にしません。追加しても問題はありません。

1
自由度は非整数の数値にできますか?
GAMを使用すると、残留DFは(コードの最終行)になります。どういう意味ですか?GAMの例を超えて、一般に、自由度の数を整数以外の数にすることはできますか?26.626.626.6 > library(gam) > summary(gam(mpg~lo(wt),data=mtcars)) Call: gam(formula = mpg ~ lo(wt), data = mtcars) Deviance Residuals: Min 1Q Median 3Q Max -4.1470 -1.6217 -0.8971 1.2445 6.0516 (Dispersion Parameter for gaussian family taken to be 6.6717) Null Deviance: 1126.047 on 31 degrees of freedom Residual Deviance: 177.4662 on 26.6 degrees of …
27 r  degrees-of-freedom  gam  machine-learning  pca  lasso  probability  self-study  bootstrap  expected-value  regression  machine-learning  linear-model  probability  simulation  random-generation  machine-learning  distributions  svm  libsvm  classification  pca  multivariate-analysis  feature-selection  archaeology  r  regression  dataset  simulation  r  regression  time-series  forecasting  predictive-models  r  mean  sem  lavaan  machine-learning  regularization  regression  conv-neural-network  convolution  classification  deep-learning  conv-neural-network  regression  categorical-data  econometrics  r  confirmatory-factor  scale-invariance  self-study  unbiased-estimator  mse  regression  residuals  sampling  random-variable  sample  probability  random-variable  convergence  r  survival  weibull  references  autocorrelation  hypothesis-testing  distributions  correlation  regression  statistical-significance  regression-coefficients  univariate  categorical-data  chi-squared  regression  machine-learning  multiple-regression  categorical-data  linear-model  pca  factor-analysis  factor-rotation  classification  scikit-learn  logistic  p-value  regression  panel-data  multilevel-analysis  variance  bootstrap  bias  probability  r  distributions  interquartile  time-series  hypothesis-testing  normal-distribution  normality-assumption  kurtosis  arima  panel-data  stata  clustered-standard-errors  machine-learning  optimization  lasso  multivariate-analysis  ancova  machine-learning  cross-validation 

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