يحسب خسارة Huber بين التسميات والتنبؤات.
لكل قيمة x في error = labels - predictions :
loss = 0.5 * x^2 if |x| <= d
loss = 0.5 * d^2 + d * (|x| - d) if |x| > d
حيث د هو دلتا.
الاستخدام المستقل:
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} });
Huber huberLoss = new Huber(tf);
Operand<TFloat32> result = huberLoss.call(labels, predictions);
// produces 0.155
الاتصال مع وزن العينة:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f});
Operand<TFloat32> result = huberLoss.call(labels, predictions, sampleWeight);
// produces 0.09f
باستخدام نوع التخفيض SUM :
Huber huberLoss = new Huber(tf, Reduction.SUM);
Operand<TFloat32> result = huberLoss.call(labels, predictions);
// produces 0.32f
باستخدام نوع التخفيض NONE :
Huber huberLoss = new Huber(tf, Reduction.NONE);
Operand<TFloat32> result = huberLoss.call(labels, predictions);
// produces [0.18f, 0.13f]
انظر أيضا
الثوابت
| يطفو | DELTA_DEFAULT |
الحقول الموروثة
المقاولون العامون
هوبر (عمليات tf) إنشاء خسارة Huber باستخدام getSimpleName() كاسم للخسارة، و DELTA_DEFAULT كدلتا وتقليل الخسارة بمقدار REDUCTION_DEFAULT | |
Huber (Ops tf، اسم السلسلة) إنشاء خسارة Huber باستخدام DELTA_DEFAULT كدلتا وتقليل الخسارة بمقدار REDUCTION_DEFAULT | |
هوبر (Ops tf، تخفيض التخفيض ) إنشاء خسارة Huber باستخدام getSimpleName() كاسم للخسارة و DELTA_DEFAULT كدلتا | |
الأساليب العامة
| <T يمتد TNumber > المعامل <T> |
الطرق الموروثة
الثوابت
التعويم النهائي الثابت العام DELTA_DEFAULT
المقاولون العامون
هوبر العام (Ops tf)
إنشاء خسارة Huber باستخدام getSimpleName() كاسم للخسارة، و DELTA_DEFAULT كدلتا وتقليل الخسارة بمقدار REDUCTION_DEFAULT
حدود
| tf | عمليات TensorFlow |
|---|
Huber العام (Ops tf، اسم السلسلة)
إنشاء خسارة Huber باستخدام DELTA_DEFAULT كدلتا وتقليل الخسارة بمقدار REDUCTION_DEFAULT
حدود
| tf | عمليات TensorFlow |
|---|---|
| اسم | اسم الخسارة، إذا كان فارغًا، فسيتم استخدام getSimpleName() . |
Huber العام (Ops tf، تقليل التخفيض )
إنشاء خسارة Huber باستخدام getSimpleName() كاسم للخسارة و DELTA_DEFAULT كدلتا
حدود
| tf | عمليات TensorFlow |
|---|---|
| تخفيض | نوع التخفيض الذي سيتم تطبيقه على الخسارة. |
Huber العام (Ops tf، اسم السلسلة، تقليل التخفيض )
ينشئ خسارة Huber باستخدام DELTA_DEFAULT كدلتا
حدود
| tf | عمليات TensorFlow |
|---|---|
| اسم | اسم الخسارة، إذا كان فارغًا، فسيتم استخدام getSimpleName() . |
| تخفيض | نوع التخفيض الذي سيتم تطبيقه على الخسارة. |
Huber العام (Ops tf، اسم السلسلة، دلتا العائمة، تقليل التخفيض )
يخلق خسارة هوبر
حدود
| tf | عمليات TensorFlow |
|---|---|
| اسم | اسم الخسارة، إذا كان فارغًا، فسيتم استخدام getSimpleName() . |
| دلتا | النقطة التي تتغير فيها دالة خسارة Huber من الدرجة الثانية إلى الخطية. |
| تخفيض | نوع التخفيض الذي سيتم تطبيقه على الخسارة. |
الأساليب العامة
استدعاء المعامل العام <T> ( المعامل <؟ يمتد تسميات TNumber >، تنبؤات المعامل <T>، عينات المعامل <T>)
يولد المعامل الذي يحسب الخسارة.
حدود
| التسميات | قيم الحقيقة أو التسميات |
|---|---|
| التنبؤات | التوقعات |
| SampleWeights | تعمل أوزان العينات الاختيارية كمعامل للخسارة. إذا تم توفير العدد، فسيتم ببساطة قياس الخسارة بالقيمة المحددة. إذا كان SampleWeights عبارة عن موتر بالحجم [batch_size]، فسيتم إعادة قياس إجمالي الخسارة لكل عينة من الدُفعة بواسطة العنصر المقابل في ناقل SampleWeights. إذا كان شكل SampleWeights هو [batch_size, d0, .. dN-1] (أو يمكن بثه إلى هذا الشكل)، فسيتم قياس كل عنصر خسارة في التنبؤات بالقيمة المقابلة لـ SampleWeights. (ملاحظة حول dN-1: جميع دوال الخسارة تقلل بمقدار بُعد واحد، وعادة ما يكون المحور=-1.) |
المرتجعات
- الخسارة