L2が事後損失を計算するための優れた損失関数である場合の例は何ですか?


9

L2損失は、L0およびL1損失とともに、事後を最小事後予測損失で要約するときに使用される非常に一般的な「デフォルト」損失関数の3つです。この理由の1つは、それらが比較的簡単に計算できることです(少なくとも1d分布の場合)。L0は最頻値、L1は中央値、L2は平均値になります。教えるとき、L0とL1が合理的な損失関数である(そして単に「デフォルト」ではない)シナリオを思い付くことができますが、L2が合理的な損失関数であるシナリオに苦労しています。だから私の質問:

教育目的で、L2が最小事後損失を計算するための優れた損失関数である場合の例は何でしょうか?

L0の場合、賭けのシナリオを思いつくのは簡単です。今度のサッカーゲームのゴールの合計数に対して事後を計算し、ゴールの数を正しく推測し、それ以外の場合は負けた場合、$$$に勝つ賭けをするとします。その場合、L0は妥当な損失関数です。

私のL1の例は少し不自然です。あなたは多くの空港の1つに到着し、それから車であなたのところへ行く友人に会っています。問題はあなたがどの空港か分からないことです(そして彼女は空中にいるのであなたの友人に電話をかけることができません)。彼女が着陸する可能性のある空港の後方を考えると、彼女が到着したときに彼女とあなたの間の距離が短くなるように自分を配置するのに適した場所はどこですか?ここで、予想されるL1損失を最小化するポイントは、彼女の車が一定の速度であなたの場所に直接移動するという単純な仮定をすると、合理的に思えます。つまり、1時間の待機時間は、30分の待機時間の2倍です。


警告:L0は継続的な問題のモードになりません...
西安

うーん、そうです、L0->モードと言うのは少しずさんです。
RasmusBååth2015年

2
逆二乗則を見て、空間内の任意の点が選択できるように複数の光源が配置されている場合、L2損失を使用すると、最も近い光源以外のすべてから無視できる光が得られます。受信されたルーメンあたりの秒数。1秒あたりのルーメンを最大化するのではなく、なぜそれを実行するのかを考えることはできません。
偶発的な統計家

回答:


4
  1. L2は「簡単」です。これは、線形回帰、SVDなどの標準的な行列メソッドを実行した場合にデフォルトで得られるものです。コンピューターが登場するまで、L2は多くの問題を抱えた町で唯一のゲームでした。そのため、誰もが分散分析やt検定などを使用しています。 。他の損失関数を使用して正確な答えを得るよりも、Gaussianプロセスのような多くのより洗練された方法でL2損失を使用して正確な答えを得る方が簡単です。

  2. 関連して、2次テイラー近似を使用してL2損失を正確に取得できます。これは、ほとんどの損失関数(クロスエントロピーなど)には当てはまりません。これにより、ニュートン法などの2次法で最適化が容易になります。他の損失関数を処理するための多くの方法は、同じ理由(例:繰り返し再重み付けされた最小二乗、統合されたネストされたラプラス近似)の下でL2損失の裏側の方法を使用します。

  3. L2はガウス分布と密接に関連しており、中心極限定理はガウス分布を共通にします。データ生成プロセスが(条件付きで)ガウス型である場合、L2が最も効率的な推定量です。

  4. 総分散の法則により、L2損失はうまく分解されます。これにより、潜在変数を含む特定のグラフィカルモデルが特に適合しやすくなります。

  5. L2は、ひどい予測を不均衡にペナルティします。これは良い場合も悪い場合もありますが、多くの場合かなり合理的です。多くの人が予定を逃す原因となる場合、1時間の待機は、平均して30分の待機の4倍の悪さになる可能性があります。


2
うーん、私が求めていたのは、L2が合理的な損失関数である決定状況のようなものでした。私の質問の2つの例と同様のシナリオのようですが、L2についてです。
RasmusBååth2015年

1
@RasmusBååth (#3のガウスデータ生成プロセスへの接続を除いて)損失を正確に 2乗するための引数についてはわかりませんが、#5はある種の加速損失関数の引数です。2次では、このような関数はL2損失と一致します。
David J. Harris

@ DavidJ.Harris実際、#5は不正解です。このような場合は、L1 abs(xy)損失を使用してフラストレーション=時間²を最小限に抑えます。(xy)²損失を時間として使用すると、実際には次善の結果が得られます。
Íhor私

@ÍhorMé私はあなたを誤解しているに違いないと思います。二乗誤差を最小化する最善の方法は、L2ノルムではなく絶対損失を最小化することであるとおっしゃっているようです。
デビッドJ.ハリス

@ DavidJ.Harrisええ、私はこれが「悪さ」(=時間差²)を最小限に抑える問題であり、本質的に待機に費やされる時間ではないことを指摘しようとしましたが、私は当初、思考実験を誤解したと思います。読み直しましたが、L2は時間差の最小化から「悪さ」の最小化に移行する正当な方法です。ただし、プログラマーが最初に最小化したい「悪さ」を正しく識別し、その値を取得してから、L1を介して最小化するのが最善の方法です。この場合、最初に(時間差)²を取得し、次にL1損失を最小化します。L2を使用するのは、自分が何をしているのかがわかっているときだけにしてください。
–ÍhorMé2018
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.