From d5a44338e17b95bab1bfc653d712fddd5a81e0bd Mon Sep 17 00:00:00 2001 From: Pankaj Patil Date: Mon, 28 Oct 2019 22:05:54 +0530 Subject: [PATCH 1/2] float -> cast --- tangent/tf_extensions.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tangent/tf_extensions.py b/tangent/tf_extensions.py index 6eec9c4..b9c268b 100644 --- a/tangent/tf_extensions.py +++ b/tangent/tf_extensions.py @@ -57,7 +57,7 @@ def tensor_shapes_match(a, b): non_differentiable.register_non_differentiable_functions( - tf.shape, tf.to_float, tf.equal, tf.constant, + tf.shape, tf.cast, tf.equal, tf.constant, tf.zeros, tf.ones, tf.zeros_like, tf.ones_like, size, shape_as_list, dtype) @@ -238,7 +238,7 @@ def dtfreduce_mean(y, x, axis=None, keep_dims=False): @adjoint(tf.reduce_max) def dtfreduce_max(y, x, axis=None, keep_dims=False): - mask = tf.to_float( + mask = tf.cast( tf.equal( tangent.unreduce(y, tangent.shape_as_list(x), axis, keep_dims), x)) d[x] = tf.multiply( @@ -272,8 +272,8 @@ def dtfdivide(z, x, y): @adjoint(tf.maximum) def dtfmaximum(z, x, y): - d[x] = tf.multiply(d[z], tf.to_float(tf.equal(z, x))) - d[y] = tf.multiply(d[z], tf.to_float(tf.equal(z, y))) + d[x] = tf.multiply(d[z], tf.cast(tf.equal(z, x))) + d[y] = tf.multiply(d[z], tf.cast(tf.equal(z, y))) @adjoint(tf.squared_difference) @@ -385,7 +385,7 @@ def ttfreduce_mean(y, x, axis=None, keep_dims=False): @tangent_(tf.reduce_max) def ttfreduce_max(y, x, axis=None, keep_dims=False): - mask = tf.to_float( + mask = tf.cast( tf.equal( tangent.unreduce( tf.ones_like(y), tangent.shape_as_list(x), axis, keep_dims), x)) @@ -421,7 +421,7 @@ def ttfdivide(z, x, y): @tangent_(tf.maximum) def ttfmaximum(z, x, y): - d[z] = d[x] * tf.to_float(tf.equal(z, x)) + d[y] * tf.to_float(tf.equal(z, y)) + d[z] = d[x] * tf.cast(tf.equal(z, x)) + d[y] * tf.cast(tf.equal(z, y)) @tangent_(tf.nn.avg_pool) From e38245dfceb715a0300479171b2ccd1229d46346 Mon Sep 17 00:00:00 2001 From: Pankaj Patil Date: Wed, 30 Oct 2019 11:47:11 +0530 Subject: [PATCH 2/2] float32 --- tangent/tf_extensions.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tangent/tf_extensions.py b/tangent/tf_extensions.py index b9c268b..87ce1e1 100644 --- a/tangent/tf_extensions.py +++ b/tangent/tf_extensions.py @@ -57,7 +57,7 @@ def tensor_shapes_match(a, b): non_differentiable.register_non_differentiable_functions( - tf.shape, tf.cast, tf.equal, tf.constant, + tf.shape, tf.cast, tf.float32, tf.equal, tf.constant, tf.zeros, tf.ones, tf.zeros_like, tf.ones_like, size, shape_as_list, dtype) @@ -272,8 +272,8 @@ def dtfdivide(z, x, y): @adjoint(tf.maximum) def dtfmaximum(z, x, y): - d[x] = tf.multiply(d[z], tf.cast(tf.equal(z, x))) - d[y] = tf.multiply(d[z], tf.cast(tf.equal(z, y))) + d[x] = tf.multiply(d[z], tf.cast(tf.equal(z, x), tf.float32)) + d[y] = tf.multiply(d[z], tf.cast(tf.equal(z, y), tf.float32)) @adjoint(tf.squared_difference) @@ -388,7 +388,7 @@ def ttfreduce_max(y, x, axis=None, keep_dims=False): mask = tf.cast( tf.equal( tangent.unreduce( - tf.ones_like(y), tangent.shape_as_list(x), axis, keep_dims), x)) + tf.ones_like(y), tangent.shape_as_list(x), axis, keep_dims), x), tf.float32) d[y] = tf.multiply(d[x], mask) @@ -421,7 +421,7 @@ def ttfdivide(z, x, y): @tangent_(tf.maximum) def ttfmaximum(z, x, y): - d[z] = d[x] * tf.cast(tf.equal(z, x)) + d[y] * tf.cast(tf.equal(z, y)) + d[z] = d[x] * tf.cast(tf.equal(z, x), tf.float32) + d[y] * tf.cast(tf.equal(z, y), tf.float32) @tangent_(tf.nn.avg_pool)