每个人。我想用caffe训练5级检测任务,使用" SSD:Single Shot MultiBox Detector",所以我把num_classes从21改为6.但是,我得到了以下错误:
" 检查失败:num_priors_ * num_classes_ == bottom [1] - > channels()(52392 vs. 183372)先验数量必须与置信度预测数匹配。&# 34;
我能理解这个错误,我发现52392/6 = 183372/21,即为什么我将num_classes改为6,但置信度预测的数量仍然是183372.所以如何解决这个问题。非常感谢你!
答案 0 :(得分:2)
由于SSD不仅取决于分类输出的标签数量,还取决于BB预测的标签数量,因此您需要在模型中的其他几个位置更改num_output
。
我强烈建议您不要手动执行此操作,而是使用'examples/ssd'
文件夹中提供的python脚本。例如,您可以将line 277 in 'examples/ssd/ssd_pascal_speed.py'
更改为:
num_classes = 5 # instead of 21
然后使用此脚本提供的模型文件。