python - 如何运行以张量为范围的循环? (在 tensorflow 中)

标签 python tensorflow neural-network deep-learning

我想要一个 for 循环,其迭代次数取决于张量值。例如:

for i in tf.range(input_placeholder[1,1]):
  # do something

但是我得到以下错误:

“TypeError: 'Tensor' 对象不可迭代”

我该怎么办?

最佳答案

为此,您需要使用 tensorflow while 循环 (tf.while_loop),如下所示:

i = tf.constant(0)
while_condition = lambda i: tf.less(i, input_placeholder[1, 1])
def body(i):
    # do something here which you want to do in your loop
    # increment i
    return [tf.add(i, 1)]

# do the loop:
r = tf.while_loop(while_condition, body, [i])

关于python - 如何运行以张量为范围的循环? (在 tensorflow 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35330117/

相关文章:

python - PyCharm 5.0.1 不解析内置模块/方法

python - 如何获得 apport sys.excepthook 的根目录?

python - 如何从具有向量列的 DataFrame 创建 tensorflow 数据集?

arrays - 如何在Tensorflow中传递2个不同长度的数组作为一个训练单元?

python - 是否可以使用 Colboratory 安装tensorflow.serving

python - 如何将excel中的数据导入到python数组中?

Python DBUS SESSION_BUS - X11 依赖

python - pandas (sub)Dataframe 中的最大值和最小值

python - 回归运动损失巨大!使用批量输入进行测试?

algorithm - 如何转换我的 float 以喂养我的神经网络?