BinaryCrossentropy

공개 클래스 BinaryCrossentropy

실제 레이블과 예측 레이블 간의 교차 엔트로피 손실을 계산합니다.

레이블 클래스가 두 개만 있는 경우(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_DEFAULTREDUCTION_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 감소)
이진 교차엔트로피 손실을 생성합니다.
BinaryCrossentropy (Ops tf, 문자열 이름, 부울 fromLogits, float labelSmoothing, Reduction 감소)
이진 교차엔트로피 손실을 생성합니다.

공개 방법

<T는 T번호를 확장합니다. > 피연산자 <T>
호출 ( 피연산자 <? 확장 TNumber > 레이블, 피연산자 <T> 예측, 피연산자 <T> SampleWeights)
손실을 계산하는 피연산자를 생성합니다.

상속된 메서드

상수

공개 정적 최종 부울 FROM_LOGITS_DEFAULT

상수 값: 거짓

공개 정적 최종 부동 LABEL_SMOOTHING_DEFAULT

상수값: 0.0

공공 생성자

공개 BinaryCrossentropy (Ops tf)

손실 이름으로 getSimpleName() , fromLogits의 경우 FROM_LOGITS_DEFAULT , labelSmoothing의 경우 LABEL_SMOOTHING_DEFAULTREDUCTION_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.] 범위를 벗어나는 경우.