tensorflow:: אופס:: QuantizeDownAndShrinkRange

#include <math_ops.h>

המר את טנסור ה-'קלט' המכומתי ל'פלט' בעל דיוק נמוך יותר, באמצעות ה-.

סיכום

הפצה בפועל של הערכים כדי למקסם את השימוש בעומק הסיביות התחתון והתאמת טווחי המינימום והמקסימום של הפלט בהתאם.

[input_min, input_max] הם צפים סקלאריים המציינים את הטווח עבור פרשנות הציפה של נתוני 'הקלט'. לדוגמה, אם input_min הוא -1.0f ו-input_max הוא 1.0f, ואנו עוסקים בנתונים quantized quant16, אז יש לפרש ערך 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 עם אובדן דיוק מינימלי.

טיעונים:

  • scope: אובייקט Scope
  • input_min: הערך הצף שערך הקלט הקוונטי המינימלי מייצג.
  • input_max: הערך הצף שערך הקלט המקוונטי המקסימלי מייצג.
  • out_type: סוג הפלט. צריך להיות עומק סיביות נמוך יותר מאשר Tinput.

החזרות:

  • Output
  • Output output_min: הערך הצף שערך הפלט המקוונטי המינימלי מייצג.
  • Output output_max: הערך הצף שערך הפלט המקוונטי המקסימלי מייצג.

בנאים והורסים

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

output_max

::tensorflow::Output output_max

output_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
)