tf.nn.weighted_cross_entropy_with_logits()
を使用する前にtf.nn.softmax()を使用してログのsoftmaxを取得する必要がありますか?softmaxとtf.nn.weighted_cross_entropy_with_logitsの使用
私は不均衡なセットに対してバイナリ分類を行い、後者のクラスがデータ中で不十分であることを補うためにpos_weight
値を[1.0,15.0]に設定しました。
他の同様のオペレーターtf.nn.softmax_cross_entropy_with_logits()
は、あらかじめsoftmaxを使用しないと明示していますが、重み付きバージョンは指定していません。私は、モデルを学習しないうちにソフトマックスを使うとき(例えば、AUCが0.500
に収束する)の有無にかかわらず試しました。
私のモデルの最後の層は、[batch_size, 2]
テンソルでelu活性化を使用しています。私のラベルはファーストクラスの場合は[1, 0]
、2番目の場合は[0, 1]
と書かれています。