SparseSoftmaxCrossEntropyWithLogits

공개 클래스 SparseSoftmaxCrossEntropyWithLogits

공공 생성자

공개 방법

static <T는 TNumber를 확장하고 U는 TNumber를 확장합니다. > 피연산자
sparseSoftmaxCrossEntropyWithLogits ( 범위 범위, 피연산자 <T> 레이블, 피연산자 <U> 로지트)
logitslabels 간의 희소 소프트맥스 교차 엔트로피를 계산합니다.

상속된 메서드

공공 생성자

공개 SparseSoftmaxCrossEntropyWithLogits ()

공개 방법

공개 정적 피연산자 sparseSoftmaxCrossEntropyWithLogits ( 범위 범위, 피연산자 <T> 레이블, 피연산자 <U> 로지트)

logitslabels 간의 희소 소프트맥스 교차 엔트로피를 계산합니다.

클래스가 상호 배타적인(각 항목이 정확히 하나의 클래스에 속함) 개별 분류 작업에서 확률 오류를 측정합니다. 예를 들어, 각 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 (여기서 rlabels 및 결과의 순위)이고 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을 뺀 것과 같지 않은 경우.