تدفق التوتر:: العمليات:: QuantizeDownAndShrinkRange

#include <math_ops.h>

قم بتحويل موتر "الإدخال" الكمي إلى "مخرج" أقل دقة، باستخدام.

ملخص

التوزيع الفعلي للقيم لتعظيم استخدام عمق البت الأقل وضبط نطاقات الإخراج الدنيا والقصوى وفقًا لذلك.

[input_min, input_max] عبارة عن عوامات عددية تحدد نطاق التفسير العائم لبيانات "الإدخال". على سبيل المثال، إذا كانت قيمة input_min هي -1.0f وinput_max هي 1.0f، ونحن نتعامل مع البيانات الكمية quint16، فيجب تفسير القيمة 0 في البيانات ذات 16 بت على أنها -1.0f، و65535 تعني 1.0f.

يحاول هذا المشغل الضغط على أكبر قدر ممكن من الدقة في مخرجات ذات عمق بت أقل عن طريق حساب القيم الدنيا والقصوى الفعلية الموجودة في البيانات. على سبيل المثال، ربما لا يحتوي مدخل quint16 على قيم أقل من 16,384 ولا شيء أعلى من 49,152. وهذا يعني أن نصف النطاق مطلوب فعليًا فقط، وجميع التفسيرات العائمة تتراوح بين -0.5f و0.5f، لذلك إذا أردنا ضغط البيانات إلى مخرجات quint8، فيمكننا استخدام هذا النطاق بدلاً من النطاق النظري -1.0f إلى 1.0 f الذي يقترحه الإدخال min و max.

من الناحية العملية، يعد هذا مفيدًا للغاية لأخذ المخرجات من عمليات مثل QuantizedMatMul التي يمكن أن تنتج مخرجات ذات عمق بت أعلى من مدخلاتها وقد يكون لها نطاقات مخرجات محتملة كبيرة، ولكن في الممارسة العملية لديها توزيع لقيم المدخلات التي تستخدم فقط جزءًا صغيرًا من نطاق ممكن. من خلال تغذية هذا الإخراج في هذا المشغل، يمكننا تقليله من 32 بت إلى 8 مع الحد الأدنى من فقدان الدقة.

الحجج:

  • النطاق: كائن النطاق
  • input_min: القيمة العائمة التي تمثل الحد الأدنى لقيمة الإدخال الكمية.
  • input_max: القيمة العائمة التي تمثل الحد الأقصى لقيمة الإدخال الكمية.
  • out_type: نوع الإخراج. يجب أن يكون عمقه أقل قليلاً من Tinput.

العوائد:

  • إخراج Output
  • Output : القيمة العائمة التي تمثل الحد الأدنى لقيمة الإخراج الكمي.
  • Output : القيمة العائمة التي تمثل الحد الأقصى لقيمة الإخراج الكمية.

البنائين والمدمرين

QuantizeDownAndShrinkRange (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input input_min, :: tensorflow::Input input_max, DataType out_type)

الصفات العامة

operation
output
output_max
output_min

الصفات العامة

عملية

Operation operation

الإخراج

::tensorflow::Output output

input_max

::tensorflow::Output output_max

input_min

::tensorflow::Output output_min

الوظائف العامة

QuantizeDownAndShrinkRange

 QuantizeDownAndShrinkRange(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input input_min,
  ::tensorflow::Input input_max,
  DataType out_type
)