normalize_l2_fusion.hpp
1 // Copyright (C) 2018-2021 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4 
5 #pragma once
6 
7 #include <utility>
8 #include <memory>
9 
10 #include <transformations_visibility.hpp>
11 #include <ngraph/pass/graph_rewrite.hpp>
12 #include "ngraph/pattern/matcher.hpp"
13 
14 namespace ngraph {
15 namespace pass {
16 
17 class TRANSFORMATIONS_API NormalizeL2Fusion;
18 class TRANSFORMATIONS_API NormalizeL2FusionWithMax;
19 class TRANSFORMATIONS_API NormalizeL2FusionWithAdd;
20 
21 } // namespace pass
22 } // namespace ngraph
23 
24 /**
25  * @ingroup ie_transformation_common_api
26  * @brief NormalizeL2FusionWithMax transformation replaces a sub-graph
27  * x/(max(sqrt(sum(x[j0, ..., jN]**2), eps)) with a NormalizeL2 op.
28  */
29 class ngraph::pass::NormalizeL2FusionWithMax: public ngraph::pass::MatcherPass {
30 public:
31  NGRAPH_RTTI_DECLARATION;
33 };
34 
35 /**
36  * @ingroup ie_transformation_common_api
37  * @brief NormalizeL2FusionWithAdd transformation replaces a sub-graph
38  * x/(add(sqrt(sum(x[j0, ..., jN]**2), eps)) with a NormalizeL2 op.
39  */
40 class ngraph::pass::NormalizeL2FusionWithAdd: public ngraph::pass::MatcherPass {
41 public:
42  NGRAPH_RTTI_DECLARATION;
44 };
45 
46 /**
47  * @ingroup ie_transformation_common_api
48  * @brief NormalizeL2Fusion transformation replaces various sub-graphs with a NormalizeL2 op.
49  */
50 class ngraph::pass::NormalizeL2Fusion: public ngraph::pass::GraphRewrite {
51 public:
52  NGRAPH_RTTI_DECLARATION;
54  add_matcher<ngraph::pass::NormalizeL2FusionWithMax>();
55  add_matcher<ngraph::pass::NormalizeL2FusionWithAdd>();
56  }
57 };
NormalizeL2FusionWithAdd transformation replaces a sub-graph x/(add(sqrt(sum(x[j0,...
Definition: normalize_l2_fusion.hpp:40
NormalizeL2FusionWithMax transformation replaces a sub-graph x/(max(sqrt(sum(x[j0,...
Definition: normalize_l2_fusion.hpp:29
NormalizeL2Fusion transformation replaces various sub-graphs with a NormalizeL2 op.
Definition: normalize_l2_fusion.hpp:50
ngraph namespace
Definition: add_fake_quantize_fusion.hpp:14