1. 程式人生 > >windows10 無GPU配置Caffe

windows10 無GPU配置Caffe

方法路子由這篇部落格指引:“如何快糙好猛地在Windows下編譯CAFFE並使用其matlab和python介面”特此感謝。
一、編譯caffe生成caffe.exe。
2015/02/25 微軟製作了一個caffe的windows版,他們更加專業,做出來的solution更加容易維護,第三方庫完全由Nuget進行管理,幾乎不用配置什麼東西,建議大家都去嘗試一下:https://github.com/Microsoft/caffe
進入到上述提到的github網頁後,下拉看到tutorial:
1)Pre-Build steps要做。
2)CUDA。由於無GPU,所以不用安裝,所以此步驟跳過。
3)cuDNN。跳過。
4)Python。由於使用vs2013,故沒有用python,跳過。
5)Matlab。如果要用matlab wrapper來提取特徵、觀察訓練好的權重的話呢,只需要把matcaffe專案裡面的matlab目錄修改成你自己的,然後編譯,你就能從matlab/+caffe/private資料夾裡面找到一個叫caffe_.mexw64的檔案啦。
  python的wrapper類似,把pycaffe專案裡的python目錄改成你自己的(我用的是Anaconda),就能在python/caffe資料夾中生成_caffe.pyd的python dll檔案。
  稍作修改即可。
  To build Caffe Matlab wrapper set MatlabSupport to true and MatlabDir to the root of your Matlab installation in .\windows\CommonSettings.props.
6)Build。編譯思密達!
git上原文說:“Now, you should be able to build .\windows\Caffe.sln”(注意這裡”./”表示的是caffe-master資料夾,因為從git上下載的檔案解壓後就是caffe-master)並不準確,因為我直接去編譯會產生錯誤“找不到libcaffe.lib檔案”,所以具體步驟是:
開啟vs2013後,開啟專案,進入到解壓的資料夾caffe-master,進入./windows,就可以找到Caffe.sln。載入解決方案,大概有16個方案(在vs裡面顯示)然後再在這些解決方案裡面找到libcaffe這個,先右擊編譯生成這個。然後再右擊整個解決方案(最上面),點選生成,就可以了。這裡寫圖片描述


二、caffe的第一個測試程式
上面把caffe編譯生成可執行檔案了,具體在路徑 ./Build/x64/Debug/caffe.exe(這裡”./”指是(你)從git上下載zip後解壓出來的資料夾)
1)下載資料。程式本身不帶測試資料,需要去下載,測試資料為leveldb格式。你可以直接雙擊執行“get_mnist_leveldb.bat” 這個指令碼自動下載資料,但一般都不成功,可能裡面的網址被牆了。你可以直接到此下載:http://pan.baidu.com/s/1hry1f4g
下載好後直接解壓,得到兩個資料夾(mnist-train-leveldb和mnist-test-leveldb),將這兩個資料夾直接複製到 .\examples\mnist\ 目錄下。
2)進入到.\examples\mnist\ 。該目錄下prototxt副檔名的都是配置檔案。在訓練mnist資料集上碰到了dongb5lz所述問題,在網上找到了一個轉化好的mnist的leveldb格式資料包\mnist-leveldb.7z,將其解壓到工程檔案./examples/mnist中即可,要修改caffe訓練的目錄地址以及資料型別(caffe預設的是LMDB,此處修改為LEVELDB),修改lenet_train_test.prototxt檔案中:
第14行source: “../examples/mnist/mnist_train_leveldb”
第16行backend: LEVELDB
第31行source: “../examples/mnist/mnist_test_leveldb”
第33行backend: LEVELDB
然後修改lenet_solver.prototxt:
第2行:net: “F:/caffe-master/examples/mnist/lenet_train_test.prototxt”(這裡我改成了全路徑不會出錯)注意這裡雖然是在windows裡面路徑名按說是反斜槓,但這個檔案裡的斜杆是對的,不必改成反斜槓\。
第23行:snapshot_prefix: “F:/caffe-master/examples/mnist/lenet.prototxt”(原先不是全路徑),改成全路徑。
第25行:solver_mode: CPU(原先是GPU)改成CPU
定位到最後一行:solver_mode: GPU,將GPU改為CPU。( 如果你有GPU,這一步就可以免了。這對應到之前編譯caffe那一步裡面的是否修改.\windows\CommonSettings.props)
3)執行。自己編輯一個.bat檔案放在mnist資料夾中:
F:
cd \caffe-master
.\Build\x64\Debug\caffe.exe train –solver=.\examples\mnist\lenet_solver.prototxt
儲存後,雙擊執行。