コスト関数が二乗誤差を使用するのはなぜですか?


73

機械学習を始めたばかりで、これまでは1つの変数に対する線形回帰を扱ってきました。

私は仮説があることを学びました。それは:

hθ(x)=θ0+θ1x

パラメータのための良好な値を調べるにはθ0θ1、私たちは、計算結果と我々のテストデータの実際の結果との間の差を最小限にしたいです。だから我々は引きます

hθ(x(i))y(i)

1からmまでのすべてのに対して。したがって、この差の合計を計算し、合計に1を掛けて平均を計算しますi1m1m。ここまでは順調ですね。これは次の結果になります。

1mi=1mhθ(x(i))y(i)

しかし、これは提案されたものではありません。代わりに、コースは差の二乗値を取得し、1を掛けることを提案します。したがって、式は次のとおりです。12m

12mi=1m(hθ(x(i))y(i))2

何故ですか?なぜここで二乗関数を使用し、なぜ1を乗算するのかの代わりに112m1m



また、goo.gl
VNiUR5

それはブレグマンの発散だから
Andrew

回答:


41

それは設定奨励するため、あなたの損失関数は機能しませんθ1任意の有限値とにθ0

r x y = 1と呼びましょうrバツy=1m=1mhθバツy残留のためのh

あなたの目標は、r 最小化するだけなく、できるだけゼロに近づけることです。高い負の値は、高い正の値と同じくらい悪いです。

EDIT:あなたが人為的にパラメータ空間を制限することで、これに対抗することができΘ(あなたが欲しい例えば|θ0|<10)。この場合、最適なパラメーターは、パラメーター空間の境界上の特定のポイントにあります。https://math.stackexchange.com/q/896388/12467を参照してください。これはあなたが望むものではありません。

平方損失を使用する理由

二乗誤差により、hバツyが強制的に一致します。可能な場合、あなたは=vで最小化され、常に0これは、実数あなたはv 2乗であるためです。

|あなたはv|あなたはv2nと同様に、上記の目的でも機能しますnは正の整数です。これらの最初は、実際にそれが呼ばれています(使用されている1の損失を、あなたにも渡って来るかもしれない2乗誤差のために別の名前である損失、)。

では、なぜ二乗損失はこれらよりも優れているのでしょうか?これは、頻度的推論とベイジアン推論の関係に関連する深い質問です。つまり、二乗誤差はガウスノイズに関連していますます。

データがすべての点に正確に適合しない場合、つまり、hバツyが選択したθ関係なくある点でゼロではない場合(実際に常に発生します)、これはノイズが原因である可能性があります。任意の複雑なシステムに多くの小さなが存在することになる独立したあなたとの間の差の原因モデル h現実 y測定誤差、環境要因等によって:中心極限定理(CLT)、総ノイズは分散される通常即ち、に従ってガウス分布。最適なθを選択したいθこのノイズ分布を考慮に入れます。仮定R=h(X)Yの一部yモデルは説明できない、ガウス分布は以下のN(μ,σ)。ランダム変数について話しているため、大文字を使用しています。

ガウス分布には、平均μ = E [ R ] = 1の 2つのパラメーターがあります。μ=E[R]=1mihθ(X(i))Y(i))と分散σ2=E[R2]=1mhθバツY2。これらの用語をよりよく理解するには、こちらをご覧ください。

  • μ考慮してください。これは、測定の系統誤差です。使用hバツ=hバツμ、系統的誤差を補正するようにμ=E[R]=0(読者の練習)。ここでは他に何もしません。

  • σは、ノイズとも呼ばれるランダムエラーを表します。私たちは前のポイントのように体系的なノイズ成分の世話をしたらとき、最良の予測が得られるσ2=1mhθバツY2最小化されます。別の言い方をすれば、最適な予測子は、予測値の周りで最も狭い分布(最小の分散)、つまり最小の分散を持つものです。最小二乗損失の最小化は、分散の最小化と同じです!これが、最小二乗損失がさまざまな問題に対して機能する理由を説明しています。基礎となるノイズは非常に多くの場合ガウス型です。これは、CLTが原因であり、二乗誤差を最小化することが正しいことであることがわかりました。

平均と分散の両方を同時に考慮するために、分類器にバイアス項を含め(系統誤差μを処理する)、二乗損失を最小化します。

フォローアップの質問:

  • 最小二乗損失=ガウス誤差。他のすべての損失関数も何らかのノイズ分布に対応していますか?はい。例えば、1(代わりに二乗誤差の絶対値を最小化する)の損失が対応するラプラス分布(インフォボックスでPDFのための式を見て-それはただのガウスだ|バツμ|の代わりに、バツμ2)。確率分布の一般的な損失はKL発散ですです。-ガウス分布は、中央極限定理により非常に動機付けられています。、前に説明しました。ラプラス分布はいつ適切なノイズモデルですか?そこに約自然に来るいくつかの状況がありますが、それは、より一般的に正則ようです強制するスパース性を1損失は少なくとも凸すべて凸の損失の中で。

    • 月はコメントで言及、の最小化二乗偏差は平均値であるとの和の最小化絶対偏差がある中央値。なぜ平均ではなく残差の中央値を求めたいのでしょうか?平均とは異なり、中央値は1つの非常に大きな外れ値によってスローされません。したがって、1損失は​​ロバスト性の向上に使用されます。時々、2つの組み合わせが使用されます。
  • 平均と分散の両方を最小化する状況はありますか?はい。見上げバイアス分散トレードオフを。ここでは、分類器のセットを見ているhθHその中で最高であると尋ねます。どの分類器のセットが問題に最適かを尋ねると、バイアスと分散の両方を最小化することが重要になります。それらの間には常にトレードオフがあり、妥協を達成するために正則化を使用することがわかります。

1について12学期

1/2は重要ではなく、実際、mも重要ではありません。両方とも定数です。θの最適値は、どちらの場合も同じままです。

  • 勾配の式は1でよりきれいになります12(平方項の2が相殺されるため)。

    • コードやアルゴリズムを書くとき、私たちは通常、勾配にもっと関心があるので、それは簡潔に保つのに役立ちます。勾配のノルムをチェックするだけで進捗を確認できます。損失関数自体は最終回答の検証にのみ使用されるため、コードから省略される場合があります。
  • mあなたが急降下して、この問題を解決する場合に便利です。勾配は合計ではなくm項の平均になるため、データポイントを追加してもスケールは変わりません。

    • 前に私はこの問題に遭遇しました:私は、ポイント数の少ないコードをテストし、それが正常に動作していますが、データセット全体でそれをテストするときの精度の損失があり、時にはオーバー/アンダーフロー、グラデーションになる、すなわち、nanまたはinf。それを回避するには、データポイントの数だけを正規化します。
  • これらの審美的な決定は、正則化用語を追加する将来の方程式との一貫性を維持するためにここで使用されます。mを含めると、正則化パラメーターλはデータセットのサイズm依存せず、問題を超えて解釈しやすくなります。


「2が2乗項から2を打ち消すので、導関数を取得すると式がきれいになります」と言いました。しかし、なぜその派生物を取りたいのでしょうか?
DrGeneral

通常、勾配降下法を使用して損失を最適化します。これには、微分係数の取得が必要です。この質問の文脈から明らかになるはずなので、私はこれに言及しませんでした。
厳しい

1
厳しい、私の素朴さを許してください、しかし、なぜ正方形の代わりに絶対値を使わないのですか?
アレクサンダースラフェル

1
絶対誤差も機能する可能性がありますが、その場合は、平均ではなく予想される中央値に回帰します。数の小さなリストを取り、推定値をシフトすることで損失がどのように異なるかを確認します(二乗誤差と絶対誤差の両方について)
Jan van der Vegt

@AlexanderSuraphel回答の遅れてごめんなさい:)それに対処するために上記のセクションを追加しました
厳しい

25

1/2係数は単に便宜上のものです。実際に最適化されている関数である導関数をより見栄えよくします。1 / mはより基本的です。平均二乗誤差に興味があることを示唆しています。これにより、サンプルサイズを変更するときに公平な比較を行うことができ、オーバーフローを防ぎます。いわゆる「確率的」オプティマイザーは、データセットのサブセットを使用します(m '<m)。正則化関数(目的関数への加法的用語)を導入する場合、1 / m係数を使用すると、サンプルサイズに関係なく、同じ係数を正則化係数に使用できます。

単純な違いではなく、なぜ平方であるのかという質問については、過小評価と同様に過小評価にペナルティを課したくないのですか?二乗は、エラーの兆候の影響を排除します。絶対値(L1ノルム)を取得することもできますが、その微分係数は原点で定義されていないため、使用するにはより高度な機能が必要です。L1ノルムには用途がありますので、心に留めて、おそらく教師にそれをカバーするかどうか尋ねてください。


4
L2LpL2

6

損失関数の誤差測定値は「統計距離」です。ユークリッド空間における2つのベクトル間の距離に関する一般的で予備的な理解とは対照的です。「統計距離」を使用して、推定モデルと最適モデル間の「非類似性」をユークリッド空間にマッピングしようとしています。

この「統計距離」の定式化に関する制約ルールはありませんが、選択が適切な場合、最適化中のこの「距離」の漸進的な減少は、モデル推定の漸進的な改善につながります。したがって、「統計距離」またはエラー測定の選択は、基礎となるデータ分布に関連しています。

実際、さまざまなクラスの統計分布に対して、明確に定義された距離/エラー測定値がいくつかあります。手元のデータの分布に基づいてエラー測定値を選択することをお勧めします。ガウス分布が遍在するため、L2-ノルムが最も一般的なエラー測定値であるため、距離測定値が関連付けられています。ただし、これはルールではなく、「効率的な」*最適化の実装がL2-normとは異なるエラー測定値を採用する現実世界のデータが存在します。

ブレグマンの発散のセットを考えます。この発散尺度の標準的な表現は、L2-ノルム(二乗誤差)です。また、相対エントロピー(Kullback-Liebler発散)、一般化されたユークリッド距離(マハラノビスメトリック)、板倉-斉藤関数も含まれます。これについては、関数型ブレグマン発散と分布のベイズ推定に関するこのペーパーで詳しく読むことができます。

テイクアウェイ:L2-ノルムには興味深い一連のプロパティがあり、エラー測定の一般的な選択肢になります(ここの他の回答では、この質問の範囲に十分なこれらのいくつかを挙げています)、二乗誤差が適切ですほとんどの場合、選択。それにも関わらず、データ配布がそれを必要とする場合、選択する代替エラー測定があり、選択は主に最適化ルーチンの定式化に依存します。

*「適切な」エラー測定値は、損失関数が最適化のために凸になります。これは、損失関数が非凸であり、そのため悪名高い困難な他のエラー測定値とは対照的に、非常に役立ちます。


5

他の人が作った重要な点に加えて、二乗誤差を使用すると、より大きな誤差に重点が置かれます(二乗した場合の1/2と3/2の関係はどうなりますか?)。

わずかな誤差を移動するアルゴリズムを持っているため、正しい分類または推定値とグラウンドトゥルースのわずかな差が生じる可能性がありますが、大きな誤差を大きな誤差または誤分類として残しておくと、ゼロに近いままにすると、アルゴリズム。

二乗誤差を使用すると、予測を調整するための暗黙的な重要度の重みとして誤差が使用されます。


したがって、
arbitrary意

3

公式では、観測データから近似の平均偏差を取得しようとします。

近似の平均値が観測データの平均値に近いか等しい場合(多くの近似スキームでよく起こります)、正の誤差は負で補正されるため、定式化の結果はゼロまたは無視できますエラー。これは、観測された各サンプルでの近似値が素晴らしいという結論につながるかもしれませんが、そうではないかもしれません。そのため、各サンプルでエラーの2乗を使用し、それらを合計します(各エラーが正の順番)。

もちろん、これは可能な解決策にすぎません。L2-normの代わりにL1-norm(各サンプルでの誤差の絶対値)または他の多くを使用できたからです。

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