1. 程式人生 > >Caffe模型除錯中的錯誤總結

Caffe模型除錯中的錯誤總結

錯誤:Cannot copy param 0 weights from layer '...'; shape mismatch

即model和prototxt定義的模型不一樣。通常是fine-tune時圖片尺寸有了調整,或者改了網路結構想要train時去掉weight引數即可。

錯誤:Check failed: error == cudaSuccess (2 vs. 0) out of memory

錯誤提示GPU memery不足。首先可以用nvidia-smi來檢查有沒有多餘程式佔用了空間

如果沒有可關閉的程式的話,可以在prototxt中把batch_size調小一點。

錯誤:eltwise_layer.cpp:34   Check failed: bottom[i]->shape() == bottom[0]->shape() 

這個錯誤就是在執行element-wise運算的時候(比如concat),運算元維度不一致。往上追溯錯誤日誌,可以看到相加的兩個元素,根據需要對其維度進行調整。

錯誤:math_functions.cu:79 Check failed: error == cudaSuccess (77 vs. 0) an illegal memory access was encountered

一開始以為還是batch_size調小點就行,結果調到1都不行。網上查找了一些資料,發現出現這個錯誤的原因非常多樣,共同的結果就是記憶體訪問出現問題。經過較長時間的debug,將某一層的depthconv換成conv後不再報錯。