Tensorflow-有不同返回类型的条件

时间:2019-04-02 12:18:43

标签: python tensorflow

我正在编写一个张量流循环以根据张量 test

更新变量 res
def body(ctr):
    op = tf.cond(test[ctr] > 0,
        lambda : tf.assign(res[ctr],res[ctr]-1),lambda : None)
    with tf.control_dependencies(op):
        return ctr+1

但是,我遇到运行时错误

The two structures don't have the same nested structure

操作。我了解 tf.cond 的文档指定 true_fn和false_fn必须具有相同的非零数字和输出类型。 tf.cond | Tensorflow。但是,我认为很清楚我要做什么。还有没有比

更优雅的方式
def body(ctr):
    op = tf.cond(test[ctr] > 0,
        lambda : tf.assign(res[ctr],res[ctr]-1),
        lambda : tf.assign(res[ctr],res[ctr]))
    with tf.control_dependencies(op):
        return ctr+1

解决那个问题?

0 个答案:

没有答案