실제 레이블과 예측 레이블 간의 교차 엔트로피 손실을 계산합니다.
레이블 클래스가 두 개만 있는 경우(0과 1로 가정) 이 교차 엔트로피 손실을 사용합니다. 각 예시에는 예측당 단일 부동 소수점 값이 있어야 합니다.
독립형 사용법:
Operand<TFloat32> labels = tf.constant(new float[][] { {0.f, 1.f}, {0.f, 0.f} }); Operand<TFloat32> predictions = tf.constant(new float[][] { {0.6f, 0.4f}, {0.4f, 0.6f} }); BinaryCrossentropy bce = new BinaryCrossentropy(tf); Operand<TFloat32> result = bce.call(labels, predictions); // produces 0.815
샘플 중량으로 호출:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f}); Operand<TFloat32> result = bce.call(labels, predictions, sampleWeight); // produces 0.458f
SUM
감소 유형 사용:
BinaryCrossentropy bce = new BinaryCrossentropy(tf, Reduction.SUM); Operand<TFloat32> result = bce.call(labels, predictions); // produces 1.630f
NONE
감소 유형 사용:
BinaryCrossentropy bce = new BinaryCrossentropy(tf, Reduction.NONE); Operand<TFloat32> result = bce.call(labels, predictions); // produces [0.916f, 0.714f]
상수
부울 | FROM_LOGITS_DEFAULT | |
뜨다 | LABEL_SMOOTHING_DEFAULT |
상속된 필드
공공 생성자
BinaryCrossentropy (Ops tf) 손실 이름으로 getSimpleName() , fromLogits의 경우 FROM_LOGITS_DEFAULT , labelSmoothing의 경우 LABEL_SMOOTHING_DEFAULT 및 REDUCTION_DEFAULT 의 손실 감소를 사용하여 이진 교차엔트로피 손실을 생성합니다. | |
BinaryCrossentropy (Ops tf, 감소 감소) 손실 이름으로 getSimpleName() , fromLogits의 경우 FROM_LOGITS_DEFAULT , labelSmoothing의 경우 LABEL_SMOOTHING_DEFAULT 사용하여 이진 교차엔트로피 손실을 생성합니다. | |
BinaryCrossentropy (Ops tf, 부울 fromLogits) 손실 이름으로 getSimpleName() 사용하고 LABEL_SMOOTHING_DEFAULT 의 labelSmoothing, REDUCTION_DEFAULT 의 감소를 사용하여 이진 교차엔트로피 손실을 생성합니다. | |
BinaryCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits) LABEL_SMOOTHING_DEFAULT 의 labelSmoothing과 REDUCTION_DEFAULT 의 감소를 사용하여 이진 교차엔트로피 손실을 생성합니다. | |
BinaryCrossentropy (Ops tf, 부울 fromLogits, float labelSmoothing) getSimpleName() 손실 이름으로 사용하고 REDUCTION_DEFAULT 를 감소시켜 이진 교차엔트로피 손실을 생성합니다. | |
BinaryCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits, float labelSmoothing) REDUCTION_DEFAULT 감소를 사용하여 이진 교차엔트로피 손실을 생성합니다. | |
BinaryCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits, float labelSmoothing, Reduction 감소) 이진 교차엔트로피 손실을 생성합니다. |
공개 방법
<T는 T번호를 확장합니다. > 피연산자 <T> |
상속된 메서드
상수
공개 정적 최종 부울 FROM_LOGITS_DEFAULT
공개 정적 최종 부동 LABEL_SMOOTHING_DEFAULT
공공 생성자
공개 BinaryCrossentropy (Ops tf)
손실 이름으로 getSimpleName()
, fromLogits의 경우 FROM_LOGITS_DEFAULT
, labelSmoothing의 경우 LABEL_SMOOTHING_DEFAULT
및 REDUCTION_DEFAULT
의 손실 감소를 사용하여 이진 교차엔트로피 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|
공개 BinaryCrossentropy (Ops tf, 감소 감소)
손실 이름으로 getSimpleName()
, fromLogits의 경우 FROM_LOGITS_DEFAULT
, labelSmoothing의 경우 LABEL_SMOOTHING_DEFAULT
사용하여 이진 교차엔트로피 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
절감 | 손실에 적용할 감소 유형입니다. |
공개 BinaryCrossentropy (Ops tf, 부울 fromLogits)
손실 이름으로 getSimpleName()
사용하고 LABEL_SMOOTHING_DEFAULT
의 labelSmoothing, REDUCTION_DEFAULT
의 감소를 사용하여 이진 교차엔트로피 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
공개 BinaryCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits)
LABEL_SMOOTHING_DEFAULT
의 labelSmoothing과 REDUCTION_DEFAULT
의 감소를 사용하여 이진 교차엔트로피 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
이름 | 손실의 이름 |
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
공개 BinaryCrossentropy (Ops tf, 부울 fromLogits, float labelSmoothing)
getSimpleName()
손실 이름으로 사용하고 REDUCTION_DEFAULT
를 감소시켜 이진 교차엔트로피 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
labelSmoothing | [0, 1] 범위의 숫자입니다. 0이면 스무딩이 발생하지 않습니다. > 0인 경우 예측된 레이블과 실제 레이블의 평활화 버전 간의 손실을 계산합니다. 여기서 평활화는 레이블을 0.5 방향으로 압축합니다. labelSmoothing 값이 클수록 평활화가 심해집니다. |
공개 BinaryCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits, float labelSmoothing)
REDUCTION_DEFAULT
감소를 사용하여 이진 교차엔트로피 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
이름 | 손실의 이름 |
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
labelSmoothing | [0, 1] 범위의 숫자입니다. 0이면 스무딩이 발생하지 않습니다. > 0인 경우 예측된 레이블과 실제 레이블의 평활화 버전 간의 손실을 계산합니다. 여기서 평활화는 레이블을 0.5 방향으로 압축합니다. labelSmoothing 값이 클수록 평활화가 심해집니다. |
공개 BinaryCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, Reduction 감소)
이진 교차엔트로피 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
labelSmoothing | [0, 1] 범위의 숫자입니다. 0이면 스무딩이 발생하지 않습니다. > 0인 경우 예측된 레이블과 실제 레이블의 평활화 버전 간의 손실을 계산합니다. 여기서 평활화는 레이블을 0.5 방향으로 압축합니다. labelSmoothing 값이 클수록 평활화가 심해집니다. |
절감 | 손실에 적용할 감소 유형입니다. |
공개 BinaryCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits, float labelSmoothing, Reduction 감소)
이진 교차엔트로피 손실을 생성합니다.
매개변수
tf | TensorFlow 작업 |
---|---|
이름 | 손실의 이름 |
fromLogits | 예측을 로짓 값의 텐서로 해석할지 여부 |
labelSmoothing | [0, 1] 범위의 숫자입니다. 0이면 스무딩이 발생하지 않습니다. > 0인 경우 예측된 레이블과 실제 레이블의 평활화 버전 간의 손실을 계산합니다. 여기서 평활화는 레이블을 0.5 방향으로 압축합니다. labelSmoothing 값이 클수록 평활화가 심해집니다. |
절감 | 손실에 적용할 감소 유형입니다. |
던지기
IllegalArgumentException | labelSmoothing이 0 - 1의 포함 범위에 있지 않은 경우. |
---|
공개 방법
공개 피연산자 <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.] 범위를 벗어나는 경우. |
---|