機械学習メモ (4) モデルの一般化、過学習と過小学習、L1 正則化、L2 正則化

1. 過学習と過小学習

  • アンダーフィッティング アンダーフィッティングアルゴリズム
    によってトレーニングされたモデルは、データの関係を完全に表現できません
    ここに画像の説明を挿入

  • 過学習過学習
    アルゴリズムによってトレーニングされたモデルは、データ間のノイズ関係が多すぎることを表現します。
    ここに画像の説明を挿入

2. 学習曲線

学習曲線: 横軸にトレーニング サンプルの数をとり、縦軸にトレーニング サンプルと相互検証サンプルのモデルの平均スコアとスコア間隔をとり、描かれた曲線が学習曲線です。
ここに画像の説明を挿入

  • アンダーフィッティングの学習曲線の
    トレーニングとテストは、最終的により大きな位置で安定しました
    ここに画像の説明を挿入
  • 最適な学習曲線の
    トレーニングとテストが最終的に小さな位置で安定しました
    ここに画像の説明を挿入
  • 過学習学習曲線の
    学習とテスト 最終的な安定位置の偏差が大きい
    ここに画像の説明を挿入

3. データ分割

  • トレーニング セット
    モデルの内部パラメーターをトレーニングするために使用されるデータ セット。Classfier はトレーニング セットに従って直接調整し、より良い分類結果を取得します。

  • 検証セットは、
    トレーニング プロセス中にモデルの状態と収束をテストするために使用されます。検証セットは通常、ハイパーパラメータの調整に使用され、検証セット上の複数のモデル セットのパフォーマンスに基づいて、どのハイパーパラメータ セットが最高のパフォーマンスを持つかが決定されます。
    同時に、検証セットを使用して、トレーニング プロセス中にモデルが過学習しているかどうかを監視することもできます。一般に、検証セットのパフォーマンスが安定した後、トレーニングを続けると、トレーニング セットのパフォーマンスが低下します。は上昇し続けますが、検証セットは増加せずに減少するため、一般に過学習が発生します。

  • テスト セット テスト
    セットは、モデルの汎化能力を評価するために使用されます。つまり、前のモデルは検証セットを使用してハイパーパラメーターを決定し、トレーニング セットを使用してパラメーターを調整し、最後にまだ使用されていないデータ セットを使用します。モデルが機能しているかどうかを判断するために見られます。

  • 3つのイメージの違いは
    、「トレーニングセットは教科書のようなものです。教科書の内容に基づいて知識を習得します。検証セットは宿題のようなものです。宿題を通じて、さまざまな生徒の学習状況や学習状況を知ることができます。」上達のスピード 最後のテスト このセットは試験のようなものです。試験ではこれまでに見たことのない問題が出題され、生徒が 1 つの事例から推測する能力が試されます。

  • なぜテスト セットが必要なのでしょうか?
    トレーニング セットはモデル調整のプロセスに直接関与しており、明らかにモデルの真の能力を反映するために使用することはできません。このようにして、教科書を暗記 (過剰学習) して暗記する一部の学生は、最高の成績ですが、これは明らかに間違っています。同様に、検証セットは手動調整 (ハイパーパラメータ) のプロセスに参加するため、問題バンクに取り組む学生が優秀な学生とみなされないのと同様に、モデルを最終的に判断するために使用することはできません。したがって、生徒(モデル)の本当の能力を調べるには、最終試験(テストセット)に合格する必要があります。

ただし、モデルの品質を 1 回のテストだけで判断するのは明らかに無理があるため、次に交差検証方法を紹介します。

ここに画像の説明を挿入

4. 相互検証

いわゆる相互検証では、一定の割合のデータをトレーニング サンプルとして選択し、その他のサンプルを予約サンプルとして選択し、トレーニング サンプルの回帰式を取得し、予約サンプルで予測を行います。ホールドアウト サンプルにはモデル パラメーターの選択が含まれないため、新しいデータよりも正確な推定値を取得できます。
ここに画像の説明を挿入

  1. k 分割交差検証
    トレーニング データ セットを k 個の部分に分割します (k 分割交差検証と呼ばれます)。欠点は、k 個のモデルがすべてトレーニングされるため、全体のパフォーマンスが k 倍遅くなることに相当します。
  2. Leave-One 法 LOO-CV は、
    トレーニング データセットを m 個のポイントに分割します。これは、Leave-One-Out 相互検証と呼ばれます。
    利点: ランダム性の影響をまったく受けず、モデルの実際のパフォーマンス指標に最も近いです。
    欠点:最大の計算量

5. バイアス分散のトレードオフ

  • バイアスは、
    予測値の期待値と実際の値の差を表します。下図の 2 行目に示すように、偏差が大きいほど実際のデータからの乖離が大きくなります。
    偏見の主な原因: 問題自体についての誤った仮定! 栗の話です。線形回帰は、一般にアンダーフィッティングとして動作する非線形データに使用されます。
  • 分散は
    、予測値の変動の範囲、分散の程度、つまり期待値からの距離を表します。以下の図の右の列に示すように、分散が大きいほど、データの分布はより分散します。データのわずかな変動がモデルに大きな影響を与える可能性があります。通常、使用されるモデルは複雑すぎます。高次多項式回帰など、一般に過学習として現れます。
    ここに画像の説明を挿入

本質的に分散が高いアルゴリズムがいくつかあります。kNNなど。ノンパラメトリック学習は通常、分散の高いアルゴリズムです。データに関して仮定が行われていないためです。本質的に高バイアス アルゴリズムであるアルゴリズムがいくつかあります。線形回帰など。パラメーター学習は通常、高バイアス アルゴリズムです。データに関する非常に強い仮定があるためです。ほとんどのアルゴリズムには、kNN の k など、バイアスと分散を調整できる対応するパラメーターがあります。バイアスと分散は矛盾することがよくあります。バイアスを減らすと分散が増加します。分散を小さくすると、バイアスが大きくなります。機械学習の主な課題は分散にあります。高い差異に対処する一般的な手段:

  1. モデルの複雑さを軽減する
  2. データの次元を削減し、ノイズを除去します。
  3. サンプル数を増やす
  4. 検証セットを使用する
  5. モデルの正則化

6.モデルの正則化 正則化

簡単に言えば、正則化はテストエラーを減らすための動作です。機械学習モデルを構築するときの最終的な目標は、新しいデータに直面したときにモデルが適切に機能するようにすることです。ニューラル ネットワークなどのより複雑なモデルを使用してデータを近似すると、過学習 (トレーニング セットのパフォーマンスが良く、テスト セットのパフォーマンスが低下) が起こりやすくなり、モデルの汎化能力の低下につながります。現時点では、モデルの複雑さを軽減するために正則化を使用する必要があります。線形回帰では、パラメータθ \thetaの場合、θが大きすぎて特徴量が多すぎると、次の図に示すように過学習が発生しやすくなります。
ここに画像の説明を挿入

6.1. 正則化

リッジ回帰とラッソ回帰の登場は、過剰適合の問題を解決し、損失関数に正則化項目を導入することで目的を達成することです。日常の機械学習タスクでは、リッジ回帰は、多数の特徴とサンプルの場合に対処するために最初に使用されましたが、現在では、より良い推定値を取得するために推定値にバイアスを追加するためにも使用されています。ここでλ \lambdaを導入すると、λ はすべてのθ 2 \theta^2このペナルティ項を導入することで重要でないパラメータを減らすことができ、統計学ではシュリンクと呼ばれる手法ですリッジ回帰と同様に、別の縮小 LASSO も係数を制限するための正規項を追加します。
過学習を防ぐため (θ \thetaθが大きすぎます)、目的関数J ( θ ) J(\theta)J ( θ )の後には、複雑さのペナルティ係数、つまり過学習を防ぐための正規項が続きます。正規項にはL 1 − ノルム (LASSOR 出力) L_{1-norm}(LASSO 回帰) をL1 通常_ _ _( LA S S O R e g r e s si o n ) L 2 − ノルム (リッジ回帰) L_{2-norm}(リッジ回帰)L2 通常_ _ _( R i d g e Re g r e s s i o n )、またはL 1 − ノルム L_{1-norm}L1 通常_ _ _L 2 − ノルム (弾性ネット) L_{2-ノルム}(弾性\四重ネット)L2 通常_ _ _(弾性_ _ _ _ _ _ネット_ _

6.2 リッジ回帰

J ( θ , b ) = J ( θ , b ) + λ 1 2 ∑ i = 1 m θ i 2 J(\theta,b)=J(\theta,b)+\lambda\frac{1}{2 }\sum\limits_{i=1}\limits^m\theta_i^2J ( θ ,b )=J ( θ ,b )+21i = 1メートル2

6.3、LASSO回帰

J ( θ , b ) = J ( θ , b ) + λ ∑ i = 1 mn ∣ θ i ∣ J(\theta,b)=J(\theta,b)+\lambda\sum\limits_{i=1 }\limits^mn|\theta_i|J ( θ ,b )=J ( θ ,b )+i = 1メートルn θ私は

6.4、L1 正則化、L2 正則化、エラスティックネット Elastic Net

  • L1 および L2 ノルム

まず、 xxを仮定したノルムの定義を導入します。xは、 L p L^pとなるベクトルです。Lpノルムの定義:
∣ ∣ x ∣ ∣ p = (∑ i ) ∣ xi ∣ p ) 1 p ||x||_p=(\sum\limits_i)|x_i|^p)^\frac{1}{p }× p=() x私はp )p1
係数が大きくなりすぎてモデルが複雑になるのを防ぐために、目的関数の後に係数の「ペナルティ項目」を追加するのが正則化の一般的な方法です。正則化項を追加した後の目的関数は次のとおりです。
J ( θ , b ) = J ( θ , b ) + λ 2 m Ω ( θ ) J(\theta,b)=J(\theta,b)+\frac { \lambda}{2m} \オメガ(\シータ)J ( θ ,b )=J ( θ ,b )+2m _Ω ( θ )
式中、λ 2 m \frac{\lambda}{2m}2m _は定数です、mmmはサンプル数、λ \lambdaλ は、正則化の程度を制御するために使用されるハイパーパラメータです。

  • L1 正則化 (LASSO)

L1L^1L1 つの正則化、対応するペナルティはL1 L1L 1范数:
Ω ( θ ) = ∣ ∣ θ ∣ ∣ 1 = ∑ i ∣ θ i ∣ \Omega(\theta)=||\theta||_1=\sum\limits_i|\theta_i|Ω ( θ )=θ 1=θ私は

  • L2 正則化 (リッジ)

L2L^2L2正則化する場合、対応するペナルティ項はL 2 L2L 2范数:
Ω ( θ ) = ∣ ∣ θ ∣ ∣ 2 2 = ∑ i θ i 2 \Omega(\theta)=||\theta||_2^2=\sum\limits_i\theta_i^2Ω ( θ )=θ 22=2

  • 弾性ネット 弾性ネット

対応するペナルティ項はL1 L1です。L1ノルムL2L2L 2で次の方程式を定義します。
J ( θ , b ) = J ( θ , b ) + λ ( ρ ∑ jm ∣ θ j ∣ + ( 1 − ρ ) ∑ jm θ j 2 ) J(\theta, b)= J(\theta,b)+\lambda(\rho\sum\limits_j\limits^m|\theta_j|+(1-\rho)\sum\limits_j\limits^m\theta_j^2);J ( θ ,b )=J ( θ ,b )+l ( rjメートルθj+( 1r )jメートルj2)

  • L1 正則化と L2 正則化の違い

上の式からわかるように、L 1 L^1L1正則化は、すべての特性係数の絶対値の和元の目的関数を加算することで正則化を実現しL 2 L^2L2正則化は、すべての特性係数の二乗和を正則化
どちらも和項を追加することでパラメータ サイズを制限しますが、効果は異なります:L 1 L^1L1正則化は特徴選択に適しておりL 2 L^2L2正則化は、モデルの過学習を防ぐのに適しています
勾配降下法の観点から始めて、2 つの違いを調べてみましょう。
説明の便宜上、データには 2 つの特徴、つまりθ 1 \theta_11 θ 2 \theta_22L 1 L^1を考慮しますL1正則化の目的関数は次のとおりです:
J = J + λ 2 m ( ∣ θ 1 ∣ + ∣ θ 2 ∣ ) J=J+\frac{\lambda}{2m}(|\theta_1|+|\theta_2|)J=J+2m _( θ1+θ2)
各更新ではθ 1 \theta_11θ
1 : = θ 1 − α d θ 1 = θ 1 − α λ 2 msign ( θ 1 ) − ∂ J ∂ θ 1sign ( x ) = { 1 , x > 0 0 , x = 0 − 1 , x < 0 \theta_1 :=\theta_1-\alpha d\theta_1=\theta_1-\frac{\alpha\lambda}{2m}sign(\theta_1)-\frac{\partial J}{\partial\theta_1}\ qquadsign(x)=\left\{ \begin{aligned} &&1,x>0\\ &&0,x=0\\ &&-1,x<0 \end{aligned} \right。1:=1アディ_ _1=12m _ある_サイン( θ _ _ _1)∂θ _1 Jサイン( x ) _ _ _=1 バツ>00 バツ=01 バツ<0
θ 1 \theta_1 1が正の数の場合、更新ごとに定数が減算されます。θ 1 \theta_1の場合1負の数の場合、更新のたびに定数が追加されます。特徴の係数が 0 になるケースはすべて発生しやすいです。特殊係数 0 は、特殊が結果に影響を与えないことを意味します。つまりL 1 L^1L1正則化により特徴がまばらになり、特徴の選択に役割を果たします。
ここで、L 2 L^2L2正規化された目的関数:
J = J + λ 2 m ( θ 1 2 + θ 2 2 ) J=J+\frac{\lambda}{2m}(\theta_1^2+\theta_2^2)J=J+2m _(私は12+22)
更新ごとにθ 1 \theta_11寸法:
θ 1 : = θ 1 − α d θ 1 = ( 1 − α λ m ) θ 1 − ∂ J ∂ θ 1 \theta_1 :=\theta_1-\alpha d\theta_1=(1-\frac{\alpha \lambda}{m})\theta_1-\frac{\partial J}{\partial\theta_1}1:=1アディ_ _1=( 1メートルある_)1∂θ _1 J
上の式から、更新が行われるたびに、特徴係数がL 1 L^1のようにではなく比例的にスケーリングされることがわかります。L1正則化から固定値を引くと、係数は 0 にならずに小さくなる傾向にあるため、L 2 L^2L2正則化によりモデルが単純になり、過学習が防止され、特徴の選択には影響を与えなくなります。上記はL 1 L^1L1L 2 L^2L2正則化の役割と違い。

正則化の簡単な理解:
1. 正則化の目的: 過学習を防ぐこと
2. 正則化の本質: 最適化するパラメータを制約する (制限する)

最初の点に関しては、過学習の値には大量のデータが与えられます。データにはノイズが含まれています。このデータの山を適合させるためにモデルを使用すると、ノイズ データにも適合する可能性があります。これは致命的です。一方では、モデルがより複雑になります。他方では、モデルの汎化パフォーマンスが低下します。テストする新しいデータが見つかったとき、得られる過学習モデルの精度率は低くなります。
2 番目の点については、元の解空間は全領域ですが、正則化によっていくつかの制約が追加されるため、解空間が小さくなり、個々の正則化手法では解さえも疎になります。
画像の説明を追加してください
上図の左側は Lasso 回帰、右側は Ridge 回帰です。赤い楕円と青い部分の接点が目的関数の最適解です 円であれば円周上の任意の点まで切るのは簡単ですが、座標軸まで切るのは難しいので、なので疎さはありませんが、ひし形や多角形の場合は座標軸に沿ってカットされやすいため、パラメータが疎になりやすいです。これは、L 1 L_1 である理由も説明します。L1パラダイムは希薄になります。これは、なげなわが特徴選択を実行できる理由を説明します。リッジ回帰では特徴選択を実行できませんが、 θ \thetaの場合はθの係数は、その値が比較的小さくなるように制約されるため、オーバーフィッティングの問題が大幅に軽減されます。
ここで、β 1 、β 2 \beta_1、\beta_2b1b2これらはすべてモデルのパラメータです. 最適化されるターゲットパラメータ, 青い領域は実際には解空間です. 前述したように, このとき解空間は「縮小」されます. 目的関数の最小の β 1 , β 2 \beta_1、\beta_2b1b2もう一度赤い円を見てください。この座標軸は特徴 (データ) とは何の関係もありません。完全にパラメータ座標系です。各円上で、無数の β 1 、 β 2 \beta_1、\beta_2を取得できます。b1b2,这些 β 1 , β 2 \beta_1,\beta_2 b1b2それらを使用して計算される目的関数の価値が等しいという共通の特性があります。円の中心が実際の最適パラメータですが、私たちのチームは解空間を制限しているため、最適解は「縮小された」解空間でのみ生成できます。
リッジ回帰の幾何学的意味を説明するために、2 つの変数を例に挙げます。

  1. 制約がないとき。モデルパラメータβ 1 、 β 2 \beta_1、\beta_2b1b2、正規化されました。残差二乗和 RSS は、β 1 、β 2 \beta_1、\beta_2として表すことができます。b1b2、放物面として数学的に表現できる二次関数。
    画像の説明を追加してください
  2. リッジが戻ってくる。制約項はβ 1 2 + β 2 2 ≤ t \beta_1^2+\beta_2^2\leq tです。b12+b22tは、投影 β1、β2 平面上の円に対応します。これは、下の図の円柱です。
    画像の説明を追加してください
    リッジ回帰解と元の最小二乗解の間には一定の距離があることがわかります。

参考:
https://zhuanlan.zhihu.com/p/35394638
https://www.zhihu.com/question/20448464
https://www.jianshu.com/p/569efedf6985
https://www.jianshu.com/p/569efedf6985
https://www.biaodianfu.com/ridge-lasso-elasticnet.html

おすすめ

転載: blog.csdn.net/qq_45723275/article/details/123789042