1

everyone.I'''''''''c'f要使用咖啡來訓練一個5級的偵測任務,「SSD:Single Shot MultiBox Detector」,所以我將num_classes從21更改爲6.但是,錯誤:咖啡火車上的錯誤

檢查失敗:num_priors_ * num_classes_ ==底部[1] - >頻道()(52392與183372)先驗必須匹配可信度的預測數數。」

我能理解這個錯誤,我發現52392/6 = 183372/21,也就是爲什麼我把num_classes改爲6,但是置信度預測的數量仍然是183372.那麼如何解決這個問題呢。非常感謝你!

+0

做你的標籤只包含5類? – malreddysid

+0

@malreddysid是的,也許可信度的預測數由作者definited,所以它不適合我,所以如何解決這個問題,我只是想培養出5類模型。 –

回答

2

由於SSD不僅取決於分類輸出的標籤數量,還取決於BB預測的標籤數量,因此您需要在模型的其他幾個位置更改num_output
我強烈建議你不要做手工,而是使用在'examples/ssd'文件夾中提供的Python腳本。舉例來說,你可以改變line 277 in 'examples/ssd/ssd_pascal_speed.py'到:

num_classes = 5 # instead of 21 

然後使用模型文件這個腳本提供。

+1

十分感謝你。我發現作者六味說:「在ssd_pascal.py的CreatMultiBoxHead」「添加conf_postfix =」 _ whatever_you_like。但是,Windows朱古力編譯與VS,所以ssd_pascal.py不能工作,我想一旦你運行Python腳本,你會擁有所有的prototxt文件 –

+0

修改文件的Windows @ H.Hao(火車,測試和求解器),並用適當的'num_output'創建。您可以使用這些文件手動運行caffe。 – Shai