如何返回等于"无"在Tensorflow

时间:2017-08-27 14:39:53

标签: python numpy tensorflow

如果我在TensorFlow中有一些分支操作,我怎么能在一个分支中返回None张量,在另一个分支中返回一个填充张量?

例如:

tensor_result = tf.cond(
    pred=tf.less(0, 1),
    fn1=...,  # here I would like to return None
    fn2=tf.constant([1, 2, 3]))

然后可以在图表中测试tensor_result是否为None。

目前有没有办法做到这一点?目前我正在用NaN填充张量,但我认为这不是非常有效。

1 个答案:

答案 0 :(得分:0)

张量是数值数据类型的容器,例如 tf.convert_to_tensor(None)提出ValueError: None values not supported.。所以没有 -Tensor。

我会这样做:

mask = tf.less(0, 1) # return a tensor of type bool
filtered = tf.cast(mask, unfiltered.dtype) * unfiltered

从不自己添加NaN到计算中。他们强烈表示出了问题。