我正在尝试运行简单的代码:
Date Team Score Category
1/1/2018 A 100
1/1/2018 A 150
1/1/2018 A 200
1/1/2018 A 250
1/1/2018 A 300
1/1/2018 B 300
1/1/2018 B 400
1/1/2018 B 500
2/1/2018 A 150
2/1/2018 A 200
2/1/2018 A 225
2/1/2018 A 300
2/1/2018 A 350
2/1/2018 B 350
2/1/2018 B 450
2/1/2018 B 550
Date: 1/1/2018
Team: A
Actual Score: 225
Category Score (Output): 200
Date: 2/1/2018
Team: A
Actual Score: 225
Category Score (Output): 225
我收到错误消息:
import tensorflow as tf
x = tf.random_uniform([], minval=-1, maxval=1, dtype=tf.float32)
y = tf.random_uniform([], minval=-1, maxval=1, dtype=tf.float32)
z = tf.Variable(1.0)
def f1():
return x + y + z
def f2(): return x - y
def f3(): return tf.constant(0, dtype=tf.float32)
out = tf.case({tf.less(x, y): f1, tf.greater(x, y): f2}, default=f3, exclusive=True)
with tf.Session() as sess:
sess.run(tf.global_variables_initializer()) #Edited
print(sess.run(out))
我已经阅读了以下问题:Tensorflow: tf.case giving errors,这很相似,但是他们没有 ValueError: Operation 'case_3/cond/Merge' has been marked as not fetchable.
,似乎可以解决错误
我已经研究了这个问题:https://github.com/tensorflow/tensorflow/issues/4094#issue-173787623 并隐约地理解了该错误是如何发生的。
我实际上想了解的是Tensorflow将如何(以及是否)通过if语句计算梯度。