KLDivergence

KLDivergensi kelas publik

Menghitung kerugian divergensi Kullback-Leibler antara label dan prediksi.

loss = labels * log(labels / predictions)

Penggunaan mandiri:

    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
 

Memanggil dengan berat sampel:

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

Menggunakan tipe pengurangan SUM :

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

Menggunakan tipe reduksi NONE :

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

Bidang Warisan

Konstruktor Publik

Divergensi KLD (Ops tf)
Membuat Kerugian Divergensi Kullback Leibler menggunakan getSimpleName() sebagai nama kerugian dan Pengurangan Kerugian sebesar REDUCTION_DEFAULT
KLDivergence (Ops tf, Pengurangan pengurangan)
Membuat Kerugian Divergence Kullback Leibler menggunakan getSimpleName() sebagai nama kerugian
KLDivergence (Ops tf, Nama string, Pengurangan pengurangan)
Menghasilkan Kerugian Divergensi Kullback Leibler

Metode Publik

<T memperluas TNomber > Operan <T>
panggilan ( Operand <? extends TNumber > label, prediksi Operand <T>, Operand <T> sampleWeights)
Menghasilkan Operan yang menghitung kerugian.

Metode Warisan

Konstruktor Publik

Divergensi KLD publik (Ops tf)

Membuat Kerugian Divergensi Kullback Leibler menggunakan getSimpleName() sebagai nama kerugian dan Pengurangan Kerugian sebesar REDUCTION_DEFAULT

Parameter
tf Operasi TensorFlow

Divergensi KLD publik (Ops tf, Pengurangan pengurangan)

Membuat Kerugian Divergence Kullback Leibler menggunakan getSimpleName() sebagai nama kerugian

Parameter
tf Operasi TensorFlow
pengurangan Jenis Pengurangan yang diterapkan pada kerugian.

KLDivergence publik (Ops tf, Nama string, Pengurangan pengurangan)

Menghasilkan Kerugian Divergensi Kullback Leibler

Parameter
tf Operasi TensorFlow
nama nama kerugiannya
pengurangan Jenis Pengurangan yang diterapkan pada kerugian.

Metode Publik

panggilan Operand <T> publik ( label Operand <? extends TNumber >, prediksi Operand <T>, Operand <T> sampleWeights)

Menghasilkan Operan yang menghitung kerugian.

Parameter
label nilai atau label kebenaran
prediksi prediksi
sampelBerat SampleWeights opsional bertindak sebagai koefisien kerugian. Jika skalar disediakan, maka kerugiannya hanya diskalakan dengan nilai yang diberikan. Jika SampleWeights adalah tensor dengan ukuran [batch_size], maka total kerugian untuk setiap sampel batch akan diubah skalanya dengan elemen terkait dalam vektor SampleWeights. Jika bentuk SampleWeights adalah [batch_size, d0, .. dN-1] (atau dapat disiarkan ke bentuk ini), maka setiap elemen prediksi yang hilang akan diskalakan dengan nilai SampleWeights yang sesuai. (Catatan pada dN-1: semua fungsi kerugian berkurang 1 dimensi, biasanya sumbu=-1.)
Kembali
  • kerugian