ディープニューラルネットワークを使用してバイナリクラス分類を行っています。私がbinary_crossentropyを使用しているときはいつでも、私のモデルは良い精度を与えていません(それはランダムな予測に近いです)。しかし、出力層2のサイズを作成してカテゴリクロスエントロピーを使用すると、0.90に近い1エポックでのみ良好な精度が得られます。誰かがここで何が起こっているのか説明できますか?
出力レイヤーでsoftmax
アクティベーションを使用してbinary_crossentropyを使用しようとすると、この問題も発生します。私の知る限り、softmax
は各クラスの確率を示すため、出力レイヤーに2つのノードがある場合、p(x1)
、p(x2)
、x1 + x2 = X
のようになります。 。したがって、出力ノードが1つしかない場合は、常に1.0(100%)に等しくなります。そのため、ランダムな予測に近くなります(正直なところ、評価セットのカテゴリ分布に近くなります)。
sigmoid
やrelu
などの別のアクティベーション方法に変更してみてください。