UniformQuantizedConvolution

מחלקה סופית ציבורית UniformQuantizedConvolution

בצע קונבולוציה כמותנית של Tensor 'lhs' ו-Tensor 'rhs' קוונטי. לעשות `פלט` כמותי.

בהינתן `lhs` ו-`rhs` קוונטי, מבצע נקודה קוונטית על `lhs` ו-`rhs` כדי ליצור `פלט` כמותי.

`lhs` ו-`rhs` חייבים להיות טנסורים בעלי אותה דרגה, ולעמוד בתנאי הצורה הבאים. - `lhs_feature` % `feature_group_count` == 0 - `lhs_feature` % `rhs_input_feature` == 0 - `lhs_feature` / `feature_group_count` == `rhs_input_feature` - `rhs_output_feature ==group` %_bat `count % `batch_group_count` == 0 - `rhs_output_feature` % `batch_group_count` == 0

`lhs` ו-`rhs` חייבים להיות כמותיים של Tensor, כאשר ערך הנתונים מקומת באמצעות הנוסחה:

quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
 
`פלט` גם הוא מכומד, תוך שימוש באותה נוסחה. אם 'rhs' מכומת לפי טנסור, ה'פלט' חייב להיות גם מיומת לפי טנסור.

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

מעמד UniformQuantizedConvolution.Options תכונות אופציונליות עבור UniformQuantizedConvolution

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

פלט <U>
asOutput ()
מחזירה את הידית הסמלית של טנזור.
סטטי UniformQuantizedConvolution.Options
batchGroupCount (Long batchGroupCount)
סטטי <U, T> UniformQuantizedConvolution <U>
create ( scope scope, Operand <T> lhs, Operand <T> rhs, Operand <Float> lhsScales, Operand <Integer> lhsZeroPoints, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Operand <Float> <Integer> <Integer, Operand > outputZeroPoints, Class<U> Tout, String padding, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Long outputQuantizationMinVal, Long outputQuantizationMaxVal, Options... options)
שיטת מפעל ליצירת מחלקה העוטפת פעולת UniformQuantizedConvolution חדשה.
סטטי UniformQuantizedConvolution.Options
dimensionNumbers (מחרוזת dimensionNumbers)
סטטי UniformQuantizedConvolution.Options
explicitPadding (רשימה<Long> explicitPadding)
סטטי UniformQuantizedConvolution.Options
featureGroupCount (Long featureGroupCount)
סטטי UniformQuantizedConvolution.Options
lhsDilation (רשימה<Long> lhsDilation)
סטטי UniformQuantizedConvolution.Options
lhsQuantizationAxis (Long lhsQuantizationAxis)
פלט <U>
פלט ()
הטנזור המכומתי של הפלט של `Tout`, זהה לדרגה של `lhs` ו-`rhs`.
סטטי UniformQuantizedConvolution.Options
outputQuantizationAxis (Long outputQuantizationAxis)
סטטי UniformQuantizedConvolution.Options
rhsDilation (רשימה<Long> rhsDilation)
סטטי UniformQuantizedConvolution.Options
rhsQuantizationAxis (Long rhsQuantizationAxis)
סטטי UniformQuantizedConvolution.Options
windowStrides (רשימה<Long> windowStrides)

שיטות בירושה

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

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

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

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

public static UniformQuantizedConvolution.Options batchGroupCount (Long batchGroupCount)

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

public static UniformQuantizedConvolution <U> create ( scope scope, Operand <T> lhs, Operand <T> rhs, Operand <Float> lhsScales, Operand <Integer> lhsZeroPoints, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoint, Operand <Integer> rhsZeros > outputScales, Operand <Integer> outputZeroPoints, Class<U> Tout, String padding, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Long outputQuantizationMinVal, Long outputQuantizationMaxVal ... options)

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

פרמטרים
תְחוּם ההיקף הנוכחי
lhs חייב להיות טנזור כמותי, דרגה >= 3.
rhs חייב להיות טנזור כמותי, זהה לדירוג 'lhs'.
lhsscales ערכי הציפה המשמשים כגורמי קנה מידה בעת כימות הנתונים המקוריים ש-'lhs' מייצגים. חייב להיות 'טנזור' סקלרי ('lhs' תומך רק בכימות לפי טנסור).
lhsZeroPoints ערכי int32 המשמשים כנקודות אפס בעת כימות נתונים מקוריים ש-'lhs' מייצגים. אותו מצב צורה כמו `lhs_scales`.
rhsScales ערכי הציפה המשמשים כגורמי קנה מידה בעת כימות הנתונים המקוריים ש'rhs' מייצגים. חייב להיות 'טנזור' סקלרי לכימות פר-טנזור, או 'טנזור' 1D בגודל 'rhs.dim_size(kernel_output_feature_dimension)', עבור כימות לכל ערוץ.
rhsZeroPoints ערכי int32 המשמשים כנקודות אפס בעת כימות נתונים מקוריים ש'rhs' מייצגים. אותו מצב צורה כמו `rhs_scales`.
סולמות פלט ערכי הציפה לשימוש כגורמי קנה מידה בעת כימות נתונים מקוריים ש'פלט' מייצג. חייב להיות `טנזור` סקלרי לכימות פר-טנסור, או `טנזור` 1D בגודל `rhs.dim_size(kernel_output_feature_dimension)` - השווה ל-`output.dim_size(output_feature_dimension)`, עבור קוונטיזציה לכל ערוץ. אם 'rhs' מכומד לפי טנסור, הפלט חייב להיות מקומת גם לפי טנסור. זה אומר שאם `rhs_scales` ו`rhs_zero_points` הם `scalar`s `Tensor`s, `output_scales` ו`output_zero_points` חייבים להיות גם `טנסורים` סקלאריים.
outputZeroPoints ערכי int32 המשמשים כנקודות אפס בעת כימות נתונים מקוריים שהפלט מייצג. אותו תנאי צורה כמו 'סולמות_פלט'.
לְסַפְסֵר סוג 'פלט' 'טנזור'.
ריפוד מחרוזת מ: `"SAME"`, `"VALID"`, או `"EXPLICIT"`, המציינת את סוג אלגוריתם הריפוד שיש להשתמש בו.
lhsQuantizationMinVal הערך המינימלי של הנתונים הכומתיים המאוחסנים ב-'lhs'. לדוגמה, אם `פח` הוא `qint8`, יש להגדיר את זה ל-127 אם הטווח הצר מקומת או -128 אם לא.
lhsQuantizationMaxVal הערך המקסימלי של הנתונים הכומתיים המאוחסנים ב-'lhs'. לדוגמה, אם `פח` הוא `qint8`, יש להגדיר זאת ל-127.
rhsQuantizationMinVal הערך המינימלי של הנתונים הכומתיים המאוחסנים ב-'rhs'. לדוגמה, אם `פח` הוא `qint8`, יש להגדיר את זה ל-127 אם הטווח הצר מקומת או -128 אם לא.
rhsQuantizationMaxVal הערך המקסימלי של הנתונים הכומתיים המאוחסנים ב-'rhs'. לדוגמה, אם `פח` הוא `qint8`, יש להגדיר זאת ל-127.
outputQuantizationMinVal הערך המינימלי של הנתונים הכומתיים המאוחסנים ב'פלט'. לדוגמה, אם `Tout` הוא `qint8`, יש להגדיר את זה ל-127 אם הטווח הצר מקומת או -128 אם לא.
outputQuantizationMaxVal הערך המקסימלי של הנתונים הכומתיים המאוחסנים ב'פלט'. לדוגמה, אם `Tout` הוא `qint8`, יש להגדיר זאת ל-127.
אפשרויות נושא ערכי תכונות אופציונליות
החזרות
  • מופע חדש של UniformQuantizedConvolution

public static UniformQuantizedConvolution.Options dimensionNumbers (String dimensionNumbers)

פרמטרים
dimensionNumbers מבנה מידע ממדים עבור קונבולציה אופ. חייבת להיות מחרוזת ריקה (ברירת מחדל) או מחרוזת מסודרת של פרוטו `tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr`. אם מחרוזת ריקה, ברירת המחדל היא `("NCHW", "OIHW", "NCHW")` (עבור פיתול דו-ממדי).

public static UniformQuantizedConvolution.Options explicitPadding (רשימה<Long> explicitPadding)

פרמטרים
ריפוד מפורש אם `padding` הוא `"EXPLICIT"`, יש להגדיר כרשימה המציינת את הריפודים המפורשים בתחילת ובסוף של כל ממד מרחבי `lhs`. אחרת, זה חייב להיות ריק.

(אם נעשה שימוש,) חייבת להיות רשימה בגודל `2 * (מספר מידות מרחביות lhs)`, כאשר `(ריפוד מפורש[2 *i], ריפוד מפורש[2 *i + 1])` מציין `(ריפוד_התחלה, ריפוד_סוף) ` של `מימדים_מרחביים[i]`.

public static UniformQuantizedConvolution.Options featureGroupCount (Long featureGroupCount)

פרמטרים
featureGroupCount מספר קבוצות התכונות. משמש עבור פיתולים מקובצים. חייב להיות מחלק של 'lhs_feature' ו-'output_feature'.

public static UniformQuantizedConvolution.Options lhsDilation (רשימה<Long> lhsDilation)

פרמטרים
lhs הרחבה מקדם ההתרחבות שיש ליישם בכל מימד מרחבי של `lhs`. חייבת להיות רשימה ריקה (ברירת מחדל) או רשימה של גודל (מספר הממדים המרחביים 'lhs'). אם רשימה ריקה, ההרחבה עבור כל ממד מרחבי `lhs` מוגדרת ל-1.

public static UniformQuantizedConvolution.Options lhsQuantizationAxis (Long lhsQuantizationAxis)

פרמטרים
lhsQuantization Axis מציין את אינדקס הממדים של הטנזור שבו מוחל קוונטיזציה לכל ציר עבור הפרוסות לאורך ממד זה. אם מוגדר ל-1 (ברירת מחדל), זה מצביע על קוונטיזציה לפי טנסור. עבור 'lhs', רק קוונטיזציה לפי טנסור נתמכת. לפיכך, יש להגדיר זאת ל-1. ערכים אחרים יעלו שגיאה בבניית OpKernel.

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

הטנזור המכומתי של הפלט של `Tout`, זהה לדרגה של `lhs` ו-`rhs`.

public static UniformQuantizedConvolution.Options outputQuantizationAxis (Long outputQuantizationAxis)

פרמטרים
outputQuantizationAxis מציין את אינדקס הממדים של הטנזור שבו מוחל קוונטיזציה לכל ציר עבור הפרוסות לאורך ממד זה. אם מוגדר ל-1 (ברירת מחדל), זה מצביע על קוונטיזציה לפי טנסור. עבור 'פלט', נתמך רק קוונטיזציה לכל טנסור או קוונטיזציה לכל ערוץ לאורך 'מימד_תכונת_פלט'. לפיכך, יש להגדיר זאת ל-1 או `dimension_numbers.output_feature_dimension`. ערכים אחרים יעלו שגיאה בבניית OpKernel.

public static UniformQuantizedConvolution.Options rhsDilation (רשימה<Long> rhsDilation)

פרמטרים
rhsDilation מקדם ההתרחבות שיש ליישם בכל מימד מרחבי של `rhs`. חייבת להיות רשימה ריקה (ברירת מחדל) או רשימה של גודל (מספר הממדים המרחביים 'rhs'). אם רשימה ריקה, ההרחבה עבור כל ממד מרחבי 'rhs' מוגדרת ל-1.

public static UniformQuantizedConvolution.Options rhsQuantizationAxis (Long rhsQuantizationAxis)

פרמטרים
rhsQuantizationAxis מציין את אינדקס הממדים של הטנזור שבו מוחל קוונטיזציה לכל ציר עבור הפרוסות לאורך ממד זה. אם מוגדר ל-1 (ברירת מחדל), זה מצביע על קוונטיזציה לפי טנסור. עבור ה-'rhs', נתמכת רק קוונטיזציה לכל טנסור או קוונטיזציה לכל ערוץ לאורך 'מימד_תכונת_פלט_kernel'. לפיכך, זה חייב להיות מוגדר ל-1 או `dimension_numbers.kernel_output_feature_dimension`. ערכים אחרים יעלו שגיאה בבניית OpKernel.

public static UniformQuantizedConvolution.Options windowStrides (רשימה<Long> windowStrides)

פרמטרים
windowStrides הצעד של חלון ההזזה עבור כל מימד מרחבי של `lhs`. חייבת להיות רשימה ריקה (ברירת מחדל) או רשימה של גודל (מספר ממדים מרחביים). אם מסופקת רשימה ריקה, הצעד עבור כל ממד מרחבי מוגדר ל-1.