2017-09-08 8 views
1

私は、ニューラルネットワークの損失関数が何であるかを知るのが難しいです。バイナリ分類問題の場合、次のビデオで説明されているように、平均自乗誤差ですか:https://www.youtube.com/watch?v=5u0jaA3qAGk&t=59sまたはここで定義されているクロスエントロピーで、http://work.caltech.edu/slides/slides09.pdfですか?マルチクラス分類のコスト関数とは何ですか?

また、マルチ分類の場合、ソフトマックスのようなものがあると思いますが、その仕組みは分かりません。誰かが私を正しく説明できますか?

ありがとうございます!

答えて

1

理論的には、損失関数を使用してニューラルネットワークを構築することができます。平均二乗誤差またはクロスエントロピー損失関数を使用できます。それは最も効果的になるものにまで沸き立っています。最も効果的なのは、パラメータをより迅速かつ/またはより正確に学習できるようにすることです。実際には、ほとんどのニューラルネットワークはクロスエントロピーを使用する傾向があります。多くの初心者のクラスと神経回路網のチュートリアルでは、二乗誤差の平均値が表示されます。これはおそらく最初は分かりやすく直感的です。

このarticleは、より詳細にそれを説明しますが、引用させて頂いて:

我々は代わりに二次コストのクロスエントロピーを使用すべきですか? 実際には、クロスエントロピーはほとんど常により良い選択である、 出力ニューロンを提供するソフトマックス機能についてシグモイドニューロン

です。ご存じのように、すべてのニューロンには活性化機能があります。非常に多くの場合、その関数はシグモイド関数です。 softmax関数は、通常、ニューラルネットワークの最後の層で使用される別のタイプのアクティベーション関数です。 softmax関数には固有のプロパティがあります。出力は0から1の値になり、レイヤー内の各ニューロンのすべての出力の合計は1に等しくなります。効果的に確率を示します。そして、これはあなたに各クラスの確率を与えるので、マルチクラスの分類には非常に適しています。そして、あなたは最も高い確率でクラスを選ぶことができます。

+0

ありがとうございます。平均二乗誤差は、クラスの数に真の重要性を与える(すなわち、クラス3がクラス1よりも "重要"である)ので、推奨されないことは間違いありません。また、適切にsoftmaxを説明する記事はありますか? – MysteryGuy

+0

実際には、クロスエントロピーが平均二乗より好まれる理由は、主に数学と派生に根ざしています。コスト関数の導関数は、バックプロパゲーションアルゴリズムで使用されます。そしてここにsoftmaxに関する記事があります。 http://dataaspirant.com/2017/03/07/difference-between-softmax-function-and-sigmoid-function/ –

+0

私は実際にクロスエントロピーが平均二乗より優先される理由についてのポイントを得ていません。なぜそれがデリバティブとリンクされるべきですか?どちらも導出可能です...もう少し開発できますか? – MysteryGuy

関連する問題