diff options
author | Jerry Ge <jerry.ge@arm.com> | 2022-10-11 16:27:05 +0000 |
---|---|---|
committer | Jerry Ge <jerry.ge@arm.com> | 2023-03-03 16:33:57 -0800 |
commit | 2eea5bf8b213ce5f7d335cc45686a80cac119cc2 (patch) | |
tree | e711981c90257c1f3c6a57f0a06b9b181e399320 | |
parent | d723cc2a70e62e86e4de8858d3fc056ba5d7d541 (diff) | |
download | reference_model-2eea5bf8b213ce5f7d335cc45686a80cac119cc2.tar.gz |
Add framework tests for TFL.Relu0To1Op
Signed-off-by: Jerry Ge <jerry.ge@arm.com>
Change-Id: I6fa14e9dbe7c0cd21156a5779d68fd473af322f2
-rw-r--r-- | verif/frameworks/test_builder.py | 10 | ||||
-rwxr-xr-x | verif/frameworks/tosa_verif_framework_generator.py | 8 |
2 files changed, 18 insertions, 0 deletions
diff --git a/verif/frameworks/test_builder.py b/verif/frameworks/test_builder.py index c7ba9a9..6302865 100644 --- a/verif/frameworks/test_builder.py +++ b/verif/frameworks/test_builder.py @@ -86,6 +86,16 @@ class TBuilder: # alternatively, we can use clip_by_value return tf.math.minimum(1.0, tf.math.maximum(-1.0, a)) + class Relu0To1: + def __init__(self, name): + self.result_name = name + + def eval(self, a): + # TF doesn't have relu_0_to_1 operator, + # use min and max as a workaround + # alternatively, we can use clip_by_value + return tf.math.minimum(1.0, tf.math.maximum(0.0, a)) + class Relu6: def __init__(self, name): self.result_name = name diff --git a/verif/frameworks/tosa_verif_framework_generator.py b/verif/frameworks/tosa_verif_framework_generator.py index 68c7d5a..9794478 100755 --- a/verif/frameworks/tosa_verif_framework_generator.py +++ b/verif/frameworks/tosa_verif_framework_generator.py @@ -120,6 +120,14 @@ TF_OP_LIST = { "tflite": list(TYPE_F + [QuantType.ALL_U8, QuantType.ALL_I8]), }, }, + "relu0To1": { + "operands": (1, 0), + "build_fcn": (TBuilder.Relu0To1, TGen.tgBasic, ArgGen.agNone), + "types": { + "tf": [], + "tflite": list(TYPE_F + [QuantType.ALL_U8, QuantType.ALL_I8]), + }, + }, "relu6": { "operands": (1, 0), "build_fcn": (TBuilder.Relu6, TGen.tgBasic, ArgGen.agNone), |