設定での回帰:正則化方法(ラッソ、PLS、PCR、リッジ)の選択方法


15

私はのために行くかどうかを確認しようとしているリッジ回帰LASSO主成分回帰(PCR)、または部分最小二乗変数/機能(の数が多い状況で(PLS))およびサンプルの数が少ない(N < p)、私の目的は予測です。pn<p

これは私の理解:

  1. リッジ回帰は、回帰係数を縮小しますが、すべての係数をせずに使用します0

  2. LASSOは係数も縮小しますが、変数をにしますつまり、変数選択も行うことができます。0

  3. 主成分回帰では、nより小さくなるように成分が切り捨てられます。p - n成分を破棄します。pnpn

  4. 部分最小二乗も回帰の入力の線形結合のセットを構築しますが、PCRとは異なり、次元削減のためにXに加えて)を使用します。PCRとPLS回帰の主な実際的な違いは、同じ予測エラーを達成するために、PCRがPLSよりも多くのコンポーネントを必要とすることが多いことです(こちらを参照)。yX

次のダミーデータを検討します(実際に使用しようとしているデータは似ています)。

#random population of 200 subjects with 1000 variables 

M <- matrix(rep(0,200*100),200,1000)
for (i in 1:200) {
set.seed(i)
  M[i,] <- ifelse(runif(1000)<0.5,-1,1)
}
rownames(M) <- 1:200

#random yvars 
set.seed(1234)
u <- rnorm(1000)
g <- as.vector(crossprod(t(M),u))
h2 <- 0.5 
set.seed(234)
y <- g + rnorm(200,mean=0,sd=sqrt((1-h2)/h2*var(g)))

myd <- data.frame(y=y, M)

4つの方法の実装:

 require(glmnet)

 # LASSO 
 fit1=glmnet(M,y, family="gaussian", alpha=1)

 # Ridge   
 fit1=glmnet(M,y, family="gaussian", alpha=0)

 # PLS
 require(pls)
 fit3 <- plsr(y ~ ., ncomp = 198, data = myd, validation = "LOO")
 # taking 198 components and using leave-one-out cross validation 
 summary(fit3)
 plot(RMSEP(fit3), legendpos = "topright")

 # PCR 
 fit4 <- pcr(y ~ ., ncomp = 198, data = myd, validation = "LOO")

データの最良の説明は次のとおりです。

  1. 、ほとんどの場合 p > 10 n ;p>np>10n

  2. 変数(およびY)は、異なる程度で互いに相関しています。XY

私の質問は、この状況に最適な戦略はどれですか?どうして?


6
回答はありませんが、Elements of Statistics Learningの第18章はこのトピックに当てられており、あなたが言及するすべてのテクニックをカバーしていると思います。
シャドウトーカー


@ssdecontrolあなたが投稿した本をありがとう。とても役立つ
クリスティーナ

回答:


29

あなたの質問に対する単一の答えはないと思います-それは多くの状況、データ、あなたがやろうとしていることに依存します。変更の一部は、目標を達成するために変更できるか、変更する必要があります。ただし、次の一般的な説明が役立ちます。

より高度な方法に進む前に、最初に基本モデルである最小二乗(LS)回帰について説明しましょう。完全なモデルのパラメーターの最小二乗推定が満足できない理由は2つあります。

  1. 予測品質:最小二乗推定値は、バイアスが小さい場合が多く、分散が大きい場合があります。予測係数は、回帰係数の縮小や、一部の係数をゼロに設定することにより改善される場合があります。この方法でバイアスは増加しますが、予測の分散は大幅に減少し、全体的に予測が改善されます。バイアスと分散のこのトレードオフは、平均二乗誤差(MSE)を分解することで簡単にわかります。 MSEが小さいほど、新しい値の予測が向上します。

  2. 解釈可能性:多数の予測変数が利用可能な場合、最も影響が大きい変数を特定し、予測に関係のない変数をゼロに設定するのが理にかなっています。したがって、一部の詳細のみを説明する変数を削除しますが、応答変数の主要な説明を可能にする変数は保持します。

したがって、変数の選択方法が登場します。変数選択では、すべての入力変数のサブセットのみが使用され、残りはモデルから削除されます。最良のサブセット回帰 FiはサイズのサブセットNDS それぞれについてK { 0 1 p }は最小のRSSを提供します。効率的なアルゴリズムは、Leaps and Boundsアルゴリズムと呼ばれるもので、最大30個または40個のリグレッサ変数を処理できます。データセットが40を超える場合kk{0,1,...,p}304040入力変数すべての可能なサブセットの検索は実行不可能になります。したがって、前方ステップワイズ選択と後方ステップワイズ選択は便利です。 後方選択pが非常に高いです。適切に定義されたモデルを得るために、場合にのみ使用できます。これらの方法の計算効率は、n>pp

多くの場合、(あなたのように)多くの入力があり、多くの場合(あなたの場合のように)高度に相関しています。相関性の高いリグレッサの場合、OLSは数値的に不安定なパラメーター、つまり信頼性の低い推定値につながります。この問題を回避するために、派生した入力方向を使用するメソッドを使用します。これらのメソッドは、少数の線形結合z kk = 1、2 ... )を生成します。元の入力xの qβzk,k=1,2,...,q、回帰の入力として使用されます。xj

これらの方法は、線形結合の構築方法が異なります。主成分回帰(PCR)は、元のデータから、主成分と呼ばれる新しい無相関変数セットへの変換を探します。

部分最小二乗(PLS)回帰 -この手法は、回帰の入力の線形結合のセットも構築しますが、主成分回帰とは異なり、この構築にはXに加えてを使用します。yXの両方が中心にあると仮定します。線形モデルでパラメーターβを計算する代わりに、いわゆる潜在変数モードでパラメーターγを推定します。私たちは、新しいCOEのFFIのcients前提とγ寸法であるQ P不完全または部分的な情報が含まれています。PLSはyも使用するためyXyXβγγqp。PLSは、の加重バージョンで回帰を行いますXyを使用してPLS方向を決定するため、この方法は、たとえばPCRよりも優れた予測パフォーマンスを持つと想定されています。PCRとは対照的に、PLSはとの高い分散と大きな相関関係を持つ方向を探しています。yます。

λ0λ収縮量、大きいです。係数はゼロに向かって(および互いに向かって)縮小します。

ββ。係数にサイズの制約を課すことにより、この現象を防ぐことができます。

Xpq固有値。

Yi)と推定値ます。L1とL2の違いは、L2が重みの2乗の合計であるのに対して、L1は重みの合計であるだけです。 L1-normはスパース係数を生成する傾向があり、組み込みの機能選択があります。L1-normには分析ソリューションはありませんが、L2-normにはあります。これにより、L2-ノルムソリューションを効率的に計算できます。L2-normには独自のソリューションがありますが、L1-normにはありません。

s0sは、予想される予測誤差の推定値を最小化するように適切に選択する必要があります。

pN

主成分分析は、データセットに大きな変動を示す特徴の線形結合を見つけるための効果的な方法です。しかし、ここで求めるのは、高い分散と結果との有意な相関の両方を持つ線形結合です。したがって、主成分分析を奨励して、結果と高い相関関係を持つ特徴の線形結合を見つけることをお勧めします- 教師付き主成分統計学習の本の678ページのアルゴリズム18.1を参照してください)

部分最小二乗法は、ノイズの多いフィーチャに重みを付けますが、それらを破棄しません。その結果、多数のノイズの多い特徴が予測を汚染する可能性があります。しきい値付きPLSは、監視対象主成分のノイズの多いバージョンと見なすことができるため、実際にはうまく機能するとは思われないかもしれません。監視された主成分は、Threshold PLSよりも低いテストエラーを生成できます。ただし、少数の機能のみを含むスパースモデルが常に生成されるとは限りません。

一方、投げ縄は、データからスパースモデルを生成します。Ridgeは常に平均を実行できます。たくさんある場合は投げ縄が良い選択だと思いますp。監視された主成分もうまく機能します。


1
詳細な回答については+1。(1)に関して:推定器から予想されるMSE損失はBias2+分散、既約エラーでファクタリングのない回帰推定から

2
「L2-normにはユニークな解決策があり、L1-normにはない解決策」と言うときはどういう意味ですか?投げ縄目的は、凸状...である
アンドリュー・M
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.