caffe訓練mnist模型時出的錯誤

一:在caffe搭建完成之後,開始編寫批處理文件運行mnist模型。

根據各位大神的博客在caffe根目錄下有完成過這個模型的測試,但是考慮到每次還在跑到根目錄下更改批處理文件,後續測試的模型多了就會比較容易搞混了。所以想把批處理文件直接寫caffe-master\data\mnist文件裏面,方便查看。爲了達到這一效果,將批處理文件的相關參數都用了完全路徑重寫編寫

@echo off
color 0b
echo 訓練自制mnist中的img_train_lmdb 使用CPU=1
echo 日期:%date%
set stryear=%date:~0,4%年&set strmonth=%date:~5,2%月&set strday=%date:~8,2%日
echo 時間:%time%
set strhh=%time:~0,2%&set strmm=%time:~3,2%&set strss=%time:~6,2%
if %time:~0,2% leq 9 (set strhh=0%time:~1,1%) else set strhh=%time:~0,2%
set strdatetime = %stryear%%strmonth%%strday%%strhh%%strmm%%strss%
D:\caffe-code\caffe-master\Build\x64\Release\caffe.exe  train --solver=D:\caffe-code\caffe-master\examples\mnist\lenet_solver.prototxt   >>log\%stryear%%strmonth%%strday%%strhh%-%strmm%-%strss%.txt  2>&1 
pause

按照最初的想法,這樣應該沒有問題了。但是實際運行批處理文件的時候,出現如下錯誤:

F0328 15:06:41.453896  8808 solver.cpp:438] Cannot write to snapshot prefix 'examples/mnist/lenet'.  Make sure that the directory exists and is writeable.

一直報錯無法查找到examples/mnist/lenet。。。。尷尬啊。。

根據提示,以爲在solver.cpp源文件裏面有相關的目錄引用,仔細查看並沒有。

二:後面看到一篇博客https://zhuanlan.zhihu.com/p/22129880裏面有說到修改lenet_solver.prototxt參數,但是這篇文章只是指出了修改下圖第一處,二沒有說要修改snapshot_prefix參數。在這種情況下,還是會報上面一樣的錯誤。


然而將2處修改完畢之後,便可以將批處理文件隨便放置,也可以保證運行正確。。


三:總結

原始的prototxt文件裏面涉及到路徑的都寫的很含糊,省略了上級路徑,當你稍微一動文件的時候,按照例子來進行跑的時候,就會出現路徑不一致。所以,建議先將路徑全部改爲絕對路徑。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章