1,首先說下環境和配置
配置:

環境:windows10,vs2013 community,cuda8.0,caffe,cudnn4
注意:先要安裝好顯卡驅動(我的顯卡是1070),這里的例子只開通了matlab接口,需要用python可以安裝anacoda並打開python接口。
2,准備文件
例子中用的文件:鏈接:http://pan.baidu.com/s/1hsBNI3i 密碼:cynd
注意一:處理cudnn有兩種方式,其一是在vs的屬性文件中給出目錄;另一是將cudnn的文件放到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0的相應目錄中;這里我用的是第二種方式。
注意二:解壓出來的caffe-master應該有兩層目錄名字都是caffe-master,第一次編譯的時候我直接去掉了一層,(因為我的小小強迫症),但是發現其實程序會在第一層caffe-master的下面新建一個NugetPackages文件夾來放置第三方庫,所以實際上這里不要去掉其中一層caffe-master目錄。
注意三:先編譯libcaffe,再編譯caffe,最后需要什么工程就編譯哪個,編譯過程中的錯誤會之后找個時間寫一篇專門的博客。
3,測試mnist
需要下載的四個訓練和測試數據已經在前面的分享文件夾中,下載即可;
轉化數據格式到lmdb,用的是python代碼,注意代碼應該放在Build同目錄下:
import os
import shutil
EXAMPLE='examples\mnist'
DATA='data\mnist'
BUILD='Build\x64\Release'
BACKEND='lmdb'
print "Createing "+BACKEND+"..."
path1=EXAMPLE+"\mnist_train_"+BACKEND
path2=EXAMPLE+"\mnist_test_"+BACKEND
if os.path.exists(path1):
shutil.rmtree(path1)
if os.path.exists(path2):
shutil.rmtree(path2)
s1=BUILD+"\convert_mnist_data.exe"
s2=DATA+"\train-images.idx3-ubyte"
s3=DATA+"\train-labels.idx1-ubyte"
s4=EXAMPLE+"\mnist_train_"+BACKEND
s5="--backend="+BACKEND
cmd=s1+" "+s2+" "+s3+" "+s4+" "+s5
print cmd
os.system(cmd)
t1=BUILD+"\convert_mnist_data.exe"
t2=DATA+"\t10k-images.idx3-ubyte"
t3=DATA+"\t10k-labels.idx1-ubyte"
t4=EXAMPLE+"\mnist_test_"+BACKEND
t5="--backend="+BACKEND
cmd=t1+" "+t2+" "+t3+" "+t4+" "+t5
print "cmd2="+cmd
os.system(cmd)
執行該代碼后,會在examples\mnist下面出現兩個文件夾,mnist_test_lmdb和mnist_train_lmdb;
寫批處理文件來運行測試mnist:Build\x64\Release\caffe.exe train --solver=examples\mnist\lenet_solver.prototxt
Pause
運行過程截圖:
上圖就能看到測試程序的結果,正確率等參數。祝成功,有問題留言!


