KLDivergence

공개 클래스 KLDivergence

레이블과 예측 간의 Kullback-Leibler 발산 손실을 계산합니다.

loss = labels * log(labels / predictions)

독립형 사용법:

    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} });
    KLDivergence kld = new KLDivergence(tf);
    Operand<TFloat32> result = kld.call(labels, predictions);
    // produces 0.458
 

샘플 중량으로 호출:

    Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.8f, 0.2f});
    Operand<TFloat32> result = kld.call(labels, predictions, sampleWeight);
    // produces 0.366f
 

SUM 감소 유형 사용:

    KLDivergence kld = new KLDivergence(tf, Reduction.SUM);
    Operand<TFloat32> result = kld.call(labels, predictions);
    // produces 0.916f
 

NONE 감소 유형 사용:

    KLDivergence kld = new KLDivergence(tf, Reduction.NONE);
    Operand<TFloat32> result = kld.call(labels, predictions);
    // produces [0.916f, -3.08e-06f]
 

상속된 필드

공공 생성자

KLDivergence (Ops tf)
손실 이름으로 getSimpleName() 을 사용하고 REDUCTION_DEFAULT 의 손실 감소를 사용하여 Kullback Leibler Divergence Loss를 생성합니다.
KLDivergence (Ops tf, 감소 감소)
getSimpleName() 손실 이름으로 사용하여 Kullback Leibler Divergence Loss Loss를 생성합니다.
KLDivergence (Ops tf, 문자열 이름, 감소 감소)
Kullback Leibler 발산 손실을 생성합니다.

공개 방법

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

상속된 메서드

공공 생성자

공개 KLDivergence (Ops tf)

손실 이름으로 getSimpleName() 을 사용하고 REDUCTION_DEFAULT 의 손실 감소를 사용하여 Kullback Leibler Divergence Loss를 생성합니다.

매개변수
tf TensorFlow 작업

공개 KLDivergence (Ops tf, 감소 감소)

getSimpleName() 손실 이름으로 사용하여 Kullback Leibler Divergence Loss Loss를 생성합니다.

매개변수
tf TensorFlow 작업
절감 손실에 적용할 감소 유형입니다.

공개 KLDivergence (Ops tf, 문자열 이름, 감소 감소)

Kullback Leibler 발산 손실을 생성합니다.

매개변수
tf TensorFlow 작업
이름 손실의 이름
절감 손실에 적용할 감소 유형입니다.

공개 방법

공개 피연산자 <T> 호출 ( 피연산자 <? 확장 TNumber > 레이블, 피연산자 <T> 예측, 피연산자 <T> SampleWeights)

손실을 계산하는 피연산자를 생성합니다.

매개변수
라벨 진리값 또는 라벨
예측 예측
샘플 가중치 선택적 SampleWeights는 손실에 대한 계수 역할을 합니다. 스칼라가 제공되면 손실은 단순히 주어진 값에 따라 조정됩니다. SampleWeights가 [batch_size] 크기의 텐서인 경우 배치의 각 샘플에 대한 총 손실은 SampleWeights 벡터의 해당 요소에 따라 크기가 조정됩니다. SampleWeights의 형태가 [batch_size, d0, .. dN-1]인 경우(또는 이 형태로 브로드캐스트될 수 있음) 예측의 각 손실 요소는 SampleWeights의 해당 값에 따라 조정됩니다. (dN-1에 대한 참고: 모든 손실 함수는 1차원으로 감소하며 일반적으로 축=-1입니다.)
보고
  • 손실