레이블과 예측 간의 교차엔트로피 손실을 계산합니다.
두 개 이상의 레이블 클래스가 있는 경우 이 교차엔트로피 손실 함수를 사용하십시오. 레이블은 정수로 제공될 것으로 예상됩니다. one-hot
표현을 사용하여 레이블을 제공하려면 CategoricalCrossentropy
손실을 사용하세요. predictions
의 경우 기능당 # classes
부동 소수점 값이 있어야 하고 label
의 경우 기능당 단일 부동 소수점 값이 있어야 합니다.
아래 스니펫에는 labels
대한 예시당 단일 부동 소수점 값이 있고 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.AUTO 및 fromLogits= FROM_LOGITS_DEFAULT 와 함께 손실 이름으로 getSimpleName() 사용하여 SparseCategoricalCrossentropy 손실을 생성합니다. | |
SparseCategoricalCrossentropy (Ops tf, 문자열 이름, 감소 감소) 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, 부울 fromLogits, 감소 감소) getSimpleName() 손실 이름으로 사용하여 SparseCategoricalCrossentropy 손실을 생성합니다. | |
SparseCategoricalCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits, 감소 감소, int 축) SparseCategoricalCrossentropy를 생성합니다. |
공개 방법
<T는 T번호를 확장합니다. > 피연산자 <T> |
상속된 메서드
상수
공개 정적 최종 int AXIS_DEFAULT
공개 정적 최종 부울 FROM_LOGITS_DEFAULT
공공 생성자
공개 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.AUTO 및 fromLogits= FROM_LOGITS_DEFAULT
와 함께 손실 이름으로 getSimpleName()
사용하여 SparseCategoricalCrossentropy 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
절감 | 손실에 적용할 감소 유형입니다. |
public SparseCategoricalCrossentropy (Ops tf, 문자열 이름, 감소 감소)
Reduction.AUTO 및 fromLogits= FROM_LOGITS_DEFAULT
사용하여 SparseCategoricalCrossentropy 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
이름 | 이 손실 함수의 이름 |
절감 | 손실에 적용할 감소 유형입니다. |
공개 SparseCategoricalCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits)
REDUCTION_DEFAULT
및 fromLogits= FROM_LOGITS_DEFAULT
의 손실 감소를 사용하여 SparseCategoricalCrossentropy를 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
이름 | 이 손실 함수의 이름 |
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
공개 SparseCategoricalCrossentropy (Ops tf, 부울 fromLogits)
getSimpleName()
손실 이름으로 사용하고 REDUCTION_DEFAULT
의 손실 감소 및 fromLogits= FROM_LOGITS_DEFAULT
를 사용하여 SparseCategoricalCrossentropy 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
public SparseCategoricalCrossentropy (Ops tf, 부울 fromLogits, 감소 감소)
getSimpleName()
손실 이름으로 사용하여 SparseCategoricalCrossentropy 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
절감 | 손실에 적용할 감소 유형입니다. |
public SparseCategoricalCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits, 감소 감소, int 축)
SparseCategoricalCrossentropy를 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
이름 | 이 손실 함수의 이름 |
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
절감 | 손실에 적용할 감소 유형입니다. |
중심선 | 채널 축. axis=-1 'Channels Last' 데이터 형식에 해당하고 axis=1 은 'Channels First' 데이터 형식에 해당합니다. |
공개 방법
공개 피연산자 <T> 호출 ( 피연산자 <? 확장 TNumber > 레이블, 피연산자 <T> 예측, 피연산자 <T> SampleWeights)
손실을 계산하는 피연산자를 생성합니다.
그래프 모드에서 실행하는 경우 예측 값이 o [0.0] 범위를 벗어나면 계산에서 TFInvalidArgumentException
발생합니다. 1.]. Eager 모드에서 예측 값이 o [0.0] 범위를 벗어나는 경우 이 호출은 IllegalArgumentException
발생시킵니다. 1로.]
매개변수
라벨 | 진리값 또는 라벨 |
---|---|
예측 | 예측에서 값은 [0. 1.]에 포함됩니다. |
샘플 가중치 | 선택적 SampleWeights는 손실에 대한 계수 역할을 합니다. 스칼라가 제공되면 손실은 단순히 주어진 값에 따라 조정됩니다. SampleWeights가 [batch_size] 크기의 텐서인 경우 배치의 각 샘플에 대한 총 손실은 SampleWeights 벡터의 해당 요소에 따라 크기가 조정됩니다. SampleWeights의 형태가 [batch_size, d0, .. dN-1]인 경우(또는 이 형태로 브로드캐스팅될 수 있음) 예측의 각 손실 요소는 SampleWeights의 해당 값에 따라 조정됩니다. (dN-1에 대한 참고: 모든 손실 함수는 1차원으로 감소하며 일반적으로 축=-1입니다.) |
보고
- 손실
던지기
IllegalArgumentException | 예측이 [0.-1.] 범위를 벗어나는 경우. |
---|