• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      VansNet輕量化卷積神經(jīng)網(wǎng)絡(luò)

      2020-04-24 17:26孫若釩高建瓴陳婭先
      關(guān)鍵詞:圖像分類卷積神經(jīng)網(wǎng)絡(luò)輕量化

      孫若釩 高建瓴 陳婭先

      摘要:近年來,研究人員們在卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上保證效率的條件下提出了輕量化卷積神經(jīng)網(wǎng)絡(luò),其中SqueezeNet輕量化卷積神經(jīng)網(wǎng)絡(luò)在保證精度的前提下,壓縮了參數(shù),提高了整體效率。本文針對SqueezeNet網(wǎng)絡(luò)中由于壓縮參數(shù),存在準(zhǔn)確率不理想的問題,提出了引入殘差網(wǎng)絡(luò),增加跳層結(jié)構(gòu)和網(wǎng)絡(luò)寬度的改進(jìn)方法VansNet,相較于AlexNet、ResNet和SqueezeNet三種卷積神經(jīng)網(wǎng)絡(luò)其計(jì)算量最小且參數(shù)量很小。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的VansNet輕量化結(jié)構(gòu)在略增加參數(shù)的前提下提高了圖像分類的準(zhǔn)確率和效率。

      關(guān)鍵詞:輕量化;卷積神經(jīng)網(wǎng)絡(luò);圖像分類;壓縮參數(shù) ;殘差網(wǎng)絡(luò);跳層結(jié)構(gòu)

      中圖分類號:TP391

      文獻(xiàn)標(biāo)識碼: A

      隨著卷積神經(jīng)網(wǎng)絡(luò)的不斷發(fā)展,人們把研究的重點(diǎn)集中于如何提高正確率上,隨著準(zhǔn)確率的提升,卷積神經(jīng)網(wǎng)絡(luò)[1](Convolutional Neural Networks,CNN)

      逐漸演變?yōu)榱松疃染矸e神經(jīng)網(wǎng)絡(luò),為了達(dá)到更好的性能,使得網(wǎng)絡(luò)層數(shù)不斷增加,網(wǎng)絡(luò)結(jié)構(gòu)更加復(fù)雜,雖然網(wǎng)絡(luò)性能得到了一定的提升,但是隨之而來的就是效率問題。例如,AlexNet[2]、ResNet[3]等性能不錯(cuò)的卷積神經(jīng)網(wǎng)絡(luò)在圖像分類等很多領(lǐng)域已經(jīng)廣泛使用,這些卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)量非常高,識別一張圖片需要很大的運(yùn)算量,需要大量的計(jì)算資源,而一般電腦的CPU計(jì)算耗費(fèi)時(shí)間,效率也低,因此運(yùn)行時(shí)需要用到性能優(yōu)異的GPU等更好的設(shè)備。實(shí)際中,為了發(fā)揮卷積神經(jīng)網(wǎng)絡(luò)的作用,將卷積神經(jīng)網(wǎng)絡(luò)運(yùn)用到終端設(shè)備中,例如手機(jī)和航拍設(shè)備等移動(dòng)設(shè)備,然而像手機(jī)這樣的移動(dòng)終端設(shè)備內(nèi)存以及計(jì)算能力較小,不適合將網(wǎng)絡(luò)直接使用到當(dāng)中去,因此研究人員們提出了適用于移動(dòng)設(shè)備的卷積神經(jīng)網(wǎng)絡(luò),也就是輕量化卷積神經(jīng)網(wǎng)絡(luò)。輕量化結(jié)構(gòu)是指結(jié)構(gòu)分類精度滿足應(yīng)用需求,移動(dòng)設(shè)備能承擔(dān)其結(jié)構(gòu)參數(shù)量和計(jì)算量。輕量化結(jié)構(gòu)的特點(diǎn)為一能加快運(yùn)用到移動(dòng)設(shè)備的效率,二為其占用空間小、計(jì)算量小并且能夠節(jié)約流量。在效率方面相較于傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)有了很大的提升,因此更受研究人員們的青睞。

      2016年,提出的第一個(gè)輕量化網(wǎng)絡(luò)結(jié)構(gòu)Fire模塊,是由IANDOLA等[4]根據(jù)之前的網(wǎng)絡(luò)結(jié)構(gòu)提出來的,命名為SqueezeNet。SqueezeNet的分類精度跟AlexNet能夠達(dá)到基本相同,但其結(jié)構(gòu)參數(shù)量僅為后者的五十分之一。

      本文主要針對SqueezeNet網(wǎng)絡(luò)中由于壓縮了參數(shù),存在準(zhǔn)確率不理想的問題,提出了引入殘差網(wǎng)絡(luò),增加跳層結(jié)構(gòu)和網(wǎng)絡(luò)寬度的VansNet,以提升網(wǎng)絡(luò)的準(zhǔn)確性以及效率。

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

      1.1卷積神經(jīng)網(wǎng)絡(luò)簡介

      隨著人工智能的高速發(fā)展,深度學(xué)習(xí)也隨之在圖像識別、語音識別和自然語言處理等科技、大數(shù)據(jù)等應(yīng)用領(lǐng)域飛速發(fā)展,從而引起了研究人員們的廣泛重視與研究。其中深度學(xué)習(xí)的經(jīng)典代表算法CNN在分類領(lǐng)域中成為研究人員重點(diǎn)研究的對象,這是由于卷積神經(jīng)網(wǎng)絡(luò)在進(jìn)行圖像分類時(shí),可以直接將原始的圖像直接輸入神經(jīng)網(wǎng)絡(luò),不需要做像傳統(tǒng)圖像處理中繁瑣的圖像預(yù)處理工作,因而被廣泛應(yīng)用。

      CNN是一種多層的神經(jīng)網(wǎng)絡(luò)[5],一個(gè)典型的卷積網(wǎng)絡(luò)由卷積層、池化層和全連接層構(gòu)成,擅長處理大圖像、大數(shù)據(jù)等的相關(guān)問題,卷積網(wǎng)絡(luò)通過卷積層與池化層的相互配合,組成多個(gè)卷積組,逐層進(jìn)行特征提取,在卷積層完成操作之后,緊接著池化層降低數(shù)據(jù)維度,最后通過數(shù)個(gè)全連接層來完成所需分類。卷積神經(jīng)網(wǎng)絡(luò)其獨(dú)特的優(yōu)越性在于它的局部權(quán)值共享的特殊結(jié)構(gòu),其布局接近于實(shí)際的生物神經(jīng)網(wǎng)絡(luò)(如人的神經(jīng)網(wǎng)絡(luò)),CNN中權(quán)值共享這樣的特殊結(jié)構(gòu)有效地降低了網(wǎng)絡(luò)的復(fù)雜性,尤其是將包含多維輸入向量的圖像直接輸入到網(wǎng)絡(luò)中,避免了分類和特征提取過程中數(shù)據(jù)重建的復(fù)雜方式。

      1.2卷積神經(jīng)網(wǎng)絡(luò)的架構(gòu)

      CNN是一種前饋神經(jīng)網(wǎng)絡(luò)[6],是受到生物思考方式啟發(fā)的多層感知器,它有著不同的類別層次,并且各層的工作方式和作用也不同。卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)與常規(guī)人工神經(jīng)網(wǎng)絡(luò)架構(gòu)非常相似,可以響應(yīng)周圍單元,也可以進(jìn)行大型的圖像處理。卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)一般分為:輸入層、卷積層、池化層、全連接層和輸出層五個(gè)部分,如圖1所示。

      輸入特征的標(biāo)準(zhǔn)化有利于提升算法的運(yùn)行效率和學(xué)習(xí)表現(xiàn),卷積神經(jīng)網(wǎng)絡(luò)的輸入層可以處理多維數(shù)據(jù),在將圖像的像素值輸入卷積神經(jīng)網(wǎng)絡(luò)前,需在通道對原始圖像進(jìn)行歸一化、去均值等操作。

      在卷積層中,卷積層內(nèi)部包含很多卷積核,組成卷積核的每個(gè)元素都對應(yīng)一個(gè)權(quán)重系數(shù)和一個(gè)偏差量,類似于一個(gè)前饋神經(jīng)網(wǎng)絡(luò)的神經(jīng)元。計(jì)算輸入圖像的區(qū)域和濾波器的權(quán)重矩陣之間的點(diǎn)積,然后將其計(jì)算結(jié)果作為卷積層的輸出,主要作用是對輸入的數(shù)據(jù)提取特征。

      池化層也稱為欠采樣或下采樣,核心目標(biāo)是在卷積神經(jīng)網(wǎng)絡(luò)上減小特征空間維度,進(jìn)行特征選擇和信息過濾。目前使用最廣泛的池化操作有最大池化和平均池化,當(dāng)使用最大池化層時(shí),采用的是輸入?yún)^(qū)域中的最大數(shù)量,而當(dāng)使用平均池化時(shí),采用的是輸入?yún)^(qū)域中的平均值。

      全連接層搭建在網(wǎng)絡(luò)結(jié)構(gòu)中的最后部分,等價(jià)于傳統(tǒng)前饋神經(jīng)網(wǎng)絡(luò)中的隱含層,在一些卷積神經(jīng)網(wǎng)絡(luò)中由全局均值池化取代。

      輸出層的上游基本是全連接層,其工作原理與前饋神經(jīng)網(wǎng)絡(luò)的輸出層相同。在分類任務(wù)中輸出層通常是分類器。

      1.3卷積神經(jīng)網(wǎng)絡(luò)的相關(guān)運(yùn)算

      1.3.1卷積運(yùn)算

      卷積神經(jīng)網(wǎng)絡(luò)使用卷積來提取圖像的局部特征,其最核心的概念就是卷積,它的計(jì)算方法如下:

      卷積神經(jīng)網(wǎng)絡(luò)的卷積操作方式和數(shù)學(xué)中的離散卷積是有一定的區(qū)別,雖然其卷積操作方式的定義是離散卷積,卷積操作實(shí)際上是用卷積核在圖像矩陣上滑動(dòng),對卷積核矩陣與圖像矩陣中對應(yīng)位置元素相乘然后求和。卷積層內(nèi)每個(gè)神經(jīng)元都與前一層中位置接近的區(qū)域的多個(gè)神經(jīng)元相連,卷積核的參數(shù)值決定了卷積結(jié)果的投票能力,即卷積核與對應(yīng)的像素點(diǎn)的重合區(qū)域,參數(shù)權(quán)值越大,投票比重越大。

      1.3.2下采樣

      池化通常緊跟在CNN的卷積層之后,主要用于特征降維,減少網(wǎng)絡(luò)要學(xué)習(xí)的數(shù)據(jù)和參數(shù)的數(shù)量,防止過擬合,擴(kuò)大感受視野,實(shí)現(xiàn)平移、旋轉(zhuǎn)和尺度不變性,同時(shí)提高模型的容錯(cuò)性。主要的池化方法:最大池化法,對領(lǐng)域內(nèi)特征點(diǎn)取最大值;平均池化法,對領(lǐng)域特征點(diǎn)求平均。

      進(jìn)行卷積,主要目的是減少Feature Map的維數(shù)。SqueezeNet的核心在于Fire Module,可以理解為網(wǎng)絡(luò)中的小模塊,F(xiàn)ire Module包含兩個(gè)部分:Squeeze層與Expand層,如圖2所示,Squeeze層采用1×1卷積層對輸入特征數(shù)據(jù)進(jìn)行卷積,主要目的是減少輸入特征的通道數(shù),也即是降維。Expand層分別采用1×1和3×3卷積,然后再拼接,具體操作如圖3所示。

      本文對SqueezeNet的改進(jìn)主要為兩點(diǎn):第一,擴(kuò)展網(wǎng)絡(luò)寬度,在略增加網(wǎng)絡(luò)參數(shù)的前提下,提高模型準(zhǔn)確率;第二,引入殘差網(wǎng)絡(luò)的思想,防止在訓(xùn)練過程中出現(xiàn)梯度消失和梯度爆炸,增強(qiáng)網(wǎng)絡(luò)對圖像分類的泛化能力,并且提高網(wǎng)絡(luò)效率。如圖5所示,在原網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上增加Fire模塊,以提高網(wǎng)絡(luò)的準(zhǔn)確率,同時(shí)引入殘差思想增加運(yùn)算效率,沒有增加網(wǎng)絡(luò)的深度而是適當(dāng)增加網(wǎng)絡(luò)的寬度。在Fire模塊中,在原基礎(chǔ)上引入殘差網(wǎng)絡(luò)的思想,增加跳層結(jié)構(gòu),防止訓(xùn)練過程中梯度消失,以提高網(wǎng)絡(luò)的效率,如圖6所示。

      4實(shí)驗(yàn)分析

      實(shí)驗(yàn)是基于Tensorflow[8]來構(gòu)建和訓(xùn)練VansNet,且卷積網(wǎng)絡(luò)模型的訓(xùn)練使用了 GPU并行處理。實(shí)驗(yàn)環(huán)境的主要參數(shù):Intel(R) Xeon(R) CPU X5690 @ 3.47 GHz和NVIDIA GeForce RTX 2080Ti GPU,操作系統(tǒng)為Linux系統(tǒng),實(shí)驗(yàn)平臺為python36。

      由于該網(wǎng)絡(luò)對不同數(shù)據(jù)集具有普遍適應(yīng)能力,本文采用以下兩個(gè)不同的數(shù)據(jù)集[9-10]進(jìn)行實(shí)驗(yàn),如表1所示:

      使用測試集的分類精度、網(wǎng)絡(luò)參數(shù)量和網(wǎng)絡(luò)計(jì)算量作為評估指標(biāo)[11]。網(wǎng)絡(luò)計(jì)算量指推斷一張圖片所需浮點(diǎn)數(shù)的運(yùn)算次數(shù)。通過輸入通道數(shù)量、輸出通道數(shù)量、卷積核的高和寬以及輸出通道的高和寬的相應(yīng)關(guān)系來得到網(wǎng)絡(luò)計(jì)算量。

      實(shí)驗(yàn)首先將VansNet與AlexNet、ResNet、SqueezeNet分別在同一數(shù)據(jù)集下做對比實(shí)驗(yàn)。

      將四種網(wǎng)絡(luò)結(jié)構(gòu)在Flowers5 數(shù)據(jù)集上進(jìn)行比較,如圖7所示,四種網(wǎng)絡(luò)結(jié)構(gòu)均在迭代20輪后趨近于穩(wěn)定。在迭代25~30輪后,AlexNet與SqueezeNet趨近于穩(wěn)定,而VansNet和ResNet保持小范圍的波動(dòng)。文中提到AlexNet和SqueezeNet分類精度基本相同,而在此次實(shí)驗(yàn)中兩者的分類精度不同,這是因?yàn)楸敬螌?shí)驗(yàn)使用的數(shù)據(jù)集Flowers5自身存在的問題所致,并不能代表普遍情況,在其他數(shù)據(jù)集下測試兩者的分類精度是相同的,如ImageNet ̄1K數(shù)據(jù)集以及文中的Simpsons13數(shù)據(jù)集等。從此次實(shí)驗(yàn)結(jié)果可知,相較于其他三種網(wǎng)絡(luò)結(jié)構(gòu),在數(shù)據(jù)集Flowers5上,VansNet的分類精度優(yōu)于其余三者。

      將四種網(wǎng)絡(luò)在數(shù)據(jù)集Simpsons13上進(jìn)行實(shí)驗(yàn),如圖8所示,在迭代15~20輪后,ResNet與VansNet趨近于穩(wěn)定,在迭代25~30輪后,AlexNet與 SqueezeNet趨近于穩(wěn)定。由訓(xùn)練結(jié)果圖像可知,分類精度由高到低依次為ResNet 、VansNet、SqueezeNet、AlexNet。并且由訓(xùn)練結(jié)果圖像可見AlexNet與SqueezeNet分類精度幾乎相同,同時(shí)VansNet相較于SqueezeNet 有更好的分類精度。從此次實(shí)驗(yàn)結(jié)果可知,數(shù)據(jù)集Simpsons13上,VansNet相較于AlexNet與SqueezeNet,能達(dá)到較好的分類精度。

      將四種網(wǎng)絡(luò)AlexNet、ResNet、SqueezeNet和VansNet的參數(shù)量、計(jì)算量作比較,如表2所示。AlexNet 結(jié)構(gòu)參數(shù)量最大,計(jì)算量處于四種網(wǎng)絡(luò)之間。這是因?yàn)锳lexNet含三個(gè)全連接層,且三個(gè)全連接層中的參數(shù)占比較大造成AlexNet總體參數(shù)量較大;計(jì)算量不是很大是由于AlexNet中結(jié)構(gòu)層數(shù)不多并且卷積層的參數(shù)較少。ResNet結(jié)構(gòu)參數(shù)量處于四種網(wǎng)絡(luò)之間,而計(jì)算量卻是最大的。這是因?yàn)?ResNet中應(yīng)用了全局平均池化層,有效地減少結(jié)構(gòu)參數(shù)量;計(jì)算量最大是由于ResNet結(jié)構(gòu)中含有較多的層數(shù)。SqueezeNet結(jié)構(gòu)參數(shù)量很小,計(jì)算量處于四種結(jié)構(gòu)之間。這是因?yàn)镾queezeNet結(jié)構(gòu)中Fire模塊使用了較少的3×3的卷積,故其參數(shù)量很小;計(jì)算量偏大是因?yàn)镕ire模塊中1×1的卷積較多。VansNet采用跳層結(jié)構(gòu)以及增加網(wǎng)絡(luò)寬度使得其計(jì)算量最小但參數(shù)量比SqueezeNet稍高一些。

      5結(jié)語

      本文引入殘差的思想,增加跳層結(jié)構(gòu)以及增加SqueezeNet中網(wǎng)絡(luò)結(jié)構(gòu)的寬度,使得VansNet在分類精度和計(jì)算量上均優(yōu)于SqueezeNet。但VansNet在參數(shù)量上還是稍高于SqueezeNet,這是由于在VansNet中增加寬度的策略自然增加了模塊數(shù)使得參數(shù)量略微提高。將來可進(jìn)一步研究VansNet網(wǎng)絡(luò)模型的改進(jìn),使得網(wǎng)絡(luò)更加輕量化以及在其他領(lǐng)域中運(yùn)用的可行性。

      參考文獻(xiàn):

      [1]吳正文.卷積神經(jīng)網(wǎng)絡(luò)在圖像分類中的應(yīng)用研究[D]. 成都:電子科技大學(xué),2015.

      [2]KRIZHEVSKY A, SUTSKEVER I, HINTON G . ImageNet Classification with Deep Convolutional Neural Networks[C]//2012 IEEE Conference on Computer Vision and Pattern Recognition.USA:IEEE,2012:154-161.

      猜你喜歡
      圖像分類卷積神經(jīng)網(wǎng)絡(luò)輕量化
      瑞典Floby公司推出輕量化鋁制制動(dòng)盤
      一種輕量化自卸半掛車結(jié)構(gòu)設(shè)計(jì)
      一種輕量化自卸半掛車結(jié)構(gòu)設(shè)計(jì)
      基于云計(jì)算的圖像分類算法
      基于深度卷積神經(jīng)網(wǎng)絡(luò)的物體識別算法
      基于錨點(diǎn)建圖的半監(jiān)督分類在遙感圖像中的應(yīng)用
      深度學(xué)習(xí)算法應(yīng)用于巖石圖像處理的可行性研究
      一種基于引導(dǎo)濾波和MNF的高光譜遙感圖像分類方法
      基于深度卷積網(wǎng)絡(luò)的人臉年齡分析算法與實(shí)現(xiàn)
      基于卷積神經(jīng)網(wǎng)絡(luò)的樹葉識別的算法的研究
      秭归县| 内黄县| 依安县| 祁门县| 青龙| 东莞市| 板桥市| 庆阳市| 上栗县| 凯里市| 惠东县| 曲沃县| 永德县| 肥乡县| 江口县| 女性| 山西省| 休宁县| 邢台县| 台山市| 惠州市| 保山市| 隆子县| 陇川县| 民乐县| 布尔津县| 乌海市| 安达市| 朝阳县| 运城市| 靖州| 赣榆县| 鄂尔多斯市| 安吉县| 密云县| 台中县| 翼城县| 新昌县| 耒阳市| 丰城市| 九龙城区|