理論的には、損失関数を使用してニューラルネットワークを構築することができます。平均二乗誤差またはクロスエントロピー損失関数を使用できます。それは最も効果的になるものにまで沸き立っています。最も効果的なのは、パラメータをより迅速かつ/またはより正確に学習できるようにすることです。実際には、ほとんどのニューラルネットワークはクロスエントロピーを使用する傾向があります。多くの初心者のクラスと神経回路網のチュートリアルでは、二乗誤差の平均値が表示されます。これはおそらく最初は分かりやすく直感的です。
このarticleは、より詳細にそれを説明しますが、引用させて頂いて:
我々は代わりに二次コストのクロスエントロピーを使用すべきですか? 実際には、クロスエントロピーはほとんど常により良い選択である、 出力ニューロンを提供するソフトマックス機能についてシグモイドニューロン
です。ご存じのように、すべてのニューロンには活性化機能があります。非常に多くの場合、その関数はシグモイド関数です。 softmax関数は、通常、ニューラルネットワークの最後の層で使用される別のタイプのアクティベーション関数です。 softmax関数には固有のプロパティがあります。出力は0から1の値になり、レイヤー内の各ニューロンのすべての出力の合計は1に等しくなります。効果的に確率を示します。そして、これはあなたに各クラスの確率を与えるので、マルチクラスの分類には非常に適しています。そして、あなたは最も高い確率でクラスを選ぶことができます。
ありがとうございます。平均二乗誤差は、クラスの数に真の重要性を与える(すなわち、クラス3がクラス1よりも "重要"である)ので、推奨されないことは間違いありません。また、適切にsoftmaxを説明する記事はありますか? – MysteryGuy
実際には、クロスエントロピーが平均二乗より好まれる理由は、主に数学と派生に根ざしています。コスト関数の導関数は、バックプロパゲーションアルゴリズムで使用されます。そしてここにsoftmaxに関する記事があります。 http://dataaspirant.com/2017/03/07/difference-between-softmax-function-and-sigmoid-function/ –
私は実際にクロスエントロピーが平均二乗より優先される理由についてのポイントを得ていません。なぜそれがデリバティブとリンクされるべきですか?どちらも導出可能です...もう少し開発できますか? – MysteryGuy