From d9f2f7f9776f60b8070c43654b794e778edd5c6f Mon Sep 17 00:00:00 2001 From: Sean Morgan Date: Wed, 16 Oct 2019 18:33:39 -0400 Subject: [PATCH 1/2] Standardize lambda with other frameworks --- tensorflow_addons/activations/hardshrink.py | 2 +- tensorflow_addons/activations/softshrink.py | 2 +- .../custom_ops/activations/cc/ops/hardshrink_op.cc | 8 ++++---- .../custom_ops/activations/cc/ops/softshrink_op.cc | 8 ++++---- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/tensorflow_addons/activations/hardshrink.py b/tensorflow_addons/activations/hardshrink.py index ddfac57817..fd83bbd3aa 100644 --- a/tensorflow_addons/activations/hardshrink.py +++ b/tensorflow_addons/activations/hardshrink.py @@ -27,7 +27,7 @@ @keras_utils.register_keras_custom_object @tf.function -def hardshrink(x, lower=-1.0, upper=1.0): +def hardshrink(x, lower=-0.5, upper=0.5): """Hard shrink function. Computes hard shrink function: diff --git a/tensorflow_addons/activations/softshrink.py b/tensorflow_addons/activations/softshrink.py index 11cfe51467..a75490f29e 100644 --- a/tensorflow_addons/activations/softshrink.py +++ b/tensorflow_addons/activations/softshrink.py @@ -27,7 +27,7 @@ @keras_utils.register_keras_custom_object @tf.function -def softshrink(x, lower=-1.0, upper=1.0): +def softshrink(x, lower=-0.5, upper=0.5): """Soft shrink function. Computes soft shrink function: diff --git a/tensorflow_addons/custom_ops/activations/cc/ops/hardshrink_op.cc b/tensorflow_addons/custom_ops/activations/cc/ops/hardshrink_op.cc index 4dd9b58e0f..5eecf7e2e5 100644 --- a/tensorflow_addons/custom_ops/activations/cc/ops/hardshrink_op.cc +++ b/tensorflow_addons/custom_ops/activations/cc/ops/hardshrink_op.cc @@ -24,8 +24,8 @@ REGISTER_OP("Addons>Hardshrink") .Input("features: T") .Output("activations: T") .Attr("T: {half, float, double}") - .Attr("lower: float = -1.0") - .Attr("upper: float = 1.0") + .Attr("lower: float = -0.5") + .Attr("upper: float = 0.5") .SetShapeFn(shape_inference::UnchangedShape); REGISTER_OP("Addons>HardshrinkGrad") @@ -33,8 +33,8 @@ REGISTER_OP("Addons>HardshrinkGrad") .Input("features: T") .Output("backprops: T") .Attr("T: {half, float, double}") - .Attr("lower: float = -1.0") - .Attr("upper: float = 1.0") + .Attr("lower: float = -0.5") + .Attr("upper: float = 0.5") .SetShapeFn(shape_inference::MergeBothInputsShapeFn); } // namespace addons diff --git a/tensorflow_addons/custom_ops/activations/cc/ops/softshrink_op.cc b/tensorflow_addons/custom_ops/activations/cc/ops/softshrink_op.cc index 6a568ad565..3d2989f359 100644 --- a/tensorflow_addons/custom_ops/activations/cc/ops/softshrink_op.cc +++ b/tensorflow_addons/custom_ops/activations/cc/ops/softshrink_op.cc @@ -24,8 +24,8 @@ REGISTER_OP("Addons>Softshrink") .Input("features: T") .Output("activations: T") .Attr("T: {half, float, double}") - .Attr("lower: float = -1.0") - .Attr("upper: float = 1.0") + .Attr("lower: float = -0.5") + .Attr("upper: float = 0.5") .SetShapeFn(shape_inference::UnchangedShape); REGISTER_OP("Addons>SoftshrinkGrad") @@ -33,8 +33,8 @@ REGISTER_OP("Addons>SoftshrinkGrad") .Input("features: T") .Output("backprops: T") .Attr("T: {half, float, double}") - .Attr("lower: float = -1.0") - .Attr("upper: float = 1.0") + .Attr("lower: float = -0.5") + .Attr("upper: float = 0.5") .SetShapeFn(shape_inference::MergeBothInputsShapeFn); } // namespace addons From 12b2b3e6726c5d14c214cd2bd6bc1dd0b627cff1 Mon Sep 17 00:00:00 2001 From: Sean Morgan Date: Wed, 16 Oct 2019 20:15:51 -0400 Subject: [PATCH 2/2] Update test cases --- tensorflow_addons/activations/hardshrink_test.py | 6 +++--- tensorflow_addons/activations/softshrink_test.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tensorflow_addons/activations/hardshrink_test.py b/tensorflow_addons/activations/hardshrink_test.py index 87c4e84aa2..02937a8fb4 100644 --- a/tensorflow_addons/activations/hardshrink_test.py +++ b/tensorflow_addons/activations/hardshrink_test.py @@ -37,13 +37,13 @@ def test_invalid(self): ("float32", np.float32), ("float64", np.float64)) def test_hardshrink(self, dtype): - x = tf.constant([-2.0, -1.0, 0.0, 1.0, 2.0], dtype=dtype) + x = tf.constant([-2.0, -0.5, 0.0, 0.5, 2.0], dtype=dtype) expected_result = tf.constant([-2.0, 0.0, 0.0, 0.0, 2.0], dtype=dtype) self.assertAllCloseAccordingToType(hardshrink(x), expected_result) - expected_result = tf.constant([-2.0, -1.0, 0.0, 1.0, 2.0], dtype=dtype) + expected_result = tf.constant([-2.0, 0.0, 0.0, 0.0, 2.0], dtype=dtype) self.assertAllCloseAccordingToType( - hardshrink(x, lower=-0.5, upper=0.5), expected_result) + hardshrink(x, lower=-1.0, upper=1.0), expected_result) @parameterized.named_parameters(("float32", np.float32), ("float64", np.float64)) diff --git a/tensorflow_addons/activations/softshrink_test.py b/tensorflow_addons/activations/softshrink_test.py index 9fadd12428..af78c76f4d 100644 --- a/tensorflow_addons/activations/softshrink_test.py +++ b/tensorflow_addons/activations/softshrink_test.py @@ -38,12 +38,12 @@ def test_invalid(self): ("float64", np.float64)) def test_softshrink(self, dtype): x = tf.constant([-2.0, -1.0, 0.0, 1.0, 2.0], dtype=dtype) - expected_result = tf.constant([-1.0, 0.0, 0.0, 0.0, 1.0], dtype=dtype) + expected_result = tf.constant([-1.5, -0.5, 0.0, 0.5, 1.5], dtype=dtype) self.assertAllCloseAccordingToType(softshrink(x), expected_result) - expected_result = tf.constant([-1.5, -0.5, 0.0, 0.5, 1.5], dtype=dtype) + expected_result = tf.constant([-1.0, 0.0, 0.0, 0.0, 1.0], dtype=dtype) self.assertAllCloseAccordingToType( - softshrink(x, lower=-0.5, upper=0.5), expected_result) + softshrink(x, lower=-1.0, upper=1.0), expected_result) @parameterized.named_parameters(("float32", np.float32), ("float64", np.float64))