2017-03-23 12 views
0

の場合、バックプロパゲーションの出力が1に収束する必要があります。私は現在、グレースケール(0-150)の画像(120x128)を取るために作成したANNを理解しようとしています。その人物が男性か女性かにかかわらず。それはほとんどの部分で機能します。私は出力(男性= 1、女性= 0)がブールの問題のようにこれを扱っています。私はANNに男性または女性を正しく識別させることができます。しかし、私が男性に与えるアウトプットは、実行に応じて(0.3-0.6)です。 値が〜1になっているはずですか?出力が(0,1)

私はシグモイドユニット1 /(1 + e^-y)を使用しており、その逆を取ろうとしました。私は1つのレイヤーで5 - 60個の隠しユニットを使用してこれを試し、フリップフロップの結果で2つの出力を試しました。私はこれを理解したいので、これを非論理型の問題に適用することができます。つまり、私が数値出力をしたいのであれば、どうやってそれをやっているのでしょうか、間違った機械学習法を使っていますか?

答えて

0

バイナリ関数をあるしきい値で出力することができます。あなたがテストでは0と1の間の値を得て、0と1よりも下の値を得るのであれば、女性に0、男性に1を割り当てたと仮定します。出力値で決定する0.5の閾値を追加して出力値をチェックし、0.5未満の場合は推定クラスを女性とし、0.5以上の場合は推定クラスを男性とする。

+0

男性と女性を推定する2クラスの問題では、1つの出力で十分です。それでも2つ以上の出力が必要です。次に、メスの期待出力が[1 0]、オスの出力が[0 1]になるように、各クラスごとに単一出力を割り当てます。テストでは、最大2つの出力を使用して、どのクラスの神経回路網が属するのかを決めることができます..... – Chandra

+0

これは、0識別子が1の識別子よりも小さいオーダーになる傾向があるためです。これを訓練して目標値に近づける方法はありますか?非ブール値の出力に対してこのNNをどう使うことができるのだろうかと疑問に思っています。 – Kendall

+0

出力でバイナリアクティベーション関数を使用しない限り、ニューラルネットワークはブール値ではない浮動小数点値を与えます。あなたはシグモイド関数を使用していたので、それは0から1、または-1と1の間の値を返します。 – Chandra

関連する問題