FreeStyleWiki

損失関数

[数学,機械学習]

損失関数

  • 機械学習の学習がうまくいっているか確認するために損失関数は重要
  • 交差エントロピー誤差と負の対数尤度関数の違いがわからん…

  結論

  • (交差エントロピー誤差という概念)∋ 対数尤度関数

\[C = -\frac{1}{n} \sum\limits_x (y \ln a + (1-y) \ln (1-a))\]\[C = -\frac{1}{n} \sum\limits_x (y \log a + (1-y) \log (1-a))\]

  • 式80, 1つの観測値(ベルヌーイ分布のマルチクラスバージョン)を使用した多項分布の負の対数尤度

\[C =-\frac{1}{n} \sum\limits_x(\ln a^L_y)\]

The negative log likelihood (eq.80) is also known as the multiclass cross-entropy (ref: Pattern Recognition and Machine Learning Section 4.3.4), as they are in fact two different interpretations of the same formula.

eq.57 is the negative log likelihood of the Bernoulli distribution, whereas eq.80 is the negative log likelihood of the multinomial distribution with one observation (a multiclass version of Bernoulli).

Cross-Entropy or Log Likelihood in Output layer

  • 負の対数尤度は多クラスのクロスエントロピー関数として知られている、というのはそれらは実際1つの式の2つの解釈である
  • 最初の式はベルヌーイ分布における負の対数尤度関数である一方で、2つ目の式は1つの観測値(ベルヌーイ分布のマルチクラスバージョン)を使用した多項分布の負の対数尤度です

  交差エントロピー誤差(Cross-entropy Loss)

\[H(p, q) = -\sum_{x} p(x) log(q(x)) \]

    • しかし上記だと、1つ分の確率分布しか表現できない。ので、サンプル中の全ての交差エントロピーの平均を取る(まあ、Wikipediaの受け売りなんだが ... 交差エントロピー
      • 以下、交差エントロピーの平均の式(TODO, 式変形がわからねえ)

\[\frac {1}{N} \sum _{n=1}^{N}H(p_{n},q_{n}) = \frac {1}{N} \sum _{n=1}^{N} -\sum_{x} p(x) log(q(x)) \]

  • サンプル全ての個数がNなので、∑で足し上げてNで割っている。これが一番最初に出ていた-1/Nの意味
  • 二重和の内側は全て負の符号がかかっていて、それを外側で総和するということは符号を前にまとめられるとかそういうやつだと思う

\[\frac {1}{N} \sum _{n=1}^{N}H(p_{n},q_{n}) = - \frac {1}{N} \sum _{n=1}^{N} \sum_{x} p(x) log(q(x)) \]

  負の対数尤度関数(Negative Log Likelihood Loss)