SquaredHinge

공개 클래스 SquaredHinge

라벨과 예측 간의 제곱 힌지 손실을 계산합니다.

loss = square(maximum(1 - labels * predictions, 0))

labels 값은 -1 또는 1이어야 합니다. 이진(0 또는 1) 레이블이 제공되면 -1 또는 1로 변환됩니다.

독립형 사용법:

    Operand<TFloat32> labels =
        tf.constant(new float[][] { {0., 1.}, {0., 0.} });
    Operand<TFloat32> predictions =
        tf.constant(new float[][] { {0.6f, 0.4f}, {0.4f, 0.6f} });
    SquaredHinge squaredHinge = new SquaredHinge(tf);
    Operand<TFloat32> result = squaredHinge.call(labels, predictions);
    // produces 1.86f
 

샘플 중량으로 호출:

    Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f});
    Operand<TFloat32> result = squaredHinge.call(labels, predictions,
                                                  sampleWeight);
    // produces 0.73f
 

SUM 감소 유형 사용:

    SquaredHinge squaredHinge = new SquaredHinge(tf, Reduction.SUM);
    Operand<TFloat32> result = squaredHinge.call(labels, predictions);
    // produces 3.72f
 

NONE 감소 유형 사용:

    SquaredHinge squaredHinge = new SquaredHinge(tf, Reduction.NONE);
    Operand<TFloat32> result = squaredHinge.call(labels, predictions);
    // produces [1.46f, 2.26f]
 

상속된 필드

공공 생성자

SquaredHinge (Ops tf)
손실 이름으로 getSimpleName() 사용하고 REDUCTION_DEFAULT 의 손실 감소를 사용하여 제곱 경첩 손실을 생성합니다.
SquaredHinge (Ops tf, 감소 감소)
getSimpleName() 손실 이름으로 사용하여 Squared Hinge Loss를 생성합니다.
SquaredHinge (Ops tf, 문자열 이름, 감소 감소)
정사각형 경첩을 생성합니다.

공개 방법

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

상속된 메서드

공공 생성자

공개 SquaredHinge (Ops tf)

손실 이름으로 getSimpleName() 사용하고 REDUCTION_DEFAULT 의 손실 감소를 사용하여 제곱 경첩 손실을 생성합니다.

매개변수
tf TensorFlow 작업

public SquaredHinge (Ops tf, 감소 감소)

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

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

public SquaredHinge (Ops tf, 문자열 이름, 감소 감소)

정사각형 경첩을 생성합니다.

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

공개 방법

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

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

그래프 모드에서 실행하는 경우 레이블 값이 [-1., 0., 1.] 집합에 없으면 계산에서 TFInvalidArgumentException 발생합니다. Eager 모드에서 이 호출은 레이블 값이 [-1., 0., 1.] 세트에 없으면 IllegalArgumentException 발생시킵니다.

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