Menghitung kerugian engsel antara label dan prediksi.
loss = maximum(1 - labels * predictions, 0)
.
nilai labels
diharapkan -1 atau 1. Jika label biner (0 atau 1) diberikan, label tersebut akan dikonversi ke -1 atau 1.
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} }); Hinge hingeLoss = new Hinge(tf); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces 1.3f
Memanggil dengan berat sampel:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f}); Operand<TFloat32> result = hingeLoss.call(labels, predictions, sampleWeight); // produces 0.55f
Menggunakan tipe pengurangan SUM
:
Hinge hingeLoss = new Hinge(tf, Reduction.SUM); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces 2.6f
Menggunakan tipe reduksi NONE
:
Hinge hingeLoss = new Hinge(tf, Reduction.NONE); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces [1.1f, 1.5f]
Bidang Warisan
Konstruktor Publik
Engsel (Ops tf) Membuat Kerugian Engsel menggunakan getSimpleName() sebagai nama kerugian dan Pengurangan Kerugian sebesar REDUCTION_DEFAULT | |
Engsel (Ops tf, Reduksi reduksi) Membuat Kerugian Engsel menggunakan getSimpleName() sebagai nama kerugian | |
Metode Publik
<T memperluas TNomber > Operan <T> |
Metode Warisan
Konstruktor Publik
Engsel publik (Ops tf)
Membuat Kerugian Engsel menggunakan getSimpleName()
sebagai nama kerugian dan Pengurangan Kerugian sebesar REDUCTION_DEFAULT
Parameter
tf | Operasi TensorFlow |
---|
Engsel publik (Ops tf, Reduksi reduksi)
Membuat Kerugian Engsel menggunakan getSimpleName()
sebagai nama kerugian
Parameter
tf | Operasi TensorFlow |
---|---|
pengurangan | Jenis Pengurangan yang diterapkan pada kerugian. |
Engsel publik (Ops tf, Nama string, Reduksi reduksi)
Membuat Engsel
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.
Jika dijalankan dalam mode Grafik, komputasi akan memunculkan TFInvalidArgumentException
jika nilai label tidak ada dalam kumpulan [-1., 0., 1.]. Dalam Mode Eager, panggilan ini akan memunculkan IllegalArgumentException
, jika nilai label tidak ada dalam set [-1., 0., 1.].
Parameter
label | nilai atau label kebenaran, harus berupa -1, 0, atau 1. Nilai yang diharapkan adalah -1 atau 1. Jika label biner (0 atau 1) diberikan, maka akan dikonversi ke -1 atau 1. |
---|---|
prediksi | prediksi, nilai harus berada dalam kisaran [0. ke 1.] inklusif. |
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 yang sesuai 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
- kerugiannya
Melempar
Pengecualian Argumen Ilegal | jika prediksi berada di luar rentang [0.-1.]. |
---|