UniformQuantize

public final class UniformQuantize

Perform quantization on Tensor `input`.

Given `input`, `scales` and `zero_points`, performs quantization using the formula: quantized_data = floor(input_data * (1.0f / scale) + 0.5f) + zero_point

Nested Classes

class UniformQuantize.Options Optional attributes for UniformQuantize  

Public Methods

Output<U>
asOutput()
Returns the symbolic handle of a tensor.
static <U, T extends Number> UniformQuantize<U>
create(Scope scope, Operand<T> input, Operand<Float> scales, Operand<Integer> zeroPoints, Class<U> Tout, Long quantizationMinVal, Long quantizationMaxVal, Options... options)
Factory method to create a class wrapping a new UniformQuantize operation.
Output<U>
output()
The output quantized Tensor of Tout, whose shape is same as input.
static UniformQuantize.Options
quantizationAxis(Long quantizationAxis)

Inherited Methods

Public Methods

public Output<U> asOutput ()

Returns the symbolic handle of a tensor.

Inputs to TensorFlow operations are outputs of another TensorFlow operation. This method is used to obtain a symbolic handle that represents the computation of the input.

public static UniformQuantize<U> create (Scope scope, Operand<T> input, Operand<Float> scales, Operand<Integer> zeroPoints, Class<U> Tout, Long quantizationMinVal, Long quantizationMaxVal, Options... options)

Factory method to create a class wrapping a new UniformQuantize operation.

Parameters
scope current scope
input Must be a Tensor of Tin.
scales The float value(s) to use as scale(s) to quantize `input`. Must be a scalar Tensor if quantization_axis is -1 (per-tensor quantization), otherwise 1D Tensor of size (input.dim_size(quantization_axis),) (per-axis quantization).
zeroPoints The int32 value(s) to use as zero_point(s) to quantize `input`. Same shape condition as scales.
Tout The type of output Tensor. A tf.DType from: tf.float32
quantizationMinVal The quantization min value to quantize `input`. The purpose of this attribute is typically (but not limited to) to indicate narrow range, where this is set to: `(Tin lowest) + 1` if narrow range, and `(Tin lowest)` otherwise. For example, if Tin is qint8, this is set to -127 if narrow range quantized or -128 if not.
quantizationMaxVal The quantization max value to quantize `input`. The purpose of this attribute is typically (but not limited to) indicate narrow range, where this is set to: `(Tout max)` for both narrow range and not narrow range. For example, if Tin is qint8, this is set to 127.
options carries optional attributes values
Returns
  • a new instance of UniformQuantize

public Output<U> output ()

The output quantized Tensor of Tout, whose shape is same as input.

public static UniformQuantize.Options quantizationAxis (Long quantizationAxis)

Parameters
quantizationAxis Indicates the dimension index of the tensor where per-axis quantization is applied for the slices along that dimension. If set to -1 (default), this indicates per-tensor quantization. Otherwise, it must be set within range [0, input.dims()).