日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > Caffe >内容正文

Caffe

Caffe上训练使用自己的数据

發布時間:2025/7/25 Caffe 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Caffe上训练使用自己的数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Caffe上訓練使用自己的數據

from:?http://www.wjxfpf.com/2015/10/824918.html

接著上篇,上篇講解了怎么在ubuntu下安裝Caffe,如果一切沒問題的話應該是可以用了,下面自己測試一下。

測試mnist

首先切換到caffe-master的主目錄,mnist是作為一個演示存在于caffe-master/examples/mnist下的,需要三步來運行:?
<1>獲得mnist手寫數據庫數據

$ sh data/mnist/get_mnist.sh

<2>根據獲得的原始數據建立數據集(Lmdb形式)

$ sh examples/mnist/create_mnist.sh

<3>訓練并獲得驗證集合的成功率

$ sh examples/mnist/train_lenet.sh

這些腳本Caffe都是寫好了的,直接運行就可以了,如果沒錯的話,你應該看到類似于下面的輸出?


輸出的內容就是創建相應的網絡和進行迭代訓練,這里我只截圖了剛開始訓練的部分,它會產生相應的model,以后我們就可以拿這些model去進行識別了

Caffe上訓練使用自己的數據集

我就以這個來演示下如何使用caffe來使用自己的數據進行訓練和識別(分類);這是自己做的中文漢字識別的一個實驗,大概有3K多個漢字,我將每個漢字歸為一個類,所以總共有3K多個類,然后就可以在上面訓練識別。由于漢字什么的長得和手寫數字還是很像的(明顯不同與貓、狗之類的),所以我就偷懶用了mnist的網絡結構來訓練,最后效果也還不錯。ps:數據多點結果應該更好點?
(1)對自己的數據進行分類?
在我這個來說,就是把每個漢字歸為一類,首先新建個train文件夾用來做訓練,類的編號從0開始,1,2,3,4,5…….這樣寫,大概是這樣的:?


再建個val文件夾,用來做驗證,val文件夾下所有的圖片不用分類,直接放一起就可以了,大概是這樣:?


(2)寫訓練的數據集和驗證的數據集TXT?
train.txt就是將train文件夾下的圖片歸類,val.txt直接寫圖片的類編號,大概是這樣:?




(3)做數據集?
從imagenet拷貝create_imagenet.sh,進行修改,主要寫上自己的train和val的路徑?


修改完之后就可以運行了,會創建兩個數據集:?


(4)定義網絡結構?
上面說了,對于漢字我就采用了mnist的網絡結構,直接拷貝(3)中獲得的兩個數據集到examples/mnist下,最后就是這樣的:?


紅色圈出的是不需要的,當然如果你需要加均值的話,可以使用make_imagenet_mean.sh,改下路徑就可以用了,但不是必須的?
主要是修改lenet_train_test.prototxt文件的內容:?


修改下路徑就可以了,紅色標明的地方?
還有就是連接的個數,寫上自己實際的類的個數,很重要不然會報錯?


(5)訓練?
直接運行lenet_train.sh就可以了,它調用lenet_train_test.prototxt的網絡結構,學習率,decay之類的參數在lenet_solvet.prototxt里面,大家看著需要自己設置,會產生model文件和驗證結果,類似于上面用mnist自帶的數據集訓練的結果?


最后結果截圖我就不放了,跟第一張差不多,說的就是迭代到多少次,成功率(accuracy)是多少,損失(loss)是多少

總結一下做自己的訓練集的步驟:?
<1>分類;將自己的訓練數據分成類并寫train.txt文件,val直接全放一起,寫val.txt文檔?
<2>做數據集文件(lmdb)?
<3>定義網絡結構?
<4>訓練并驗證

上面說的不太清楚的地方,歡迎咨詢!

總結

以上是生活随笔為你收集整理的Caffe上训练使用自己的数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。