【機械学習】損失関数と最適化プロセス

記事ディレクトリ


統計学習の枠組みでは、通常、与えられたデータを説明したり、適切に適合させたりできる関数や概念を見つけようとします。これは通常、ある種のリスクや損失を最小限に抑えることで達成されます。適切なモデルを見つけるために、事前に定義された仮説空間HHで試します。トレーニング データの経験的リスクが最小となるHの関数を見つけます。ただし、私たちの本当の目標は、(考えられるすべてのデータ分布に対して) 予想されるリスクが最小限に抑えられる関数を見つけることです。これには、多くの場合、モデルの複雑さとデータ上のパフォーマンスのバランスを取る必要があります。

最適な機能または概念があると仮定します。データに最もよく適合するc 、つまりc = arg min ⁡ h R ( h ) c = \argmin\limits_{h} R(h)c=h引数R(h),其中 R ( h ) R(h) R ( h )は関数hhhリスク。

実際には、すべての可能な関数空間を検索することはできないため、検索を事前定義された仮説クラスHHに制限します。Hイン。与えられたトレーニング サンプルS = { (S={( X1Y1( XY)}、関数hhhの経験的リスクRS ( h ) R_S(h)RS( h )は次のとおりです。

RS ( h ) = ∑ i = 1 n ℓ ( X i , Y i , h ) R_S(h) = \sum\limits_{i=1}^n \ell(X_i,Y_i,h)RS( h )=i = 1X私はY私はh )

予想されるリスクは、考えられるすべてのデータ分布にわたる平均リスクであり、次のように定義されます。

R ( h ) = E [ RS ( h ) ] = E [ ℓ ( X i , Y i , h ) ] R(h) = \mathbb{E}[R_S(h)] = \mathbb{E}[\エル(X_i,Y_i,h)]R ( h )=E [ RS( h )]=E [ ( X私はY私はh )]

関数空間全体における最良の仮説 (ターゲット概念) は次のとおりです。

c = arg min ⁡ h R ( h ) c = \argmin\limits_{h} R(h)c=h引数R ( h )

そして、事前定義された仮説クラスHHではHの最適仮説は次の

h ∗ = arg min ⁡ h ∈ HR ( h ) h^* = \argmin\limits_{h \in H} R(h)h=h H引数R ( h )

経験的リスクを使用してhhを推定するhトレーニング データから、次の結果が得られます。
h S = arg min ⁡ h ∈ HRS ( h ) = arg min ⁡ h ∈ H 1 n ∑ i = 1 n ℓ ( X i , Y i , h ) h_S = \argmin\限界_{h \in H} R_S(h) = \argmin\limits_{h \in H} \frac{1}{n} \sum\limits_{i=1}^n \ell(X_i,Y_i,h)hS=h H引数RS( h )=h H引数n1i = 1X私はY私はh )

したがって、適切な仮説空間と損失関数ℓ \ellを選択します。が重要です。

クラスHHを想定Hは関数のセットであり、各関数は入力特徴から出力ラベルへのマッピングを試みます。H = { h 1 , h 2 , … } H = \{ h_1, h_2, \dots \}H={ h1h2} . 通常、HHH は、線形回帰、決定木などの特定のアルゴリズムまたはモデル構造によって定義されます。

まず、0-1 損失関数は、最も直接的な分類誤差の尺度です。特定の分類子hhの場合hは、単に誤って分類されたデータポイントの数をカウントします。数学的には、これは次のように定義されます:arg min ⁡ h E [ 1 Y ≠sign ( h ( X ) ) ] \argmin\limits_{h} \mathbb{E}[1_{Y \neqsign(h(X))} 】h引数E [ 1Y= sign ( h ( X ) ) _ _]しかし、私たちがよく遭遇する問題は次のとおりです。

  1. 実データの分布P (X, Y) P(X,Y)P ( X ,Y )は不明なので、上記の期待値を直接計算することはできません。
  2. 0-1 損失は不連続かつ非凸であるため計算が難しく、最適化が複雑になります。

大数の法則は、確率変数のサンプル平均と母集団平均の間の関係を説明します。これにより、サンプル サイズが無限大に近づくにつれて、サンプル平均が全体の平均に近づくことが保証されます。より正式には、確率変数XXを考えます。X、その期待値はE [ X ] \mathbb{E}[X]E [ X ]XXの場合Xn個の独立した同一分散サンプルX 1 、 X 2 、…、 X n X_1、X_2、\dots、X_nバツ1バツ2バツ、標本平均はX n ˉ = 1 n ∑ i = 1 n X i \bar{X_n} = \frac{1}{n} \sum_{i=1}^{n} として定義されます。バツˉ=n1i = 1バツ私はn → ∞ n \rightarrow \inftyn時、X n ˉ → E [ X ] \bar{X_n} \rightarrow \mathbb{E}[X]バツˉE [ _ _ _

大数の法則により、これらのサンプルを使用して、予想損失などの特定の分布に依存する数量を推定できます。私たちの目標は、仮説によってhhを推定することであると仮定します。h [ 1 Y ≠sign ( h ( X ) ) ] \mathbb{E}[1_{Y \neq \text{sign}(h(X))}] によって生じる期待損失EE [ 1Y=記号( h ( X ) )]実分布からのD \mathcal{D}この期待値を推定するにはD :

1 n ∑ i = 1 n 1 Y i ≠sign ( h ( X i ) ) \frac{1}{n} \sum_{i=1}^{n} 1_{Y_i \neq \text{sign}(h (X_i))}n1i = 11Y私は=記号( h ( X私は) )

サンプル数nnの場合nが増加すると、上記の推定値は真の予想損失に近づきます。

実際に問題を解決できるようにするために、いわゆるサロゲート損失関数を使用します。これは最適化の観点からより扱いやすいですが、依然として 0 ~ 1 の損失関数に近似することを目指しています。

  • ヒンジ損失: これはサポート ベクター マシンで使用される損失関数です。
    ℓ ( X , Y , h ) = max ⁡ { 0 , 1 − Y h (( X ,やあh )=最大{ 0 ,1( X )}

  • ロジスティック損失: これはロジスティック回帰で使用されます。これは外れ値に対してより堅牢であり、確率の適切な推定値を提供します。

  • 最小二乗損失: 主に回帰問題で使用されます。

  • 指数損失: AdaBoost アルゴリズムで使用される損失関数です。

最も一般的な代替損失関数は、大きなサンプル制限における 0 ~ 1 の損失関数の影響をシミュレートするように設計されています。これらは、分類校正された代替損失関数と呼ばれます。これは、トレーニング データが無限の場合、これらの損失関数を使用してトレーニングされた分類器は、0 ~ 1 の損失で真の最良の分類器と一貫して動作することを意味します。

代理損失関数ℓ \ellが与えられると、と対応する関数ϕ \phiϕは、ϕ( Y h ( X ) ) = ℓ ( X , Y , h ) \phi(Yh(X)) = \ell(X, Y, h) となります。ϕ ( Yh ( X ))=( X ,やあh )ここで、YYYはラベルで、値は( − 1 , 1 ) (-1, 1)( 1 1 )、およびh ( X ) h(X)h ( X )は入力XXの分類子です。Xの予測スコア。ℓ \ell を確認するにはが分類校正されているかどうかは、通常次の条件を確認します。

  1. ϕ \ファイϕは凸です。
  2. ϕ \ファイϕは 0 で微分可能であり、ϕ ′ ( 0 ) < 0 \phi'(0) < 0ϕ' (0)<0

上記の条件を満たすということは、ほとんどの場合、特定のデータ ポイントに対して分類子hhhがエージェントの損失を最小限に抑えると、0-1 の損失も最小限に抑えられます。

たとえば、ヒンジ損失ℓ hinge ( X , Y , h ) = max ⁡ { 0 , 1 − Y h ( X ) } \ell_{\text{hinge}}(X,Y,h) = \max \{ 0 を考えてみましょう。 、1-Yh(X) \}ヒンジ( X ,やあh )=最大{ 0 ,1( X )}

対応するϕ \phiϕ関数は、ϕ ( z ) = max ⁡ { 0 , 1 − z } \phi(z) = \max \{ 0, 1-z \} です。ϕ ( z )=最大{ 0 ,1z }

この関数はz = 1 z=1にあります。z=1では微分できませんz = 0 z=0z=これは0で微分可能であり、その導関数は 0 未満であるため、ヒンジ損失は分類校正されます。

ここで、次の 2 つの分類子の定義について考えてみましょう。

  • はぁはぁhsは、限られたトレーニング データと代理損失関数に基づく最適な分類器です。
  • hc h_chcは、データ分布全体と 0-1 損失関数に基づく最適な分類器です。

サロゲート損失関数とトレーニング データを使用すると、hs h_sを見つけることができます。hs

hs = arg min ⁡ h 1 n ∑ i = 1 n ℓ ( X i , Y i , h ) h_s = \argmin\limits_{h} \frac{1}{n} \sum\limits_{i=1}^ n \ell(X_i,Y_i,h)hs=h引数n1i = 1X私はY私はh )

同時に、データ全体の分布がわかれば、hc h_cを見つけることができます。hc

hc = arg min ⁡ h E [ 1 Y ≠sign ( h ( X ) ) ] h_c = \argmin\limits_{h} \mathbb{E}[1_{Y \neq \text{sign}(h(X)) }]hc=h引数E [ 1Y=記号( h ( X ) )

トレーニング データが無限に大きい場合、代替損失関数を使用してhs h_sが取得されます。hs0-1 損失関数を使用して取得されたhc h_cと比較されます。hcますます近くなります。これは次の式で表すことができます。

E [ 1 Y ≠ 符号 ( h S ( X ) ) ] ⟶ n → ∞ E [ 1 Y ≠ 符号 ( hc ( X ) ) ] \mathbb{E}[1_{Y \neq \text{sign}(h_S( X))}] \overset{n \rightarrow \infty}{\longrightarrow} \mathbb{E}[1_{Y \neq \text{sign}(h_c(X))}]E [ 1Y=記号( hS( X ) )n E [ 1Y=記号( hc( X ) )

これは、限られたサンプル データセットに基づいてプロキシ損失を最適化するとき、実際にはそのデータセットの経験的損失を最適化していることを意味します。大数の法則により、サンプル数が増加するにつれて、この経験的損失の期待値が真の期待損失値に近づくことが保証されます。また、プロキシ損失が分類調整されている場合、このプロキシ損失を最適化すると、暗黙的に 0-1 損失が最適化されます。トレーニング データのサイズが無限大に近づくにつれて、代理損失関数を最小化することで得られる分類器の予想される 0-1 損失は、最適な 0-1 損失に近づきます。

置換損失関数が凸で滑らかな場合、勾配降下法やニュートン法などの一連の最適化アルゴリズムを使用して、次の問題を解決できます。 h = arg min ⁡ h ∈ H 1 n ∑ i =
1 n ℓ ( X i , Y i , h ) h = \argmin\limits_{h \in H} \frac{1}{n} \sum\limits_{i=1}^n \ell(X_i,Y_i,h )h=h H引数n1i = 1X私はY私はh )

関数 (f(h)) が点 (h_k) で微分可能であると仮定すると、テイラー級数を使用して (h_k) 付近の関数の値を近似できます。 f ( x + Δ x ) ≈ f ( x ) + ∇ f
( x ) T Δ x + 1 2 Δ x T ∇ 2 f ( x ) Δ x + … f(x + \Delta x) \およそ f(x) + \nabla f(x)^T \Delta x + \ frac {1}{2} \Delta x^T \nabla^2 f(x) \Delta x + \dotsf ( x+Δ × f ( x )+f ( x )TΔx __+21Δx_ _2 f(x)Δx+

上記の近似 (線形近似) の第 1 項と第 2 項だけを考慮すると、次のようになります:
f ( h + Δ h ) ≈ f ( h ) + ∇ f ( h ) T Δ hf(h + \Delta h) \およそ f(h) + \nabla f(h)^T \Delta hf ( h+Δh ) _f ( h )+f ( h )TΔh __

ここで、勾配降下法の更新ステップを考えてみましょう: hk + 1 = hk + η dk h_{k+1} = h_k + \eta d_khk + 1=h+d _、ここでdk d_kdは下降方向、Δ h = η dk \Delta h = \eta d_kΔ時間=d _Δ h \Delta hを見つけたいです。Δ h sacef( h + Δ h ) f(h + \Delta h)f ( h+Δ h )はできるだけ小さいです。上記の線形近似から、 f ( h + Δ h ) f(h + \Delta h) を作成することがわかります。f ( h+Δ h ) ∇ f ( h ) T Δ h \nabla f(h)^T \Delta hの増分f ( h )T Δhはできるだけ小さい、Δ h \Delta hΔ h は勾配∇ f ( h ) \nbla f(h)f ( h )の反対方向に整列します。したがって、通常は負の方向の勾配が選択されます− ∇ f ( h ) -\nbla f(h)f ( h )は下方向です。

ただし、特定の点で関数の曲率情報を使用したい場合、または最適化プロセスを高速化したい場合は、D k D^kを導入できます。Dk個の行列、行列D k D^kDkは、前処理行列またはスケーリング行列と呼ばれることがよくあります。

一般的な更新規則を考慮すると、hk + 1 = hk − η D k ∇ f ( hk ) h_{k+1} = h_k - \eta D^k \nabla f(h_k)hk + 1=hD _kf(hその中で、D k D^kDkは正定対称行列です。正の確実性により、更新された方向が下向きであることが保証されます。つまり、∇ f ( hk ) TD k ∇ f ( hk ) > 0 \nabla f(h_k)^TD^k \nabla f(h_k) > 0f ( h)TD _kf(h)>0

  • 最急降下

    D k = ID^k = IDk=

    このとき、行列D k D^kDkは単位行列です。これは、勾配の負の方向にのみ移動することを意味します。

  • ニュートン法

    D k = [ ∇ 2 f ( hk ) ] − 1 D^k = [\nabla^2 f(h_k)]^{-1}Dk=[ 2f (h_) ]1

    ここで、行列D k D^kDkはヘッセ行列の逆行列で、関数の曲率情報を与えます。ヘッセ行列の逆行列を使用すると、アルゴリズムの収束が速くなりますが、特に高次元では計算コストが高くなる可能性があります。

下降方向dk d_kを選択したとします。d,正確な直線探索の仕様: η = arg min ⁡ η f ( hk − η ∇ f ( hk ) ) \eta = \argmin\limits_{\eta} f(h_k - \eta \nabla f(h_k))=引数f ( hη f ( h))

簡単に言えば、ステップ サイズeta \etaを検索します。η、現在位置からhk h_kh開始、勾配方向に沿ってeta \etaを移動しますetaステップ サイズの後fff は最小値に達します。この方法では最適なステップ サイズを見つけることができますが、実際のアプリケーションでは、反復ごとに新しい最適化問題を解決する必要があるため、コストがかかる可能性があります。

L-リプシッツ連続は、成長率が制限されている関数を記述します。関数がリプシッツ連続性を満たす場合、関数の変化率は任意の 2 点間で有限であり、特定の定数によって制約されます。

関数ffが与えられるとf 、正の定数LLが存在する場合L 、ドメイン内のx 1 x_1バツ1そしてx 2 x_2バツ2、すべて次の条件を満たします:
∣ f ( x 1 ) − f ( x 2 ) ∣ ≤ L ∣ ∣ x 1 − x 2 ∣ ∣ |f(x_1) - f(x_2)| \leq L ||x_1 - x_2 | |f ( x1)f ( x2) L ∣∣ x1バツ2∣∣
の場合、関数fffは L-リプシッツ連続です。

勾配が L-リプシッツ連続であることがわかっている場合、学習率は次の式を使用して選択できます。

hk + 1 = hk − 1 L ∇ f ( hk ) h_{k+1} = h_k - \frac{1}{L} \nabla f(h_k)hk + 1=hL1f ( h)

  • 勾配降下:

    • 仮定:
      • リプシッツ勾配: これは、勾配 (または導関数) の変化が上限に従うことを意味します。
      • 凸関数: 関数は、その領域上で少なくとも局所的に凸です。
    • 収束率:
      O ( 1 k ) O\left(\frac{1}{k}\right)(k1)
      これは、アルゴリズムの誤差が反復回数 k に反比例して減少することを意味します。
  • 勾配降下:

    • 仮定:
      • リプシッツ勾配
      • 強い凸性: 通常の凸関数よりも厳密な凸性。これは、関数に下限があることを意味します。
    • 収束率:
      O ( 1 − μ L ) k O\left(1-\frac{\mu}{L}\right)^k( 1Lメートル)そのうちのk
      μ \muμは強い凸性パラメーター、LLLはリプシッツ定数です。この収束速度は、単純な凸関数よりも高速です。
  • ニュートン法:

    • 仮定:
      • リプシッツ勾配
      • 強い凸面
    • 収束率:
      ∑ i = 1 k ρ k \sum\limits_{i = 1}^{k}\rho_ki = 1r
      このうち、ρ k → 0 \rho_k \rightarrow 0r0これは、ニュートン法が、特に最適解に近づく場合に非常に早く収束することを意味します。

\textbf{ニュートン法とその変形}:

ニュートン法は、実数領域または複素数領域で関数のゼロを見つけるために使用される反復最適化アルゴリズムです。機械学習と最適化では、損失関数の最小値を見つけるためにニュートン法がよく使用されます。この方法の中心的な考え方は、関数の 2 次テイラー級数展開を使用して、関数のゼロ点または最小値を反復的に近似することです。

ニュートン法の利点は、関数が二次関数の場合、1 回の反復で最小値を見つけることができることです。

  • 実際には、ヘッセ行列とその逆行列の計算は、特に次元が高い場合には困難になることがあります。したがって、ニュートン法のいくつかの実用的な変形が提案されています。

  • ヘッセ行列を変更して正定値であることを確認する:
    ヘッセ行列が可逆かつ正定値であることを確認するには、たとえば正則化項を追加するなどして、ヘッセ行列をわずかに変更します。

  • ヘッセ行列を 1 分ごとに計算する:
    ヘッセ行列の計算は計算量が多くなる可能性があるため、1 つの戦略はヘッセ行列を 1 分ごとに計算し、他の繰り返しでは最後に計算されたヘッセ行列を使用することです。

  • ヘッセ行列の対角要素のみを使用する:
    ヘッセ行列の対角要素のみを考慮することにより、計算の複雑さを大幅に軽減できます。この方法は対角ヘシアン ニュートン法と呼ばれます。

  • 準ニュートン法:
    準ニュートン法は、ヘッセ行列を直接計算せずに近似することを目的とした方法です。その中でも、BFGS (Broyden-Fletcher-Goldfarb-Shanno アルゴリズム) と L-BFGS (Limited-memory BFGS) が最も有名な準ニュートン法です。L-BFGS は、ヘッセ行列の最新の更新のみを保存する BFGS のメモリ効率の高いバージョンです。

機械学習では、近似誤差と推定誤差という 2 つの主な誤差原因がよく考慮されます。近似誤差は、事前に定義された仮説空間HHによるものです。Hの制限によって生じる誤差h ∗ h^*)hと目標コンセプトcccとの違い推定誤差は、限られたサンプル サイズに起因する誤差であり、データから学習された仮説h S h_ShSそして最適仮説h ∗ h^*hの違い。

ターゲットコンセプトccの場合事前に定義された仮説空間HH内のcHの場合、近似誤差はゼロになります。ただし、大規模で複雑な仮説空間を選択すると近似誤差は低減できますが、モデルがデータに過剰適合する可能性があるため、推定誤差が増加します。

実際のアプリケーションでは、限られたトレーニング サンプルから学習した知識を、新しいまだ見たことのないデータにどの程度適用できるかを理解したいと考えています。PAC 学習フレームワークは、事前定義された仮説クラスからほぼ最適な仮説を学習するために必要なトレーニング サンプルの数に上限を与えます。このフレームワークは、学習アルゴリズムの一般化パフォーマンスの理論的基盤を提供します。これにより、トレーニング データ セットのサイズ、仮説クラスの複雑さ、学習されたモデルの汎化誤差の間の関係が明らかになります。

クラスHHを想定Hは PAC 学習可能です。これは、新しいデータの誤差が仮説クラス内の最良の仮説の誤差から ϵ \epsilon 未満である仮説クラスから仮説を選択できるアルゴリズムがあることを意味しますϵであり、これが起こる確率は少なくとも1 − δ 1-\delta1d

学習アルゴリズムA \mathcal{A}がある場合Aと多項式関数Poly ( ⋅ , ⋅ ) Poly(·,·)ポリ( , _)、任意のϵ > 0 \epsilon > 0ϵ>0およびδ > 0 \デルタ > 0d>0 、 X × YX \times Yで定義されたすべての場合バツ×YDDD、サンプルサイズnnninterpoly ( 1 δ , 1 ϵ ) ポリ(\frac{1}{\delta}, \frac{1} {\epsilon})ポリ_ _ _d1ϵ1)、次にアルゴリズムA \mathcal{A}学習された仮説h S h_ShS以下の条件:

p { R ( h S ) − min ⁡ h ∈ HR ( h ) ≤ ϵ } ≥ 1 − δ p\{ R(h_S) - \min\limits_{h \in H} R(h) \leq \epsilon\ \geq 1 - \deltap { R ( hS)h HR ( h )ϵ }1d

その中で、ϵ \epsilonϵは許容できる誤差の上限であり、1 − δ 1-\delta1δは必要な信頼度、R ( h S ) R(h_S)R ( hS)は経験的リスクの最小値R ( h ) R(h)R ( h )は、予想されるリスクの最小値です。

仮想クラスHHの場合Hが複雑すぎるため、指数関数的なレベルのトレーニング サンプルが必要になる可能性があります。つまり、n > exp ( 1 δ , 1 ϵ ) n > exp(\frac{1}{\delta}, \frac{1}{\epsilon} )n>e × p (d1ϵ1)上記の不等式が成り立つことを確認します。この場合、クラスHHHは PAC では学習できません。

経験的リスク最小化 (ERM) アルゴリズムを使用して、仮説クラスが PAC 学習可能かどうかを検証します。

経験的リスク最小化 (ERM) は機械学習の基本戦略であり、その目標は仮説h ∈ H h \in Hを見つけることです。hH は、トレーニング データのリスク (または損失) を最小限に抑えます。正式には、トレーニング セットSSS、ERM 戦略は仮説を選択しますhh経験的リスクを最小限に抑えるためのh RS ( h ) R_S(h)RS( h )

h S = arg ⁡ min ⁡ h ∈ HRS ( h ) h_S = \arg\min_{h \in H} R_S(h)hS=arg _h HRS( h )

其中 R S ( h ) R_S(h) RS( h )は経験的リスクであり、トレーニング データの平均損失です。

経験的リスク最小化 (ERM) アルゴリズムを使用して、仮説クラスが PAC 学習可能かどうかを検証します。

トレーニング データが十分に大きい場合、仮説h S h_S がERM によって選択されます。hSトレーニング データのパフォーマンス (経験的リスク) は、分布全体でのパフォーマンス (実際のリスク) に近くなります。ただし、経験的リスクが低くても、実際のリスクは高くなる可能性があります。この現象はオーバーフィッティングと呼ばれます。

仮説空間が複雑であればあるほど、選択される仮説h S h_ShS最良の仮説h ∗ h^*の場合h*の差はPAC フレームワークは、この差を測定し、経験的リスクと真のリスクの差が特定のしきい値未満であることを確認するために必要なトレーニング データの量を決定する方法を提供します。

したがって、仮説クラスが PAC 学習可能かどうかを検証するには、次のことを確認する必要があります。

  • 十分に大きなトレーニング データ セットの場合、その仮説クラスに関して ERM によって生成された仮説の真のリスクと経験的リスクの差は、指定されたしきい値 ϵ \ epsilon 未満になりますϵ
  • これを達成するには、真のリスクと経験的リスクの差を推定または制限し、それがϵ \epsilon未満であることを確認する必要があります。ϵこれは通常、複雑さの正則化や、VC 次元、Rademacher 複雑さなどのツールを利用して行われます。

VC 次元 (Vapnik-Chervonenkis 次元) は、仮説空間 (またはモデル クラス) の複雑さを測定するために使用されるツールです。これは、特定の仮説クラス (またはモデル クラス) を学習する必要があるサンプル データの数を判断し、良好な汎化パフォーマンスを確保するための理論的ツールを提供します。

与えられた仮説クラスHHH。その VC 次元は、仮説クラスによって分割できる最大の点セットのサイズです。つまり、サイズdddデータセット。このddについては、d点の考えられる分類ラベルにはh ∈ H h \in HhH は点を完全に分離できますが、任意のサイズd+1 d+1d+1のセットではHHHのVC寸法はddd

より視覚的に理解するには、2 次元平面上の線形分類器を考えてみましょう。線形分類器は、同じ直線上にない 3 つの点の可能なすべての分類を完全に分離します。ただし、任意の 4 つの点について、考えられるすべての2 4 = 16 2^4 = 16を分類できる線形分類器があるかどうかは保証できません。24=16 のタグの組み合わせで、これら 4 つのポイントを完全に分類します。したがって、2 次元平面上の線形分類器の VC 次元は 3 になります。

高い VC 次元を持つ仮説クラスは、低い VC 次元を持つ仮説クラスよりも複雑です。これは、VC 次元が高い仮説クラスは過剰適合のリスクが高い可能性があることを意味します。

VC の不平等 これは、実際のリスク (つまり、分布全体に対するリスク) と経験的リスク (つまり、トレーニング データに対するリスク) の間の関係を提供します。仮説クラスの VC 次元とトレーニング データセットのサイズを考慮すると、VC 不等式は、真のリスクと経験的リスクの差が特定の値を超えない確率を示します。

Pr ⁡ ( ∣ R ( h ) − RS ( h ) ∣ > ϵ ) ≤ 4 m H ( 2 n ) exp ⁡ ( − n ϵ 2 8 ) \Pr\left( \left| R(h) - R_S(h ) \right| > \epsilon \right) \leq 4 m_H(2n) \exp\left(-\frac{n\epsilon^2}{8}\right)広報( R ( h )RS( h ) >) _4m _H( 2n ) _経験値(8_2)

ここで、m H ( n ) m_H(n)メートルH( n )は仮説空間HH分割できるHの大きさはnnnの点集合の数R ( h ) R(h)R ( h )は実際のリスク、RS ( h ) R_S(h)RS( h )は経験的リスクです。

上記の不等式から、特定の汎化誤差を達成するために必要なトレーニング サンプルの数を推定できます。これは、特定の仮説クラスが PAC 学習可能かどうかを判断するのに役立ちます。

PAC 学習では、学習された仮説が良好な一般化パフォーマンスを持っていることを確認するために、実際のリスクと経験的リスクの差を制御するのに十分なサンプルが必要です。VC ディメンションは、必要なサンプル サイズを推定する方法を提供し、仮説クラスが PAC 学習可能かどうかを検証できるようにします。

おすすめ

転載: blog.csdn.net/weixin_45427144/article/details/132410764