tensorflow渐变:不支持的操作数类型

tensorflow渐变:不支持的操作数类型,tensorflow,Tensorflow,我得到了以下错误: anaconda2/envs/tensorflow/lib/python2.7/site packages/tensorflow/python/ops/gradients.py:90:UserWarning:将稀疏索引转换为未知形状的密集张量。这可能会消耗大量内存。 “将稀疏索引转换为未知形状的稠密张量。” 回溯(最近一次呼叫最后一次): 文件“anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/p

我得到了以下错误:

anaconda2/envs/tensorflow/lib/python2.7/site packages/tensorflow/python/ops/gradients.py:90:UserWarning:将稀疏索引转换为未知形状的密集张量。这可能会消耗大量内存。 “将稀疏索引转换为未知形状的稠密张量。” 回溯(最近一次呼叫最后一次):

文件“anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/python/training/optimizer.py”,第196行,以最小化方式显示 梯度损失=梯度损失) 文件“anaconda2/envs/tensorflow/lib/python2.7/site packages/tensorflow/python/training/optimizer.py”,第253行,计算梯度 colocate_gradients_with_ops=colocate_gradients_with_ops) 文件“anaconda2/envs/tensorflow/lib/python2.7/site packages/tensorflow/python/ops/gradients.py”,第469行,渐变 入级=入级列表(入级fn(op,*出级)) 文件“anaconda2/envs/tensorflow/lib/python2.7/site packages/tensorflow/python/ops/array_grad.py”,第504行,在_ExtractImagePatchesGrad中 rows\u out=int(ceil(rows\u in/stride\u r)) TypeError:/:“NoneType”和“long”的操作数类型不受支持


“收集操作”似乎是错误的。

我发现这是一个老问题,但我已经找到了一些解决这种情况的快速方法。很可能,您正在使用占位符输入,占位符形状的一个维度为“无”。如果将该维度设置为批次大小,它将不再是未知形状。

这看起来令人惊讶。如何构建lossobj?@user1454804因为我的体重和身高输入占位符(形状[1]&[2])设置为“无”,以处理动态输入大小。
trainstep = tf.train.AdamOptimizer(0.0001).minimize(lossobj)