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

?

基于SqueezeNet的輕量化卷積神經(jīng)網(wǎng)絡(luò)SlimNet

2018-11-30 01:46董藝威
計算機應用與軟件 2018年11期
關(guān)鍵詞:集上瓶頸分組

董藝威 于 津

(汕頭大學工學院計算機科學與技術(shù)系 廣東 汕頭 515063)

0 引 言

計算機視覺(Computer Vision)賦予計算機看見并理解世界的能力,包括圖像分類、目標定位、目標識別、實例分割等任務(wù)。圖像分類是計算機根據(jù)圖像內(nèi)容將其歸類,是上述其他任務(wù)的基礎(chǔ),有重要的研究意義。

自2012年Krizhevsky等憑借AlexNet[1]贏得ILSVRC12的圖像分類冠軍以后,研究學者們開始關(guān)注卷積神經(jīng)網(wǎng)絡(luò)在圖像分類中的應用。隨后,在AlexNet的基礎(chǔ)上,提出如ResNet[2]等很多表現(xiàn)優(yōu)異的卷積神經(jīng)網(wǎng)絡(luò),在ILSVRC圖像分類中獲得優(yōu)異的成績。通過設(shè)計更深更復雜的結(jié)構(gòu)以獲得更高分類精度(即深度學習)。上述卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)量高達數(shù)兆,識別一張圖片需要上百億次浮點運算次數(shù)。運行這些結(jié)構(gòu)需要大量內(nèi)存空間和計算資源,一般是工作站級別的設(shè)備。

現(xiàn)實中,人們希望將卷積神經(jīng)網(wǎng)絡(luò)部署到手機、無人機和無人駕駛汽車等移動設(shè)備中,用于圖像分類和目標檢測等計算機視覺任務(wù)。移動設(shè)備內(nèi)存少、計算能力小。研究學者提出設(shè)計適用于移動設(shè)備的卷積神經(jīng)網(wǎng)絡(luò),即輕量化結(jié)構(gòu)。輕量化結(jié)構(gòu)是指結(jié)構(gòu)分類精度滿足應用需求,結(jié)構(gòu)參數(shù)量和計算量均未超出移動設(shè)備的能力。輕量化結(jié)構(gòu)具有如下優(yōu)勢:一般采用空中下載OTA技術(shù)將訓練好的結(jié)構(gòu)部署(安裝或更新)到移動設(shè)備,輕量化結(jié)構(gòu)加快了部署過程,節(jié)省移動數(shù)據(jù)流量;移動設(shè)備內(nèi)存少、計算量小,輕量化結(jié)構(gòu)符合移動設(shè)備的硬件要求。

2016年,Iandola等[3]借鑒了Inception模塊的設(shè)計思想,提出Fire模塊,以此提出首個輕量化卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)SqueezeNet。不同于Inception模塊中對特征圖進行獨立的多尺度學習的做法,F(xiàn)ire模塊先對特征圖進行維度壓縮,然后對這些特征圖做多尺度學習后進行拼接。此外,F(xiàn)ire模塊僅采用1×1卷積和3×3卷積,并未使用更大的卷積,有效減少結(jié)構(gòu)參數(shù)量。在維持AlexNet的分類精度情況下,SqueezeNet的結(jié)構(gòu)參數(shù)量僅為AlexNet的1/50。SqueezeNet存在以下兩點不足:AlexNet是2012年提出的結(jié)構(gòu),分類精度低于近些年的結(jié)構(gòu),沒有可比性;雖然SqueezeNet結(jié)構(gòu)參數(shù)量較小,但與AlexNet相比其所占計算資源幾乎相同。

為了降低結(jié)構(gòu)計算量,2014年,Sifre等[4]首次提出深度可分卷積(Depthwise Separable Convolution),以此改進AlexNet,在保持分類精度的情況下,減少了結(jié)構(gòu)的訓練時間和參數(shù)量。受Sifre啟發(fā),文獻[5]采用深度可分卷積替換InceptionV3中的常規(guī)卷積(Standard Convolution)。同時指出去掉3×3卷積和1×1卷積之間的ReLU能夠加速訓練并提高分類精度,以此提出Xception[6],在相同參數(shù)量的情況下,分類精度上勝過InceptionV3。

受到Xception啟發(fā),2017年谷歌的Howard等借用深度可分卷積代替常規(guī)卷積,借鑒VGG[7]中逐層設(shè)計的思想,提出了MobileNet[8]。MobileNet的主要工作在于使用深度可分卷積替代常規(guī)卷積來降低卷積神經(jīng)網(wǎng)絡(luò)的參數(shù)量和計算量,設(shè)計面向移動設(shè)備的輕量化結(jié)構(gòu)。實驗證明,與VGG相比,在很小的分類精度損失情況下,MobileNet參數(shù)量是VGG的3%,計算量是VGG的4%。使用深度可分卷積的MobileNet在輕量化設(shè)計中起到了啟蒙作用。但MobileNet存在以下問題:采用VGG的直筒結(jié)構(gòu)性價比較低,ResNet等結(jié)構(gòu)已證明通過殘差學習能提升結(jié)構(gòu)分類精度。

深度可分卷積包含深向卷積(Depthwise Convolution)和點向卷積(Pointwise Convolution)。深向卷積是單通道學習特征,點向卷積使得各個通道間信息流通。其中1×1卷積占據(jù)了大部分的計算量。在MobileNet中1×1卷積在參數(shù)量占74.59%,在計算量上占94.86%。

為了減少1×1卷積所占計算量比例,2017年曠視科技的孫劍等在1×1卷積中引入分組卷積,提出1×1分組卷積(Pointwise Group Convolution),但分組卷積導致分組通道間信息不流通。他們提出在結(jié)構(gòu)中添加通道交叉操作使得分組通道間信息重新流通。文獻[9]在MobileNet的基礎(chǔ)上,添加了殘差學習,提出ShuffleNet。ShuffleNet在分類精度、結(jié)構(gòu)參數(shù)量和計算量上均優(yōu)于MobileNet。

2018年,谷歌的Sandler等[10]對MobileNet進行改進,提出MobileNetV2。他們提出反轉(zhuǎn)殘差模塊(Inverted Residuals),其特點是先擴張后卷積再壓縮。這樣做的目的是為深度可分卷積提供更多的通道,從而提高結(jié)構(gòu)的學習能力。他們還發(fā)現(xiàn)去掉通道壓縮層的非線性變換能夠提升分類精度。實驗證明,和MobileNet相比,MobileNetV2在分類精度、結(jié)構(gòu)參數(shù)量和計算量上均有了改善。在ImageNet-1k數(shù)據(jù)集上,MobileNetV2分類精度提升2%,參數(shù)量減少30%,計算量減少50%。

本文提出兩種設(shè)計策略:分組瓶頸和奇異瓶頸,并使用上述策略改進SqueezeNet,提出輕量化結(jié)構(gòu)SlimNet。與SqueezeNet相比,SlimNet在Flowers5數(shù)據(jù)集上分類精度提高17%,在Simpsons13數(shù)據(jù)集上分類精度提高9%,在結(jié)構(gòu)參數(shù)量上降低34%,在計算量上降低75%。

1 輕量化結(jié)構(gòu)SlimNet

SqueezeNet在分類精度和結(jié)構(gòu)計算量上與AlexNet持平,其結(jié)構(gòu)參數(shù)量為1.24兆,而AlexNet結(jié)構(gòu)參數(shù)量為61.10兆。SqueezeNet計算量與AlexNet持平,不利于部署在移動設(shè)備上。經(jīng)過推導Fire模塊的計算量,發(fā)現(xiàn)導致計算量過高的原因有:壓縮層輸入通道數(shù)量較大,用于降低通道數(shù)量的1×1卷積操作占計算比例高;擴展層輸出通道數(shù)量較大,用于特征學習的1×1和3×3卷積操作計算較多。本文針對如何降低計算量而展開研究。

1.1 分組瓶頸

為改進結(jié)構(gòu)以減少結(jié)構(gòu)計算量,提出分組卷積,它能夠有效降低結(jié)構(gòu)的參數(shù)量和計算量。常規(guī)卷積對輸入整體進行卷積操作,如圖1(a)所示。分組卷積中的分組是針對輸入通道而言,在圖1(b)中,輸入通道分為兩組。每組輸入獨立進行卷積操作,分組得到的輸出拼接后作為整體輸出。

(a) (b)圖1 常規(guī)卷積和分組卷積

當輸入為W1×H1×C1(W1代表Width,指輸入通道寬度;H1代表Height,指輸入通道高度;C1代表Channel,指輸入通道數(shù)量),卷積核大小為h×w,一共有C2個,則輸出數(shù)據(jù)為H2×W2×C2。對于常規(guī)卷積和分組卷積,其參數(shù)量和計算量如表1所示,其中分組數(shù)量為g。

表1 常規(guī)卷積和分組卷積對比

從表1可見,分組卷積有效減少了結(jié)構(gòu)的參數(shù)量和計算量,但存在分組通道間信息不流通的問題。

為了解決分組卷積引起的分組通道信息不流通問題,本文研究近年來的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),發(fā)現(xiàn)ResNet中的瓶頸模塊或許能夠解決這個問題。瓶頸模塊如圖2所示。瓶頸模塊先使用1×1卷積縮減輸入通道數(shù)量(通道數(shù)量由256變?yōu)?4),再對64個通道進行3×3卷積以學習特征,最后使用1×1卷積恢復通道數(shù)量(通道數(shù)量由64變?yōu)?56)。在模塊中通道數(shù)量經(jīng)歷了先減少再不變最后增加的過程,類似于瓶頸,所以叫瓶頸模塊。這樣做的目的是減少3×3卷積的輸入和輸出通道數(shù)量(均為64),以減少結(jié)構(gòu)的訓練時間。圖2中右邊一條線連接輸入和輸出,為恒等映射,其目的是使用殘差學習。

圖2 瓶頸模塊

因瓶頸模塊中1×1卷積的輸入或輸出通道數(shù)量較大,3×3卷積的輸入和輸出通道數(shù)量較小,故本文提出1×1卷積使用分組卷積以減少結(jié)構(gòu)的參數(shù)量和計算量,3×3卷積使用常規(guī)卷積以使得分組通道間信息重新流通,并命名為分組瓶頸,如圖3所示。使用分組瓶頸可解決分組通道間信息不流通的問題,而不需要額外操作(ShuffleNet使用通道交叉操作來解決分組通道間信息不流通的問題)。

圖3 本文提出的分組瓶頸

1.2 奇異瓶頸

2017年Sandler等在MobileNetV2中提出線性瓶頸的設(shè)計策略。線性瓶頸指,刪除用于通道縮減的1×1卷積后的非線性變換能夠提高分類精度,如圖4所示。在線性瓶頸中,下面的1×1卷積沒有非線性變換(即ReLU)。由此本文提出舍去用于通道擴增的1×1卷積后的非線性變換,提升了分類精度,并通過實驗驗證上述想法的可行性。由于改進后的模塊僅一次非線性變換,故叫奇異瓶頸。在圖5中,舍去上面的1×1卷積的非線性操作。

圖4 線性瓶頸 圖5 本文提出的奇異瓶頸

1.3 SlimNet

本文使用上述策略改進SqueezeNet,并引入批歸一化BN(Batch Normalization)[11],改進SqueezeNet的Fire模塊。改進SqueezeNet的整體結(jié)構(gòu)后級聯(lián)Slim模塊,增加池化層和Slim模塊的數(shù)量,添加Softmax,提出SlimNet。

Fire模塊沒有采用瓶頸設(shè)計,為了使用分組瓶頸進行改進,先將Fire模塊改進成瓶頸模塊,再引入分組瓶頸。具體講,減小Fire模塊中3×3卷積的輸出通道數(shù)量,使其有輸入輸出通道數(shù)量相同,后接1×1卷積用于擴增通道數(shù)量,形成瓶頸模塊。使用分組瓶頸,對模塊中的1×1卷積采用分組卷積。使用奇異瓶頸,舍去1×1卷積的非線性變換。此外,發(fā)現(xiàn)Fire模塊中沒有批歸一化。批歸一化能夠加速訓練過程,提高分類精度。添加批歸一化后,本文提出Slim模塊,如圖6所示。Slim模塊由壓縮層、卷積層和擴展層組成,設(shè)有四個超參數(shù),分別是壓縮層和擴展層的分組組數(shù)g、壓縮層卷積核數(shù)s、卷積層卷積核數(shù)c和擴展層卷積核數(shù)e,其中s=c,s

圖6 Slim模塊

將Slim模塊級聯(lián)形成卷積階段以進行圖像特征學習,后接分類器用于圖像分類。由于Slim模塊和Fire模塊輸入和輸出通道的寬、高、數(shù)量都相同,本文按照SqueezeNet整體結(jié)構(gòu)的方式級聯(lián)Slim模塊,并在結(jié)構(gòu)中額外增加一個池化層和兩個Slim模塊。SqueezeNet最后一層卷積層采用1×1卷積用以改變輸出分類數(shù)量,將通道數(shù)量從512擴增至1 000。該操作占用大量的計算,于是去掉該卷積層,增加全連接層用于改變輸出分類數(shù)量。此外,在結(jié)構(gòu)最后添加Softmax函數(shù)。Softmax函數(shù)用于多分類過程,將結(jié)構(gòu)的輸出值映射到0~1的范圍內(nèi),且輸出之和為1,可以看作是概率。SlimNet的整體結(jié)構(gòu)如表2所示。

表2 Slim整體結(jié)構(gòu)

2 實驗分析

考慮到結(jié)構(gòu)針對不同數(shù)據(jù)集的普遍適用能力,本文采用兩個不同的數(shù)據(jù)集:Flowers5[12]和Simpsons13[13],如表3所示。

表3 數(shù)據(jù)集概況

實驗環(huán)境如下:操作系統(tǒng)為Ubuntu 17.10,顯卡驅(qū)動為NVIDIA 384.81,CUDA 9.0,PyTorch 0.3.0。使用Torchsummary記錄結(jié)構(gòu)的參數(shù)量。使用R語言環(huán)境下的Tidyverse庫繪制實驗折線圖。

超參數(shù)設(shè)置如下:輸入圖像分辨率為224×224,批大小為16個,損失函數(shù)為交叉熵,優(yōu)化方法為隨機梯度下降,學習速率為0.001,動量為0.9,步長為8,Gamma值為0.1,趟數(shù)為50。

使用測試集分類精度、結(jié)構(gòu)參數(shù)量和結(jié)構(gòu)計算量作為評估指標。分類精度選取結(jié)構(gòu)在訓練過程中最高的測試集分類精度,以度量結(jié)構(gòu)的能力上限。本文使用Torchsummary來記錄結(jié)構(gòu)的參數(shù)量。結(jié)構(gòu)計算量指結(jié)構(gòu)推斷一張圖片所需浮點數(shù)運算次數(shù)GFLOPI(Giga Floating-Point Operations Per Image)。通過計算得到結(jié)構(gòu)計算量,精簡已有公式[14]后得到如下公式:

Complexity=2×C1×C2×w×h×W2×H2

(1)

式中:Complexity指結(jié)構(gòu)計算量;C1指輸入通道數(shù)量,C2指輸出通道數(shù)量;w和h指卷積核的寬和高;W2和H2指輸出通道的寬和高。

實驗首先使用分組瓶頸和奇異瓶頸修改已有結(jié)構(gòu),通過評估指標分析策略的有效性。然后對比不同分組數(shù)量下SlimNet的評估指標,以分析分組數(shù)量對SlimNet的影響。最后將SlimNet同其他結(jié)構(gòu)進行比較,突出SlimNet的實用價值。

2.1 分組瓶頸的驗證

選取采用瓶頸結(jié)構(gòu)的ResNet和SlimNet進行驗證。其中ResNet層數(shù)為50層,分組數(shù)量均取4。實驗分別在有無分組瓶頸兩種情況下,將各個結(jié)構(gòu)在兩個真實數(shù)據(jù)集上進行訓練,得到最高測試集分類精度,如表4所示。分組瓶頸對分類精度影響不大。在ResNet中引入分組瓶頸,分類精度沒有明顯變化,說明分組瓶頸有效解決了分組卷積引起的分組通道間信息不流通的問題。SlimNet中引入分組瓶頸后,發(fā)現(xiàn)在Simpsons13數(shù)據(jù)集上分類精度有所降低。由此可見,不同于ResNet中“1”字型結(jié)構(gòu), SlimNet中“人”字型結(jié)構(gòu)抑制了分組瓶頸的作用。

表4 分組瓶頸對分類精度的影響

同時,實驗記錄結(jié)構(gòu)參數(shù)量,并計算結(jié)構(gòu)計算量,如表5所示。分組瓶頸有效降低結(jié)構(gòu)參數(shù)量和計算量。在ResNet中,分組卷積降低了27%的參數(shù)量和34%的計算量。在SlimNet中,分組卷積降低了25%的參數(shù)量和40%的計算量。

表5 分組瓶頸對結(jié)構(gòu)參數(shù)量和計算量的影響

在對分類精度影響不大的情況下,分組瓶頸大幅度降低結(jié)構(gòu)的參數(shù)量和計算量,是一種有效的輕量化設(shè)計策略。

2.2 奇異瓶頸的驗證

選擇ResNet、ShuffleNet、MobileNetV2和SlimNet,通過實驗比較奇異瓶頸對分類精度的影響。其中ResNet層數(shù)為50層。實驗分別在有無奇異瓶頸兩種情況下,將各個結(jié)構(gòu)在兩個真實數(shù)據(jù)集上進行訓練,得到最高測試集分類精度,如表6所示。

表6 奇異瓶頸對分類精度的影響

從表6可見,奇異瓶頸在各個結(jié)構(gòu)上均能提升分類精度。在Flowers5數(shù)據(jù)集上,奇異瓶頸使得分類精度提高4.8%。在Simpsons13數(shù)據(jù)集上,奇異瓶頸使得分類精度提高1.2%。奇異瓶頸對分類精度的提高幅度與其自值有關(guān),即分類精度越高,提高幅度越小。值得注意的是,對于ShuffleNet,在Simpsons13數(shù)據(jù)集上,無奇異瓶頸的情況下有著更高的分類精度,這可能和ShuffleNet自身結(jié)構(gòu)有關(guān)。

2.3 分組數(shù)量的影響

分組數(shù)量分別選擇1、2、4、8和16。其中,分組數(shù)量為1相當于常規(guī)卷積。分組數(shù)量均選擇2的指數(shù)是為了能夠整除通道數(shù)量。最大選擇16是因為SlimNet中最小的通道數(shù)量為16。實驗結(jié)果如表7所示。

表7 分組數(shù)量對SlimNet的影響

續(xù)表7

從表7可見,分組數(shù)量從1增加到16,在Flowers5數(shù)據(jù)集上分類精度降低2%,在Simpsons13數(shù)據(jù)集上分類精度降低3%,訓練時間也相應增加3分鐘和8分鐘,參數(shù)量減少32%,計算量降低50%。由此可見,損失少量的分類精度,可以得到參數(shù)量和計算量的大幅度降低。在分組數(shù)量從4增加到8時,SlimNet在Simpsons13數(shù)據(jù)集上的分類精度降低1.1%,而結(jié)構(gòu)參數(shù)量降低5%,結(jié)構(gòu)計算量降低11%。由此可見,當分組數(shù)量從4增加16的過程中,參數(shù)量和計算量的減少幅度逐漸降低。為了保持較高分類精度,本文建議分組數(shù)量為4較佳。

值得注意的是,在Flowers5數(shù)據(jù)集上,分組數(shù)量為4的分類精度高于分組數(shù)量為1和2的,這是因為Flowers5數(shù)據(jù)集自身存在問題,SlimNet在Flowers5數(shù)據(jù)集上的訓練過程不穩(wěn)定,有較大的起伏(具體原因在下節(jié)分析)。但從實驗角度考慮,F(xiàn)lowers5數(shù)據(jù)集能一定程度上反映結(jié)構(gòu)特性,且訓練時間較短,便于結(jié)構(gòu)多次改進和實驗的重復迭代,所以本文依舊選擇了Flowers5數(shù)據(jù)集。

2.4 結(jié)構(gòu)比較

選擇了AlexNet、ResNet、SqueezeNet、ShuffleNet、MobileNetV2作為對比結(jié)構(gòu)。ResNet選用18層是因為在實驗數(shù)據(jù)集上分類精度較高,具有可比性。SlimNet分組數(shù)量為4。

首先,在Flowers5數(shù)據(jù)集上進行比較,各個結(jié)構(gòu)的訓練過程如圖7所示。結(jié)構(gòu)均在20趟(Epoch)后趨于收斂。其中AlexNet和SqueezeNet在30趟后幾乎無波動,而其余結(jié)構(gòu)一直保持上下波動,這是由于其余結(jié)構(gòu)中添加了批歸一化層導致每趟訓練改變每層的輸入使得分類精度無法穩(wěn)定在一個值。在ImageNet-1K數(shù)據(jù)集上AlexNet和SqueezeNet分類精度相同,在Flowers5數(shù)據(jù)集上分類精度不同,說明Flowers5數(shù)據(jù)集自身存在問題影響到了兩個結(jié)構(gòu)的分類精度。SlimNet取得最高的分類精度可能是受到Flowers5數(shù)據(jù)集影響,不能真實反映SlimNet在其他數(shù)據(jù)集上的分類精度。從整體上看,相較于其他結(jié)構(gòu),SlimNet在Flowers5數(shù)據(jù)集上分類精度最高。

圖7 各結(jié)構(gòu)在Flowers5數(shù)據(jù)集上的訓練過程

同時,在Simpsons13數(shù)據(jù)集上進行比較,各個結(jié)構(gòu)的訓練過程如圖8所示。使用批歸一化的ResNet、ShuffleNet、MobileNetV2和SlimNet在20趟后趨于收斂。未使用批歸一化的AlexNet和SqueezeNet在30趟后趨于收斂。批歸一化能夠加速結(jié)構(gòu)訓練過程,因此本文在改進過程中引入批歸一化,分類精度由低到高依次是AlexNet、SqueezeNet、SlimNet、ResNet、ShuffleNet和MobileNetV2??梢奡limNet比SqueezeNet有更高的分類精度。此時,AlexNet和SqueezeNet分類精度幾乎相同,說明Simpsons13數(shù)據(jù)集和ImageNet-1K數(shù)據(jù)集特性接近,則Simpson13能夠真實反映SlimNet的分類精度。從整體上看,相較于其他結(jié)構(gòu),SlimNet在Simpsons13數(shù)據(jù)集上能收斂到較好的分類精度。

圖8 各結(jié)構(gòu)在Simpsons13數(shù)據(jù)集上的訓練過程

兩個數(shù)據(jù)集中,發(fā)現(xiàn)各結(jié)構(gòu)在第8趟前后均出現(xiàn)不同程度的分類精度突然下降的現(xiàn)象。在第1趟時,ShuffleNet和SlimNet均有較高的分類精度,ResNet次之,MobileNetV2、AlexNet和SqueezeNet最低。需要指出,MobileNetV2在兩個數(shù)據(jù)集上的表現(xiàn)差異較大,因為其對數(shù)據(jù)集的質(zhì)量有著較高的要求,不利于在現(xiàn)實任務(wù)中應用。

比較各個結(jié)構(gòu)的參數(shù)量和計算量,如表8所示。AlexNet有最大的參數(shù)量,計算量卻居中。AlexNet中三個全連接層的參數(shù)占據(jù)大部分參數(shù)空間,全連接層導致結(jié)構(gòu)參數(shù)多。但其結(jié)構(gòu)層數(shù)(8層)較少,卷積部分參數(shù)少,故計算量不大。ResNet有著適中的參數(shù)量,計算量卻特別大,這是由于ResNet使用全局平均池化層(全局平均池化層在Network In Network中最早提出)取代全連接層,大大減少結(jié)構(gòu)參數(shù)量,但ResNet使用了過多的層數(shù)(18層)進行3×3卷積,使得計算量過大。SqueezeNet使用較少3×3卷積使得參數(shù)量很小,但有18層,其中包含大量的1×1卷積使得計算量過大。ShuffleNet使用分組卷積和深度可分卷積,結(jié)構(gòu)參數(shù)量和計算量均較小。MobileNetV2一方面使用深度可分卷積以減少參數(shù)量和計算量,另一方面為了增加分類精度,使用反轉(zhuǎn)殘差在模塊內(nèi)增加通道數(shù)量導致參數(shù)量和計算量的增加,故參數(shù)量和計算量居中。SlimNet使用分組瓶頸,使得結(jié)構(gòu)的參數(shù)量和計算量均為最小。

表8 各結(jié)構(gòu)的參數(shù)量和計算量比較

和SqueezeNet相比,SlimNet在Flowers5數(shù)據(jù)集的分類精度提高17%,在Simpsons13數(shù)據(jù)集的分類精度提高9%,參數(shù)量減少了34%,計算量上減少了75%。實驗證明,本文提出的SlimNet具有一定的實用價值。

3 結(jié) 語

分組瓶頸和奇異瓶頸使得本文提出的策略改進SqueezeNet的輕量化結(jié)構(gòu)SlimNet在分類精度、結(jié)構(gòu)參數(shù)量和計算量上均優(yōu)于SqueezeNet。

但SlimNet在分類精度上稍低于ShuffleNet和MobileNetV2。這是由于SlimNet和SqueezeNet采用了相近的整體結(jié)構(gòu),可改進整體結(jié)構(gòu)以提高分類精度。本文的實驗數(shù)據(jù)集包含圖片類別(分別是5和13)稍小,在ImageNet-1K數(shù)據(jù)集(種類為1 000)上分類精度未知因此可提高實驗環(huán)境,以測量SlimNet在ImageNet-1K上的分類精度。未來還可進一步研究SlimNet在目標檢測等計算機視覺其他領(lǐng)域中的可行性。

猜你喜歡
集上瓶頸分組
關(guān)于短文本匹配的泛化性和遷移性的研究分析
堵塞:綠色瓶頸如何威脅清潔能源業(yè)務(wù) 精讀
基于互信息的多級特征選擇算法
分組搭配
在突破瓶頸中成長
怎么分組
分組
師如明燈,清涼溫潤
幾道導數(shù)題引發(fā)的解題思考
再論校園足球發(fā)展的瓶頸