tf.raw_ops.FakeQuantWithMinMaxVarsPerChannel
Имитация квантования тензора 'inputs' типа float по каналам.
tf.raw_ops.FakeQuantWithMinMaxVarsPerChannel(
inputs, min, max, num_bits=8, narrow_range=False, name=None
)
Имитация квантования тензора inputs типа float по каналам, имеющего одну из следующих форм: [d], [b, d] [b, h, w, d], с помощью значений min и max по каналам, форма которых [d], в тензор outputs той же формы, что и inputs.
Атрибуты
[min; max]определяют диапазон ограничения значений данныхinputs.- Значения
inputsквантуются в диапазон квантования ([0; 2^num_bits - 1]когдаnarrow_rangeложно и[1; 2^num_bits - 1]когда истинно), затем деквантуются и выводятся как плавающие числа в диапазоне[min; max]. num_bits— это разрядность квантования; значение должно быть в диапазоне от 2 до 16 включительно.
Перед квантованием значения min и max корректируются по следующему алгоритму. Рекомендуется min <= 0 <= max. Если значение 0 не находится в допустимом диапазоне, поведение может быть непредсказуемым:
- Если
0 < min < max:min_adj = 0иmax_adj = max - min. - Если
min < max < 0:min_adj = min - maxиmax_adj = 0. - Если
min <= 0 <= max:scale = (max - min) / (2^num_bits - 1),min_adj = scale * round(min / scale)иmax_adj = max + min_adj - min.
Данная операция имеет градиент, что позволяет обучать значения min и max.
| Аргументы | |
|---|---|
inputs |
Tensor типа float32. |
min |
Tensor типа float32. |
max |
Tensor типа float32. |
num_bits |
Необязательный int. По умолчанию 8. |
narrow_range |
Необязательный bool. По умолчанию False. |
name |
Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
Tensor типа float32. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/raw_ops/FakeQuantWithMinMaxVarsPerChannel