首页 > 解决方案 > 训练时Tensorflow不兼容的形状错误

问题描述

我一直在训练一个对象检测器,能够用 1 个类成功地做到这一点,现在我在数据集中添加了 2 个类和更多图像,我通过删除旧的将 xml 重新生成为 csv 和 tf 记录,pbtxt 文件是正确并删除了培训目录中的旧检查点,但是当我像这样运行培训作业时:

python legacy/train.py --logtostderr --train_dir=training/ --pipeline_config_path=training/ssd_mobilenet_v1_pets.config

按照本教程。我收到以下错误:

InvalidArgumentError (see above for traceback): Incompatible shapes: [2,1917] vs. [4,1]
 [[Node: Loss/Match/cond/mul_4 = Mul[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:GPU:0"](Loss/Match/cond/one_hot, Loss/Match/cond/Cast_2)]]

标签: pythontensorflowcomputer-vision

解决方案


如果您正在按照障碍检测 API 教程训练 Mobilenet SSD,您可以尝试在配置文件中注释掉“ssd_random_crop”扩充。这对我有用。最初是由 rky0930在这里指出的。


推荐阅读