Realice una convolución cuantificada híbrida de Float Tensor `lhs` y Tensor cuantificado `rhs`.
Dado `lhs` flotante y `rhs` cuantificado, realiza internamente la cuantificación en `lhs` y luego realiza la convolución cuantificada en `lhs` y `rhs` cuantificados.
La cuantificación interna en `lhs` es una cuantificación a `Trhs`, rango dinámico, por lote (por eje a lo largo del eje `dimension_numbers.input_batch_dimension`), asimétrica y no de rango estrecho (el rango es [Trhs_MIN, Trhs_MAX]) .
`lhs` y `rhs` deben ser tensores del mismo rango y cumplir las siguientes condiciones de forma. - 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 % lote_0_count == 0
`rhs` debe ser Tensor cuantificado, donde su valor de datos se cuantifica mediante la fórmula: quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val).
Clases anidadas
clase | UniformQuantizedConvolutionHybrid.Options | Atributos opcionales para UniformQuantizedConvolutionHybrid |
Métodos públicos
Salida <V> | como salida () Devuelve el identificador simbólico de un tensor. |
estático UniformQuantizedConvolutionHybrid.Options | batchGroupCount (BatchGroupCount largo) |
estático <V extiende Número, T extiende Número, U> UniformQuantizedConvolutionHybrid <V> | crear ( Alcance alcance, Operando <T> lhs, Operando <U> rhs, Operando <Flotante> rhsScales, Operando <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Opciones... opciones) Método de fábrica para crear una clase que envuelva una nueva operación UniformQuantizedConvolutionHybrid. |
estático UniformQuantizedConvolutionHybrid.Options | dimensionNumbers (String dimensionNumbers) |
estático UniformQuantizedConvolutionHybrid.Options | relleno explícito (Lista<Long> relleno explícito) |
estático UniformQuantizedConvolutionHybrid.Options | featureGroupCount (long featureGroupCount) |
estático UniformQuantizedConvolutionHybrid.Options | lhsDilation (Lista<Long> lhsDilation) |
Salida <V> | salida () El tensor de salida de `Tout`, mismo rango que `lhs` y `rhs`. |
estático UniformQuantizedConvolutionHybrid.Options | rhsDilation (Lista <Long> rhsDilation) |
estático UniformQuantizedConvolutionHybrid.Options | rhsQuantizationAxis (rhsQuantizationAxis largo) |
estático UniformQuantizedConvolutionHybrid.Options | zancadas de ventana (List<Long> zancadas de ventana) |
Métodos Heredados
Métodos públicos
salida pública <V> como salida ()
Devuelve el identificador simbólico de un tensor.
Las entradas de las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.
public static UniformQuantizedConvolutionHybrid.Options batchGroupCount (long batchGroupCount)
Parámetros
loteGroupCount | El número de grupos de lotes. Se utiliza para filtros agrupados. Debe ser un divisor de output_feature. |
---|
public static UniformQuantizedConvolutionHybrid <V> create ( Scope scope, Operand <T> lhs, Operand <U> rhs, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Opciones... opciones)
Método de fábrica para crear una clase que envuelva una nueva operación UniformQuantizedConvolutionHybrid.
Parámetros
alcance | alcance actual |
---|---|
izq. | Debe ser un tensor no cuantificado de `Tlhs`, rango >= 3. |
derecho | Debe ser un tensor cuantizado de `Trhs`, del mismo rango que `lhs`. |
rhsEscalas | Los valores flotantes utilizados como factores de escala al cuantificar los datos originales que representa `rhs`. Debe ser un tensor escalar para la cuantificación por tensor, o un tensor 1D de tamaño `rhs.dim_size(kernel_output_feature_dimension)`, para la cuantificación por canal. |
rhsZeroPuntos | Los valores int32 utilizados como punto_cero al cuantificar los datos originales que representa `rhs`. Misma condición de forma que `rhs_scales`. |
Revendedor | El tipo de Tensor de salida. |
relleno | cadena de: `"SAME"`, `"VALID"`, o `"EXPLICIT"`, indicando el tipo de algoritmo de relleno a usar. |
rhsQuantizationMinVal | El valor mínimo de los datos cuantificados almacenados en `rhs`. Por ejemplo, si `Trhs` es qint8, debe establecerse en -127 si se cuantifica el rango estrecho o en -128 si no. |
rhsQuantizationMaxVal | El valor máximo de los datos cuantificados almacenados en `rhs`. Por ejemplo, si `Trhs` es qint8, debe establecerse en 127. |
opciones | lleva valores de atributos opcionales |
Devoluciones
- una nueva instancia de UniformQuantizedConvolutionHybrid
public static UniformQuantizedConvolutionHybrid.Options dimensionNumbers (String dimensionNumbers)
Parámetros
dimensiónNúmeros | Estructura de la información de dimensión para la operación de convolución. Debe ser una cadena vacía (predeterminada) o una cadena serializada de tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr proto. Si es una cadena vacía, el valor predeterminado es `("NCHW", "OIHW", "NCHW")` (para una convolución 2D). |
---|
public static UniformQuantizedConvolutionHybrid.Options explícitoPadding (List<Long> explícitoPadding)
Parámetros
relleno explícito | Si `padding` Attr es `"EXPLICIT"`, debe configurarse como una lista que indica los rellenos explícitos al principio y al final de cada dimensión espacial de lhs. De lo contrario, este atributo debe estar vacío. (Si se usa,) Debe ser una lista de tamaño 2 * (número de dimensiones espaciales de la izquierda), donde (relleno_explícito[2 * i], relleno_explícito[2 * i + 1]) indica dimensiones_espaciales[i] (relleno_inicial, relleno_final). |
---|
public static UniformQuantizedConvolutionHybrid.Options featureGroupCount (Long featureGroupCount)
Parámetros
FeatureGroupCount | El número de grupos de características. Se utiliza para circunvoluciones agrupadas. Debe ser un divisor de lhs_feature y output_feature. |
---|
public static UniformQuantizedConvolutionHybrid.Options lhsDilation (List<Long> lhsDilation)
Parámetros
lhsDilatación | El factor de dilatación a aplicar en cada dimensión espacial de `lhs`. Debe ser una lista vacía (predeterminado) o una lista de tamaño (número de dimensiones espaciales de la izquierda). Si la lista está vacía, la dilatación para cada dimensión espacial de la izquierda se establece en 1. |
---|
salida pública <V> salida ()
El tensor de salida de `Tout`, mismo rango que `lhs` y `rhs`. Los datos de salida son los datos de salida no cuantificados.
public static UniformQuantizedConvolutionHybrid.Options rhsDilation (List<Long> rhsDilation)
Parámetros
rhsDilatación | El factor de dilatación a aplicar en cada dimensión espacial de `rhs`. Debe ser una lista vacía (predeterminado) o una lista de tamaño (número de dimensiones espaciales rhs). Si la lista está vacía, la dilatación para cada dimensión espacial rhs se establece en 1. |
---|
public static UniformQuantizedConvolutionHybrid.Options rhsQuantizationAxis (Largo rhsQuantizationAxis)
Parámetros
rhsQuantizationAxis | Indica el índice de dimensión del tensor donde se aplica la cuantificación por eje para los cortes a lo largo de esa dimensión. Si se establece en -1 (predeterminado), indica cuantización por tensor. Para `rhs`, solo se admite la cuantificación por tensor o la cuantificación por canal a lo largo de kernel_output_feature_dimension. Por lo tanto, este atributo debe establecerse en -1 o `dimension_numbers.kernel_output_feature_dimension`. Otros valores generarán un error en la construcción de OpKernel. |
---|
public static UniformQuantizedConvolutionHybrid.Options windowStrides (List<Long> windowStrides)
Parámetros
zancadas ventana | El paso de la ventana deslizante para cada dimensión espacial de `lhs`. Debe ser una lista vacía (por defecto) o una lista de tamaño (número de dimensiones espaciales). Si se proporciona una lista vacía, la zancada para cada dimensión espacial se establece en 1. |
---|
Realice una convolución cuantificada híbrida de Float Tensor `lhs` y Tensor cuantificado `rhs`.
Dado `lhs` flotante y `rhs` cuantificado, realiza internamente la cuantificación en `lhs` y luego realiza la convolución cuantificada en `lhs` y `rhs` cuantificados.
La cuantificación interna en `lhs` es una cuantificación a `Trhs`, rango dinámico, por lote (por eje a lo largo del eje `dimension_numbers.input_batch_dimension`), asimétrica y no de rango estrecho (el rango es [Trhs_MIN, Trhs_MAX]) .
`lhs` y `rhs` deben ser tensores del mismo rango y cumplir las siguientes condiciones de forma. - 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 % lote_0_count == 0
`rhs` debe ser Tensor cuantificado, donde su valor de datos se cuantifica mediante la fórmula: quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val).
Clases anidadas
clase | UniformQuantizedConvolutionHybrid.Options | Atributos opcionales para UniformQuantizedConvolutionHybrid |
Métodos públicos
Salida <V> | como salida () Devuelve el identificador simbólico de un tensor. |
estático UniformQuantizedConvolutionHybrid.Options | batchGroupCount (BatchGroupCount largo) |
estático <V extiende Número, T extiende Número, U> UniformQuantizedConvolutionHybrid <V> | crear ( Alcance alcance, Operando <T> lhs, Operando <U> rhs, Operando <Flotante> rhsScales, Operando <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Opciones... opciones) Método de fábrica para crear una clase que envuelva una nueva operación UniformQuantizedConvolutionHybrid. |
estático UniformQuantizedConvolutionHybrid.Options | dimensionNumbers (String dimensionNumbers) |
estático UniformQuantizedConvolutionHybrid.Options | relleno explícito (Lista<Long> relleno explícito) |
estático UniformQuantizedConvolutionHybrid.Options | featureGroupCount (long featureGroupCount) |
estático UniformQuantizedConvolutionHybrid.Options | lhsDilation (Lista<Long> lhsDilation) |
Salida <V> | salida () El tensor de salida de `Tout`, mismo rango que `lhs` y `rhs`. |
estático UniformQuantizedConvolutionHybrid.Options | rhsDilation (Lista <Long> rhsDilation) |
estático UniformQuantizedConvolutionHybrid.Options | rhsQuantizationAxis (rhsQuantizationAxis largo) |
estático UniformQuantizedConvolutionHybrid.Options | zancadas de ventana (List<Long> zancadas de ventana) |
Métodos Heredados
Métodos públicos
salida pública <V> como salida ()
Devuelve el identificador simbólico de un tensor.
Las entradas de las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.
public static UniformQuantizedConvolutionHybrid.Options batchGroupCount (long batchGroupCount)
Parámetros
loteGroupCount | El número de grupos de lotes. Se utiliza para filtros agrupados. Debe ser un divisor de output_feature. |
---|
public static UniformQuantizedConvolutionHybrid <V> create ( Scope scope, Operand <T> lhs, Operand <U> rhs, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Opciones... opciones)
Método de fábrica para crear una clase que envuelva una nueva operación UniformQuantizedConvolutionHybrid.
Parámetros
alcance | alcance actual |
---|---|
izq. | Debe ser un tensor no cuantificado de `Tlhs`, rango >= 3. |
derecho | Debe ser un tensor cuantizado de `Trhs`, del mismo rango que `lhs`. |
rhsEscalas | Los valores flotantes utilizados como factores de escala al cuantificar los datos originales que representa `rhs`. Debe ser un tensor escalar para la cuantificación por tensor, o un tensor 1D de tamaño `rhs.dim_size(kernel_output_feature_dimension)`, para la cuantificación por canal. |
rhsZeroPuntos | Los valores int32 utilizados como punto_cero al cuantificar los datos originales que representa `rhs`. Misma condición de forma que `rhs_scales`. |
Revendedor | El tipo de Tensor de salida. |
relleno | cadena de: `"SAME"`, `"VALID"`, o `"EXPLICIT"`, indicando el tipo de algoritmo de relleno a usar. |
rhsQuantizationMinVal | El valor mínimo de los datos cuantificados almacenados en `rhs`. Por ejemplo, si `Trhs` es qint8, debe establecerse en -127 si se cuantifica el rango estrecho o en -128 si no. |
rhsQuantizationMaxVal | El valor máximo de los datos cuantificados almacenados en `rhs`. Por ejemplo, si `Trhs` es qint8, debe establecerse en 127. |
opciones | lleva valores de atributos opcionales |
Devoluciones
- una nueva instancia de UniformQuantizedConvolutionHybrid
public static UniformQuantizedConvolutionHybrid.Options dimensionNumbers (String dimensionNumbers)
Parámetros
dimensiónNúmeros | Estructura de la información de dimensión para la operación de convolución. Debe ser una cadena vacía (predeterminada) o una cadena serializada de tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr proto. Si es una cadena vacía, el valor predeterminado es `("NCHW", "OIHW", "NCHW")` (para una convolución 2D). |
---|
public static UniformQuantizedConvolutionHybrid.Options explícitoPadding (List<Long> explícitoPadding)
Parámetros
relleno explícito | Si `padding` Attr es `"EXPLICIT"`, debe configurarse como una lista que indica los rellenos explícitos al principio y al final de cada dimensión espacial de lhs. De lo contrario, este atributo debe estar vacío. (Si se usa,) Debe ser una lista de tamaño 2 * (número de dimensiones espaciales de la izquierda), donde (relleno_explícito[2 * i], relleno_explícito[2 * i + 1]) indica dimensiones_espaciales[i] (relleno_inicial, relleno_final). |
---|
public static UniformQuantizedConvolutionHybrid.Options featureGroupCount (Long featureGroupCount)
Parámetros
FeatureGroupCount | El número de grupos de características. Se utiliza para circunvoluciones agrupadas. Debe ser un divisor de lhs_feature y output_feature. |
---|
public static UniformQuantizedConvolutionHybrid.Options lhsDilation (List<Long> lhsDilation)
Parámetros
lhsDilatación | El factor de dilatación a aplicar en cada dimensión espacial de `lhs`. Debe ser una lista vacía (predeterminado) o una lista de tamaño (número de dimensiones espaciales de la izquierda). Si la lista está vacía, la dilatación para cada dimensión espacial de la izquierda se establece en 1. |
---|
salida pública <V> salida ()
El tensor de salida de `Tout`, mismo rango que `lhs` y `rhs`. Los datos de salida son los datos de salida no cuantificados.
public static UniformQuantizedConvolutionHybrid.Options rhsDilation (List<Long> rhsDilation)
Parámetros
rhsDilatación | El factor de dilatación a aplicar en cada dimensión espacial de `rhs`. Debe ser una lista vacía (predeterminado) o una lista de tamaño (número de dimensiones espaciales rhs). Si la lista está vacía, la dilatación para cada dimensión espacial rhs se establece en 1. |
---|
public static UniformQuantizedConvolutionHybrid.Options rhsQuantizationAxis (Largo rhsQuantizationAxis)
Parámetros
rhsQuantizationAxis | Indica el índice de dimensión del tensor donde se aplica la cuantificación por eje para los cortes a lo largo de esa dimensión. Si se establece en -1 (predeterminado), indica cuantización por tensor. Para `rhs`, solo se admite la cuantificación por tensor o la cuantificación por canal a lo largo de kernel_output_feature_dimension. Por lo tanto, este atributo debe establecerse en -1 o `dimension_numbers.kernel_output_feature_dimension`. Otros valores generarán un error en la construcción de OpKernel. |
---|
public static UniformQuantizedConvolutionHybrid.Options windowStrides (List<Long> windowStrides)
Parámetros
zancadas ventana | El paso de la ventana deslizante para cada dimensión espacial de `lhs`. Debe ser una lista vacía (por defecto) o una lista de tamaño (número de dimensiones espaciales). Si se proporciona una lista vacía, la zancada para cada dimensión espacial se establece en 1. |
---|