【发布时间】:2017-09-19 02:10:41
【问题描述】:
【问题讨论】:
标签: python tensorflow tensor
【问题讨论】:
标签: python tensorflow tensor
你不能在 Tensorflow 中做到这一点(pyTorch 可以做这样的事情)。原因是,TF 需要静态图。但是您正在尝试进行动态评估。 许多人声称这个静态图是 TF 的一个缺点。但实际上,它启用了许多很酷的功能。但是在您的用例中,获得解决方案有点麻烦:
你需要这样写:
z = tf.zeros_like(y1)
label_a = z + 2
label_b = z + 20
case_001 = tf.where(tf.equal(y1, z), z + 2, z)
case_002 = tf.where(tf.equal(y2, z), z + 20, z)
switch_op = tf.where(tf.equal(y1, y2), ..., case_001 + case_002)
【讨论】: