Spec-Zone.ru › TensorFlow

tf.raw_ops.UniformQuantizedConvolution

Выполнить квантованную свертку квантованного тензора lhs и квантованного тензора rhs. для получения квантованного output.

Псевдонимы

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

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

tf.compat.v1.raw_ops.UniformQuantizedConvolution

tf.raw_ops.UniformQuantizedConvolution(
    lhs,
    rhs,
    lhs_scales,
    lhs_zero_points,
    rhs_scales,
    rhs_zero_points,
    output_scales,
    output_zero_points,
    Tout,
    padding,
    lhs_quantization_min_val,
    lhs_quantization_max_val,
    rhs_quantization_min_val,
    rhs_quantization_max_val,
    output_quantization_min_val,
    output_quantization_max_val,
    window_strides=[],
    explicit_padding=[],
    lhs_dilation=[],
    rhs_dilation=[],
    batch_group_count=1,
    feature_group_count=1,
    dimension_numbers='',
    lhs_quantization_axis=-1,
    rhs_quantization_axis=-1,
    output_quantization_axis=-1,
    name=None
)

Учитывая квантованный lhs и квантованный rhs, выполняет квантованное скалярное произведение на lhs и rhs, чтобы получить квантованный output.

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 % feature_group_count == 0
  • lhs_batch % batch_group_count == 0
  • rhs_output_feature % batch_group_count == 0

lhs и rhs должны быть квантованными тензорами, где значение данных квантуется по формуле:

quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)

output также квантуется по той же формуле. Если rhs квантуется по всему тензору, то output также должен быть квантован по всему тензору.

Аргументы
lhs A Tensor. Должен быть одним из следующих типов: qint8. Должен быть квантованным тензором, размерность >= 3.
rhs A Tensor. Должен иметь тот же тип, что и lhs. Должен быть квантованным тензором, с той же размерностью, что и lhs.
lhs_scales A Tensor типа float32. Вещественное(ые) значение(я), используемые в качестве коэффициентов масштабирования при квантовании исходных данных, которые представляет lhs. Должен быть скалярным Tensor (lhs поддерживает только квантование по всему тензору).
lhs_zero_points A Tensor типа int32. Целочисленное(ые) значение(я) (int32), используемые в качестве нулевых точек при квантовании исходных данных, которые представляет lhs. Условие формы такое же, как у lhs_scales.
rhs_scales A Tensor типа float32. Вещественное(ые) значение(я), используемые в качестве коэффициентов масштабирования при квантовании исходных данных, которые представляет rhs. Должен быть скалярным Tensor для квантования по всему тензору или одномерным Tensor размером rhs.dim_size(kernel_output_feature_dimension) для квантования по каналу.
rhs_zero_points A Tensor типа int32. Целочисленное(ые) значение(я) (int32), используемые в качестве нулевых точек при квантовании исходных данных, которые представляет rhs. Условие формы такое же, как у rhs_scales.
output_scales A Tensor типа float32. Вещественное(ые) значение(я), используемые в качестве коэффициентов масштабирования при квантовании исходных данных, которые представляет output. Должен быть скалярным Tensor для квантования по всему тензору или одномерным Tensor размером rhs.dim_size(kernel_output_feature_dimension)
  • который равен output.dim_size(output_feature_dimension) для квантования по каналу. Если rhs квантуется по всему тензору, выход также должен быть квантован по всему тензору. Это означает, что если rhs_scales и rhs_zero_points являются скалярными Tensor, то output_scales и output_zero_points также должны быть скалярными Tensor.
output_zero_points A Tensor типа int32. Целочисленное(ые) значение(я) (int32), используемые в качестве нулевых точек при квантовании исходных данных, которые представляет выход. Условие формы такое же, как у output_scales.
Tout tf.DType из: tf.qint32. Тип output Tensor.
padding A string. Строка из: "SAME", "VALID" или "EXPLICIT", указывающая на тип алгоритма заполнения.
lhs_quantization_min_val A int. Минимальное значение квантованных данных, хранящихся в lhs. Например, если Tin - это qint8, то это должно быть -127, если квантование узкого диапазона, или -128 в противном случае.
lhs_quantization_max_val A int. Максимальное значение квантованных данных, хранящихся в lhs. Например, если Tin - это qint8, то это должно быть 127.
rhs_quantization_min_val A int. Минимальное значение квантованных данных, хранящихся в rhs. Например, если Tin - это qint8, то это должно быть -127, если квантование узкого диапазона, или -128 в противном случае.
rhs_quantization_max_val A int. Максимальное значение квантованных данных, хранящихся в rhs. Например, если Tin - это qint8, то это должно быть 127.
output_quantization_min_val A int. Минимальное значение квантованных данных, хранящихся в output. Например, если Tout - это qint8, то это должно быть -127, если квантование узкого диапазона, или -128 в противном случае.
output_quantization_max_val A int. Максимальное значение квантованных данных, хранящихся в output. Например, если Tout - это qint8, то это должно быть 127.
window_strides Необязательный список ints. По умолчанию []. Шаг скользящего окна для каждой пространственной размерности lhs. Должен быть пустым списком (по умолчанию) или списком размера (количество пространственных размерностей). Если передан пустой список, шаг для каждой пространственной размерности устанавливается в 1.
explicit_padding Необязательный список ints. По умолчанию []. Если padding - это "EXPLICIT", он должен быть задан как список, указывающий явное заполнение в начале и конце каждой lhs пространственной размерности. В противном случае он должен быть пустым.

(Если используется,) Должен быть списком размера 2 * (number of lhs spatial dimensions), где (explicit_padding[2 * i], explicit_padding[2 * i + 1]) указывает (start_padding, end_padding) spatial_dimensions[i].

lhs_dilation Необязательный список ints. По умолчанию []. Фактор дилатации для применения в каждой пространственной размерности lhs. Должен быть пустым списком (по умолчанию) или списком размера (количество lhs пространственных размерностей). Если пустой список, дилатация для каждой lhs пространственной размерности устанавливается в 1.
rhs_dilation Необязательный список ints. По умолчанию []. Фактор дилатации для применения в каждой пространственной размерности rhs. Должен быть пустым списком (по умолчанию) или списком размера (количество rhs пространственных размерностей). Если пустой список, дилатация для каждой rhs пространственной размерности устанавливается в 1.
batch_group_count Необязательное int. По умолчанию 1. Количество групп батчей. Используется для сгруппированных фильтров. Должен быть делителем output_feature.
feature_group_count Необязательное int. По умолчанию 1. Количество групп функций. Используется для сгруппированных сверток. Должен быть делителем как lhs_feature, так и output_feature.
dimension_numbers Необязательное string. По умолчанию "". Структура информации о размерности для операции свертки. Должен быть пустой строкой (по умолчанию) или сериализованной строкой прото tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr. Если пустая строка, по умолчанию используется ("NCHW", "OIHW", "NCHW") (для двумерной свертки).
lhs_quantization_axis Необязательное int. По умолчанию -1. Указывает индекс размерности тензора, где применяется квантование по оси для срезов вдоль этой размерности. Если установлено в -1 (по умолчанию), это указывает на квантование по всему тензору. Для lhs поддерживается только квантование по всему тензору. Таким образом, это должно быть установлено в -1. Другие значения приведут к ошибке на этапе создания OpKernel.
rhs_quantization_axis Необязательное int. По умолчанию -1. Указывает индекс размерности тензора, где применяется квантование по оси для срезов вдоль этой размерности. Если установлено в -1 (по умолчанию), это указывает на квантование по всему тензору. Для rhs поддерживается только квантование по всему тензору или квантование по каналу вдоль kernel_output_feature_dimension. Таким образом, это должно быть установлено в -1 или dimension_numbers.kernel_output_feature_dimension. Другие значения приведут к ошибке на этапе создания OpKernel.
output_quantization_axis Необязательное int. По умолчанию -1. Указывает индекс размерности тензора, где применяется квантование по оси для срезов вдоль этой размерности. Если установлено в -1 (по умолчанию), это указывает на квантование по всему тензору. Для output поддерживается только квантование по всему тензору или квантование по каналу вдоль output_feature_dimension. Таким образом, это должно быть установлено в -1 или dimension_numbers.output_feature_dimension. Другие значения приведут к ошибке на этапе создания OpKernel.
name Имя операции (необязательно).
Возвращаемое значение
Объект типа 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/UniformQuantizedConvolution

Spec-Zone.ru

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