class ngraph::pass::low_precision::FakeQuantizeDecompositionTransformation

Overview

FakeQuantizeDecompositionTransformation decomposes FakeQuantize operations to quantize (FakeQuantize with changes output intervals and low precision output type) and dequantize operations. More…

#include <fake_quantize_decomposition.hpp>

class FakeQuantizeDecompositionTransformation: public ngraph::pass::low_precision::LayerTransformation
{
public:
    // construction

    FakeQuantizeDecompositionTransformation();

    // methods

    "FakeQuantizeDecompositionTransformation""0" OPENVINO_RTTI(, );
    virtual boolTransformationContext&ngraph::pattern::Matcher& transform(, );
    virtual boolstd::shared_ptr<Node> isPrecisionPreserved() const;
};

Inherited Members

public:
    // typedefs

    typedef DiscreteTypeInfo type_info_t;

    // classes

    class Params;
    class PrecisionDetails;

    // methods

    boolconst PassPropertyMask& get_property() const;
    voidconst std::string& set_name();
    std::string get_name() const;
    voidconst param_callback& set_callback();
    virtual voidconst std::shared_ptr<PassConfig>& set_pass_config();
    std::shared_ptr<PassConfig> get_pass_config();
    boolconst std::shared_ptr<const Node>& transformation_callback();
    virtual const type_info_t& get_type_info() const = 0;
    "ov::pass::MatcherPass" OPENVINO_RTTI();
    MatcherPass&const MatcherPass& operator = ();
    boolstd::shared_ptr<ov::Node> apply();

    template <, >
    std::shared_ptr<T>Args&&... register_new_node();

    template <>
    std::shared_ptr<T>const std::shared_ptr<T>& register_new_node();

    std::shared_ptr<ov::Node>const std::shared_ptr<ov::Node>& register_new_node_();
    const std::vector<std::shared_ptr<ov::Node>>& get_new_nodes();
    void clear_new_nodes();
    std::shared_ptr<pattern::Matcher> get_matcher();
    virtual boolTransformationContext&ov::pass::pattern::Matcher& transform(, ) = 0;
    voidTransformationContext \* setContext();
    voidconst bool setUpdatePrecisions();
    voidconst std::vector<ngraph::element::Type>& setDefaultPrecisions();

    virtual boolconst TransformationContext&std::shared_ptr<Node> canBeTransformed(
        ,

        ) const;

    boolconst std::shared_ptr<Node>&const FakeQuantizeDequantization& canSubtractBeHandled(
        ,

        ) const;

    virtual boolconst std::shared_ptr<const Node>&const std::vector<ngraph::element::Type>& isQuantized(
        ,

        ) const;

    virtual boolstd::shared_ptr<Node> isPrecisionPreserved() const = 0;

    static boolconst std::shared_ptr<Node>&const std::vector<ngraph::element::Type>& canBeTransformedStatic(
        ,

        );

    static PrecisionDetailsconst size_tconst std::vector<float>&const std::vector<float>& getPrecisionDetails(
        ,
        ,

        );

    static PrecisionDetailsconst QuantizationDetails& getPrecisionDetails();

    static boolconst std::shared_ptr<const Node>&const std::vector<ngraph::element::Type>& isAsymmetricQuantization(
        ,

        );

    static DataPrecisionconst std::shared_ptr<Node>&const QuantizationDetails&const std::vector<element::Type>& getDataPrecision(
        ,
        ,

        );

Detailed Documentation

FakeQuantizeDecompositionTransformation decomposes FakeQuantize operations to quantize (FakeQuantize with changes output intervals and low precision output type) and dequantize operations.

For more details about the transformation, refer to FakeQuantizeDecompositionTransformation page in the Inference Engine Developer Guide.