caffe学习(五):cifar-10数据集训练及测试(Ubuntu)
簡介
網站鏈接:CIFAR-10
CIFAR-10數據集包括由10個類別的事物,每個事物各有6000張彩色圖像,每張圖片的大小是32*32。
整個數據集被分成了5個訓練集和1個測試集,各有10000張圖片,即50000張圖片用于訓練,10000張圖片用于測試(交叉驗證)。
下載數據
注意:默認用$CAFFE_ROOT表示caffe的根目錄。
輸入指令:
隨后,會自動下載數據。
如果嫌下載速度慢,可以自己手動下載,再進行自己解壓放到對應目錄下。
從get_cifar10.sh文件中可以找到url:
http://www.cs.toronto.edu/~kriz/cifar-10-binary.tar.gz
打開get_cifar10.sh:
#!/usr/bin/env sh # This scripts downloads the CIFAR10 (binary version) data and unzips it.DIR="$( cd "$(dirname "$0")" ; pwd -P )" cd "$DIR"echo "Downloading..."wget --no-check-certificate http://www.cs.toronto.edu/~kriz/cifar-10-binary.tar.gzecho "Unzipping..."tar -xf cifar-10-binary.tar.gz && rm -f cifar-10-binary.tar.gz mv cifar-10-batches-bin/* . && rm -rf cifar-10-batches-bin# Creation is split out because leveldb sometimes causes segfault # and needs to be re-created.echo "Done."下載完成后,$CAFFE_ROOT/data/cifar10下多出了一些文件:
訓練集:
這5個文件就是分成了5份的那50000張圖片。
data_batch_1.bin
data_batch_2.bin
data_batch_3.bin
data_batch_4.bin
data_batch_5.bin
測試集:
測試數據集,總共10000張圖片。
test_batch.bin
類別說明:
說明了整個cifar-10數據集所包括的10個事物類別。
batches.meta.txt
圖片格式轉換
輸入指令:
cd $CAFFE_ROOT ./examples/cifar10/create_cifar10.sh之后會在目錄下生成三個文件:
cifar10_test_lmdb:測試集的lmdb文件
cifar10_train_lmdb:訓練集的lmdb文件
mean.binaryproto:整個數據集所有圖片的均值文件
訓練數據集
輸入指令:
cd $CAFFE_ROOT ./examples/cifar10/train_quick.sh隨后就會開始訓練。
先打開train_quick.sh看看
如果使用的是cpu模式,需要到文件中提到的所有prototxt文件中修改solver_mode為cpu;如果使用的是gpu,則不需要更改,默認就已經是gpu模式了。
使用gpu模式很快就訓練好了。
最后訓練完時的準確率是75%左右,效果并不是很好。
測試模型
測試時用到了caffe的python接口,所以一定要先編譯并配置好了好了pycaffe。如果沒有配置好,請先配置好。我以前的博客有講過如何linux下搭建caffe,最后講了如何安裝pycaffe。(打開鏈接 )
我們不自己從頭寫python代碼了,使用caffe提供的$CAFFE_ROOT/python/classify.py文件。
參考自:http://blog.csdn.net/asukasmallriver/article/details/73089944
打開classify.py:
在圖中所示位置添加一行代碼,目的是修改均值計算錯誤 :
將預測的結果打印出來:
# 自己添加 print("Predictions:%s" % predictions)將結果排序,并找到對應的是什么:
添加如下代碼到最后:
修改完就可以來測試了,caffe在$CAFFE_ROOT/examples/images下有一些圖片。
輸入指令:
載入的圖片是cat.jpg,預測結果如下:
我另外從百度隨便下了幾張圖片來測試:
輸入指令(根據自己的圖片的文件名改下就可以了):
貓
哈士奇居然被識別成貓了,但是我承認這張圖片的哈士奇的確不太像“狗”。
狗
汽車
cifar數據集訓練的結果識別效果不是很好,準確率較低,這里僅做學習實驗用。
總結
以上是生活随笔為你收集整理的caffe学习(五):cifar-10数据集训练及测试(Ubuntu)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开源车牌识别项目,OpenALPR
- 下一篇: caffe学习(六):使用python调