برای ایجاد «خروجی» کوانتیزه شده تانسور کوانتیزه «lhs» و تانسور کوانتیزه «rhs» را انجام دهید.
با توجه به "lhs" کوانتیزه شده و "rhs" کوانتیزه شده، نقطه کوانتیزه شده را روی "lhs" و "rhs" انجام می دهد تا "خروجی" کوانتیزه شود. «lhs» و «rhs» باید تانسورهای دو بعدی باشند و lhs.dim_size(1) باید با rhs.dim_size(0) مطابقت داشته باشد. «lhs» و «rhs» باید تانسور کوانتیزه شوند، که در آن مقدار داده با استفاده از فرمول کوانتیزه می شود: quantized_data = clip (original_data / scale + zero_point, quantization_min_val, quantization_max_val). "خروجی" نیز با استفاده از همان فرمول کوانتیزه می شود. اگر «rhs» به ازای هر تانسور کوانتیزه شود، «خروجی» نیز باید به ازای هر تانسور کوانتیزه شود.
کلاس های تو در تو
کلاس | UniformQuantizedDot.Options | ویژگی های اختیاری برای UniformQuantizedDot |
روش های عمومی
خروجی <U> | asOutput () دسته نمادین یک تانسور را برمیگرداند. |
استاتیک <U, T> UniformQuantizedDot <U> | ایجاد ( scope scope، عملوند <T> lhs، عملوند <T> rhs، عملوند <Float> lhsScales، عملوند <Integer> lhsZeroPoints، عملوند <Float> rhsScales، عملوند <Integer> rhsZeroPoints، عملوند < Scalte , out> > outputZeroPoints، Class<U> Tout، Long lhsQuantizationMinVal، Long lhsQuantizationMaxVal، Long rhsQuantizationMinVal، Long rhsQuantizationMaxVal، Long outputQuantizationMinVal، Long outputQuantizationVal، گزینه های Long OutputQuantizationMa ... روش کارخانه برای ایجاد کلاسی که یک عملیات UniformQuantizedDot جدید را بسته بندی می کند. |
استاتیک UniformQuantizedDot.Options | lhsQuantizationAxis (Long lhsQuantizationAxis) |
خروجی <U> | خروجی () تانسور 2 بعدی خروجی Tout که شکل آن (lhs.dim_size(0)، rhs.dim_size(1)) است. |
استاتیک UniformQuantizedDot.Options | outputQuantizationAxis (محور خروجی طولانی مدت) |
استاتیک UniformQuantizedDot.Options | rhsQuantizationAxis (Long rhsQuantizationAxis) |
روش های ارثی
روش های عمومی
خروجی عمومی <U> asOutput ()
دسته نمادین یک تانسور را برمیگرداند.
ورودی های عملیات TensorFlow خروجی های عملیات تنسورفلو دیگر هستند. این روش برای به دست آوردن یک دسته نمادین که نشان دهنده محاسبه ورودی است استفاده می شود.
عمومی استاتیک UniformQuantizedDot <U> ایجاد ( محدوده دامنه، عملوند <T> lhs، عملوند <T> rhs، عملوند <Float> lhsScales، عملوند <صحیح> lhsZeroPoints، عملوند <Float> rhsScales، عملوند <ZInteger <Point> rhs > OutputScales، عملوند <Integer> outputZeroPoints، Class<U> Tout، Long lhsQuantizationMinVal، Long lhsQuantizationMaxVal، Long rhsQuantizationMinVal، Long rhsQuantizationMaxVal، Long outputinQuantization، Long outputinQuantizationx)
روش کارخانه برای ایجاد کلاسی که یک عملیات UniformQuantizedDot جدید را بسته بندی می کند.
مولفه های
محدوده | محدوده فعلی |
---|---|
lhs | باید تانسور دوبعدی قلع باشد. |
rhs | باید تانسور دوبعدی قلع باشد. |
lhsScales | مقدار(های) شناور به عنوان مقیاس هنگام کمی سازی داده های اصلی که lhs نشان می دهد استفاده می شود. باید یک تانسور اسکالر باشد (lhs فقط از کوانتیزاسیون هر تانسور پشتیبانی می کند). |
lhsZeroPoints | مقدار(های) int32 به عنوان نقطه_صفر هنگام کمی کردن داده های اصلی که lhs نشان می دهد استفاده می شود. شرایط شکلی مشابه با lhs_scales. |
rhsScales | مقدار(های) شناور به عنوان مقیاس هنگام کمی کردن داده های اصلی که rhs نشان می دهد استفاده می شود. باید یک تانسور اسکالر (کوانتیزاسیون هر تانسور) یا یک تانسور اندازه (rhs.dim_size(1)،) (کوانتیزاسیون هر کانال) باشد. |
rhsZeroPoints | مقدار(های) int32 بهعنوان نقطه_صفر هنگام کمی کردن دادههای اصلی که rhs نشان میدهد استفاده میشود. شرایط شکلی مشابه rhs_scales. |
مقیاس های خروجی | مقدار(های) شناور برای استفاده به عنوان مقیاس هنگام کمی کردن داده های اصلی که خروجی نشان می دهد. باید یک تانسور اسکالر (کوانتیزاسیون هر تانسور) یا یک تانسور اندازه (output.dim_size(1)،) (کوانتیزاسیون هر کانال) باشد. اگر rhs به ازای هر تانسور کوانتیزه شود، خروجی نیز باید به ازای هر تانسور کوانتیزه شود. این بدان معناست که اگر rhs_scales و rhs_zero_points تانسورهای اسکالر باشند، خروجی_scales و output_zero_points نیز باید تانسور اسکالر باشند. |
outputZeroPoints | مقدار(های) int32 به عنوان نقطه_صفر هنگام کمی کردن داده های اصلی که خروجی نشان می دهد استفاده می شود. شرایط شکلی مشابه rhs_scales. |
تاوت | نوع تانسور خروجی |
lhsQuantizationMinVal | مقدار حداقل داده های کوانتیزه شده ذخیره شده بر حسب lh. به عنوان مثال، اگر Tin qint8 باشد، اگر محدوده باریک کوانتیزه شود، باید روی 127- یا اگر نه -128 تنظیم شود. |
lhsQuantizationMaxVal | حداکثر مقدار داده های کوانتیزه شده ذخیره شده بر حسب rhs. به عنوان مثال، اگر Tin qint8 باشد، باید روی 127 تنظیم شود. |
rhsQuantizationMinVal | مقدار حداقل داده های کوانتیزه شده ذخیره شده بر حسب rhs. به عنوان مثال، اگر Trhs qint8 باشد، اگر محدوده باریک کوانتیزه شود، باید روی 127- یا اگر نه -128 تنظیم شود. |
rhsQuantizationMaxVal | حداکثر مقدار داده های کوانتیزه شده ذخیره شده بر حسب rhs. به عنوان مثال، اگر Trhs qint8 باشد، باید روی 127 تنظیم شود. |
خروجیQuantizationMinVal | مقدار حداقل داده های کوانتیزه شده ذخیره شده در خروجی. برای مثال، اگر Tout qint8 باشد، اگر محدوده باریک کوانتیزه شود، باید روی -127 یا اگر نه -128 تنظیم شود. |
خروجیQuantizationMaxVal | حداکثر مقدار داده های کوانتیزه شده ذخیره شده در خروجی. به عنوان مثال، اگر Tout qint8 باشد، باید روی 127 تنظیم شود. |
گزینه ها | مقادیر ویژگی های اختیاری را حمل می کند |
برمی گرداند
- یک نمونه جدید از UniformQuantizedDot
عمومی ثابت UniformQuantizedDot.Options lhsQuantizationAxis (Long lhsQuantizationAxis)
مولفه های
lhsQuantizationAxis | شاخص بعد تانسور را نشان می دهد که در آن کوانتیزاسیون هر محور برای برش های امتداد آن بعد اعمال می شود. اگر روی -1 تنظیم شود (پیشفرض)، این نشاندهنده کوانتیزاسیون هر تانسور است. برای dot op lhs، فقط کوانتیزاسیون هر تانسور پشتیبانی می شود. بنابراین، این ویژگی باید روی -1 تنظیم شود. سایر مقادیر رد می شوند. |
---|
استاتیک عمومی UniformQuantizedDot.Options outputQuantizationAxis (Long outputQuantizationAxis)
مولفه های
خروجی QuantizationAxis | شاخص بعد تانسور را نشان می دهد که در آن کوانتیزاسیون هر محور برای برش های امتداد آن بعد اعمال می شود. اگر روی -1 تنظیم شود (پیشفرض)، این نشاندهنده کوانتیزاسیون هر تانسور است. برای خروجی نقطهای، فقط کوانتیزاسیون هر تانسور یا کوانتیزاسیون هر کانال در امتداد بعد 1 پشتیبانی میشود. بنابراین، این ویژگی باید روی -1 یا 1 تنظیم شود. سایر مقادیر رد می شوند. |
---|
عمومی ثابت UniformQuantizedDot.Options rhsQuantizationAxis (Long rhsQuantizationAxis)
مولفه های
rhsQuantizationAxis | شاخص بعد تانسور را نشان می دهد که در آن کوانتیزاسیون هر محور برای برش های امتداد آن بعد اعمال می شود. اگر روی -1 تنظیم شود (پیشفرض)، این نشاندهنده کوانتیزاسیون هر تانسور است. برای عملیات نقطهای، فقط کوانتیزاسیون هر تانسور یا کوانتیزاسیون هر کانال در امتداد بعد 1 پشتیبانی میشود. بنابراین، این ویژگی باید روی -1 یا 1 تنظیم شود. سایر مقادیر رد می شوند. |
---|