Spec-Zone.ru › TensorFlow 2.4

tf.raw_ops.QuantizeDownAndShrinkRange

Преобразование квантованного тензора 'input' в тензор 'output' с меньшей точностью, используя

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.raw_ops.QuantizeDownAndShrinkRange

tf.raw_ops.QuantizeDownAndShrinkRange(
    input, input_min, input_max, out_type, name=None
)

фактическое распределение значений для максимального использования меньшей разрядности и соответствующей корректировки диапазонов минимального и максимального значений выходных данных.

[input_min, input_max] — скалярные числа с плавающей точкой, определяющие диапазон для представления данных 'input' в формате с плавающей точкой. Например, если input_min — -1.0f, а input_max — 1.0f, и мы имеем дело с квантованными данными типа quint16, то значение 0 в 16-битных данных должно интерпретироваться как -1.0f, а значение 65535 — как 1.0f.

Данный оператор пытается максимально сохранить точность выходных данных с меньшей разрядностью, вычисляя фактические минимальные и максимальные значения, найденные в данных. Например, возможно, что у квантованных данных типа quint16 нет значений ниже 16 384 и выше 49 152. Это означает, что нужен только половина диапазона, все интерпретации с плавающей точкой находятся в диапазоне от -0.5f до 0.5f, поэтому, если мы хотим сжать данные в выходные данные типа quint8, мы можем использовать этот диапазон вместо теоретического диапазона от -1.0f до 1.0f, предложенного минимальным и максимальным значениями входных данных.

На практике это наиболее полезно для получения выходных данных из операций, таких как QuantizedMatMul, которые могут производить выходные данные с большей разрядностью, чем их входные данные, и могут иметь большие потенциальные диапазоны выходных данных, но на практике распределение входных значений использует лишь небольшую часть возможного диапазона. Передача этих выходных данных в этот оператор позволяет уменьшить разрядность с 32 до 8 бит с минимальной потерей точности.

Аргументы
input A Tensor. Должен быть одним из следующих типов: qint8, quint8, qint32, qint16, quint16.
input_min A Tensor типа float32. Значение с плавающей точкой, которое представляет минимальное квантованное входное значение.
input_max A Tensor типа float32. Значение с плавающей точкой, которое представляет максимальное квантованное входное значение.
out_type tf.DType из: tf.qint8, tf.quint8, tf.qint32, tf.qint16, tf.quint16. Тип выходных данных. Должен иметь меньшую разрядность, чем Tinput.
name Имя операции (необязательно).
Возвращаемые значения
Кортеж объектов Tensor (output, output_min, output_max).
output A Tensor типа out_type.
output_min A Tensor типа float32.
output_max A 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.4/api_docs/python/tf/raw_ops/QuantizeDownAndShrinkRange

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API