tf.raw_ops.UniformQuantizedDot
Выполнить квантованное скалярное произведение квантованного тензора lhs и квантованного тензора rhs, чтобы получить квантованный output.
tf.raw_ops.UniformQuantizedDot(
lhs,
rhs,
lhs_scales,
lhs_zero_points,
rhs_scales,
rhs_zero_points,
output_scales,
output_zero_points,
Tout,
lhs_quantization_min_val,
lhs_quantization_max_val,
rhs_quantization_min_val,
rhs_quantization_max_val,
output_quantization_min_val,
output_quantization_max_val,
lhs_quantization_axis=-1,
rhs_quantization_axis=-1,
output_quantization_axis=-1,
name=None
)
Учитывая квантованный lhs и квантованный rhs, выполняет квантованное скалярное произведение над lhs и rhs, чтобы получить квантованный output. lhs и rhs должны быть тензорами 2D, а lhs.dim_size(1) должно совпадать с rhs.dim_size(0). lhs и rhs должны быть квантованными тензорами, где значения данных квантуются по формуле: quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val). output также квантуется по этой же формуле. Если rhs квантуется по всему тензору, то output также должен быть квантован по всему тензору.
| Аргументы | |
|---|---|
lhs | A Tensor. Должен быть одного из следующих типов: qint8. Должен быть тензором 2D типа Tin. |
rhs | A Tensor. Должен иметь тот же тип, что и lhs. Должен быть тензором 2D типа Tin. |
lhs_scales | A Tensor типа float32. Вещественное значение(я) используемое в качестве масштаба при квантовании исходных данных, представленных lhs. Должен быть скалярным тензором (lhs поддерживает только квантование по всему тензору). |
lhs_zero_points | A Tensor типа int32. Целое 32-битное значение(я) используемое в качестве zero_point при квантовании исходных данных, представленных lhs. Условия формы такие же, как у lhs_scales. |
rhs_scales | A Tensor типа float32. Вещественное значение(я) используемое в качестве масштаба при квантовании исходных данных, представленных rhs. Должен быть скалярным тензором (квантование по всему тензору) или одномерным тензором размера (rhs.dim_size(1),) (квантование по каналу). |
rhs_zero_points | A Tensor типа int32. Целое 32-битное значение(я) используемое в качестве zero_point при квантовании исходных данных, представленных rhs. Условия формы такие же, как у rhs_scales. |
output_scales | A Tensor типа float32. Вещественное значение(я) для использования в качестве масштабов при квантовании исходных данных, представленных результатом. Должен быть скалярным тензором (квантование по всему тензору) или одномерным тензором размера (output.dim_size(1),) (квантование по каналу). Если rhs квантуется по всему тензору, то output также должен быть квантован по всему тензору. Это означает, что если rhs_scales и rhs_zero_points являются скалярными тензорами, output_scales и output_zero_points также должны быть скалярными тензорами. |
output_zero_points | A Tensor типа int32. Целое 32-битное значение(я) используемое в качестве zero_point при квантовании исходных данных, представленных результатом. Условия формы такие же, как у rhs_scales. |
Tout | tf.DType из: tf.qint32. Тип выходного тензора. |
lhs_quantization_min_val | An int. Минимальное значение квантованных данных, хранящихся в lhs. Например, если Tin - qint8, это должно быть установлено в -127, если квантование с узким диапазоном, или -128, если нет. |
lhs_quantization_max_val | An int. Максимальное значение квантованных данных, хранящихся в rhs. Например, если Tin - qint8, это должно быть установлено в 127. |
rhs_quantization_min_val | An int. Минимальное значение квантованных данных, хранящихся в rhs. Например, если Trhs - qint8, это должно быть установлено в -127, если квантование с узким диапазоном, или -128, если нет. |
rhs_quantization_max_val | An int. Максимальное значение квантованных данных, хранящихся в rhs. Например, если Trhs - qint8, это должно быть установлено в 127. |
output_quantization_min_val | An int. Минимальное значение квантованных данных, хранящихся в результате. Например, если Tout - qint8, это должно быть установлено в -127, если квантование с узким диапазоном, или -128, если нет. |
output_quantization_max_val | An int. Максимальное значение квантованных данных, хранящихся в результате. Например, если Tout - qint8, это должно быть установлено в 127. |
lhs_quantization_axis | Необязательный int. По умолчанию -1. Указывает индекс измерения тензора, где применяется квантование по оси для срезов вдоль этого измерения. Если установлено в -1 (по умолчанию), это указывает на квантование по всему тензору. Для dot op lhs поддерживается только квантование по всему тензору. Таким образом, этот атрибут должен быть установлен в -1. Другие значения отклоняются. |
rhs_quantization_axis | Необязательный int. По умолчанию -1. Указывает индекс измерения тензора, где применяется квантование по оси для срезов вдоль этого измерения. Если установлено в -1 (по умолчанию), это указывает на квантование по всему тензору. Для dot op rhs поддерживается только квантование по всему тензору или по каналу вдоль измерения 1. Таким образом, этот атрибут должен быть установлен в -1 или 1. Другие значения отклоняются. |
output_quantization_axis | Необязательный int. По умолчанию -1. Указывает индекс измерения тензора, где применяется квантование по оси для срезов вдоль этого измерения. Если установлено в -1 (по умолчанию), это указывает на квантование по всему тензору. Для dot op output поддерживается только квантование по всему тензору или по каналу вдоль измерения 1. Таким образом, этот атрибут должен быть установлен в -1 или 1. Другие значения отклоняются. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
A Tensor типа Tout. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/raw_ops/UniformQuantizedDot