Tensorflow Assign需要两个张量的形状匹配。 lhs shape = [20] rhs shape = [48]
deep-learning
python
tensorflow
5
0

我是TensorFlow新手。我已经从Deeppose的开源实现中训练了TensorFlow模型,现在必须针对新的一组图像运行该模型。

该模型在大小为100 * 100图像上进行了训练,因此我将新图像集的大小调整为相同大小。我有149新图像要运行该模型。运行模型时,出现以下错误。

InvalidArgumentError (see above for traceback): Assign requires shapes
of both tensors to match. lhs shape= [20] rhs shape= [48]

在生产线上

saver = tf.train.Saver(tf.all_variables())

我怀疑训练后的模型尺寸和测试图像尺寸不匹配。我不清楚如何解决此问题。我从tf.all_variables()调用中打印出了变量列表。这里是

Tensor("Placeholder:0", shape=(128, 100, 100, 3), dtype=float32)
(11, 11, 3, 20)
conv1/weights:0
(20,)
conv1/biases:0
(5, 5, 20, 35)
conv2/weights:0
(35,)
conv2/biases:0
(3, 3, 35, 50)
conv4/weights:0
(50,)
conv4/biases:0
(3, 3, 50, 75)
conv5/weights:0
(75,)
conv5/biases:0
(300, 1024)
local1/weights:0
(1024,)
local1/biases:0
(1024, 1024)
local2/weights:0
(1024,)
local2/biases:0
(1024, 0)
softmax_linear/weights:0
(0,)
softmax_linear/biases:0

我不确定RHS参数来自何处。我查看了所有配置文件,似乎没有任何参数指定此配置。

解决这个问题的任何帮助将不胜感激。

参考资料:
Stack Overflow
收藏
评论
共 2 个回答
高赞 时间 活跃

我也遇到了这个问题,问题是标签和类号不匹配,所以我在各处更改并修复了类号表和标签。

在我的情况下,要更改faster_rcnn.config和“ label_map.pbtxt”文件中的“ num_classes”参数以使其与实际值匹配。

收藏
评论

尝试删除以前运行中保存的所有检查点。有时,当更改体系结构并再次运行时,TF将从旧的检查点(但是具有新的定义)开始,出现此错误。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号