UniformQuantizedConvolution

clase final pública UniformQuantizedConvolution

Realice la convolución cuantificada del Tensor cuantificado `lhs` y el Tensor cuantificado `rhs`. para hacer `salida` cuantificada.

Dado `lhs` cuantificado y `rhs` cuantificado, realiza un punto cuantificado en `lhs` y `rhs` para hacer una `salida` cuantificada.

`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` % `batch_group_count` == 0

`lhs` y `rhs` deben cuantificarse Tensor, donde el valor de los datos se cuantifica mediante la fórmula:

quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
 
`output` también se cuantifica mediante la misma fórmula. Si `rhs` está cuantificado por tensor, `output` también debe estar cuantificado por tensor.

Clases anidadas

clase UniformQuantizedConvolution.Options Atributos opcionales para UniformQuantizedConvolution

Métodos públicos

Salida <U>
como salida ()
Devuelve el identificador simbólico de un tensor.
UniformQuantizedConvolution.Options estático
batchGroupCount (BatchGroupCount largo)
static <U, T> UniformQuantizedConvolution <U>
create ( Alcance alcance, Operando <T> lhs, Operando <T> rhs, Operando <Flotante> lhsScales, Operando <Entero> lhsZeroPoints, Operando <Flotante> rhsScales, Operando <Entero> rhsZeroPoints, Operando <Flotante> outputScales, Operando <Entero > outputZeroPoints, Class<U> Tout, String padding, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Long outputQuantizationMinVal, Long outputQuantizationMaxVal, Opciones... opciones)
Método de fábrica para crear una clase que envuelve una nueva operación UniformQuantizedConvolution.
UniformQuantizedConvolution.Options estático
dimensionNumbers (String dimensionNumbers)
UniformQuantizedConvolution.Options estático
relleno explícito (Lista<Long> relleno explícito)
UniformQuantizedConvolution.Options estático
featureGroupCount (long featureGroupCount)
UniformQuantizedConvolution.Options estático
lhsDilation (Lista<Long> lhsDilation)
UniformQuantizedConvolution.Options estático
lhsQuantizationAxis (LhsQuantizationAxis largo)
Salida <U>
salida ()
El tensor cuantizado de salida de `Tout`, mismo rango que `lhs` y `rhs`.
UniformQuantizedConvolution.Options estático
eje de cuantificación de salida (eje de cuantificación de salida largo)
UniformQuantizedConvolution.Options estático
rhsDilation (Lista <Long> rhsDilation)
UniformQuantizedConvolution.Options estático
rhsQuantizationAxis (rhsQuantizationAxis largo)
UniformQuantizedConvolution.Options estático
zancadas de ventana (List<Long> zancadas de ventana)

Métodos Heredados

Métodos públicos

Salida pública <U> 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 UniformQuantizedConvolution.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 UniformQuantizedConvolution <U> create ( Alcance alcance, Operando <T> lhs, Operando <T> rhs, Operando <Flotante> lhsScales, Operando <Entero> lhsZeroPoints, Operando <Flotante> rhsScales, Operando <Entero> rhsZeroPoints, Operando <Flotante > escalas de salida, operando <entero> puntos cero de salida, clase <U> Tout, relleno de cadena, largo lhsQuantizationMinVal, largo lhsQuantizationMaxVal, largo rhsQuantizationMinVal, largo rhsQuantizationMaxVal, largo outputQuantizationMinVal, largo outputQuantizationMaxVal, opciones... opciones)

Método de fábrica para crear una clase que envuelve una nueva operación UniformQuantizedConvolution.

Parámetros
alcance alcance actual
izq. Debe ser un tensor cuantizado, rango >= 3.
derecho Debe ser un tensor cuantizado, del mismo rango que `lhs`.
lhsBalanzas Los valores flotantes utilizados como factores de escala al cuantificar los datos originales que representa `lhs`. Debe ser un `Tensor` escalar (`lhs` solo admite cuantización por tensor).
lhsZeroPoints Los valores int32 utilizados como puntos cero al cuantificar los datos originales que representa `lhs`. Misma condición de forma que `lhs_scales`.
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 `Tensor` 1D de tamaño `rhs.dim_size(kernel_output_feature_dimension)`, para la cuantificación por canal.
rhsZeroPuntos Los valores int32 utilizados como puntos cero al cuantificar los datos originales que representa `rhs`. Misma condición de forma que `rhs_scales`.
escalas de salida Los valores flotantes que se utilizarán como factores de escala al cuantificar los datos originales que representa la "salida". 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)`, que es igual a `output.dim_size(output_feature_dimension)`, para la cuantificación por canal. Si `rhs` está cuantificado por tensor, la salida también debe estar cuantificada por tensor. Esto significa que si `rhs_scales` y `rhs_zero_points` son `Tensores` escalares, `output_scales` y `output_zero_points` también deben ser `Tensores` escalares.
salidaZeroPoints Los valores int32 utilizados como puntos cero al cuantificar los datos originales que representa la salida. Misma condición de forma que `output_scales`.
Revendedor El tipo de `salida` `Tensor`.
relleno cadena de: `"SAME"`, `"VALID"`, o `"EXPLICIT"`, indicando el tipo de algoritmo de relleno a usar.
lhsQuantizationMinVal El valor mínimo de los datos cuantificados almacenados en `lhs`. Por ejemplo, si `Tin` es `qint8`, debe establecerse en -127 si se cuantifica el rango estrecho o en -128 si no.
lhsQuantizationMaxVal El valor máximo de los datos cuantificados almacenados en `lhs`. Por ejemplo, si `Tin` es `qint8`, debe establecerse en 127.
rhsQuantizationMinVal El valor mínimo de los datos cuantificados almacenados en `rhs`. Por ejemplo, si `Tin` 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 `Tin` es `qint8`, debe establecerse en 127.
salidaCuantizaciónMinVal El valor mínimo de los datos cuantificados almacenados en `output`. Por ejemplo, si `Tout` es `qint8`, debe establecerse en -127 si se cuantifica el rango estrecho o en -128 si no.
salidaCuantificaciónMaxVal El valor máximo de los datos cuantificados almacenados en `output`. Por ejemplo, si `Tout` es `qint8`, debe establecerse en 127.
opciones lleva valores de atributos opcionales
Devoluciones
  • una nueva instancia de UniformQuantizedConvolution

public static UniformQuantizedConvolution.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 del proto `tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr`. Si es una cadena vacía, el valor predeterminado es `("NCHW", "OIHW", "NCHW")` (para una convolución 2D).

public static UniformQuantizedConvolution.Options explícitoPadding (List<Long> explícitoPadding)

Parámetros
relleno explícito Si `padding` es `"EXPLICIT"`, debe configurarse como una lista que indica los rellenos explícitos al principio y al final de cada dimensión espacial `lhs`. De lo contrario, este 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 `(relleno_inicial, relleno_final) ` de `dimensiones_espaciales[i]`.

public static UniformQuantizedConvolution.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 UniformQuantizedConvolution.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 `lhs`). Si la lista está vacía, la dilatación para cada dimensión espacial `lhs` se establece en 1.

public static UniformQuantizedConvolution.Options lhsQuantizationAxis (LhsQuantizationAxis largo)

Parámetros
lhsQuantizationAxis 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 `lhs`, solo se admite la cuantificación por tensor. Por lo tanto, esto debe establecerse en -1. Otros valores generarán un error en la construcción de OpKernel.

Salida pública <U> salida ()

El tensor cuantizado de salida de `Tout`, mismo rango que `lhs` y `rhs`.

public static UniformQuantizedConvolution.Options outputQuantizationAxis (Long outputQuantizationAxis)

Parámetros
eje de cuantificación de salida 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 la `salida`, solo se admite la cuantificación por tensor o la cuantificación por canal a lo largo de `output_feature_dimension`. Por lo tanto, debe establecerse en -1 o `dimension_numbers.output_feature_dimension`. Otros valores generarán un error en la construcción de OpKernel.

public static UniformQuantizedConvolution.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 UniformQuantizedConvolution.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, esto 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 UniformQuantizedConvolution.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.