ニューラルネットワーク:バイナリ分類では、1つまたは2つの出力ニューロンを使用しますか?


26

バイナリ分類を行うと仮定します(クラスAまたはクラスBに属するもの)。ニューラルネットワークの出力層でこれを行う可能性がいくつかあります。

  • 1つの出力ノードを使用します。出力0(<0.5)はクラスAと見なされ、1(> = 0.5)はクラスBと見なされます(シグモイドの場合)

  • 2つの出力ノードを使用します。入力は、最高の値/確率(argmax)を持つノードのクラスに属します。

これを議論する(また)書かれた論文はありますか?検索する特定のキーワードは何ですか?

この質問はすでにこのサイトですでに尋ねられています。たとえば、実際の答えのないこのリンク参照してください。私は選択する必要があります(修士論文)ので、各ソリューションの賛否両論の洞察を得たいと思います。


リンクされた質問のOPには良い点があり、唯一の違いは選択肢2がより多くのパラメータを持ち、より柔軟性がありますが、よりフィットしやすい傾向があると思います。
dontloo

1
Udacity ML Nanodegreeでは、ネットワークで発生するエラーが少ないため、結果が相互に排他的である場合は、1つの出力ノードを使用する方が良いことを学びました。その場合、2つの出力ノードを使用することには長所はないと思いますが、科学的な証拠はありません
-CodingYourLife

回答:


25

2番目のケースでは、おそらくsoftmaxアクティベーション機能について書いています。それが本当なら、シグモイドはソフトマックス関数の特別な場合にすぎません。簡単に表示できます。

y=11+ex=11+1ex=1ex+1ex=ex1+ex=exe0+ex

ご覧のとおり、シグモイドはsoftmaxと同じです。2つの出力があると考えることができますが、1つはすべての重みがゼロに等しいため、その出力は常にゼロになります。

したがって、バイナリ分類のより良い選択は、2つの出力ユニットを使用するsoftmaxではなく、シグモイドを使用する1つの出力ユニットを使用することです。


それらのいずれかがすべてゼロの重みを持っていると言うとき、モデルはトレーニング中にクラスの1つも考慮しなかったことを意味しますか?実際には、トレーニングデータの1つのクラスのみでこのバイナリ分類器を実際にトレーニングできますか?
デッドコード

これは、トレーニングおよびクラス中にしきい値(バインド)が固定されているようなものです。したがって、場合は正のクラスであり、場合は負のクラスであることがわかります。softmaxを使用すると、異なるしきい値を学習し、異なる境界を持つことができます。REがすべてゼロの重み、つまり、2つの出力中性子と、出力 1つと入力関係なく常にの出力がある場合のシグモイドと2つの出力のsoftmaxと同じことを意味します。2番目の出力ですべての重みがゼロに等しい場合にのみ可能です。役に立てば幸いです。x>0x<0x0
itdxer

1
フォームの縮退解exp(x+alpha) / (exp(alpha) + exp(x+alpha))-実際にはそれらの無限数-がすべて重み0で示されたものと同じ分類結果をもたらすことに注意してください。重みはおそらくすべてゼロになるように訓練されませんが、代わりに退化するように訓練されます重みがすべて0のソリューションを使用します。出力ニューロンを1つだけ使用することにより、(無意味で無駄な)縮退ソリューションを避けます。
ダンニッセンバウム

2

ここでは、分類器などの機械学習アルゴリズムは、異なるカテゴリに属する​​入力の確率を決定することにより、入力データを統計的にモデル化します。任意の数のクラスの場合、通常、softmaxレイヤーがモデルに追加されるため、出力は設計により確率的特性を持ちます。

y=softmax(a)1ieai×[ea1,ea2,...,ean]

0yi1 for all i
y1+y2+...+yn=1

ここで、はsoftmaxレイヤーの前のレイヤーのアクティブ化です。a

これは2つのクラスに対して完全に有効ですが、出力が次の条件を満たす場合、1つのニューロン(2つではなく)を使用することもできます。

0y1 for all inputs.
これは、上記の条件が満たされるようにをマップ変換(逆伝播のために微分可能/平滑化)が適用される場合に保証されます。シグモイド関数は基準を満たしています。単純な数学的表現以外に特別なことはありませんが、ay

sigmoid(a)σ(a)11+ea

有用な数学的特性(微分、0〜1の範囲など)、計算効率、最適化のためにネットワークの重みを更新しても出力にわずかではあるが測定可能な変化が生じるような適切な勾配があります。

結論

ソフトマックスとシグモイドを示す@itdxerの推論が有効であれば同等かどうかはわかりませんが、必要なパラメーターと計算が少ないため、バイナリ分類子の2つのニューロンとは対照的に1つのニューロンを選択するのは正しいです。また、「余分なもの」なので、バイナリ分類器に2つのニューロンを使用することで批判されています。

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