咖啡火车中的一个错误

an error in caffe train

everybody.I想用caffe用"SSD: Single Shot MultiBox Detector"训练一个5类的检测任务,所以我把num_classes从21改成6.However, 我收到以下错误:

"检查失败:num_priors_ * num_classes_ == bottom[1]->channels()(52392 对 183372)先验数必须与置信度预测。"

我能理解这个错误,我发现52392/6=183372/21,也就是为什么我把num_classes改成6,但是置信度预测数还是183372。那么这个问题怎么解决.非常感谢!

由于 SSD 不仅取决于分类输出的标签数量,还取决于 BB 预测的标签数量,因此您需要在模型的其他几个地方更改 num_output
我强烈建议您不要手动执行此操作,而是使用 'examples/ssd' 文件夹中提供的 python 脚本。例如,您可以将 line 277 in 'examples/ssd/ssd_pascal_speed.py' 更改为:

num_classes = 5 # instead of 21

然后使用这个脚本提供的模型文件。