Dequantize

כיתת גמר ציבורית Dequantize

הפוך את טנסור 'הקלט' ל-float או bfloat16 Tensor.

[min_range, max_range] הם צפים סקלאריים המציינים את הטווח עבור הפלט. התכונה 'מצב' שולטת בדיוק באילו חישובים נעשה שימוש כדי להמיר את ערכי הציפה למקבילות הכמותיות שלהם.

במצב 'MIN_COMBINED', כל ערך של הטנזור יעבור את הפעולות הבאות:

if T == qint8: in[i] += (range(T) + 1)/ 2.0
 out[i] = min_range + (in[i]* (max_range - min_range) / range(T))
 
כאן `טווח (T) = מספר_גבולות ::max() - מספר_מגבלות ::min()`

דוגמה למצב MIN_COMBINED

אם הקלט מגיע מ-QuantizedRelu6, סוג הפלט הוא quint8 (טווח של 0-255) אבל הטווח האפשרי של QuantizedRelu6 הוא 0-6. ערכי min_range ו-max_range הם לפיכך 0.0 ו-6.0. Dequantize on quint8 ייקח כל ערך, יטיל לצוף ויכפיל ב-6 / 255. שימו לב שאם quantizedtype הוא qint8, הפעולה תוסיף כל ערך ב-128 לפני ההטלה.

אם המצב הוא 'MIN_FIRST', הגישה הזו משמשת:

num_discrete_values = 1 << (# of bits in T)
 range_adjust = num_discrete_values / (num_discrete_values - 1)
 range = (range_max - range_min) * range_adjust
 range_scale = range / num_discrete_values
 const double offset_input = static_cast<double>(input) - lowest_quantized;
 result = range_min + ((input - numeric_limits<T>::min()) * range_scale)
 
אם המצב הוא `SCALED`, דה-קוונטיזציה מתבצעת על ידי הכפלת כל ערך קלט ב-scaling_factor. (לכן קלט של 0 תמיד ממפה ל-0.0).

ה-scaling_factor נקבע מ-`min_range`, `max_range` ו-`narrow_range` באופן שתואם את `QuantizeAndDequantize{V2|V3}` ו-`QuantizeV2`, באמצעות האלגוריתם הבא:

const int min_expected_T = std::numeric_limits<T>::min() +
     (narrow_range ? 1 : 0);
   const int max_expected_T = std::numeric_limits<T>::max();
   const float max_expected_T = std::numeric_limits<float>::max();
 
   const float scale_factor =
     (std::numeric_limits<T>::min() == 0) ? (max_range / max_expected_T)
                                          : std::max(min_range / min_expected_T,
                                                     max_range / max_expected_T);
 

כיתות מקוננות

מַחלָקָה Dequantize.Options תכונות אופציונליות עבור Dequantize

קבועים

חוּט OP_NAME השם של המבצע הזה, כפי שידוע על ידי מנוע הליבה של TensorFlow

שיטות ציבוריות

פלט <U>
asOutput ()
מחזירה את הידית הסמלית של הטנזור.
סטטי Dequantize.Options
ציר (ציר ארוך)
סטטי <U מרחיב TNummer > Dequantize <U>
create ( scope scope, Operand <? מרחיב את TType > input, Operand < TFloat32 > minRange, Operand < TFloat32 > maxRange, Class<U> dtype, Options... options)
שיטת מפעל ליצירת מחלקה העוטפת פעולת Dequantize חדשה.
static Dequantize < TFloat32 >
create ( scope scope, Operand <? מרחיב את TType > input, Operand < TFloat32 > minRange, Operand < TFloat32 > maxRange, Options... options)
שיטת מפעל ליצירת מחלקה העוטפת פעולת Dequantize חדשה באמצעות סוגי פלט ברירת מחדל.
סטטי Dequantize.Options
מצב (מצב מחרוזת)
סטטי Dequantize.Options
narrowRange (בוליאני narrowRange)
פלט <U>
פלט ()

שיטות בירושה

org.tensorflow.op.RawOp
בוליאנית סופית
שווה (Object obj)
int סופי
מִבצָע
אופ ()
החזר יחידת חישוב זו Operation אחת.
מחרוזת סופית
בוליאני
שווה (Object arg0)
כיתה אחרונה<?>
getClass ()
int
hashcode ()
ריק סופי
להודיע ​​()
ריק סופי
הודע הכל ()
חוּט
toString ()
ריק סופי
המתן (ארג0 ארוך, אינט arg1)
ריק סופי
המתן (ארג0 ארוך)
ריק סופי
חכה ()
org.tensorflow.op.Op
אבסטרקט ExecutionEnvironment
env ()
החזר את סביבת הביצוע שבה נוצר האופציה הזו.
מבצע מופשט
אופ ()
החזר יחידת חישוב זו Operation אחת.
org.tensorflow.Operand
פלט מופשט <U מרחיב את TNummer >
asOutput ()
מחזירה את הידית הסמלית של הטנזור.
מופשט U מרחיב את TNummer
asTensor ()
מחזיר את הטנזור באופרנד זה.
צורה מופשטת
צורה ()
מחזירה את הצורה (הידועה אולי בחלקה) של הטנזור שאליו מתייחס Output של אופרנד זה.
מחלקה מופשטת<U מרחיבה את TNummer >
סוג ()
מחזירה את סוג הטנזור של אופרנד זה
org.tensorflow.ndarray.Shaped
מופשט int
צורה מופשטת
מופשט ארוך
גודל ()
מחשב ומחזיר את הגודל הכולל של מיכל זה, במספר ערכים.

קבועים

מחרוזת סופית סטטית ציבורית OP_NAME

השם של המבצע הזה, כפי שידוע על ידי מנוע הליבה של TensorFlow

ערך קבוע: "Dequantize"

שיטות ציבוריות

פלט ציבורי <U> asOutput ()

מחזירה את הידית הסמלית של הטנזור.

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

ציבורי סטטי Dequantize.Options ציר (ציר ארוך)

public static Dequantize <U> create ( scope scope, Operand <? מרחיב את TType > input, Operand < TFloat32 > minRange, Operand < TFloat32 > maxRange, Class<U> dtype, Options... options)

שיטת מפעל ליצירת מחלקה העוטפת פעולת Dequantize חדשה.

פרמטרים
תְחוּם ההיקף הנוכחי
minRange הערך הסקלרי המינימלי שיוצר אולי עבור הקלט.
maxRange הערך הסקלרי המקסימלי שהופק עבור הקלט.
dtype סוג טנסור הפלט. נכון לעכשיו Dequantize תומך ב-float וב-bfloat16. אם 'dtype' הוא 'bfloat16', הוא תומך רק במצב 'MIN_COMBINED'.
אפשרויות נושא ערכי תכונות אופציונליות
מחזיר
  • מופע חדש של Dequantize

public static Dequantize < TFloat32 > create ( scope scope, Operand <? מרחיב את TType > input, Operand < TFloat32 > minRange, Operand < TFloat32 > maxRange, Options... options)

שיטת מפעל ליצירת מחלקה העוטפת פעולת Dequantize חדשה באמצעות סוגי פלט ברירת מחדל.

פרמטרים
תְחוּם ההיקף הנוכחי
minRange הערך הסקלרי המינימלי שיוצר אולי עבור הקלט.
maxRange הערך הסקלרי המקסימלי שהופק עבור הקלט.
אפשרויות נושא ערכי תכונות אופציונליות
מחזיר
  • מופע חדש של Dequantize

מצב ציבורי סטטי Dequantize.Options (מצב מחרוזת)

public static Dequantize.Options narrowRange (בווליאני narrowRange)

פלט ציבורי <U> פלט ()