Функция стоимости тензорного потока, основанная на бинарной операции xor - PullRequest
0 голосов
/ 13 ноября 2018

Я пытаюсь создать функцию стоимости, основанную на операции 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)))

Может быть, способ, которым я произношу, не очень хорош, возможно, мое понимание этого процесса отсутствует, поэтому любые указатели будут с благодарностью оценены.

...