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

?

改進(jìn)的基于多路徑特征的膠囊網(wǎng)絡(luò)

2023-05-24 03:18徐清海丁世飛孫統(tǒng)風(fēng)郭麗麗
計(jì)算機(jī)應(yīng)用 2023年5期
關(guān)鍵詞:池化集上特征提取

徐清海,丁世飛,2*,孫統(tǒng)風(fēng),2,張 健,2,郭麗麗,2

(1.中國(guó)礦業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 徐州 221116;2.礦山數(shù)字化教育部工程技術(shù)研究中心(中國(guó)礦業(yè)大學(xué)),江蘇 徐州 221116)

0 引言

2012 年,Hinton 等發(fā)表AlexNet[1],展現(xiàn)了卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)在圖像識(shí)別領(lǐng)域的潛力,使CNN 一舉超越支持向量機(jī)、Boosting 等算法,成為圖像識(shí)別領(lǐng)域的首選方法。池化、卷積等操作使CNN 具有平移不變性,并獲得了良好的識(shí)別性能;但平移不變性也使CNN失去了一些重要信息,如位置、姿態(tài)等,這意味著CNN 在某種程度上忽略了平移同變性;同時(shí),CNN 在識(shí)別物體的過(guò)程中忽略了空間關(guān)系,這不符合人眼的視覺邏輯。

為了探究圖像中物體的空間關(guān)系,Hinton 等[2]于2011 年提出了“膠囊”的概念。膠囊是一個(gè)向量,向量整體表示圖像中某個(gè)部件的特征,向量的分量表示部件的某個(gè)屬性。膠囊之間存在可學(xué)習(xí)的部分與整體的空間關(guān)系,這種空間關(guān)系用變換矩陣表示。同時(shí),向量表示法保證了網(wǎng)絡(luò)具有平移同變性。在此基礎(chǔ)上,Sabour 等[3]實(shí)現(xiàn)了膠囊間的動(dòng)態(tài)路由,這是一種有效的膠囊特征的傳遞方式,在MNIST 數(shù)據(jù)集上的表現(xiàn)超越了CNN,膠囊網(wǎng)絡(luò)(Capsule Network,CapsNet)由此吸引了大量研究者。Hinton 等[4]在2018 年描述了一種新的膠囊類型,膠囊由矩陣和激活值兩部分組成,矩陣用于描繪物體的屬性,激活值則代表膠囊的存在概率,該網(wǎng)絡(luò)在smallNORB 數(shù)據(jù)集上取得了良好的效果。Kosiorek 等[5]實(shí)現(xiàn)了首個(gè)無(wú)監(jiān)督的膠囊網(wǎng)絡(luò),它利用空間的幾何關(guān)系來(lái)推理物體,在MNIST 和SVHN 數(shù)據(jù)集上達(dá)到了無(wú)監(jiān)督分類的最新成果。與此同時(shí),CapsNet 已經(jīng)被應(yīng)用于醫(yī)療診斷[6-8]、圖像生成[9-10]、文本分類[11-12]以及其他諸多領(lǐng)域[13-16]。

盡管CaspNet 有許多優(yōu)點(diǎn)且應(yīng)用廣泛,但它在某些方面仍存在改進(jìn)空間,比如它在接近現(xiàn)實(shí)環(huán)境的復(fù)雜數(shù)據(jù)集的分類任務(wù)上表現(xiàn)不佳,因其龐大的參數(shù)量和計(jì)算量阻礙了膠囊網(wǎng)絡(luò)的推廣。為了降低CapsNet 的參數(shù)量和計(jì)算量,研究者們提出了一些優(yōu)化方法:為了減少膠囊的數(shù)量,Duarte 等[14]基于矩陣膠囊提出了一種膠囊池化方法,即讓同類型的初級(jí)膠囊共享轉(zhuǎn)換矩陣,然后對(duì)轉(zhuǎn)換后所得的預(yù)測(cè)膠囊進(jìn)行平均池化,即求取感受野內(nèi)的預(yù)測(cè)膠囊的均值;Xiong 等[17]提出在深度方向上選取一半最活躍的膠囊類型進(jìn)行動(dòng)態(tài)路由,減少了膠囊層一半的參數(shù);Lalonde 等[13]提出了反卷積膠囊的概念,將CapsNet 的全連接重構(gòu)方式改為反卷積重構(gòu),在參數(shù)大量減少的情況下,對(duì)目標(biāo)分割任務(wù)顯示出良好的分割效果。

為了提升CapsNet 在復(fù)雜數(shù)據(jù)集上的分類精度,研究者也提出了一些CapsNet 的改進(jìn)模型:Xiang 等[18]提出了一種多尺度膠囊網(wǎng)絡(luò)(Multi-Scale Capsule Network,MS-CapsNet),使用多尺度特征提取器獲取結(jié)構(gòu)和語(yǔ)義信息,以提高網(wǎng)絡(luò)的表達(dá)能力;Amer 等[19]提出的 路徑膠囊網(wǎng)絡(luò)(Path Capsule Network,PathCapsNet)使用多個(gè)路徑生成膠囊,且所有路徑的膠囊均使用同一個(gè)動(dòng)態(tài)路由層,這增加了膠囊的數(shù)量和多樣性;Do Rosario 等[20]提出的多線程膠囊網(wǎng)絡(luò)(Multi-Lane Capsule Network,MLCN)則為每個(gè)線程都配備獨(dú)立的路由層,各個(gè)線程路由所得的父膠囊則作為輸出膠囊的一維。在CNN 中,也有類似研究,如Tissera 等[21]在多路徑CNN 中引入交叉連接,提升了特征提取質(zhì)量和圖像識(shí)別精度;Phaye 等[22]使用更深的卷積模塊替換卷積層,并且一個(gè)卷積模塊搭配一個(gè)膠囊輸出層,組成了性能優(yōu)異的多級(jí)膠囊網(wǎng)絡(luò)。在文獻(xiàn)[22]研究的基礎(chǔ)上,Sun 等[23]用密集連接塊構(gòu)建了多級(jí)膠囊網(wǎng)絡(luò),顯示了良好的分類效果;Ren 等[24]提出的自適應(yīng)算法使底層膠囊能自適應(yīng)地調(diào)整它們的方向和長(zhǎng)度,并且消除了耦合系數(shù)對(duì)梯度傳播的影響,使CapsNet 的路由層可以多次堆疊,從而使膠囊能表示更深層的隱含信息,提升分類精度。

上述方法或改進(jìn)了膠囊網(wǎng)絡(luò)的分類精度,或減少了參數(shù)數(shù)量,但并未同時(shí)兼顧分類精度以及參數(shù)數(shù)量。本文提出一種基于多路徑特征的膠囊網(wǎng)絡(luò)(Capsule Network based on Multipath feature,MCNet)模型,包括一種新的適用于膠囊網(wǎng)絡(luò)的特征提取器和一種新的膠囊池化技術(shù)。其中:特征提取器擁有4 條并行的路徑,各路徑擁有不同數(shù)量的卷積層和池化層,能提取到豐富的不同層次的特征,然后生成具備空間特性的膠囊特征;膠囊池化技術(shù)能有效選取少數(shù)膠囊來(lái)代表整體的膠囊特征,在保證模型分類性能的前提下,大量減少膠囊數(shù)量,從而減少參數(shù)數(shù)量和計(jì)算量。本文主要工作如下:

1)提出一種新的膠囊特征提取器,以生成更豐富的初級(jí)膠囊特征,有效地提升模型的分類準(zhǔn)確率;

2)提出一種新的膠囊池化技術(shù),以有效減少膠囊數(shù)量,降低模型的計(jì)算量;

3)在CIFAR-10、SVHN、Fashion-MNIST、MNIST 等4 個(gè)數(shù)據(jù)集上考察了本文模型的分類準(zhǔn)確率和參數(shù)數(shù)量,實(shí)驗(yàn)結(jié)果表明,本文模型在性能上具有競(jìng)爭(zhēng)力。

1 相關(guān)工作

1.1 膠囊網(wǎng)絡(luò)

圖1 是Sabour 等[3]描述的CapsNet 的結(jié)構(gòu),由1 個(gè)三層的編碼器和1 個(gè)三層的解碼器組成。編碼器的第一層是1 個(gè)卷積層,用于提取底層特征。第二層是初級(jí)膠囊層(Primary Capsule layer,PrimaryCaps),它將底層特征再次卷積,生成初級(jí)膠囊(子膠囊)。在圖1 中,20 × 20 × 256 的特征圖通過(guò)32個(gè)9 × 9 的卷積得到了6 × 6 × 8 × 32 的膠囊特征圖,其中:8表示一個(gè)卷積核的輸出通道數(shù),也是一個(gè)膠囊的維度;32 表示膠囊類型的數(shù)量,1 個(gè)卷積核單獨(dú)生成一種膠囊類型。第三層是數(shù)字膠囊層(Digit Capsule layer,DigitCaps),用于存儲(chǔ)10 個(gè)代表分類結(jié)果的輸出膠囊(父膠囊),輸出膠囊的長(zhǎng)度(L2 范式)代表著其對(duì)應(yīng)的類的存在概率。初級(jí)膠囊與輸出膠囊之間通過(guò)動(dòng)態(tài)路由傳遞膠囊特征,本文將在1.2 節(jié)介紹。

圖1 CapsNet結(jié)構(gòu)Fig.1 Structure of CapsNet

解碼器是CapsNet 的輔助網(wǎng)絡(luò),它被用于重構(gòu)圖像。解碼器由3 個(gè)全連接層(Fully Connected layer,F(xiàn)C)構(gòu)成,前兩層分別包含512、1 024 個(gè)神經(jīng)元,通過(guò)修正線性單元(Rectified Linear Unit,ReLU)激活。第三層通過(guò)Sigmoid 函數(shù)激活,包含784 個(gè)神經(jīng)元,對(duì)應(yīng)于MNIST 數(shù)據(jù)集28 × 28 的圖像尺寸。值得一提的是,在解碼前,除了1 個(gè)正確膠囊,位于DigitCaps 的其余9 個(gè)錯(cuò)誤膠囊要通過(guò)掩碼屏蔽。解碼器的目標(biāo)函數(shù)應(yīng)使重構(gòu)圖像與原圖像的歐氏距離不斷縮小,因此原圖像與重構(gòu)圖像像素之間的平方差之和或平方差均值就是重構(gòu)損失。為了防止解碼器在網(wǎng)絡(luò)訓(xùn)練過(guò)程中占據(jù)主導(dǎo)地位,重構(gòu)損失要乘以重構(gòu)系數(shù)后才能加入總損失函數(shù)。

1.2 動(dòng)態(tài)路由

與CNN 不同的是,CapsNet 有獨(dú)特的向前傳播方式,這種方式被稱為動(dòng)態(tài)路由。動(dòng)態(tài)路由發(fā)生在初級(jí)膠囊和輸出膠囊之間,如圖1,PrimaryCaps 和DigitCaps 通過(guò)動(dòng)態(tài)路由連接,位于PriamryCaps 的初級(jí)膠囊需要通過(guò)空間關(guān)系預(yù)測(cè)處于DigitCaps 的輸出膠囊,預(yù)測(cè)的過(guò)程為:

假設(shè)膠囊i是位于l層的某個(gè)初級(jí)膠囊,取值為ui;膠囊j是位于l+1 層的某個(gè)輸出膠囊;Wij為i與j之間的空間關(guān)系矩陣,那么是膠囊i通過(guò)空間關(guān)系對(duì)膠囊j所作的預(yù)測(cè);Sj是初級(jí)膠囊對(duì)輸出膠囊的預(yù)測(cè)的加權(quán)和;cij為路由迭代過(guò)程中確定的耦合系數(shù)。Sj需要經(jīng)過(guò)非線性壓縮才能表示概率,壓縮過(guò)程為:

式(2)為Squash 非線性壓縮函數(shù),它可以把向量Sj的長(zhǎng)度壓縮至0 到1,短向量的長(zhǎng)度將被壓縮至略大于0,長(zhǎng)向量將被壓縮至略小于1。這樣可以確保輸出向量Vj的長(zhǎng)度可以表示該膠囊所代表的類的出現(xiàn)概率。

對(duì)于耦合系數(shù),需要通過(guò)Softmax 路由公式進(jìn)行計(jì)算,計(jì)算式如下:

其中:bij表示膠囊i到膠囊j之間的連接概率,初值為0。對(duì)bi進(jìn)行Softmax 路由后得到耦合系數(shù)cij,膠囊i與上層所有膠囊的耦合系數(shù)之和為1。

算法1 動(dòng)態(tài)路由算法[3]。

算法1 的步驟2)表示動(dòng)態(tài)路由會(huì)迭代r次,r通常設(shè)置為3。步驟6)表示動(dòng)態(tài)路由使用Vj與的標(biāo)量積來(lái)更新連接概率bij,這意味著當(dāng)輸出膠囊Vj與預(yù)測(cè)膠囊相似時(shí),連接概率bij會(huì)增大,進(jìn)一步導(dǎo)致耦合系數(shù)增大;相反,當(dāng)它們不相似時(shí),標(biāo)量積為負(fù)數(shù),連接概率bij和耦合系數(shù)會(huì)縮小。

1.3 反卷積重構(gòu)

解碼器是膠囊網(wǎng)絡(luò)的重要組成部分,它能以重構(gòu)圖像的方式提升網(wǎng)絡(luò)的分類準(zhǔn)確率。除了CapsNet 所使用的全連接解碼器,反卷積解碼器同樣適用于膠囊網(wǎng)絡(luò)。反卷積解碼器的優(yōu)勢(shì)在于參數(shù)量小,適用于復(fù)雜數(shù)據(jù)集。本文模型MCNet同樣使用了反卷積解碼器來(lái)重構(gòu)圖像。

圖2 是一個(gè)應(yīng)用于CIFAR-10 數(shù)據(jù)集的膠囊網(wǎng)絡(luò)的反卷積解碼器。經(jīng)過(guò)動(dòng)態(tài)路由后,DigitCaps 得到10 個(gè)16 維的向量(父膠囊),膠囊的長(zhǎng)度代表它對(duì)應(yīng)的類的存在概率。除了其中正確的膠囊外,其他膠囊都被掩碼所屏蔽,然后將DigitCaps 拉伸為一維張量。通過(guò)一個(gè)全連接層后,得到8 ×8 × 16 個(gè)標(biāo)量特征,再將這些特征折疊成[16,8,8]的特征圖。最后將特征圖進(jìn)行反卷積(Deconvolution,Deconv)處理,該處理過(guò)程需要經(jīng)過(guò)4 個(gè)反卷積層,每層的輸出通道分別為64、32、16、3,最終得到和與CIFAR-10 圖像尺寸一致的[3,32,32]的重構(gòu)圖像。解碼器通過(guò)重構(gòu)圖像與原圖像的均方損失進(jìn)行訓(xùn)練。

圖2 反卷積解碼器結(jié)構(gòu)Fig.2 Structure of deconvolutional decoder

2 多路徑膠囊網(wǎng)絡(luò)

2.1 模型結(jié)構(gòu)

圖3 是本文模型MCNet 應(yīng)用于CIFAR-10 數(shù)據(jù)集的網(wǎng)絡(luò)結(jié)構(gòu)。MCNet 的編碼器部分可以分為5 個(gè)模塊,包括2 個(gè)卷積層、1 個(gè)膠囊特征提取層、1 個(gè)膠囊池化層和1 個(gè)DigitCaps。MCNet 使用兩個(gè)尺寸為5×5 的卷積核提取原始特征,原CapsNet 則使用單個(gè)尺寸為9×9 的卷積核。這兩種特征提取方式的感受野一樣,但是多層卷積能提取到更深層次的特征,所以小而連續(xù)的卷積核提取的特征要好于單個(gè)大尺寸的卷積核。膠囊特征提取器可以通過(guò)多個(gè)路徑的特征來(lái)生成膠囊(將在第2.2 節(jié)中詳述)。膠囊池化是一種篩選膠囊的技術(shù),目的是用具有代表性的少數(shù)膠囊來(lái)表示最多的有效膠囊特征,從而減少計(jì)算量(將在第2.3 節(jié)詳述)。池化后,所有被篩選出的膠囊將通過(guò)動(dòng)態(tài)路由機(jī)制(見2.2 節(jié))轉(zhuǎn)換為輸出膠囊,從而進(jìn)入DigitCaps。DigitCaps 的10 個(gè)輸出膠囊的長(zhǎng)度代表各個(gè)類的存在概率。

圖3 MCNet模型結(jié)構(gòu)Fig.3 Structure of MCNet model

DigitCaps 作為網(wǎng)絡(luò)的輸出層,位于該層的膠囊的長(zhǎng)度可以表示類的存在概率,MCNet 通過(guò)計(jì)算該層膠囊的邊緣損失來(lái)訓(xùn)練編碼器。邊緣損失的計(jì)算公式如下:

其中:Lk表示第k個(gè)膠囊所代表的類的損失。當(dāng)且僅當(dāng)該膠囊代表的類存在時(shí),Tk=1;不存在時(shí),Tk=0。vk是DigitCaps的第k個(gè)膠囊,‖vk‖是膠囊的L2范式,即長(zhǎng)度。m+=0.9,是上邊界;m-=0.1,是下邊界。λ是比例系數(shù),大小為0.5,意味著正類損失的重要性是負(fù)類損失的2 倍。編碼器的總損失是DigitCaps 中所有膠囊損失的總和。

最后,在解碼器部分,MCNet 使用反卷積解碼器(見2.3節(jié))重構(gòu)圖像。相較于CapsNet 使用的全連接重構(gòu),反卷積重構(gòu)增強(qiáng)了網(wǎng)絡(luò)的性能,并且顯著減少了參數(shù)數(shù)量。應(yīng)用于CIFAR-10 數(shù)據(jù)集的全連接解碼器有3.76×106個(gè)參數(shù),而反卷積解碼器只有0.2×106個(gè)參數(shù)。實(shí)驗(yàn)結(jié)果表明,反卷積解碼器在CIFAR-10 這類復(fù)雜的數(shù)據(jù)集中的表現(xiàn)要明顯好于全連接解碼器。

2.2 膠囊特征提取器

膠囊特征提取器的目標(biāo)是提取豐富、多樣的標(biāo)量特征,從而生成同樣豐富的向量(膠囊)特征。如圖4,提取器有4條路徑,每條路徑所擁有的卷積層和池化層的數(shù)量也不相同,即每條路徑的深度不一致。為了盡量不提取重復(fù)的標(biāo)量特征,即使有路徑深度相同,但是結(jié)構(gòu)也不相同。

圖4 膠囊特征提取器與膠囊池化層的結(jié)構(gòu)Fig.4 Structures of capsule feature extractor and capsule pooling layer

膠囊特征提取器為每條路徑設(shè)立了一個(gè)膠囊層,該層存儲(chǔ)著初級(jí)膠囊up。p是路徑的標(biāo)號(hào),提取器有4 條路徑,因此p∈{1,2,3,4}。每條路徑都存在許多膠囊類型,假設(shè)在第一條路徑中:

其中:t是膠囊類型的數(shù)量,在一條路徑中,t=32,因此4 條路徑總共有128 種膠囊類型。MCNet 不是單純地在一條路徑上增加膠囊類型的數(shù)量,而是通過(guò)疊加不同路徑來(lái)增加膠囊數(shù)量,這確保了膠囊來(lái)源的豐富度和膠囊的質(zhì)量。事實(shí)上,對(duì)任意一個(gè)路徑p'的任意一個(gè)膠囊類型t'而言,都存在h×w個(gè)膠囊u:

其中:h是膠囊特征圖的高度,w是膠囊特征圖的寬度。因此,MCNet 一共有4 × 32 ×h×w個(gè)膠囊。具體到 在CIFAR-10 數(shù)據(jù)集,h=w=10??紤]到膠囊特征提取器有4條路徑,因此膠囊數(shù)量是CapsNet 的4 倍。從計(jì)算量的角度考慮,MCNet 為每條路徑都配備了一種新的膠囊池化層,它大幅減少了膠囊數(shù)量(將在第2.3 節(jié)詳述)。

多路徑的特征提取方式并沒有使MCNet 參數(shù)驟增。因?yàn)閷?duì)卷積核的尺寸和輸出通道的把控,在CIFAR-10 數(shù)據(jù)集中,MCNet 從輸入層到膠囊特征提取層有5.47×106的參數(shù),相比之下CapsNet 有5.37×106參數(shù)。相反,因?yàn)槟z囊池化方法減少了膠囊數(shù)量,會(huì)大大降低動(dòng)態(tài)路由的計(jì)算量。

實(shí)驗(yàn)結(jié)果表明,膠囊特征提取器使用的特征提取方法使網(wǎng)絡(luò)在復(fù)雜數(shù)據(jù)集上的分類準(zhǔn)確率大幅提升,尤其在膠囊池化層篩選膠囊數(shù)量之后,MCNet 用遠(yuǎn)小于CapsNet 的膠囊數(shù)量實(shí)現(xiàn)了更好的分類結(jié)果,說(shuō)明膠囊特征提取器提取了良好的膠囊特征。

2.3 膠囊池化

上文提到,膠囊特征提取器產(chǎn)生了4 倍于CapsNet 的膠囊數(shù)量。膠囊的數(shù)量越多,參與到動(dòng)態(tài)路由的參數(shù)就越多,而且必須考慮到這些參數(shù)在動(dòng)態(tài)路由過(guò)程中會(huì)經(jīng)過(guò)多次迭代,這將導(dǎo)致計(jì)算成本增加。因此需要一種減少膠囊數(shù)量的方法,本文的解決方案是在動(dòng)態(tài)路由之前,添加一種膠囊池化技術(shù)。

膠囊特征的動(dòng)態(tài)路由過(guò)程可看作是一個(gè)膠囊全連接過(guò)程,在子膠囊和父膠囊之間存在耦合系數(shù)。Ren 等[24]提出,在動(dòng)態(tài)路由的過(guò)程中,大多數(shù)膠囊的耦合系數(shù)幾乎可以忽略不計(jì)。這意味著少數(shù)子膠囊占據(jù)了極大的耦合系數(shù),幾乎決定了父膠囊的取值。本文的膠囊池化技術(shù)就是要找到這些最重要的子膠囊。

如圖5,在子膠囊層u中,共包含t×h×w個(gè)子膠囊,t是膠囊類型的數(shù)量,h是膠囊層u的高度,w是膠囊層u的寬度。在膠囊層u的(x,y)處,存在t個(gè)膠囊:

圖5 膠囊池化Fig.5 Capsule pooling

在膠囊池化層中,存在h×w個(gè)膠囊。在該層只有一個(gè)膠囊類型,膠囊數(shù)量是u層的1/t,這兩層的位置一一對(duì)應(yīng)。具體來(lái)說(shuō),在的(x,y)位置,只存在一個(gè)膠囊

膠囊就是u層在(x,y)位置的t個(gè)膠囊中最活躍的一個(gè)。上文提到,輸出膠囊的長(zhǎng)度代表類的存在概率,而在子膠囊層和膠囊池化層,膠囊的長(zhǎng)度代表的是膠囊本身的活躍度。長(zhǎng)度越長(zhǎng),膠囊越活躍。膠囊池化方法保證了子膠囊層的每個(gè)位置都有膠囊入選池化層,保護(hù)了位置信息。

對(duì)于MCNet 而言,膠囊池化方法使膠囊的數(shù)量減少到原來(lái)的1/t(t=32)。盡管MCNet 有4 條路徑,最終參與動(dòng)態(tài)路由的膠囊數(shù)量?jī)H為CapsNet 的1/8。因此,路由過(guò)程中的可訓(xùn)練的參數(shù)也僅為原來(lái)的1/8。參數(shù)指的是子膠囊和父膠囊之間的空間關(guān)系。應(yīng)用于CIFAR-10 數(shù)據(jù)集的CapsNet,參與動(dòng)態(tài)路由的參數(shù)量為4.10×106,而MCNet 只有0.51×106。實(shí)驗(yàn)結(jié)果表明,本文提出的膠囊池化方式能在大幅減少參數(shù)量和計(jì)算量的同時(shí)保持分類準(zhǔn)確率。

除了在同一位置取最活躍膠囊的池化方式外,本文還嘗試了在同一位置取膠囊平均值的池化方式。取平均值的本意是融合膠囊,在減少膠囊數(shù)量的情況下讓所有膠囊的特征都參與到路由過(guò)程中,但結(jié)果顯示該池化方式會(huì)使分類準(zhǔn)確率明顯降低,這也再次說(shuō)明并不是所有膠囊都對(duì)分類結(jié)果有所幫助,少數(shù)膠囊可以代表所有膠囊。

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

本文在CIFAR-10、SVHN、Fashion-MNIST 和MNIST 等4個(gè)數(shù)據(jù)集上測(cè)試了MCNet 模型。CIFAR-10 是一個(gè)包含飛機(jī)、汽車、鳥類、貓、鹿、狗、蛙類、馬、船和卡車等10 類彩色圖像的數(shù)據(jù)集,圖片大小為32 × 32,圖片背景貼近實(shí)際且十分復(fù)雜;SVHN 數(shù)據(jù)集來(lái)源于谷歌街景的門牌號(hào)碼,包含10 個(gè)數(shù)字類別的彩色圖像,圖像大小同樣為32 × 32,圖片背景復(fù)雜;Fashion-MNIST 數(shù)據(jù)集包含了T 恤、牛仔褲、套衫、裙子、外套、涼鞋、襯衫、運(yùn)動(dòng)鞋、包、短靴等10 個(gè)類別的灰色圖像,圖像大小為28 × 28,圖像背景單一;MNIST 數(shù)據(jù)集包含10 類手寫數(shù)字的灰度圖像,圖片大小為28 × 28,圖片背景十分簡(jiǎn)單。因此,實(shí)驗(yàn)中的CIFAR-10 可視為復(fù)雜數(shù)據(jù)集,MNIST 可視為簡(jiǎn)單數(shù)據(jù)集,SVHN 和Fashion-MNIST 則位于兩者之間。

本文的實(shí)驗(yàn)建立在文獻(xiàn)[25]的開源代碼上,所有數(shù)據(jù)集均取自torchvision.datasets 函數(shù)庫(kù),并在數(shù)據(jù)預(yù)處理的過(guò)程中在各方向上使用了最多2 個(gè)像素的隨機(jī)裁剪,除此之外無(wú)其他數(shù)據(jù)增強(qiáng)方式。在所有實(shí)驗(yàn)中,本文均使用自適應(yīng)矩估計(jì)(Adaptive moment estimation,Adam)優(yōu)化器,未設(shè)置固定學(xué)習(xí)率,batch size 為100,epochs 為100。對(duì)所有實(shí)驗(yàn)數(shù)據(jù),本文都進(jìn)行了3 次實(shí)驗(yàn)測(cè)試,并取均值作為結(jié)果。實(shí)驗(yàn)中:加粗的字體表示性能最好的實(shí)驗(yàn)結(jié)果;“—”表示對(duì)應(yīng)模型未給出在該數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果。

3.1 比較分析

本文以分類準(zhǔn)確率為評(píng)價(jià)標(biāo)準(zhǔn),將MCNet 和其他膠囊網(wǎng)絡(luò)模型在CIFAR-10、SVHN、Fashion-MNIST 和MNIST 數(shù)據(jù)集上進(jìn)行比較和分析。在CIFAR-10 和SVHN 數(shù)據(jù)集上,MCNet的膠囊特征提取器共生成了12 800 個(gè)下層膠囊;經(jīng)膠囊池化層篩選后,一共留下了400 個(gè)下層膠囊;最后經(jīng)過(guò)動(dòng)態(tài)路由,在DigitCaps 生成了10 個(gè)代表分類結(jié)果的輸出膠囊。在MNIST 和Fashion-MNIST 數(shù)據(jù)集上,MCNet 的膠囊特征提取器共生成了4 608 個(gè)下層膠囊;膠囊池化后,一共留下了144個(gè)下層膠囊;動(dòng)態(tài)路由后,產(chǎn)生了10 個(gè)輸出膠囊。

表1 中,CapsNet 是本文根據(jù)文獻(xiàn)[25]的開源代碼復(fù)現(xiàn)的結(jié)果,使用了數(shù)據(jù)增強(qiáng)手段。Xi 等[26]對(duì)CapNet 使用了增加卷積層、多模型集成等手段,在CIFAR-10 數(shù)據(jù)集上的分類準(zhǔn)確率比原CapsNet 更高。Nair 等[27]是首個(gè)對(duì)CapsNet 在多個(gè)數(shù)據(jù)集上進(jìn)行測(cè)試的研究者。MS-CapsNet[18]、MLCN2[20]、PathCapsNet[19]改進(jìn)了 膠囊網(wǎng) 絡(luò)的結(jié) 構(gòu),HitNet[28](Neural network with capsules embedded in a Hit-or-Miss layer)、Zhao等[29]、Ren 等[24]則改進(jìn)了膠囊網(wǎng)絡(luò)的路由機(jī)制。

表1 模型的分類準(zhǔn)確率對(duì)比 單位:%Tab.1 Classification accuracy comparison of models unit:%

由表1 可知,幾乎所有的模型都能在MNIST 這類簡(jiǎn)單的數(shù)據(jù)集上達(dá)到極高的準(zhǔn)確率,其中CapsNet 的表現(xiàn)最好。大多模型對(duì)Fashion-MNIST 數(shù)據(jù)集的分類準(zhǔn)確率都集中在92%到93%,MCNet 的表現(xiàn)明顯好于其他模型。對(duì)于SVHN 數(shù)據(jù)集,MCNet 的分類結(jié)果也是最好的。對(duì)于比較復(fù)雜的CIFAR-10 數(shù)據(jù)集,MCNet 分類準(zhǔn)確率達(dá)到了79.27%,大幅超出CapsNet(準(zhǔn)確率提高了8.7%),也明顯好于其他的模型。

就識(shí)別準(zhǔn)確率而言,與其他模型相比,CapsNet 在簡(jiǎn)單數(shù)據(jù)集(MNIST)上表現(xiàn)優(yōu)秀,在稍微復(fù)雜的數(shù)據(jù)集(Fashion-MNIST、SVHN)上僅稍遜一籌,但在復(fù)雜數(shù)據(jù)集(CIFAR-10)上則不盡如人意。本文模型MCNet 在3 個(gè)數(shù)據(jù)集上的表現(xiàn)都好于CapsNet 的其他改進(jìn)模型,尤其是在復(fù)雜數(shù)據(jù)集上。顯然,MCNet 改善了CapsNet 不適應(yīng)于對(duì)復(fù)雜數(shù)據(jù)集進(jìn)行分類的問題。

3.2 參數(shù)分析

MCNet 在可訓(xùn)練的參數(shù)量上也具有優(yōu)勢(shì)。表2 記錄了3種膠囊網(wǎng)絡(luò)模型與MCNet 在CIFAR-10 和Fashion-MNIST 數(shù)據(jù)集上關(guān)于參數(shù)量及分類準(zhǔn)確率的比較。在這兩個(gè)數(shù)據(jù)集上,MCNet 所使用的參數(shù)數(shù)量?jī)H是其他模型的43.86%到71.53%,但是分類準(zhǔn)確率卻明顯高過(guò)其他模型。MCNet 在大幅減少了參數(shù)量的前提下,仍然提升了分類準(zhǔn)確率,驗(yàn)證了MCNet 模型的競(jìng)爭(zhēng)力。

表2 三種膠囊網(wǎng)絡(luò)模型與MCNet的分類準(zhǔn)確率及參數(shù)量對(duì)比Tab.2 Comparison of classification accuracy and number of parameters among three capsule network models and MCNet

3.3 消融分析

表3 是在CIFAR-10 數(shù)據(jù)集上進(jìn)行消融實(shí)驗(yàn)的結(jié)果。其中:“—”和“√”分別表示未使用和使用了相關(guān)技術(shù)。由表3可知,使用了膠囊特征提取器的模型c、d 的分類準(zhǔn)確率大幅超過(guò)未使用特征提取器的模型a、b,說(shuō)明膠囊特征提取器能幫助模型提升對(duì)復(fù)雜數(shù)據(jù)集的分類準(zhǔn)確率。采用了膠囊池化技術(shù)的模型b 的準(zhǔn)確率比模型a 高0.72 個(gè)百分點(diǎn),未使用膠囊池化技術(shù)的模型c 的準(zhǔn)確率比模型d 高0.07 個(gè)百分點(diǎn),但是實(shí)驗(yàn)中模型d 的訓(xùn)練時(shí)間是模型c 的37.44%,可訓(xùn)練的參數(shù)量是模型c 的28.24%。本文提出的膠囊池化技術(shù)在保持了分類準(zhǔn)確率的情況下,大幅減少了參數(shù)量和計(jì)算量,驗(yàn)證了該技術(shù)的有效性。

表3 CIFAR-10數(shù)據(jù)集上的消融實(shí)驗(yàn)Tab.3 Ablation study on CIFAR-10 dataset

4 結(jié)語(yǔ)

本文提出了一種基于多路徑特征的膠囊網(wǎng)絡(luò)。該網(wǎng)絡(luò)能有效提升膠囊網(wǎng)絡(luò)在復(fù)雜數(shù)據(jù)集上的分類性能,大幅減少可訓(xùn)練的參數(shù)量。該網(wǎng)絡(luò)的膠囊特征提取器從多個(gè)不同路徑提取了豐富多樣的膠囊特征,提升了模型的分類性能。另外,本文還提出了一種新的膠囊池化技術(shù),它用極少的膠囊數(shù)量保留了最多有效的語(yǔ)義信息,從而大幅降低了模型在路由過(guò)程的計(jì)算量和參數(shù)量。相較于其他膠囊網(wǎng)絡(luò)模型,本文模型用更少的參數(shù)量實(shí)現(xiàn)了更好的分類性能。

未來(lái)的工作包括:一是繼續(xù)探索更好的膠囊池化方法,即精確選取少數(shù)膠囊代表整體的膠囊特征。二是探究計(jì)算量更小的路由方式。該路由方式應(yīng)該通過(guò)減少路由過(guò)程的迭代次數(shù)和參數(shù)量來(lái)減少計(jì)算量,同時(shí),它還應(yīng)當(dāng)盡量避免梯度消失問題,使深度路由成為可能,幫助膠囊網(wǎng)絡(luò)降低對(duì)深度卷積的依賴性,加速膠囊網(wǎng)絡(luò)的推廣。

猜你喜歡
池化集上特征提取
基于Sobel算子的池化算法設(shè)計(jì)
卷積神經(jīng)網(wǎng)絡(luò)中的自適應(yīng)加權(quán)池化
設(shè)施蔬菜病害識(shí)別中的CNN池化選擇
Cookie-Cutter集上的Gibbs測(cè)度
鏈完備偏序集上廣義向量均衡問題解映射的保序性
基于卷積神經(jīng)網(wǎng)絡(luò)和池化算法的表情識(shí)別研究
基于Daubechies(dbN)的飛行器音頻特征提取
復(fù)扇形指標(biāo)集上的分布混沌
Bagging RCSP腦電特征提取算法
基于MED和循環(huán)域解調(diào)的多故障特征提取