基于二进制异或运算的Tensorflow成本函数

时间:2018-11-13 04:12:02

标签: python tensorflow bitwise-operators bitwise-xor

我正在尝试创建基于x&y的异或运算的成本函数。

x和y是tf.float32张量,并且都具有相同的形状。

x-> ...-> y自动编码器网络

我尝试执行以下操作:

x_value = tf.cast(x, tf.int32)
y_value = tf.cast(y, tf.int32)
xor_bitwise_result = tf.bitwise.bitwise_xor(x_value, y_value)   
cost_value = tf.cast(xor_bitwise_result, tf.float32)
cost = tf.reduce_mean(cost_value)

但是我遇到一个错误:

ValueError: No gradients provided for any variable, check your graph for ops that do not support gradient.

如果我尝试执行以下操作,我也会收到相同的错误

cost = tf.sqrt(tf.reduce_mean(tf.square(x_value-y_value)))

这可能是我投射的方式不好,可能是因为我缺乏对该流程的理解,因此非常感谢您提出任何建议。

0 个答案:

没有答案