SparseCategoricalCrossentropy

パブリック クラスSparseCategoricalCrossentropy

ラベルと予測の間のクロスエントロピー損失を計算します。

ラベル クラスが 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>
call (オペランド<? extends TNumber > ラベル、オペランド<T> 予測、オペランド<T> サンプルウェイト)
損失を計算するオペランドを生成します。

継承されたメソッド

定数

パブリック静的最終整数AXIS_DEFAULT

定数値: -1

パブリック静的最終ブール値FROM_LOGITS_DEFAULT

定数値: false

パブリックコンストラクター

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.] の外にある場合。