Выполните гибридную квантованную свертку тензора с плавающей запятой `lhs` и квантованного тензора `rhs`.
Учитывая число с плавающей запятой `lhs` и квантованное `rhs`, внутренне выполняет квантование для `lhs`, а затем выполняет квантованную свертку для квантованных `lhs` и `rhs`.
Внутреннее квантование по `lhs` — это квантование по `Trhs`, динамическому диапазону, для каждого пакета (по оси вдоль оси `dimension_numbers.input_batch_dimension`), асимметричному, а не узкому диапазону (диапазон [Trhs_MIN, Trhs_MAX]). .
`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
`rhs` должен быть квантованным тензором, где его значение данных квантуется по формуле: quantized_data = clip(original_data/scale + нулевая_точка, quantization_min_val, quantization_max_val).
Вложенные классы
сорт | UniformQuantizedConvolutionHybrid.Options | Дополнительные атрибуты для UniformQuantizedConvolutionHybrid |
Публичные методы
Выход <В> | какВывод () Возвращает символический дескриптор тензора. |
статический UniformQuantizedConvolutionHybrid.Options | BatchGroupCount (длинный BatchGroupCount) |
static <V расширяет число, T расширяет число, U> UniformQuantizedConvolutionHybrid <V> | create ( Область видимости , Операнд <T> lhs, Операнд <U> rhs, Операнд <Float> rhsScales, Операнд <Integer> rhsZeroPoints, Class<V> Tout, Заполнение строк, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Опции... параметры...) Фабричный метод для создания класса, обертывающего новую операцию UniformQuantizedConvolutionHybrid. |
статический UniformQuantizedConvolutionHybrid.Options | DimensionNumbers (строка DimensionNumbers) |
статический UniformQuantizedConvolutionHybrid.Options | явное Паддинг (List<Long> явное Паддинг) |
статический UniformQuantizedConvolutionHybrid.Options | FeatureGroupCount (длинный FeatureGroupCount) |
статический UniformQuantizedConvolutionHybrid.Options | lhsDilation (Список<Long> lhsDilation) |
Выход <В> | выход () Выходной тензор Tout того же ранга, что и lhs и rhs. |
статический UniformQuantizedConvolutionHybrid.Options | rhsDilation (Список<Long> rhsDilation) |
статический UniformQuantizedConvolutionHybrid.Options | rhsQuantizationAxis (длинная rhsQuantizationAxis) |
статический UniformQuantizedConvolutionHybrid.Options | windowStrides (Список<Long> windowStrides) |
Унаследованные методы
Публичные методы
общедоступный вывод <V> asOutput ()
Возвращает символический дескриптор тензора.
Входные данные для операций TensorFlow являются выходными данными другой операции TensorFlow. Этот метод используется для получения символического дескриптора, который представляет собой вычисление входных данных.
общедоступный статический UniformQuantizedConvolutionHybrid.Options BattGroupCount (Long BatchGroupCount)
Параметры
Пакетная группаCount | Количество пакетных групп. Используется для сгруппированных фильтров. Должен быть делителем выходной_функции. |
---|
public static UniformQuantizedConvolutionHybrid <V> create ( Область действия, Операнд <T> lhs, Операнд <U> rhs, Операнд <Float> rhsScale, Операнд <Integer> rhsZeroPoints, Class<V> Tout, Заполнение строк, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Варианты... варианты)
Фабричный метод для создания класса, обертывающего новую операцию UniformQuantizedConvolutionHybrid.
Параметры
объем | текущий объем |
---|---|
левая сторона | Должен быть неквантованным тензором Tlhs, ранг >= 3. |
правый риск | Должен быть квантованным тензором Trhs того же ранга, что и lhs. |
rhsВесы | Значения с плавающей запятой, используемые в качестве коэффициентов масштабирования при квантовании исходных данных, которые представляет rhs. Должен быть скалярным тензором для потензорного квантования или 1D-тензором размера rhs.dim_size(kernel_output_feature_dimension) для поканального квантования. |
rhsZeroPoints | Значения int32, используемые в качестве нулевой точки при квантовании исходных данных, которые представляют rhs. То же состояние формы, что и у `rhs_scales`. |
Реклама | Тип вывода Тензор. |
прокладка | строка из: «SAME», «VALID» или «EXPLICIT», указывающая тип используемого алгоритма заполнения. |
rhsQuantizationMinVal | Минимальное значение квантованных данных, хранящихся в rhs. Например, если `Trhs` имеет значение qint8, оно должно быть установлено на -127, если квантовано в узком диапазоне, или -128, если нет. |
rhsQuantizationMaxVal | Максимальное значение квантованных данных, хранящихся в rhs. Например, если `Trhs` равен qint8, ему необходимо установить значение 127. |
параметры | содержит значения необязательных атрибутов |
Возврат
- новый экземпляр UniformQuantizedConvolutionHybrid
общедоступный статический UniformQuantizedConvolutionHybrid.Options DimensionNumbers (String DimensionNumbers)
Параметры
размерностьЧисла | Структура информации о размерах для свертки op. Должна быть пустой строкой (по умолчанию) или сериализованной строкой прототипа tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr. Если строка пустая, по умолчанию используется `("NCHW", "OIHW", "NCHW")` (для 2D-свертки). |
---|
public static UniformQuantizedConvolutionHybrid.Options явноеPadding (List<Long> явноеPadding)
Параметры
явное дополнение | Если атрибут `padding` равен ``EXPLICIT'`, он должен быть установлен в виде списка, указывающего явные дополнения в начале и конце каждого левого пространственного измерения. В противном случае этот Attr должен быть пустым. (Если используется) Должен быть списком размера 2 * (количество пространственных измерений слева), где (explicit_padding[2 * i], явное_padding[2 * i + 1]) указывает пространственные_размеры[i] (start_padding, end_padding). |
---|
общедоступный статический UniformQuantizedConvolutionHybrid.Options FeatureGroupCount (Long FeatureGroupCount)
Параметры
функцияGroupCount | Количество групп функций. Используется для групповых сверток. Должен быть делителем как lhs_feature, так и output_feature. |
---|
общедоступный статический UniformQuantizedConvolutionHybrid.Options lhsDilation (List<Long> lhsDilation)
Параметры
lhsРасширение | Коэффициент расширения, применяемый в каждом пространственном измерении «левого угла». Должен быть пустой список (по умолчанию) или список размеров (количество левых пространственных измерений). Если список пуст, расширение для каждого левого пространственного измерения устанавливается равным 1. |
---|
публичный вывод <V> вывод ()
Выходной тензор Tout того же ранга, что и lhs и rhs. Выходные данные представляют собой неквантованные выходные данные.
общедоступный статический UniformQuantizedConvolutionHybrid.Options rhsDilation (List<Long> rhsDilation)
Параметры
rhsДилатация | Коэффициент расширения, применяемый в каждом пространственном измерении «rhs». Должен быть пустой список (по умолчанию) или список размеров (количество пространственных измерений по правой стороне). Если список пустой, расширение для каждого правого пространственного измерения устанавливается равным 1. |
---|
общедоступный статический UniformQuantizedConvolutionHybrid.Options rhsQuantizationAxis (Long rhsQuantizationAxis)
Параметры
rhsQuantizationAxis | Указывает индекс размерности тензора, в котором к срезам вдоль этого измерения применяется поосевое квантование. Если установлено значение -1 (по умолчанию), это указывает на потензорное квантование. Для `rhs` поддерживается только потензорное квантование или поканальное квантование по kernel_output_feature_dimension. Таким образом, для этого атрибута должно быть установлено значение -1 или `dimension_numbers.kernel_output_feature_dimension`. Другие значения вызовут ошибку при построении OpKernel. |
---|
общедоступный статический UniformQuantizedConvolutionHybrid.Options windowStrides (List<Long> windowStrides)
Параметры
окноШтриды | Шаг скользящего окна для каждого пространственного измерения `lhs`. Должен быть пустой список (по умолчанию) или список размеров (количество пространственных измерений). Если указан пустой список, шаг для каждого пространственного измерения устанавливается равным 1. |
---|