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

?

基于改進的ResNet網(wǎng)絡(luò)的中餐圖像識別方法

2022-02-14 05:41:28王海燕劉虎林
陜西科技大學(xué)學(xué)報 2022年1期
關(guān)鍵詞:圖像識別中餐注意力

王海燕, 張 渺, 劉虎林, 陳 曉

(陜西科技大學(xué) 電子信息與人工智能學(xué)院, 陜西 西安 710021)

0 引言

食品圖像識別是計算機視覺[1]、數(shù)據(jù)挖掘[2]以及食品科學(xué)與技術(shù)等[3]領(lǐng)域的研究熱點方向之一,在食品自動化檢測、食品管理、食品安全、個性化醫(yī)療健康[4]以及智能家居中有著廣泛的應(yīng)用[5].

傳統(tǒng)的食品圖像識別技術(shù)使用基于統(tǒng)計學(xué)的方法如HOG、SIFT等計算食品圖像特征,將提取到的特征輸入分類器實現(xiàn)圖像識別任務(wù).Lukas Bossard等[6]提出用隨機森林的方法同時提取所有類別中的局部視覺特征,解決了對菜肴圖像的自動識別.這種基于統(tǒng)計學(xué)方法獲取的特征本質(zhì)上是人為設(shè)定的,對特定數(shù)據(jù)規(guī)模不大的識別任務(wù)有效,但整體泛化能力較差,在實際應(yīng)用中受限.

深度學(xué)習(xí)方法與傳統(tǒng)方法相比,能通過深層的網(wǎng)絡(luò)結(jié)構(gòu)提取更精確的特征.隨著計算機視覺的發(fā)展,遷移學(xué)習(xí)被廣泛應(yīng)用于食物圖像識別領(lǐng)域.例如,Keiji Yanai等[7]從深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)提取深層特征在ImageNet上進行訓(xùn)練,并在食物圖像上進行微調(diào),最終在UEC-FOOD100 和UEC-FOOD256數(shù)據(jù)集上獲得78.77%和67.57%的準(zhǔn)確率.M.Islam等[8]開發(fā)并訓(xùn)練了一個CNN模型,對Food-11數(shù)據(jù)集中的食物進行識別,在訓(xùn)練100輪后準(zhǔn)確率達(dá)到74.70%.然而,由于食品圖像的多樣性導(dǎo)致以上模型的識別精度較低,且泛化性能有限.為了進一步提升識別精度,Raza Yunus等[9]使用VGG-16、VGG-19、ResNet、Inception V3和Inception V4的預(yù)訓(xùn)練模型針對西餐圖像在Food-101數(shù)據(jù)集上進行食品圖像識別,結(jié)果表明Inception V3和Inception V4在基于遷移學(xué)習(xí)的西餐圖像識別任務(wù)中有較好的表現(xiàn),識別精度提升至80%和79.22%.除此之外,研究人員根據(jù)不同數(shù)據(jù)集的特點,有針對性地解決食品圖像識別任務(wù)[10,11].例如,Al-Selwi Metwalli等[10]和廖恩紅等[11]針對中餐圖像類間相似度大等特點,分別提出了一種基于密集連接結(jié)構(gòu)的食品圖像識別模型DenseFood和基于caffe框架的China Food-CNN模型.前者結(jié)合Softmax損失和中心損失,以最小化同一類別內(nèi)的差異,最大化不同類別之間的差異,最終在VIREO Food-172數(shù)據(jù)集上準(zhǔn)確率達(dá)81.23%,后者利用最大類間損失函數(shù),在ChinaFood482數(shù)據(jù)集上對中餐圖像識別,解決了食品圖片類間相似度大所導(dǎo)致的識別誤差,識別精度比ResNet模型提升3.6%.

盡管隨著網(wǎng)絡(luò)模型的改進,食品圖像識別技術(shù)逐步提升,但由于卷積在提取圖像特征時會丟失細(xì)節(jié)信息,且中餐食品圖像具有類間差異小、類內(nèi)差異大等屬性,從而導(dǎo)致識別率仍不理想.針對以上問題,為了進一步提升中餐圖像識別精度,本文對CNN方法進行了優(yōu)化設(shè)計提出了一種適用于食品圖像識別的FoodResNet18模型,基于固定步長衰減策略的特性加快了模型收斂速度;融合非對稱卷積增強卷積骨架信息的學(xué)習(xí),引入深-淺層共用的注意力模塊,既注重局部細(xì)節(jié)特征又關(guān)注全局特征,期望提升食品圖像識別性能.

1 基于CNN的食品圖像識別

1.1 CNN基本原理

卷積神經(jīng)網(wǎng)絡(luò)(CNN)是深度學(xué)習(xí)的代表算法之一,在圖像識別等眾多領(lǐng)域表現(xiàn)出先進性.其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,主要分為五個層級結(jié)構(gòu),分別是輸入層、卷積層、池化層、全連接層和輸出層.

圖1 CNN的層級結(jié)構(gòu)

通常在卷積操作之后引入激活函數(shù),使網(wǎng)絡(luò)結(jié)構(gòu)具備良好的非線性表達(dá)能力.常用的激活函數(shù)有Sigmoid函數(shù)、Tanh函數(shù)和ReLU函數(shù),為了避免梯度爆炸和梯度消失問題,本文使用ReLU函數(shù),其數(shù)學(xué)表達(dá)如式(1)所示:

f(x)=max(0,x)

(1)

卷積層的輸出F(x)可以表示為:

(2)

式(2)中:輸入為x,N表示卷積核個數(shù),wi表示卷積核,b表示偏置值,f為激活函數(shù).

池化層在提高模型泛化能力的同時保持特征不變性,使提取到的特征值能泛化到更普遍的數(shù)據(jù)中.本文方法使用了最大值池化函數(shù).

經(jīng)過若干卷積層和池化層輸出的特征圖在全連接層的處理后,輸出識別結(jié)果.需要強調(diào)的是,在CNN向后傳播調(diào)整參數(shù)的過程中,通過最小化損失函數(shù)來使預(yù)測值和真實值逼近,本文使用的交叉熵?fù)p失函數(shù)(3).

(3)

1.2 CNN的優(yōu)化設(shè)計

學(xué)者們不斷對神經(jīng)網(wǎng)絡(luò)的模型結(jié)構(gòu)進行優(yōu)化,希望在特定的學(xué)習(xí)任務(wù)下使用更少的參數(shù)取得更優(yōu)的效果,主要做法是對卷積神經(jīng)網(wǎng)絡(luò)模型與多種方法結(jié)合來提升性能.本文結(jié)合食品圖像識別技術(shù)需求,基于三種方法對CNN模型優(yōu)化.

1.2.1 融合非對稱卷積的AC塊

文獻(xiàn)[12]通過實驗論證了一個n*n的卷積核中骨架位置上的權(quán)重比邊角的權(quán)重更重要,并且加強骨架學(xué)習(xí)的方法總是能增強整個網(wǎng)絡(luò)結(jié)構(gòu)的學(xué)習(xí)效果.融合非對稱卷積的AC塊由三個平行層組成,分別使用d×d、1×d和d×1的卷積核來滑動提取特征,并在三個分支的卷積后進行Batch Normalization操作得到每各分支的輸出,將各層輸出相加以豐富特征空間.其中1×d和d×1這樣的非方形核,稱為非對稱卷積層.通過將每個AC塊中的非對稱核添加到正方形核的相應(yīng)位置來增強卷積核的骨架信息.由卷積的可加性推導(dǎo)公式(4):如果p個大小兼容的2D核Kp在同一輸入C上以相同的步長操作,并產(chǎn)生相同分辨率的輸出,假設(shè)這些輸出相加的結(jié)果為A,那么可以將相應(yīng)位置上的核相加,得到一個可以產(chǎn)生相同輸出A的等價核K.

A=C*K1+C*K2+…+C*Kp=

C*(K1⊕K2⊕…⊕Kp)=C*K

(4)

1.2.2 基于食品圖像識別性能提升的注意力模塊

CNN的核心是卷積操作,它能在局部感受野內(nèi)融合空間和通道信息來構(gòu)造特征.骨架增強的卷積核能提升局部的特征提取效果,但對全局信息沒有進行更智能的特征選擇.通過大量的文獻(xiàn)顯示,目前注意力機制廣泛的用在CNN模型中來強調(diào)更深層、更豐富的特征[13].因此本文引入一個深-淺層共用的注意力模塊以通過通道之間的相互依賴關(guān)系來自適應(yīng)地重新校準(zhǔn)全局通道特征響應(yīng),激發(fā)食品圖像中更重要的圖像特征,提升識別性能.

圖2描述了注意力模塊的結(jié)構(gòu).對于任意層的特征圖M輸入注意力模塊,將得到一個經(jīng)過注意力機制選擇的輸出U,特征U由三個步驟得到,首先通過壓縮操作,在每層通道的空間維度上做全局平均池化,得到全局信息R.第二步是激勵操作,即使用ReLU函數(shù)和Sigmoid函數(shù)對R進行兩次激勵,學(xué)習(xí)通道之間的非線性依賴關(guān)系,激勵有價值的特征,抑制不重要的特征.最后將學(xué)習(xí)到的權(quán)重作用于輸入M得到重新校準(zhǔn)后的特征圖U.且特征圖U可以直接饋送到網(wǎng)絡(luò)的下一層.

圖2 注意力模塊結(jié)構(gòu)

1.2.3 提升學(xué)習(xí)效果的殘差結(jié)構(gòu)設(shè)計

CNN中的非線性轉(zhuǎn)換使數(shù)據(jù)映射到高維空間以便更好的完成識別任務(wù).但隨著網(wǎng)絡(luò)層數(shù)的增加,數(shù)據(jù)被映射到更加離散的空間,難以實現(xiàn)線性轉(zhuǎn)換,出現(xiàn)退化現(xiàn)象[14].殘差結(jié)構(gòu)如圖3所示,它是ResNet網(wǎng)絡(luò)的核心,可以很好的解決上述問題,使網(wǎng)絡(luò)中線性轉(zhuǎn)換和非線性轉(zhuǎn)換達(dá)到平衡,同時防止梯度消失,加強信息的傳遞和特征復(fù)用.

圖3 殘差結(jié)構(gòu)

由于ResNet101網(wǎng)絡(luò)層數(shù)多,占用空間大,因此選擇網(wǎng)絡(luò)層數(shù)較少的ResNet-18網(wǎng)絡(luò)進行優(yōu)化,在網(wǎng)絡(luò)中融合非對稱卷積的AC塊、嵌入注意力模塊優(yōu)化網(wǎng)絡(luò),提出了適用于食品圖像識別的FoodResNet18模型.

2 FoodResNet18模型結(jié)構(gòu)

中餐圖像類間差異小、類內(nèi)差異大等特點決定了其識別過程中細(xì)節(jié)特征的重要性,為解決由該特點導(dǎo)致的識別精度難以提升的問題,本文提出一種能增強細(xì)節(jié)特征的中餐食品圖像識別模型FoodResNet18.FoodResNet18模型根據(jù)中餐圖像的特點,旨在從局部到全局增強提取特征能力,由深-淺層共用的注意力模塊和增強塊構(gòu)成.深-淺層共用的注意力模塊通過學(xué)習(xí)中餐圖像不同通道的權(quán)重提升特征提取效果,由淺至深地嵌入網(wǎng)絡(luò),實現(xiàn)最大化增強全局特征;增強塊用來提升對中餐圖像局部細(xì)節(jié)的特征提取能力,它融合非對稱卷積構(gòu)造增強核來代替普通卷積核,同時通過跳躍連接的思想建立不同層網(wǎng)絡(luò)之間的聯(lián)系,在降低退化現(xiàn)象的同時實現(xiàn)局部特征增強.網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示.

圖4 FoodResNet18網(wǎng)絡(luò)結(jié)構(gòu)

2.1 增強塊

FoodResNet18模型中的增強塊是由增強核K形成的跳躍連接結(jié)構(gòu),用增強核K代替普通卷積,并建立兩個殘差結(jié)構(gòu),如圖5所示.

圖5中輸入特征圖大小為H*W*C0,經(jīng)過增強塊后輸出大小為Hi*Wi*Ci.C0和Ci分別表示輸入通道數(shù)和輸出通道數(shù).

為了更好的說明增強核K,模型將AC塊參數(shù)d取典型值3,對特征圖的任意通道I分別使用3×3、1×3和3×1 的卷積核構(gòu)成三個平行分支分別對圖像進行特征提取,并做歸一化處理,其輸出即等價于一個骨架增強的3×3卷積核滑動提取特征的結(jié)果,如圖6所示.

在每個分支融合歸一化操作,歸一化處理后各層的輸出如下:

(5)

(6)

(7)

利用卷積的可加性,得到三個平行層的輸出之和,即單層輸出A為:

A=A1+A2+A3=

(8)

(9)

融合后的骨架增強卷積核可以表示為K:

(10)

在增強塊中使用增強骨架的卷積核K,不但增強學(xué)習(xí)效果,且對于網(wǎng)絡(luò)模型都沒有額外的計算負(fù)擔(dān).

2.2 深-淺層共用的注意殘差模塊

注意殘差模塊通過結(jié)合注意力模塊和增強塊,使注意力模塊嵌入網(wǎng)絡(luò)的深-淺層,提升網(wǎng)絡(luò)每個階段的學(xué)習(xí)效果.注意殘差塊如圖7所示.

圖7 注意殘差塊結(jié)構(gòu)

其中注意力模塊如圖8所示,該算法對大小為H×W,個數(shù)為C的輸入特征圖M=[m1,m2,…,mc]進行全局池化,得到C個通道之間的全局信息R.

(11)

式(11)中:mc(x,y)表示第C個通道的特征圖mc在位置坐標(biāo)(x,y)處的值.

其次,為了限制模型復(fù)雜性同時保證模型的泛化能力,對R進行了兩次激勵得到特征圖的權(quán)重值s:

s=σ(g(R,W))=σ(W2δ(W1R))

(12)

式(12)中:δ表示ReLU函數(shù);σ表示Sigmoid函數(shù),W1表示第一個全連接層的權(quán)重,維度是C/r,r為縮放因子,用來縮減通道數(shù)和降低計算量,減少模型復(fù)雜度;W2表示第二個全連接層的權(quán)重,維度是C;s的維度為1×1×C.

最后將權(quán)重s作用于M,得到重新校準(zhǔn)后的特征圖U,特征圖U可以直接饋送到增強塊中.

Uc=sc·mc

(13)

圖8 注意力模塊

注意力模塊在網(wǎng)絡(luò)淺層時,以與類無關(guān)的方式激發(fā)信息特性,加強共享的普遍特征.在網(wǎng)絡(luò)深層時,注意力模塊趨于專業(yè)化,并以特定于類的方式響應(yīng)不同的輸入.FoodResNet18將上述注意力模塊和增強塊4次交替連接,使網(wǎng)絡(luò)的深淺層都嵌入注意力模塊,在激勵有價值的特征,提升學(xué)習(xí)效果的同時,降低CNN的退化現(xiàn)象.

3 食品圖像數(shù)據(jù)預(yù)處理

3.1 食品圖像數(shù)據(jù)集

VIREO Food-172數(shù)據(jù)集[15]是目前食品識別研究領(lǐng)域公認(rèn)度較高的中餐基準(zhǔn)數(shù)據(jù)集,如圖9所示,包含食品類別和成分標(biāo)簽,有來自172個類別的110 241張食物圖片,涵蓋了8大類食物,其中肉類菜品最多,并根據(jù)353種食材手工標(biāo)注.

圖9 VIREO Food-172中食品圖像示例

3.2 食品圖像預(yù)處理

由于原始數(shù)據(jù)集的單張樣本平均占用存儲空間約45 kb,在輸入模型前須將圖片尺寸壓縮為256×256,然后采用隨機遮擋、裁剪、旋轉(zhuǎn)和隨機亮度、對比度、飽和度等增強數(shù)據(jù)集,使模型訓(xùn)練和測試時能匹配復(fù)雜的圖像,避免過擬合.圖10給出圖像預(yù)處理后的示例.

圖10 圖像預(yù)處理示例

在數(shù)據(jù)集劃分上采用簡單交叉驗證的方法,對經(jīng)過預(yù)處理的數(shù)據(jù)集首先隨機將每一類別的圖像分為兩部分,其中85%作為訓(xùn)練集,15%作為測試集,然后通過調(diào)整網(wǎng)絡(luò)參數(shù)訓(xùn)練模型.

4 食品圖像數(shù)據(jù)分析

4.1 模型訓(xùn)練

本文使用PyTorch作為深度學(xué)習(xí)框架,處理器為Intel(R) Core(TM) i7-9700K @ 3.60 GHz,內(nèi)存為32 GB,顯卡為NVIDIA GeForce RTX 3070,顯存為8 GB.

在對FoodResNet18訓(xùn)練時,選擇隨機梯度下降(SGD)優(yōu)化模型中需要被更新的可學(xué)習(xí)參數(shù),初始學(xué)習(xí)率為0.2,動量值為0.9,這樣即使偏導(dǎo)數(shù)為0時,參數(shù)仍會得到較大的更新,同時加入L2正則化避免過擬合,經(jīng)過多次實驗選擇權(quán)重衰減系數(shù)為1e-4.

梯度下降算法需要指定一個學(xué)習(xí)率作為權(quán)重更新步長的控制因子,本文模型基于動態(tài)變化的固定步長衰減策略在訓(xùn)練初期保持0.2的學(xué)習(xí)率,使網(wǎng)絡(luò)迅速收斂,訓(xùn)練過程中按照式(14)間隔5次動態(tài)更新學(xué)習(xí)率,使模型隨著輪次的增加收斂到最優(yōu)解.

η=γ×ηl

(14)

式(14)中:η表示更新后學(xué)習(xí)率,ηl表示當(dāng)前學(xué)習(xí)率,γ為學(xué)習(xí)率衰減的乘法因子,經(jīng)過多次實驗,γ值設(shè)置為0.8.

訓(xùn)練數(shù)據(jù)總量約9.4萬,每次隨機選擇32個樣本作為輸入,即mini-batch的大小是32,通常在imagenet上的訓(xùn)練輪次為90[14],由于數(shù)據(jù)均勻分布,不存在長尾效應(yīng),因此該網(wǎng)絡(luò)的訓(xùn)練輪次為150,可以使模型收斂到最佳.

圖11顯示了FoodResNet18在訓(xùn)練過程中,隨著訓(xùn)練輪數(shù)的增加,網(wǎng)絡(luò)精度和收斂過程的變化情況.可以很明顯的看出,在前40輪訓(xùn)練過程中,訓(xùn)練準(zhǔn)確率和測試準(zhǔn)確率提升迅速,之后訓(xùn)練準(zhǔn)確率趨于100%,而測試準(zhǔn)確率也基本穩(wěn)定在85.26%以上; 損失函數(shù)在前60次下降較快,之后緩慢下降,直至120次時損失值趨于0;根據(jù)訓(xùn)練準(zhǔn)確率、測試準(zhǔn)確率和交叉熵值變化,可以看出本文模型是有效的.

圖11 FoodResNet18模型訓(xùn)練結(jié)果

4.2 對比性分析

表1選擇了目前常用的Arch-D[15]、DenseFood[9]、ResNet101、ResNet-18、ResNet-34和本文方法優(yōu)化的FoodResNet18、FoodResNet34在識別精度、模型占用空間的對比.

表1 基于VIREO Food-172數(shù)據(jù)集的食品分類網(wǎng)絡(luò)模型精度對比

由表1可以看出,在VIREO Food-172數(shù)據(jù)集上,本文模型在識別精度上均優(yōu)于現(xiàn)有CNN中餐圖像識別網(wǎng)絡(luò).對比FoodResNet18模型和FoodResNet34模型,雖然FoodResNet34較FoodResNet18的top-1和top-5精度更高,但相差僅不到1%,占用空間卻多出近一倍.綜合分析,F(xiàn)oodResNet18模型平衡了識別精度和資源消耗,識別精度比ResNet-18提升9.89%,且比ResNet101、ResNet-34分別提升10.06%、16.33%.實驗結(jié)果驗證了本文模型的有效性,相比其他網(wǎng)絡(luò),本文提出的改進方案能夠有針對性的解決中餐圖像由于細(xì)節(jié)丟失和類間差異小、類內(nèi)差異大等屬性所導(dǎo)致的識別率不高的問題,使用增強塊和深淺層共用的注意力模塊分別提升中餐圖像局部和全局的特征提取能力,使中餐圖像識別在占用空間不大的同時錯誤率下降5.12%,由此看出本文方法在邊緣設(shè)備上具有較好的應(yīng)用前景.

4.3 消融實驗

為了驗證FoodResNet18模型各個模塊的有效性,對基于ResNet-18網(wǎng)絡(luò)僅使用增強塊改進的模型(ResNet18+E)和基于ResNet-18網(wǎng)絡(luò)僅使用注意力模塊改進的模型(ResNet18+A)分別實驗,實驗結(jié)果如表2所示.

表2消融實驗對比

從表2可以看出,增強塊和注意力模塊都能有效提升網(wǎng)絡(luò)的識別性能,識別精度相比ResNet-18分別提升8.7%和7.83%,增強塊和注意力模塊都增加了網(wǎng)絡(luò)的參數(shù)量, FoodResNet18模型有效融合以上兩個模塊使得參數(shù)量比ResNet-18+E僅增加3.9%,且Top-1識別進度進一步提升到85.26%,Top-5精度達(dá)96.21%.

5 結(jié)論

為了提升食品圖像識別性能,本文對CNN方法進行了優(yōu)化設(shè)計,提出了一種適用于中餐圖像識別的FoodResNet18模型,模型使用深-淺層共用的注意力模塊最大化增強全局特征,使用增強塊在降低退化現(xiàn)象的同時實現(xiàn)局部特征增強.最后,經(jīng)過實驗驗證了模型的有效性,在保證識別性能不降低的同時,F(xiàn)oodResNet18模型比層數(shù)更多的ResNet101、FoodResNet34模型資源消耗節(jié)省了47.7%和48.5%,表明本文提出的FoodResNet18模型在中小規(guī)模的食品圖像識別系統(tǒng)中有較好的應(yīng)用前景.

猜你喜歡
圖像識別中餐注意力
海外中餐繁榮基地齊聚揚州,共商海外中餐發(fā)展
華人時刊(2023年9期)2023-06-20 08:31:48
以食為“橋”推動中餐文化走向世界
華人時刊(2023年9期)2023-06-20 08:31:38
讓注意力“飛”回來
基于Resnet-50的貓狗圖像識別
電子制作(2019年16期)2019-09-27 09:34:50
高速公路圖像識別技術(shù)應(yīng)用探討
圖像識別在物聯(lián)網(wǎng)上的應(yīng)用
電子制作(2018年19期)2018-11-14 02:37:04
圖像識別在水質(zhì)檢測中的應(yīng)用
電子制作(2018年14期)2018-08-21 01:38:16
河中餐廳
“揚眼”APP:讓注意力“變現(xiàn)”
傳媒評論(2017年3期)2017-06-13 09:18:10
A Beautiful Way Of Looking At Things
淄博市| 会宁县| 都江堰市| 杨浦区| 如皋市| 太保市| 江津市| 吉林省| 丰原市| 缙云县| 砚山县| 屯留县| 监利县| 湾仔区| 新巴尔虎左旗| 金沙县| 巴林右旗| 昭平县| 武隆县| 西吉县| 嫩江县| 临安市| 武乡县| 晴隆县| 黄石市| 宿松县| 邢台市| 沾益县| 平阴县| 海城市| 福贡县| 博爱县| 新巴尔虎右旗| 长武县| 富阳市| 莱州市| 唐河县| 威海市| 剑川县| 永善县| 四川省|