يحسب فقدان المفصلة بين التسميات والتنبؤات.
loss = maximum(1 - labels * predictions, 0)
.
من المتوقع أن تكون قيم labels
-1 أو 1. إذا تم توفير تسميات ثنائية (0 أو 1)، فسيتم تحويلها إلى -1 أو 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} }); Hinge hingeLoss = new Hinge(tf); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces 1.3f
الاتصال مع وزن العينة:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f}); Operand<TFloat32> result = hingeLoss.call(labels, predictions, sampleWeight); // produces 0.55f
باستخدام نوع التخفيض SUM
:
Hinge hingeLoss = new Hinge(tf, Reduction.SUM); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces 2.6f
باستخدام نوع التخفيض NONE
:
Hinge hingeLoss = new Hinge(tf, Reduction.NONE); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces [1.1f, 1.5f]
الحقول الموروثة
المقاولون العامون
المفصلة (Ops tf) إنشاء "خسارة المفصلة" باستخدام getSimpleName() كاسم الخسارة وتقليل الخسارة بمقدار REDUCTION_DEFAULT | |
الأساليب العامة
<T يمتد TNumber > المعامل <T> |
الطرق الموروثة
المقاولون العامون
المفصلة العامة (Ops tf)
إنشاء "خسارة المفصلة" باستخدام getSimpleName()
كاسم الخسارة وتقليل الخسارة بمقدار REDUCTION_DEFAULT
حدود
tf | عمليات TensorFlow |
---|
المفصلة العامة (Ops tf، تقليل التخفيض )
ينشئ "خسارة المفصلة" باستخدام getSimpleName()
كاسم الخسارة
حدود
tf | عمليات TensorFlow |
---|---|
تخفيض | نوع التخفيض الذي سيتم تطبيقه على الخسارة. |
المفصلة العامة (Ops tf، اسم السلسلة، تقليل التخفيض )
يخلق المفصلة
حدود
tf | عمليات TensorFlow |
---|---|
اسم | اسم الخسارة |
تخفيض | نوع التخفيض الذي سيتم تطبيقه على الخسارة. |
الأساليب العامة
استدعاء المعامل العام <T> ( المعامل <؟ يمتد تسميات TNumber >، تنبؤات المعامل <T>، عينات المعامل <T>)
يولد المعامل الذي يحسب الخسارة.
إذا تم تشغيله في وضع الرسم البياني، فسوف يؤدي الحساب إلى طرح TFInvalidArgumentException
إذا لم تكن قيم التسمية في المجموعة [-1., 0., 1.]. في وضع Eager، سيؤدي هذا الاستدعاء إلى طرح IllegalArgumentException
، إذا لم تكن قيم التسمية موجودة في المجموعة [-1., 0., 1.].
حدود
تسميات | يجب أن تكون قيم الحقيقة أو التسميات إما -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.) |
المرتجعات
- الخسارة
رميات
IllegalArgumentException | إذا كانت التوقعات خارج النطاق [0.-1.]. |
---|