【caffe】mnist数据集lenet训练与测试
在上一篇中,費了九牛二虎之力總算是把Caffe編譯通過了,現(xiàn)在我們可以借助mnist數(shù)據(jù)集,測試下Caffe的訓練和檢測效果。
準備工作:在自己的工作目錄下,新建一個文件夾,命名為mnist_test(根據(jù)自己的習慣設定)。同時,建議大家安裝文本編輯神器Notepad++,用它來編輯各種格式的文本真的很方便!這里用于打開和編輯用到的各種文件。
1、mnist手寫數(shù)字數(shù)據(jù)集下載(http://yann.lecun.com/exdb/mnist/)。
? ? ?將下圖中的4個文件均下載到mnist_test文件夾下,并解壓到當前文件夾,得到如下4個文件:t10k-labels.idx1-ubyte,train-labels.idx1-ubyte,t10k-images.idx3-ubyte,train-images.idx3-ubyte。
2、lmdb格式訓練集和測試集轉換。
2.1 在mnist_test文件夾下新建兩個文本文件,分別命名為:create_minist_trainlmdb.bat和create_minist_testlmdb.bat。
2.2 向create_minist_trainlmdb.bat中添加如下內容,并保存:
D:\Libraries\caffe\msvc2013_64\bin\convert_mnist_data.exe train-images.idx3-ubyte train-labels.idx1-ubyte mnist_train_lmdb pause
convert_mnist_data.exe位于caffe安裝目錄的bin文件夾下,無需將其拷到當前目錄,只要制定其絕對路徑即可。注意輸入的文件名要正確,否則找不到,會報錯!
2.3 向create_minist_testlmdb.bat中添加如下內容,并保存:
D:\Libraries\caffe\msvc2013_64\bin\convert_mnist_data.exe t10k-images.idx3-ubyte t10k-labels.idx1-ubyte mnist_test_lmdb pause
雙擊執(zhí)行這兩個.bat文件,會在當前文件夾下生成如下兩個文件夾,里面分別保存著lmdb格式的訓練集和測試集。
3、訓練caffemodel并測試。
在caffe源碼目錄下有一個examples文件夾,在examples文件夾下有一個mnist文件夾,將該文件夾下如下三個文件:lenet.prototxt、lenet_solver.prototxt和lenet_train_test.prototxt,拷貝到mnist_test文件夾下。
打開lenet_solver.prototxt,將net的值改為lenet_train_test.prototxt,同時可以修改solver_mode,可以是CPU,也可以是GPU,其他參數(shù)也可以做適當調整,這里不再調整。
再打開lenet_train_test.prototxt,將對應的內容按照指定的格式進行修改,如下圖所示:
新建一個文本文件,重新命名為train.bat,添加如下內容:
D:\Libraries\caffe\msvc2013_64\bin\caffe.exe train --solver=lenet_solver.prototxt pause
保存,雙擊執(zhí)行,運行界面如下:
運行完畢,會在當前文件夾下生成如下四個文件(即訓練出來的模型):
下面進行測試,在當前文件夾下新建一個文本文件,重新命名為test.bat,添加如下內容:
D:\Libraries\caffe\msvc2013_64\bin\caffe.exe test --model lenet_train_test.prototxt -weights=lenet_iter_10000.caffemodel pause
保存,雙擊打開,執(zhí)行結果如下:
至此caffe模型訓練完畢,下面使用圖片進行實測。
4、計算mean.binaryproto。
在進行實測之前,我們需要計算模型的均值,具體方法如下。
4.1 打開之前的lenet_train_test.prototxt,作進一步修改,添加如下兩處內容:
4.2 新建一個文本文件,重命名為computer_image_mean.bat,向其中添加如下內容:
D:\Libraries\caffe\msvc2013_64\bin\compute_image_mean.exe mnist_train_lmdb mean.binaryproto --backend=lmdb pause
保存,雙擊執(zhí)行,會在當前目錄下生成文件mean.binaryproto。
5、實際圖片分類測試。
5.1 測試圖片
有些博客介紹了如何生成測試圖片(?http://blog.csdn.net/zb1165048017/article/details/52217772),這里就不做多的介紹了。可以直接將下面的這個圖片保存到當前目錄下,供測試使用。
5.2 新建一個文本文檔,命名為label.txt,添加如下內容:
5.3 新建一個文本文檔,重新命名為?classification.bat,添加如下內容:
D:\Libraries\caffe\msvc2013_64\bin\classification.exe lenet.prototxt lenet_iter_10000.caffemodel mean.binaryproto label.txt 5.png pause
保存,雙擊執(zhí)行,如下:
這里,我們也可以使用leveldb格式的文件進行測試,只需要將相應配置選項由lmdb轉換成leveldb即可。
參考資料:
[1]?http://www.cnblogs.com/yixuan-xu/p/5858595.html;
[2]?http://blog.csdn.net/zb1165048017/article/details/52217772;
2017.07.19
總結
以上是生活随笔為你收集整理的【caffe】mnist数据集lenet训练与测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【caffe】windows下caffe
- 下一篇: 【caffe】windows下vs201