国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于卷積神經(jīng)網(wǎng)絡(luò)的花朵圖片分類(lèi)算法

2018-09-17 04:32:06張小鋒劉紅錚
關(guān)鍵詞:池化金字塔花朵

張小鋒,劉紅錚

(南昌航空大學(xué)江西省圖像處理與模式識(shí)別重點(diǎn)實(shí)驗(yàn)室,江西 南昌 330063)

0 引 言

隨著科技的發(fā)展,人們?cè)絹?lái)越方便地使用電子設(shè)備拍攝花朵圖片,催生了花朵識(shí)別的研究。之前人們對(duì)花朵識(shí)別的研究一直無(wú)法取得進(jìn)步,主要是因?yàn)樘卣魈崛《际且揽渴止ぬ崛?。手工特征提取不僅耗費(fèi)大量的時(shí)間,還需要一定的專(zhuān)業(yè)知識(shí)?;ǘ渥R(shí)別作為一種細(xì)粒度圖像識(shí)別,特征的提取更為復(fù)雜。隨著卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)的發(fā)展,圖片的特征可以自動(dòng)提取,花朵圖片的分類(lèi)也開(kāi)始利用CNN。

1 卷積神經(jīng)網(wǎng)絡(luò)

1.1 卷積層

每一個(gè)卷積層都含有多個(gè)特征圖(feature map),卷積層中特征圖通過(guò)卷積核與上一層的特征圖構(gòu)成局部連接。如圖1所示,特征圖的尺寸大小為32×32。

圖1 卷積層過(guò)濾器結(jié)構(gòu)圖

由于卷積可以看作是2個(gè)函數(shù)的加權(quán)疊加,所以卷積過(guò)程就是卷積核與特征圖上對(duì)應(yīng)部分的矩陣進(jìn)行相乘并加上偏置。

由圖2可知原始的輸入為3×3的矩陣,卷積核為2×2的矩陣,卷積核從輸入特征圖的左上角進(jìn)行卷積得到1×(-2)+2×0+(-1)×1+0×(-1)=-3,依次計(jì)算得到其余的值。由此可以得到卷積核矩陣與輸入的卷積計(jì)算公式為:

(1)

其中n為輸入的通道數(shù),h、w為卷積核矩陣的尺寸,i為第i個(gè)卷積核,b為偏置,f為激活函數(shù)。

圖2 卷積過(guò)程

1.2 池化層

圖3 最大池化和均值池化

1.3 全連接層

全連接層在整個(gè)神經(jīng)網(wǎng)絡(luò)中起分類(lèi)的作用。全連接層前一層是卷積層時(shí),全連接層可以看做是h×w的全尺寸卷積,h和w為前一層輸出的大小。如果前一層是全連接層,則轉(zhuǎn)化為卷積核為1×1的全連接。

全連接層的參數(shù)數(shù)量可以占整個(gè)網(wǎng)絡(luò)的80%以上,所以全連接會(huì)導(dǎo)致嚴(yán)重的參數(shù)冗余問(wèn)題,降低訓(xùn)練速度。并且全連接層為了實(shí)現(xiàn)全連接將特征值轉(zhuǎn)化為一個(gè)多維的數(shù)組,破壞了圖像的空間結(jié)構(gòu)信息,影響分類(lèi)的準(zhǔn)確率。

Softmax層作為全連接層的分類(lèi)層,將輸出轉(zhuǎn)變?yōu)楦怕史植?。假設(shè)原始的神經(jīng)網(wǎng)絡(luò)輸出為y1, y2, …, yn,那么經(jīng)過(guò)Softmax層的處理后輸出變?yōu)椋?/p>

(2)

從式(2)中可以知道,Softmax的輸出總和為1,一個(gè)單元值的增加就意味著其他單元值的減小,形成了一種贏者通吃的競(jìng)爭(zhēng)機(jī)制。

2 網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)

其實(shí)在最新一些GoogleNet和ResNet中全連接層已經(jīng)被改進(jìn),轉(zhuǎn)而用全局平均池化代替。本文用空間金字塔池化(Spatial Pyramid Pooling, SPP)對(duì)全連接層進(jìn)行改進(jìn)。

空間金字塔池化最初是在文獻(xiàn)[2]中提出,最早應(yīng)用在圖像檢測(cè)中,目的是為了使輸入圖片的大小變得不固定,提高檢測(cè)精度??臻g金字塔特征提取的過(guò)程如圖4所示。

圖4 圖片劃分

當(dāng)輸入一張圖片時(shí),分別用不同大小的網(wǎng)格去劃分圖片,在圖4中用4×4、2×2和1×1這3種不同的網(wǎng)格,最后共得到16+4+1=21個(gè)不同的小塊,每一個(gè)小塊中包含多個(gè)像素點(diǎn),然后從每一個(gè)小塊中提取一個(gè)特征,得到一個(gè)21維的特征向量。

本文針對(duì)所采用的花朵數(shù)據(jù)集,提出一種CNN-SPP的網(wǎng)絡(luò)結(jié)構(gòu),共29層。CNN-SPP采用1×3和3×1的卷積核代替3×3的卷積核,同時(shí)采用全零填充,保證輸出尺寸不變。1×3和3×1的卷積核不僅減少了訓(xùn)練權(quán)值參數(shù),而且增加了卷積層數(shù),提高了最終的分類(lèi)準(zhǔn)確率。由于花朵圖片的分類(lèi)需要依靠花朵的花瓣、花萼和花蕊等的紋理形狀,所以本文的池化層全部采用最大池化,有利于花朵紋理特征的提取。最后用空間金字塔最大池化代替全連接層的全連接部分,空間金字塔池化不僅減少了參數(shù)的數(shù)量,而且將每一個(gè)特征圖從多個(gè)不同的角度進(jìn)行了特征提取,再聚合,一定程度上保留了空間結(jié)構(gòu)信息,提高了魯棒性和模型的精度。

水塘干涸之后,紅樹(shù)林鳉魚(yú)通過(guò)改變身體結(jié)構(gòu)和新陳代謝來(lái)應(yīng)對(duì)“水外”生活。它們的鰓會(huì)轉(zhuǎn)而用來(lái)儲(chǔ)存水和各種營(yíng)養(yǎng)物質(zhì),將含氮的廢棄物通過(guò)皮膚排到體外。一旦回到水中,一切功能便照舊運(yùn)作。

但是由于層數(shù)的增加,容易產(chǎn)生梯度彌散的問(wèn)題,因此增加了一層BN批規(guī)范化層,將輸入進(jìn)行歸一化,公式如下:

(3)

(4)

其中μ、σ2為xi的期望和偽方差,通過(guò)歸一化將輸入拉回到均值為0方差為1的標(biāo)準(zhǔn)正態(tài)分布中,落入梯度比較敏感區(qū)域,從而解決了梯度消失的問(wèn)題。這樣梯度變大了,網(wǎng)絡(luò)更新快,訓(xùn)練變快了。具體表現(xiàn)就是達(dá)到相同的正確率時(shí)迭代次數(shù)更少,迭代相同次數(shù)時(shí)正確率更高。

實(shí)驗(yàn)中輸入圖像為3通道彩色花朵圖像,原始輸入圖像的大小不需要固定,可以直接輸入。CNN-SPP網(wǎng)絡(luò)為了防止輸出值小于零時(shí)落入硬飽和區(qū),導(dǎo)致權(quán)重?zé)o法更新,使用ELU函數(shù)代替了Relu函數(shù)。模型結(jié)構(gòu)如表1所示。

表1 CNN-SPP網(wǎng)絡(luò)結(jié)構(gòu)

序號(hào)Layerkernel sizestridesoutput size1Input224×2242Convolution(1×3,3×1,64)×21224×2243Max pooling2×22112×1124Convolution(1×3,3×1,128)×21112×1125Max pooling2×2256×566Convolution(1×3,3×1,256)×3156×567Max pooling2×2228×288Convolution(1×3,3×1,512)×3128×289Max pooling2×2214×1410Convolution(1×3,3×1,256)×3114×1411Max pooling2×227×712Batch normalization7×713SPP(3×3,2×2,1×1)358414Fully connected358415Output102

3 實(shí)驗(yàn)結(jié)果與分析

目前花朵數(shù)據(jù)集使用較多的有牛津大學(xué)的Oxford flowers 102和Oxford flowers 17數(shù)據(jù)集,這2種數(shù)據(jù)集分別包含102種和17種花朵,Oxford flowers 102數(shù)據(jù)集共有8189張圖片,而Oxford flowers 17數(shù)據(jù)集僅含有1336張圖片,圖片較少。本文實(shí)驗(yàn)采用的是Oxford flowers 102數(shù)據(jù)集。數(shù)據(jù)集中部分花朵圖片如圖5所示。

圖5 部分Oxford flowers 102花朵圖片

對(duì)于花朵圖像分類(lèi),由于生長(zhǎng)環(huán)境和拍攝角度的問(wèn)題,不同種花朵之間可能會(huì)非常相似,而同種花朵又可能相差很大。并且通過(guò)圖片無(wú)法觀察花朵的大小和氣味等特征,只能根據(jù)花瓣、花萼和花蕊的外形區(qū)分,在分類(lèi)時(shí)需要提取大量的特征,但花朵的特征細(xì)微復(fù)雜,所以花朵的分類(lèi)不僅是熱點(diǎn)更是難點(diǎn)。

由于花朵數(shù)據(jù)集圖片較少,且網(wǎng)絡(luò)較深,為了減少過(guò)擬合,本文對(duì)花朵數(shù)據(jù)集進(jìn)行預(yù)處理,對(duì)花朵圖片分類(lèi)主要依靠花朵圖片的紋理形狀,對(duì)花朵圖片進(jìn)行銳度和亮度的調(diào)整,使得花朵的紋理更加明顯,同時(shí)去除高斯噪聲,減少噪聲干擾。由于每一張圖片都會(huì)包含不相關(guān)的背景,為了減少背景的干擾,對(duì)圖片進(jìn)行隨機(jī)裁剪,盡量除去背景的影響,預(yù)處理前后圖片如圖6所示。

(a) 原圖

(b) 預(yù)處理后圖

實(shí)驗(yàn)中將CNN-SPP網(wǎng)絡(luò)與傳統(tǒng)VGG16網(wǎng)絡(luò)進(jìn)行了對(duì)比。隨機(jī)將所有的花朵數(shù)據(jù)分為訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)2部分,其中測(cè)試部分占10%,訓(xùn)練中每一批次包含16張圖片,共計(jì)迭代16000步。

從表2可以看出,采用空間金字塔池化的方法雖然在準(zhǔn)確率上僅提高了約1個(gè)百分點(diǎn),但是時(shí)間卻由原來(lái)的12.35 s每步下降到7.5 s左右,下降效果非常明顯。

表2 CNN-SPP網(wǎng)絡(luò)的實(shí)驗(yàn)結(jié)果

網(wǎng)絡(luò)類(lèi)型準(zhǔn)確率/%每步平均時(shí)間/sVGG1685.7912.35CNN-SPP_max86.257.43CNN-SPP_average86.897.98

由于空間金字塔池化最大池化和平均池化類(lèi)似,所以圖7中僅對(duì)空間金字塔最大池化和VGG16進(jìn)行了損失值的對(duì)比。可以看出,CNN-SPP網(wǎng)絡(luò)損失值下降迅速且平穩(wěn),而VGG16網(wǎng)絡(luò)隨著迭代的增加損失值發(fā)生了波動(dòng),且有增加的趨勢(shì)。

圖7 損失值對(duì)比圖

其實(shí)早在文獻(xiàn)[3]中就已經(jīng)提出了一種CNN-NiN網(wǎng)絡(luò),使用全局平均池化(global average pooling)對(duì)全連接層進(jìn)行改進(jìn),并且已經(jīng)在GoogleNet等網(wǎng)絡(luò)中應(yīng)用,所以本文實(shí)驗(yàn)也對(duì)比了CNN-NiN網(wǎng)絡(luò)。結(jié)果如表3所示。

表3 不同卷積網(wǎng)絡(luò)結(jié)果

網(wǎng)絡(luò)類(lèi)型準(zhǔn)確率/%每步平均時(shí)間/sCNN-SPP83.257.43CNN-NiN_max73.515.34CNN-NiN_avg73.835.37

本文實(shí)驗(yàn)中進(jìn)行了空間金字塔均值池化、全局平均池化和最大池化的對(duì)比。從表3與圖8可以看出,雖然CNN-NiN網(wǎng)絡(luò)的訓(xùn)練時(shí)間每步5.3 s比CNN-SPP網(wǎng)絡(luò)的每步7.4 s快了2 s左右,但是準(zhǔn)確率上相差了近10個(gè)百分點(diǎn),相差較大,所以CNN-SPP網(wǎng)絡(luò)仍然是一種更好的網(wǎng)絡(luò)。

圖8 準(zhǔn)確率對(duì)比圖

4 結(jié)束語(yǔ)

隨著CNN的發(fā)展,全連接層的參數(shù)冗余和破壞數(shù)據(jù)空間結(jié)構(gòu)的缺點(diǎn)逐漸暴露,本文實(shí)驗(yàn)也證明了全連接層的問(wèn)題。在本文的實(shí)驗(yàn)中,CNN-SPP網(wǎng)絡(luò)結(jié)構(gòu)不僅大幅度縮短了訓(xùn)練的時(shí)間,而且使訓(xùn)練的準(zhǔn)確率有所提升,達(dá)到86%以上,相信如果增大迭代步數(shù)準(zhǔn)確率還會(huì)再增加。相較于全連接層,空間金字塔池化不僅使參數(shù)減少,而且在一定程度上保留了數(shù)據(jù)的原有空間結(jié)構(gòu)信息。雖然在后面的實(shí)驗(yàn)中全局池化的訓(xùn)練速度要快于空間金字塔池化,但是在準(zhǔn)確率上相差較大,所以CNN-SPP網(wǎng)絡(luò)結(jié)構(gòu)仍然不失為一種良好的改進(jìn)方法。

考慮到迭代次數(shù)少和數(shù)據(jù)集較小的原因,網(wǎng)絡(luò)容易陷入過(guò)擬合的狀態(tài),所以在以后的實(shí)驗(yàn)中還要利用更大的數(shù)據(jù)集和更深的網(wǎng)絡(luò),增加迭代步數(shù),防止梯度彌散和過(guò)擬合,提高準(zhǔn)確率。

猜你喜歡
池化金字塔花朵
面向神經(jīng)網(wǎng)絡(luò)池化層的靈活高效硬件設(shè)計(jì)
基于Sobel算子的池化算法設(shè)計(jì)
“金字塔”
卷積神經(jīng)網(wǎng)絡(luò)中的自適應(yīng)加權(quán)池化
A Study of the Pit-Aided Construction of Egyptian Pyramids
背上的花朵
死亡花朵
文苑(2020年6期)2020-06-22 08:41:46
海上有座“金字塔”
基于卷積神經(jīng)網(wǎng)絡(luò)和池化算法的表情識(shí)別研究
我們依賴(lài)花朵
五大连池市| 宝兴县| 崇义县| 华亭县| 榕江县| 隆昌县| 丹阳市| 北碚区| 宿迁市| 内黄县| 惠来县| 宁都县| 博乐市| 辽中县| 石景山区| 黔江区| 昆明市| 洛浦县| 类乌齐县| 凌源市| 来凤县| 五莲县| 蒙城县| 宁河县| 会东县| 信丰县| 彰武县| 石嘴山市| 潢川县| 丰城市| 澳门| 开化县| 吉林市| 新平| 平潭县| 海丰县| 台北县| 常州市| 富阳市| 杭州市| 怀安县|