tensorflow::ops::FakeQuantWithMinMaxVars
#include <array_ops.h>
Fake-quantize the 'inputs' tensor of type float via global float scalars.
Summary
Fake-quantize the inputs tensor of type float via global float scalars min and max to outputs tensor of same shape as inputs.
Attributes
-
[min; max]define the clamping range for theinputsdata. -
inputsvalues are quantized into the quantization range ([0; 2^num_bits - 1]whennarrow_rangeis false and[1; 2^num_bits - 1]when it is true) and then de-quantized and output as floats in[min; max]interval. -
num_bitsis the bitwidth of the quantization; between 2 and 16, inclusive.
Before quantization, min and max values are adjusted with the following logic. It is suggested to have min <= 0 <= max. If 0 is not in the range of values, the behavior can be unexpected:
- If
0 < min < max:min_adj = 0andmax_adj = max - min. - If
min < max < 0:min_adj = min - maxandmax_adj = 0. - If
min <= 0 <= max:scale = (max - min) / (2^num_bits - 1),min_adj = scale * round(min / scale)andmax_adj = max + min_adj - min.
This operation has a gradient and thus allows for training min and max values.
Arguments:
- scope: A Scope object
Returns:
-
Output: The outputs tensor.
| Constructors and Destructors | |
|---|---|
FakeQuantWithMinMaxVars(const ::tensorflow::Scope & scope, ::tensorflow::Input inputs, ::tensorflow::Input min, ::tensorflow::Input max) | |
FakeQuantWithMinMaxVars(const ::tensorflow::Scope & scope, ::tensorflow::Input inputs, ::tensorflow::Input min, ::tensorflow::Input max, const FakeQuantWithMinMaxVars::Attrs & attrs) |
| Public attributes | |
|---|---|
operation | |
outputs | |
| Public functions | |
|---|---|
node() const | ::tensorflow::Node * |
operator::tensorflow::Input() const | |
operator::tensorflow::Output() const | |
| Public static functions | |
|---|---|
NarrowRange(bool x) | |
NumBits(int64 x) | |
| Structs | |
|---|---|
| tensorflow::ops::FakeQuantWithMinMaxVars::Attrs | Optional attribute setters for FakeQuantWithMinMaxVars. |
Public attributes
operation
Operation operation
outputs
::tensorflow::Output outputs
Public functions
FakeQuantWithMinMaxVars
FakeQuantWithMinMaxVars( const ::tensorflow::Scope & scope, ::tensorflow::Input inputs, ::tensorflow::Input min, ::tensorflow::Input max )
FakeQuantWithMinMaxVars
FakeQuantWithMinMaxVars( const ::tensorflow::Scope & scope, ::tensorflow::Input inputs, ::tensorflow::Input min, ::tensorflow::Input max, const FakeQuantWithMinMaxVars::Attrs & attrs )
node
::tensorflow::Node * node() const
operator::tensorflow::Input
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const
Public static functions
NarrowRange
Attrs NarrowRange( bool x )
NumBits
Attrs NumBits( int64 x )
© 2020 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/versions/r2.4/api_docs/cc/class/tensorflow/ops/fake-quant-with-min-max-vars