測試Caffe,Training LeNet on MNIST with Caffe

測試Caffe,Training LeNet on MNIST with Caffe

標籤(空格分隔): vision


安裝Caffe以後,測試一下。當然最好是用一個大家都在用的例子測試一下。
本文參考Caffe自己的說明

準備數據集Prepare Datasets

Caffe自帶一些腳本從網上下載一些標準的庫,如mnist。假設CAFFE_ROOT是安裝CAFFE的根目錄(對我來說就是解壓caffe_master.zip後的caffe_master目錄)。執行如下腳本,下載數據集,並轉換成Caffe所用的數據格式。

cd $CAFFE_ROOT
./data/mnist/get_mnist.sh
./examples/mnist/create_mnist.sh

執行成功,應該能找到這個文件夾mnist_train_lmdb:

find . -name mnist_train_lmdb

文件夾在./examples/mnist/mnist_train_lmdb,裏面有兩個貌似是數據文件。

定義深度學習網絡 LeNet

其實LeNet歷史比較悠久了,現在纔得到大家的重視。
Caffe使用了Google Protobuf來定義深度學習網絡結構。我也沒有具體看這個是什麼,因爲根本就看不了。不過只要你瞭解深層神經網絡,結合Caffe給出的例子可以比較容易理解。Caffe使用的定義可以參見這個文件$CAFFE_ROOT/src/caffe/proto/caffe.proto。

Caffe自己的說明裏詳細描述瞭如何構造一個網絡,這裏就不詳述了。

寫完這個學習網絡的定義以後,形成的文件就是學習網絡結構例子文件:$CAFFE_ROOT/examples/mnist/lenet_train_test.prototxt。

定義問題解決器 ( 優化問題解決器)Define the MNIST Solver

例子文件:$CAFFE_ROOT/examples/mnist/lenet_solver.prototxt。

現在還沒有GPU,只有CPU,所以把文件改一下,把GPU改成CPU。

vi examples/mnist/lenet_solver.prototxt

開始運行

./examples/mnist/train_lenet.sh | tee res.out

結果:我的AMD機器用了24分鐘。
I0522 19:10 開始運行
I0522 19:34:17.809156] Test net output #0: accuracy = 0.9912
I0522 19:34:17.809249] Test net output #1: loss = 0.027
I0522 19:34:17.809268 32395 solver.cpp:257] Optimization Done.

發佈了39 篇原創文章 · 獲贊 7 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章