パブリックコンストラクター
パブリックメソッド
static <T extends TNumber , U extends TNumber >オペランド | sparseSoftmaxCrossEntropyWithLogits (スコープスコープ、オペランド<T> ラベル、オペランド<U> ロジット) logits とlabels の間のスパース ソフトマックス クロス エントロピーを計算します。 |
継承されたメソッド
パブリックコンストラクター
public SparseSoftmaxCrossEntropyWithLogits ()
パブリックメソッド
public staticオペランドsparseSoftmaxCrossEntropyWithLogits (スコープスコープ、オペランド<T> ラベル、オペランド<U> ロジット)
logits
とlabels
の間のスパース ソフトマックス クロス エントロピーを計算します。
クラスが相互に排他的である (各エントリが 1 つのクラスにのみ存在する) 離散分類タスクの確率誤差を測定します。たとえば、各 CIFAR-10 画像には 1 つだけのラベルが付けられます。画像には犬またはトラックを指定できますが、両方を指定することはできません。
注記:
この操作では、特定のラベルの確率は排他的であるとみなされます。つまり、ソフト クラスは許可されず、 labels
ベクトルは、 logits
の各行 (各ミニバッチ エントリ) の真のクラスに単一の特定のインデックスを提供する必要があります。各エントリの確率分布によるソフト ソフトマックス分類の場合、 ERROR(/org.tensorflow.op.NnOps#softmaxCrossEntropyWithLogits)
。
警告:
この演算は、効率化のために内部でlogits
に対してsoftmax
を実行するため、スケーリングされていないロジットを想定しています。不正な結果が生成されるため、 softmax
の出力でこの演算を呼び出さないでください。
一般的な使用例は、形状[batchSize, numClasses]
のロジットと形状[batchSize]
のラベルを持つことですが、より高い次元もサポートされており、その場合dim
番目の次元はサイズnumClasses
であるとみなされます。 logits
は次のものが必要ですTFloat16
、 TFloat32
、またはTFloat64
のいずれかであり、 labels
の dtype はTInt32
またはTInt64
である必要があります。
パラメーター
範囲 | 現在のスコープ |
---|---|
ラベル | 形状[d_0, d_1, ..., d_{r-1}] のTensor ( r はlabels と結果のランク)、dataType はTInt32 またはTInt64 です。 labels の各エントリは、 [0, numClasses) のインデックスである必要があります。他の値は、この演算が CPU で実行されるときに例外を発生させ、GPU 上の対応する損失および勾配行に対してNaN を返します。 |
ロジット | 形状[d_0, d_1, ..., d_{r-1}, numClasses] とTFloat16 、 TFloat32 、またはTFloat64 の dataType のラベルごとのアクティブ化 (通常は線形出力)。これらの活性化エネルギーは、正規化されていない対数確率として解釈されます。 |
戻り値
labels
と同じ形状、ソフトマックスのクロスエントロピー損失を持つlogits
と同じタイプのTensor
。
投げる
IllegalArgumentException | ロジットがスカラーの場合 (ランク >= 1 である必要がある)、またはラベルのランクがロジットのランクから 1 を引いたものと等しくない場合。 |
---|