エラー率は正則化パラメーターラムダの凸関数ですか?


11

RidgeまたはLassoで正則化パラメーターlambdaを選択する場合、推奨される方法は、さまざまな値のlambdaを試し、検証セットでエラーを測定し、最後に最も低いエラーを返すlambdaの値を選択することです。

関数f(lambda)= errorがConvexである場合、私にはクリートではありません。こんな感じかな?つまり、この曲線は複数の極小値を持つことができます(これは、ラムダの特定の領域でエラーの最小値を見つけても、他の一部の領域でさらに小さなエラーを返すラムダがある可能性を排除しないことを意味します)

ここに画像の説明を入力してください

あなたのアドバイスをいただければ幸いです。

回答:


11

元の質問では、誤差関数を凸にする必要があるかどうかを尋ねていました。 いいえ、違います。 以下に示す分析は、これと修正された質問についての洞察と直感を提供することを目的としています。この質問では、エラー関数が複数の極小値を持つ可能性があるかどうかを尋ねます。

直観的には、データとトレーニングセットの間に数学的に必要な関係はありません。 モデルが最初は不十分で、いくつかの正則化によって改善され、その後再び悪化するトレーニングデータを見つけることができるはずです。その場合、エラー曲線は凸型にすることはできません。少なくとも、正則化パラメーターをから∞に変化させる場合はそうではありません。0

凸面は、固有の最小値を持つことと同じではないことに注意してください!ただし、同様のアイデアは、複数の局所的な最小値が可能であることを示唆しています。正則化中、最初にフィットされたモデルは一部のトレーニングデータで改善され、他のトレーニングデータではそれほど変化しません。その後、他のトレーニングデータで改善されます。そのような訓練データの混合は、複数の極小値を生成するはずです。分析を簡単にするために、それを示すことはしません。

編集(変更された質問に回答するため)

以下に示す分析とその直感に非常に自信があったので、可能な限り大まかな方法​​で例を見つけることにしました。小さなランダムデータセットを生成し、それらに投げ縄を実行し、小さなトレーニングセットの合計二乗誤差を計算しました。そして、その誤差曲線をプロットしました。数回の試行で、2つの最小値を持つ1つが生成されました。ベクトルは、特徴x 1x 2および応答yの形式です。(x1,x2,y)x1x2y

トレーニングデータ

(1,1,0.1), (2,1,0.8), (1,2,1.2), (2,2,0.9)

テストデータ

(1,1,0.2), (1,2,0.4)

Lassoはglmnet::glmmetin を使用して実行されR、すべての引数はデフォルトのままになっています。x軸のの値は、そのソフトウェアによって報告された値の逆数です(ペナルティを1 / λでパラメーター化しているため)。λ1/λ

複数の極小値を持つエラー曲線

図


分析

のは、考えてみましょう任意のパラメータフィッティングの正則化法データには、xはIおよび対応する応答をY I:リッジ回帰と投げ縄に共通するこれらの性質を持っていますβ=(β1,,βp)xiyi

  1. (パラメータ設定)メソッドは、実数によってパラメータ化された unregularizedモデルは、に対応して、λ = 0λ[0,)λ=0

  2. (継続)パラメータ推定値βに連続的に依存λ及び任意の特徴の予測値を用いて連続的に変化ββ^λβ^

  3. (収縮)としてβ0λβ^0

  4. (有限)任意の特徴ベクトルについて、などのβ0、予測YX = F X β0xβ^0y^(x)=f(x,β^)0

  5. (単調エラー)の任意の値と比較する誤差関数予測値をYLY Y、不一致と増加| Y - Y | ように、表記法のいくつかの乱用で、我々は、としてそれを発現することができるL| Y - Y |yy^L(y,y^)|y^y|L(|y^y|)

ゼロは、任意の定数で置き換えることができます。)(4)

データは初期(unregularized)パラメータ推定値のようなものであると仮定β0 ゼロではありません。レッツコンストラクト一人の観察からなる訓練データセットX 0Y 0のためのF X 0β0 0。(そのようなx 0を見つけることができない場合、最初のモデルはあまり面白くないでしょう!)Set y 0 = f x 0β^(0)(x0,y0)f(x0,β^(0))0x0y0=f(x0,β^(0))/2

仮定は、エラー曲線暗示、これらの特性を有します。e:λL(y0,f(x0,β^(λ))

  1. ための選択の( Y 0)。e(0)=L(y0,f(x0,β^(0))=L(y0,2y0)=L(|y0|)y0

  2. (理由として λ βλ 0、そこから YX 00)。limλe(λ)=L(y0,0)=L(|y0|)λβ^(λ)0y^(x0)0

したがって、そのグラフは、2つの等しく高い(有限の)エンドポイントを連続的に接続します。

$ e $の可能なグラフを示す図。

定性的には、3つの可能性があります。

  • トレーニングセットの予測は変更されません。これはありそうもないことです。選択したどの例についても、このプロパティはありません。

  • 以下のためのいくつかの中間の予測あるより悪い開始時よりλ = 0または制限でλ 。この関数を凸型にすることはできません。0<λ<λ=0λ

  • すべての中間予測は2 y 0の間にあります。連続性は、少なくとも1、最低があるだろう意味Eその近くで、eは凸型でなければなりません。しかし、e λ は漸近的に有限定数に近づくため、十分に大きなλに対して凸型にすることはできません。02y0eee(λ)λ

図の縦の破線は、プロットが凸型(左側)から非凸型(右側)に変化する場所を示しています。(そこにも近く、非凸の領域でこの図では、これは必ずしも一般的ケースではありません。)λ0


精巧な回答ありがとうございます。可能であれば、私が編集した質問を確認し、回答を更新してください。
rf7

正解(+1)。実際には、トレーニングとテストのデータポイントはそれほど多くないことが多いと思います。同じ(固定された、十分に規則的な)分布から引き出された十分なトレーニングおよびテストデータポイントがある場合、この回答の結論は変わりますか?特に、このシナリオでは、高い確率で一意の極小値がありますか?
user795305 2017

@ベン重要なのはテストポイントの数ではありません。この結果は、トレーニングポイントの分布に対するテストポイントの分布に完全に依存します。したがって、「高い確率で」の問題は、リグレッサ変数の多変量分布について特定の仮定を行わないと解決できません。また、多くの変数が関係しているため、複数の極小値のこの現象ははるかに可能性が高くなります。私は疑い(変数など、多くの観測何度でも付き)大きなテストセットのランダムな選択があることかもしれない多くの場合、ユニークなグローバル分を持っています。
whuber

1
@whuberありがとう!私は同意します。トレーニングポイントとテストポイントの間の(真の)分布は同じである必要があり、トレーニングとテストセットの経験的分布が一致するのに十分なサンプルが必要です。(先ほどのコメントでそのように不適切に表現しているようです。)たとえば、が(正規でない共分散の)共正規分布である場合、一意のローカル最小値を持つエラー曲線が1に収束する確率を疑います(たとえば、トレーニングおよびテストセットにn 個のサンプルがあり、n pが固定されている(またはnに対してゆっくりと増加している)場合)(x,y)nnpn
user795305

0

この回答は具体的に投げ縄に関係します(リッジの回帰には当てはまりません)。

セットアップ

応答のモデル化に使用している共変量があるとします。我々が持っていると仮定しn個のトレーニングデータポイントとm個の検証データポイント。pnm

訓練入力とすると応答があることyは1 R N。このトレーニングデータでは投げ縄を使用します。すなわち、入れβ λ = argをβ R PY 1 - X 1 β 2 2 + λ β 1X(1)Rn×py(1)Rn

(1)β^λ=argminβRpy(1)X(1)β22+λβ1,
トレーニングデータから推定された係数のファミリー。我々は、選択するβ λ我々の推定は、検証セットでの誤差に基づいて、入力と、使用するX 2 R M × Pと応答Y 2 R Mλ = argをλ R +Y 2 - X 2 β λ 2 2β^λX(2)Rm×py(2)Rm我々は、誤差関数を研究に興味を持っているEλ=Y2-X2 β λ 2 2我々のデータ駆動型推定量を生じさせました β λ
(2)λ^=argminλR+y(2)X(2)β^λ22,
e(λ)=y(2)X(2)β^λ22β^λ^

計算

今、我々は、式目的の二次導関数を計算することなく、任意に分布仮定X 'SまたはYのを。分化およびいくつかの再編、我々 (正式に)計算を使用していること 2(2)Xy

2λ2y(2)X(2)β^λ22=λ{2y(2)TX(2)λβ^λ+2β^λTX(2)TX(2)λβ^λ}=2y(2)TX(2)2λ2β^λ+2(β^λ)TX(2)TX(2)2λ2β^λ+2λβ^λTX(2)TX(2)Tλβ^λ=2{(y(2)X(2)β^λ)T2λ2β^λX(2)λβ^λ22}.
β^λλKKλβ^λ2λ2β^λλK
2λ2y(2)X(2)β^λ22=2X(2)λβ^λ22,
λ

結論

X(2){X(1),y(1)}X(2)λβ^λ0λ<λmaxe(λ)RKβ^λe(λ)

X(1)β^λ22λX(2)β^λ22e(λ)L(X(1))=L(X(2))


1
あなただけに依存しています β^λe^β^(λ)=|λ[λ]|[]y(2)=0X(2)=1e^(λ)=β^(λ)2

@whuber良い点!ありがとう!この投稿はもうすぐ編集します。
user795305 2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.