ラベルと予測の間のクロスエントロピー損失を計算します。
ラベル クラスが 2 つ以上ある場合は、このクロスエントロピー損失関数を使用します。ラベルは整数として提供されることが期待されます。 one-hot
表現を使用してラベルを提供したい場合は、 CategoricalCrossentropy
loss を使用してください。 predictions
の場合は特徴ごとに# classes
の浮動小数点値が必要であり、 label
の場合は特徴ごとに 1 つの浮動小数点値が必要です。
以下のスニペットでは、 labels
例ごとに 1 つの浮動小数点値があり、 predictions
の例ごとに# classes
の浮動小数点値があります。 labels
の形状は[batch_size]
で、 predictions
の形状は[batch_size, num_classes]
です。
スタンドアロン使用:
Operand<TFloat32> labels = tf.constant(new float[] {1, 2}); Operand<TFloat32> predictions = tf.constant(new float[][] { {0.05f, 0.95f, 0f}, {0.1f, 0.8f, 0.1f} }); SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf); Operand<TFloat32> result = sparseCCE.call(labels, predictions); // produces 1.177f
サンプルの重みを指定して呼び出します:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.3f, 0.7f}); Operand<TFloat32> result = sparseCCE.call(labels, predictions, sampleWeight); // produces 0.814f
SUM
リダクションタイプの使用:
SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.SUM); Operand<TFloat32> result = sparseCCE.call(labels, predictions); // produces 2.354f
NONE
削減タイプを使用する:
SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.NONE); Operand<TFloat32> result = sparseCCE.call(labels, predictions); // produces [0.0513f, 2.303f]
定数
整数 | AXIS_DEFAULT | |
ブール値 | FROM_LOGITS_DEFAULT |
継承されたフィールド
パブリックコンストラクター
SparseCategoricalCrossentropy (Ops tf) getSimpleName() を損失名として使用し、損失削減としてREDUCTION_DEFAULT 、および fromLogits= FROM_LOGITS_DEFAULT を使用して SparseCategoricalCrossentropy 損失を作成します。 | |
SparseCategoricalCrossentropy (Ops tf、文字列名) REDUCTION_DEFAULT および fromLogits= FROM_LOGITS_DEFAULT の損失削減を使用して、SparseCategoricalCrossentropy 損失を作成します。 | |
SparseCategoricalCrossentropy (Ops tf、 Reductionリダクション) getSimpleName() 損失名として使用し、 Reduction.AUTO および fromLogits= FROM_LOGITS_DEFAULT を使用して SparseCategoricalCrossentropy 損失を作成します。 | |
SparseCategoricalCrossentropy (Ops tf、文字列名、 Reductionリダクション) Reduction.AUTO および fromLogits= FROM_LOGITS_DEFAULT を使用して SparseCategoricalCrossentropy 損失を作成します。 | |
SparseCategoricalCrossentropy (Ops tf、文字列名、ブール値 fromLogits) REDUCTION_DEFAULT および fromLogits= FROM_LOGITS_DEFAULT の損失削減を使用して SparseCategoricalCrossentropy を作成します。 | |
SparseCategoricalCrossentropy (Ops tf、ブール値 fromLogits) getSimpleName() を損失名として使用し、 REDUCTION_DEFAULT および fromLogits= FROM_LOGITS_DEFAULT の損失削減を使用して SparseCategoricalCrossentropy 損失を作成します。 | |
SparseCategoricalCrossentropy (Ops tf、boolean fromLogits、 Reduction削減) getSimpleName() 損失名として使用して SparseCategoricalCrossentropy 損失を作成します。 | |
SparseCategoricalCrossentropy (Ops tf、文字列名、ブール値 fromLogits、 Reduction削減、int 軸) SparseCategoricalCrossentropy を作成します |
パブリックメソッド
<T extends TNumber >オペランド<T> |
継承されたメソッド
定数
パブリック静的最終整数AXIS_DEFAULT
パブリック静的最終ブール値FROM_LOGITS_DEFAULT
パブリックコンストラクター
public SparseCategoricalCrossentropy (Ops tf)
getSimpleName()
を損失名として使用し、損失削減としてREDUCTION_DEFAULT
、および fromLogits= FROM_LOGITS_DEFAULT
を使用して SparseCategoricalCrossentropy 損失を作成します。
パラメーター
TF | TensorFlow オペレーション |
---|
public SparseCategoricalCrossentropy (Ops tf、文字列名)
REDUCTION_DEFAULT
および fromLogits= FROM_LOGITS_DEFAULT
の損失削減を使用して、SparseCategoricalCrossentropy 損失を作成します。
パラメーター
TF | TensorFlow オペレーション |
---|---|
名前 | この損失関数の名前 |
public SparseCategoricalCrossentropy (Ops tf、 Reduction削減)
getSimpleName()
損失名として使用し、 Reduction.AUTO および fromLogits= FROM_LOGITS_DEFAULT
を使用して SparseCategoricalCrossentropy 損失を作成します。
パラメーター
TF | TensorFlow オペレーション |
---|---|
削減 | 損失に適用する軽減のタイプ。 |
public SparseCategoricalCrossentropy (Ops tf、文字列名、 Reductionリダクション)
Reduction.AUTO および fromLogits= FROM_LOGITS_DEFAULT
を使用して SparseCategoricalCrossentropy 損失を作成します。
パラメーター
TF | TensorFlow オペレーション |
---|---|
名前 | この損失関数の名前 |
削減 | 損失に適用する軽減のタイプ。 |
public SparseCategoricalCrossentropy (Ops tf、文字列名、ブール値 fromLogits)
REDUCTION_DEFAULT
および fromLogits= FROM_LOGITS_DEFAULT
の損失削減を使用して SparseCategoricalCrossentropy を作成します。
パラメーター
TF | TensorFlow オペレーション |
---|---|
名前 | この損失関数の名前 |
fromロジッツ | 予測をロジット値のテンソルとして解釈するかどうか |
public SparseCategoricalCrossentropy (Ops tf、boolean fromLogits)
getSimpleName()
を損失名として使用し、 REDUCTION_DEFAULT
および fromLogits= FROM_LOGITS_DEFAULT
の損失削減を使用して SparseCategoricalCrossentropy 損失を作成します。
パラメーター
TF | TensorFlow オペレーション |
---|---|
fromロジッツ | 予測をロジット値のテンソルとして解釈するかどうか |
public SparseCategoricalCrossentropy (Ops tf、boolean fromLogits、 Reduction削減)
getSimpleName()
損失名として使用して SparseCategoricalCrossentropy 損失を作成します。
パラメーター
TF | TensorFlow オペレーション |
---|---|
fromロジッツ | 予測をロジット値のテンソルとして解釈するかどうか |
削減 | 損失に適用する軽減のタイプ。 |
public SparseCategoricalCrossentropy (Ops tf、文字列名、boolean fromLogits、 Reduction削減、int 軸)
SparseCategoricalCrossentropy を作成します
パラメーター
TF | TensorFlow オペレーション |
---|---|
名前 | この損失関数の名前 |
fromロジッツ | 予測をロジット値のテンソルとして解釈するかどうか |
削減 | 損失に適用する軽減のタイプ。 |
軸 | チャネル軸。 axis=-1 はデータ形式「Channels Last」に対応し、 axis=1 はデータ形式「Channels First」に対応します。 |
パブリックメソッド
publicオペランド<T>呼び出し(オペランド<? extends TNumber > ラベル、オペランド<T> 予測、オペランド<T> サンプルウェイト)
損失を計算するオペランドを生成します。
グラフ モードで実行すると、予測値が範囲外にある場合、計算はTFInvalidArgumentException
をスローします。 1.]へ。 Eager モードでは、予測値が範囲外にある場合、この呼び出しはIllegalArgumentException
をスローします。 1に。]
パラメーター
ラベル | 真理値またはラベル |
---|---|
予測 | 予測の場合、値は [0. 1.まで]を含みます。 |
サンプルの重み | オプションの SampleWeights は損失の係数として機能します。スカラーが指定されている場合、損失は指定された値によって単純にスケーリングされます。 SampleWeights がサイズ [batch_size] のテンソルの場合、バッチの各サンプルの合計損失は、SampleWeights ベクトルの対応する要素によって再スケーリングされます。 SampleWeights の形状が [batch_size, d0, .. dN-1] の場合 (またはこの形状にブロードキャストできる場合)、予測の各損失要素は、SampleWeights の対応する値によってスケーリングされます。 (dN-1 に関する注意: すべての損失関数は 1 次元ずつ減少します。通常は axis=-1 です。) |
戻り値
- 損失
投げる
IllegalArgumentException | 予測が範囲 [0.-1.] の外にある場合。 |
---|