基于深度学习的图像分类Image classification with deep learning常用模型
本文中,我會根據下大家image classification常用的cnn模型,針對cifar10(for 物體識別),mnist(for 字符識別)& ImageNet(for 物體識別)做一個model 總結。
- 本文不講coding(coding請見Convolution Neural Network (CNN) 原理與實現篇)
- 本文不涉及公司內部資料,純公開資料匯總
好,本文就從數據集說起,對數據集不熟悉的小伙伴請先去了解下這3個數據集,下面我們針對每個數據集畫出其通用模型。
===================================
1.?Cifar10
60000張32*32彩色圖,10類,每類5000張用于training,1000張用于testing,通常做object recognition/classification。
模型:(上面寫的數字是該層節點數)
2.?Mnist
黑白圖,手寫體,60000training,10000testing,已做好croping,28*28,用作classification。
LeNet模型:
3.?ImageNet
10w類,每類約1000張彩色圖的大規模數據集 ,需要注冊下載。從10年起每年都有imagenet的競賽,分為detection, classification & localization. 14年的比賽結果和方法見這里。
3.1 2012 AlexNet
模型:
但是里面細節我一直沒搞過,今天就任性了一把,把每一層列出來了大小及其對應操作。自認為看上去不如上圖清晰,但是會對每一步的操作有更加深入的了解。。。
此圖從下往上看,最下方是輸入data(注意上圖中224是錯的,這里crop后的image實際上是227*227的)。
PS: crop 為將圖片進行四個邊界crop+中心crop
每一層data格式(batch size, # feature map, height of feature, width of feature)
每一次convolution(conv)的格式(#output feature,#conv feature map,kernel height,kernel width)
這里我們看到了最后fc8(第8層,fully connect)接的是LABEL,這是一個loss層,多類分類,采用softmax loss做為loss function。這是訓練時候優化參數定的,那測試的時候怎么搞?
——
測試的時候,最后的特征fc8接一層probability,返回類型為softmax的概率,哪個最高結果就評定為哪一類。
如果做全局系統測評,可以再在后面加一層accuracy層,返回類型為ACCURACY.
3.2 2014?GoogLeNet
2014 ImageNet classification & Detection的冠軍,22層網絡。。。給跪了,感興趣的同學去看paper里的結構吧,這里我截圖截不下來了。。。
另外,給幾個參考:
1. 初學者玩玩:可以用在線ConvNet試一下
2.?DIY Deep learning Architecture
3. 其實最好的reference還是paper + code啦,上面的architecture可以參考caffe中example/imagenet的prototxt。
from:?http://blog.csdn.net/abcjennifer/article/details/42493493
總結
以上是生活随笔為你收集整理的基于深度学习的图像分类Image classification with deep learning常用模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 卷积神经网络Convolution Ne
- 下一篇: 卷积神经网络Convolutional