Caffe自帶的兩個DEMO


caffe源碼包提供了多個DEMO,這里介紹mnitscifar10的實驗

1. mnits

安裝好caffe后,在caffe-master/examples/mnist目錄下可以找到LeNet模型的具體實現

數據下載:

./data/mnist/get_mnist.sh

 在./data/mnist/目錄下下載了4個*.gz格式的數據壓縮包,train-*是訓練數據,t10k-*是測試數據,下載后會利用gunzip命令解壓縮[其中源文件會默認被移除]

train-labels-idx1-ubyte.gz => train-labels-idx1-ubyte
train-images-idx3-ubyte.gz =>  train-images-idx3-ubyte
t10k-labels-idx1-ubyte.gz =>   t10k-labels-idx1-ubyte  
t10k-images-idx3-ubyte.gz => t10k-images-idx3-ubyte 

 數據格式轉換

 將上一步下載解壓后的文件轉換為lmdb文件. Caffe支持多種數據格式輸入網絡:leveldb,lmdb,HDF5等,可以根據自己需要選擇.

./examples/mnist/create_mnist.sh

在 ./examples/mnist/目錄下會創建2個文件夾:mnist_train_lmdb和mnist_test_lmdb,其中分別包含data.mdb和lock.mdb兩個文件

網絡配置

LeNet網絡定義在examples/mnist/lenet_train_test.prototxt文件中,需要關注的是里面source參數文件路徑.

查看文件

gedit examples/mnist/lenet_train_test.prototxt

關注: TRAIN 的data_param的source: "examples/mnist/mnist_train_lmdb", TEST 的data_param的source: "examples/mnist/mnist_test_lmdb"

訓練網絡

./examples/mnist/train_lenet.sh
# 迭代10000次, 輸出 "Optimization Done."
# 准確率達到99%
 

參數配置

gedit examples/mnist/lenet_solver.prototxt

 默認是使用GPU完成運算,如果使用的是CPU,則需要修改配置文件

# 將配置文件最后一項修改
# solver mode: CPU or GPU
solver_mode: GPU
# 為
solver_mode:CPU

 

2. cifar10

基本過程同mnist, 執行命令如下:

./data/cifar10/get_cifar10.sh
./examples/cifar10/create_cifar10.sh
./examples/cifar10/train_quick.sh

網絡配置

gedit examples/cifar10/cifar10_quick_train_test.prototxt

參數配置

gedit examples/cifar10/cifar10_quick_solver.prototxt

運行結果[迭代了5000次,准確路74.8%]:

3. 生成網絡組織模型圖形

下面以打印mnist網絡模型為例,利用的是caffe內提供的draw_net.py ,在caffe-master/python目錄下,需要make pycaffe之后才可以使用

在當前目錄為caffe-master下,執行

python ./python/draw_net.py ./examples/mnist/lenet_train_test.prototxt lenet.jpeg

 在會在當前路徑caffe-master生成一張lennet.jpeg圖像

  iiiiiiiii


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM