diff --git a/nncf/onnx/graph/metatypes/groups.py b/nncf/onnx/graph/metatypes/groups.py index a721c6ae175..0b1482abd23 100644 --- a/nncf/onnx/graph/metatypes/groups.py +++ b/nncf/onnx/graph/metatypes/groups.py @@ -101,6 +101,7 @@ onnx_metatypes.ONNXSigmoidMetatype, onnx_metatypes.ONNXHardSigmoidMetatype, onnx_metatypes.ONNXHardSwishMetatype, + onnx_metatypes.ONNXSeluMetatype, ] diff --git a/nncf/onnx/graph/metatypes/onnx_metatypes.py b/nncf/onnx/graph/metatypes/onnx_metatypes.py index 30ffc0a0cab..04e5c372fe6 100644 --- a/nncf/onnx/graph/metatypes/onnx_metatypes.py +++ b/nncf/onnx/graph/metatypes/onnx_metatypes.py @@ -687,6 +687,12 @@ class ONNXSinMetatype(ONNXOpMetatype): op_names = ["Sin"] +@ONNX_OPERATION_METATYPES.register() +class ONNXSeluMetatype(ONNXOpMetatype): + name = "SeluOp" + op_names = ["Selu"] + + def get_operator_metatypes() -> List[Type[OperatorMetatype]]: """ Returns a list of the operator metatypes. diff --git a/nncf/openvino/graph/metatypes/groups.py b/nncf/openvino/graph/metatypes/groups.py index c9d546eac5c..9b2dfa7716e 100644 --- a/nncf/openvino/graph/metatypes/groups.py +++ b/nncf/openvino/graph/metatypes/groups.py @@ -123,6 +123,7 @@ ov_metatypes.OVHardSigmoidMetatype, ov_metatypes.OVSwishMetatype, ov_metatypes.OVHSwishMetatype, + ov_metatypes.OVSELUMetatype, ] diff --git a/nncf/openvino/graph/metatypes/openvino_metatypes.py b/nncf/openvino/graph/metatypes/openvino_metatypes.py index 9c6909c7b30..19a0ca7a52d 100644 --- a/nncf/openvino/graph/metatypes/openvino_metatypes.py +++ b/nncf/openvino/graph/metatypes/openvino_metatypes.py @@ -682,6 +682,12 @@ class OVHSwishMetatype(OVOpMetatype): op_names = ["HSwish"] +@OV_OPERATOR_METATYPES.register() +class OVSELUMetatype(OVOpMetatype): + name = "SeluOp" + op_names = ["Selu"] + + @OV_OPERATOR_METATYPES.register() class OVClampMetatype(OVOpMetatype): name = "ClampOp" diff --git a/nncf/torch/graph/operator_metatypes.py b/nncf/torch/graph/operator_metatypes.py index d4ddc2639aa..47500e63ee4 100644 --- a/nncf/torch/graph/operator_metatypes.py +++ b/nncf/torch/graph/operator_metatypes.py @@ -541,6 +541,12 @@ class PTSILUMetatype(PTOperatorMetatype): module_to_function_names = {NamespaceTarget.TORCH_NN_FUNCTIONAL: ["silu"], NamespaceTarget.ATEN: ["silu_"]} +@PT_OPERATOR_METATYPES.register() +class PTSELUMetatype(PTOperatorMetatype): + name = "SeluOp" + module_to_function_names = {NamespaceTarget.TORCH_NN_FUNCTIONAL: ["selu"]} + + @PT_OPERATOR_METATYPES.register() class PTSigmoidMetatype(PTOperatorMetatype): name = "SigmoidOp" diff --git a/nncf/torch/graph/pattern_operations.py b/nncf/torch/graph/pattern_operations.py index 9fb1d732552..317ed92784a 100644 --- a/nncf/torch/graph/pattern_operations.py +++ b/nncf/torch/graph/pattern_operations.py @@ -83,6 +83,7 @@ om.PTSILUMetatype, om.PTHardSigmoidMetatype, om.PTHardSwishMetatype, + om.PTSELUMetatype, ], GraphPattern.LABEL_ATTR: "NON_RELU_ACTIVATIONS", }