下載連接以及說明:
1.caffe代碼按照官方教程下載windows分支下面的就能夠了(https://github.com/BVLC/caffe/tree/windows)。
2.cmake(https://cmake.org/download/)
3.miniconda3 python3.6 x64(https://conda.io/miniconda.html) (注意:官方只能下載python 3.6版本的,在安裝完python3.6版本的miniconda以後,注意在安裝的時候將目錄添加到環境變量中,而後命令行中執行:html
conda create -n py35 python=3.5 anaconda,執行以後,會下載並安裝python3.5下面的庫,成功以後;python
命令行中執行 activate py35,便可激活python3.5,可是當退出以後仍然是默認的3.6,這個時候命令行執行:git
conda info --envs,能夠看到有2個python環境:一個是root,一個是py35,而且能夠看到py35這個包的安裝路徑。github
而後在windows的環境變量中,把py35這個環境的路徑和這個路徑下的scripts路徑添加到path路徑中,windows
並在系統變量的path路徑中刪除掉原來的miniconda3/bin和miniconda3/scripts路徑,這個再進入命令行中輸入python,網絡
默認就是python3.5了。測試
4.下載相應的caffe依賴包,地址https://github.com/willyd/caffe-builder/releases/ (注意我這裏下載的是:libraries_v140_x64_py35_1.1.0.tar.bz2 ,這個文件很是難下載,我下載了不少次都沒下載下來,若是有須要的,請看百度雲連接: https://pan.baidu.com/s/1bp4hJiv 密碼: zwn8)ui
Q: CMake Error at D:/cmake/share/cmake-3.11/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find Atlas (missing: Atlas_CLAPACK_INCLUDE_DIR
Atlas_CBLAS_LIBRARY Atlas_BLAS_LIBRARY Atlas_LAPACK_LIBRARY)
Call Stack (most recent call first):google
solve:提示atlas錯誤,把BLAS 選項改成Open,意思是用OpenBlasspa
總算cmake成功了,接着就是編譯了。
Mnist數據轉化成lemdb格式
能夠參考http://blog.csdn.net/qq_14845119/article/details/52415090
mnist測試:
下面經過一個一個最簡單的網絡結構lenet來對剛纔安裝的caffe進行測試。
(1)去官網http://yann.lecun.com/exdb/mnist/下載mnist數據集。下載後解壓到E:\caffe\data\mnist,以下圖所示。
(2)在caffe根目錄下,新建一個create_mnist.bat,裏面寫入以下的腳本:
.\Build\x64\Release\convert_mnist_data.exe .\data\mnist\mnist_train_lmdb\train-images.idx3-ubyte .\data\mnist\mnist_train_lmdb\train-labels.idx1-ubyte .\examples\mnist\mnist_train_lmdb
echo.
.\Build\x64\Release\convert_mnist_data.exe .\data\mnist\mnist_test_lmdb\t10k-images.idx3-ubyte .\data\mnist\mnist_test_lmdb\t10k-labels.idx1-ubyte .\examples\mnist\mnist_test_lmdb
pause
而後雙擊該腳本運行,便可在E:\caffe\examples\mnist下面生成相應的lmdb數據文件。
(3)修改E:\caffe\examples\mnist\lenet_solver.prototxt,將最後一行改成solver_mode:CPU,
修改E:\caffe\examples\mnist\lenet_train_test.prototxt,以下所示,左面爲原始的,右面爲修改後的。
(4)在caffe根目錄下,新建train_mnist.bat,而後輸入以下的腳本,
.\Build\x64\Release\caffe.exetrain --solver=.\examples\mnist\lenet_solver.prototxt
pause
而後雙擊運行,就會開始訓練,訓練完畢後會獲得相應的準確率和損失率。
須要注意的是:
1.將他們都下載下來,在./data/mnist中創建兩個文件夾分別裝好
2. 寫腳本語言是應覈對好路徑是否正確,要用本身的路徑,不能照抄做者的。
3. 若是隻用CPU,網絡訓練時間在一小時左右(多是我筆記本配置低)
[libprotobuf ERROR C:\Users\guillaume\work\caffe-builder\build_v140_x64\packages\protobuf\protobuf_download-prefix\src\p
rotobuf_download\src\google\protobuf\text_format.cc:298] Error parsing text-format caffe.NetParameter: 14:17: Invalid es
能夠看出是解析lenet_train_test.prototxt出錯,NetParameter後面跟的是錯誤的位置,好比第一個是14行17列,找到lenet_train_test.prototxt這個位置發現是’\’。
在windows中路徑分隔符是’\’,好比我一開始直接複製lmdb的路徑到prototxt中的:
source這個字符串在c裏面解析爲轉義,因此出錯。
將‘\’改成‘/’或者‘\\’
個人
雙擊運行runMNIST.bat文件,訓練數據集。
第一個測試程序已經完成了,準確度還挺高,下一步該研究網絡結構了。