공공 생성자
공개 방법
static <T는 TNumber를 확장하고 U는 TNumber를 확장합니다. > 피연산자 | sparseSoftmaxCrossEntropyWithLogits ( 범위 범위, 피연산자 <T> 레이블, 피연산자 <U> 로지트) logits 와 labels 간의 희소 소프트맥스 교차 엔트로피를 계산합니다. |
상속된 메서드
공공 생성자
공개 SparseSoftmaxCrossEntropyWithLogits ()
공개 방법
공개 정적 피연산자 sparseSoftmaxCrossEntropyWithLogits ( 범위 범위, 피연산자 <T> 레이블, 피연산자 <U> 로지트)
logits
와 labels
간의 희소 소프트맥스 교차 엔트로피를 계산합니다.
클래스가 상호 배타적인(각 항목이 정확히 하나의 클래스에 속함) 개별 분류 작업에서 확률 오류를 측정합니다. 예를 들어, 각 CIFAR-10 이미지에는 단 하나의 레이블만 지정됩니다. 이미지는 개 또는 트럭일 수 있지만 둘 다일 수는 없습니다.
메모:
이 작업의 경우 특정 레이블의 확률은 배타적인 것으로 간주됩니다. 즉, 소프트 클래스는 허용되지 않으며 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
과 모양이 같고 소프트맥스 교차 엔트로피 손실이 있는 로지트와 동일한 유형의Tensor
logits
.
던지기
IllegalArgumentException | 로짓이 스칼라이거나(순위 >= 1이어야 함) 레이블의 순위가 로짓의 순위에서 1을 뺀 것과 같지 않은 경우. |
---|