Cucco’s Compute Hack

コンピュータ関係の記事を書いていきます。

Neural Network ConsoleのCrossEntropy損失関数(ロス関数)の使い方

Neural Network Consoleの損失関数(ロス関数)の使い方の記録。
画像処理系はSquareErrorでもいいが、カテゴリ系はそんなわけにもいかないので。

入力データ次第で、ある程度決まった形になるので、記録として残しておく。

CategoricalCrossEntropyを使う場合

ラベルは、複数値のカテゴリインデックス。1列。
affineで適当な列数に変換した後、softmax -> CategoricalCrossEntropy

f:id:Cucco:20190526165910p:plain
CategoricalCrossEntropy

BinaryCrossEntropyを使う場合

ラベルは1か0の2値。
OneHot形式の2列の場合、affineで2列に変換した後、softmax -> BinaryCrossEntropy
1列の0/1の場合、affineで1列に変換した後、sigmoid(softmaxからsigmoidに訂正) -> BinaryCrossEntropy

f:id:Cucco:20190526165832p:plain
BinaryCrossEntropy