摘要:傳統(tǒng)的圖像識(shí)別技術(shù)在食物識(shí)別上有著準(zhǔn)確率不高、計(jì)算速度慢的缺陷。深度學(xué)習(xí)自誕生以來(lái),憑借其強(qiáng)大的機(jī)器學(xué)習(xí)特性,極大地推動(dòng)了圖像識(shí)別的發(fā)展。近年來(lái),隨著人工智能的高度發(fā)展,深度學(xué)習(xí)得到了更深入的發(fā)展。因此,采用深度學(xué)習(xí)技術(shù)進(jìn)行食物識(shí)別的研究,既有實(shí)現(xiàn)的基礎(chǔ),又有實(shí)際的意義。本文通過(guò)設(shè)計(jì)基于優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)算法的移動(dòng)端食物識(shí)別系統(tǒng),解決了食物識(shí)別系統(tǒng)在移動(dòng)設(shè)備中準(zhǔn)確率低、存儲(chǔ)量高的難題,為食物識(shí)別技術(shù)的再發(fā)展提供借鑒與參考。
關(guān)鍵詞:移動(dòng)端;食物識(shí)別;深度學(xué)習(xí);CNN
食物是人類賴以生存的生命之源。隨著生活質(zhì)量的提高與科技水平的快速發(fā)展,人們對(duì)食物的需求從攝入食物的數(shù)量向質(zhì)量與營(yíng)養(yǎng)均衡上轉(zhuǎn)移。如何實(shí)現(xiàn)均衡飲食,在保證人體營(yíng)養(yǎng)需求充分且均衡的前提下使食物的利用率達(dá)到最大化,從而達(dá)到滿足各類人對(duì)食物攝取的個(gè)性化需求、減少食物浪費(fèi)的目的,將成為當(dāng)今飲食文化與科技創(chuàng)新結(jié)合的重難點(diǎn)與研究的目標(biāo)[1]。而遺傳算法、蟻群算法、神經(jīng)網(wǎng)絡(luò)等復(fù)雜人工智能算法的應(yīng)用無(wú)疑為食物識(shí)別技術(shù)注入新的活力、提供研究方向,也讓移動(dòng)端食物識(shí)別系統(tǒng)的設(shè)計(jì)成為可能。
1.傳統(tǒng)圖像識(shí)別技術(shù)與食物識(shí)別
1.1傳統(tǒng)圖像識(shí)別技術(shù)在食物識(shí)別的應(yīng)用
圖像識(shí)別是人工智能應(yīng)用于實(shí)際生活的重要領(lǐng)域之一,其主要依托圖像采集、圖像預(yù)處理、特征提取、圖像識(shí)別等四個(gè)關(guān)鍵步驟來(lái)進(jìn)行圖像的傳統(tǒng)識(shí)別。自上世紀(jì)50年代開(kāi)始,圖像識(shí)別就從文字識(shí)別層面發(fā)展起來(lái),經(jīng)過(guò)數(shù)字圖像處理與識(shí)別的過(guò)渡階段,向著更精細(xì)化的物體識(shí)別深入,并廣泛地應(yīng)用于各類物體之中,其中以人物識(shí)別最為廣泛,并隨著人類的生活需求,擴(kuò)展到對(duì)食物的識(shí)別中[2]。傳統(tǒng)的圖像識(shí)別技術(shù)主要依賴于圖像分割方法如直方圖、遺傳算法或小波變換的實(shí)現(xiàn)[3]。
1.2傳統(tǒng)圖像識(shí)別技術(shù)應(yīng)用的優(yōu)劣勢(shì)
傳統(tǒng)圖像識(shí)別技術(shù)的圖像分割方法在食物識(shí)別上的準(zhǔn)確性和精確度并不顯著,還遠(yuǎn)遠(yuǎn)達(dá)不到人們對(duì)食物識(shí)別的要求。但相比于人工識(shí)別手段,利用智能算法,可節(jié)省大量的人工成本,亦是人類在人工智能研究的階段性成果。而經(jīng)過(guò)了較長(zhǎng)時(shí)間的調(diào)試與大量的試驗(yàn),該類技術(shù)保有良好的穩(wěn)定性。由于同一食物的外在特征與內(nèi)在屬性的差異,僅有的缺陷也是在于其較低的食物識(shí)別準(zhǔn)確率。
2.CNN技術(shù)與食物識(shí)別
2.1CNN技術(shù)在食物識(shí)別的應(yīng)用可行性
CNN(卷積神經(jīng)網(wǎng)絡(luò))算法[4]擁有輸入、卷積、激活、池化、全連接FC等五個(gè)不同類別的層次結(jié)構(gòu),是多分類的神經(jīng)網(wǎng)絡(luò)。其中,卷積層通過(guò)局部感知來(lái)提取圖片的每個(gè)特征從而形成對(duì)圖片的全局訓(xùn)練,并利用權(quán)值共享機(jī)制來(lái)減少模型計(jì)算參數(shù);池化層通過(guò)降低圖片特征維度來(lái)降低過(guò)擬合風(fēng)險(xiǎn)、提高模型的容錯(cuò)性;由于食物識(shí)別需要大量測(cè)試,這就需要隨機(jī)刪除神經(jīng)網(wǎng)絡(luò)中的部分神經(jīng)元來(lái)解決過(guò)擬合難題,這同時(shí)提高圖像的識(shí)別精度。因此,從理論上說(shuō),CNN技術(shù)完全適用于食物識(shí)別系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā),并且擁有廣闊的開(kāi)發(fā)前景與應(yīng)用市場(chǎng)。
2.2CNN技術(shù)應(yīng)用的優(yōu)劣勢(shì)
CNN相比于傳統(tǒng)圖像處理技術(shù),因其能隨機(jī)刪除神經(jīng)元來(lái)保證高度擬合的復(fù)雜特性,更能滿足人們對(duì)食物識(shí)別的準(zhǔn)確度要求。但由于大量的訓(xùn)練和龐大的計(jì)算量,往往難以移植到移動(dòng)設(shè)備。為此,在保證食物識(shí)別準(zhǔn)確率的同時(shí),降低計(jì)算量、精簡(jiǎn)模型成為應(yīng)用到移動(dòng)設(shè)備的首要研究難題。
3.CNN技術(shù)在移動(dòng)端食物識(shí)別中的優(yōu)化設(shè)計(jì)
CNN食物識(shí)別技術(shù)結(jié)合食物顏色和形狀的兩大特征來(lái)分類食物。為降低移動(dòng)端的計(jì)算量并顯著提高分辨率,應(yīng)針對(duì)原始CNN算法進(jìn)行如下優(yōu)化:其一,利用DepthWise Separable(深度可分離卷積)方式卷積來(lái)降低計(jì)算量和存儲(chǔ)空間,使技術(shù)應(yīng)用于小空間的移動(dòng)設(shè)備上;其二,基于螢火蟲(chóng)算法的迭代尋優(yōu)特性來(lái)優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)的初始閾值和權(quán)值,提高CNN的準(zhǔn)確率。
3.1針對(duì)降低CNN計(jì)算量的優(yōu)化
根據(jù)VGG思想和特點(diǎn),降低CNN計(jì)算量的原理就是將大卷積轉(zhuǎn)化為多個(gè)串聯(lián)的相同小卷積來(lái)減少計(jì)算次數(shù),從而達(dá)到降低總運(yùn)算量的目的。Depthwise Separable卷積[5]對(duì)降低計(jì)算量有顯著效果,其主要分為兩步,先是進(jìn)行Depthwise卷積,再是進(jìn)行Pointwise卷積。區(qū)別與常規(guī)卷積的每個(gè)卷積核對(duì)每個(gè)通道都進(jìn)行計(jì)算的方式,Depthwise卷積中每個(gè)卷積核只對(duì)每個(gè)通道進(jìn)行一次計(jì)算。由上可知,計(jì)算的通道數(shù)沒(méi)有改變,DW卷積各通道間的信息沒(méi)有得到交換,而引入Pointwise卷積可以保留關(guān)鍵信息、剔除冗余信息,這極大地降低了計(jì)算開(kāi)銷。
這里假設(shè)CNN模型將物體DF*DF*M切割成N個(gè)DK*DK*M的大卷積核,DW再將每個(gè)大卷積核轉(zhuǎn)化為M個(gè)DK*DK*1的小卷積核,令DK*DK*1的張量為DN*DN,通過(guò)常規(guī)卷積CS和DWS卷積出來(lái)的計(jì)算開(kāi)銷分別為:
由上述結(jié)果可知,DWS卷積通過(guò)Depthwise和Pointwise兩種卷積結(jié)合作用的方式,能在保留各通道信息的同時(shí),降低計(jì)算開(kāi)銷。
3.2針對(duì)提高CNN分辨率的優(yōu)化
螢火蟲(chóng)算法[6]是復(fù)雜性的啟發(fā)式優(yōu)化算法,通過(guò)螢火蟲(chóng)種群的迭代尋優(yōu)機(jī)制,搜索最佳的目標(biāo)值,使其更逼近于最優(yōu)解,既可進(jìn)行單純算法的獨(dú)立使用,亦可與其他算法混合使用,常見(jiàn)的有離散螢火蟲(chóng)算法、混合算法、Memetic算法等。因此,它的應(yīng)用領(lǐng)域非常廣泛。本文通過(guò)利用螢火蟲(chóng)算法對(duì)CNN算法進(jìn)行改進(jìn),可優(yōu)化CNN因易陷入局部?jī)?yōu)解而造成整體識(shí)別精度較低的缺點(diǎn)。具體的優(yōu)化步驟如下所示:
初步設(shè)置螢火蟲(chóng)種群的各參數(shù):螢火蟲(chóng)種群大小N、種群最大可迭代次數(shù)M等;
初步設(shè)置卷積神經(jīng)網(wǎng)絡(luò)的各參數(shù):權(quán)值、閾值、隱含層個(gè)數(shù)等;
由CNN的誤差RMSE計(jì)算螢火蟲(chóng)個(gè)體的絕對(duì)發(fā)光強(qiáng)度,并將發(fā)光強(qiáng)度進(jìn)行排序,構(gòu)造個(gè)體間的相對(duì)吸引度函數(shù)[7];
判斷螢火蟲(chóng)個(gè)體是否移動(dòng),若移動(dòng),則根據(jù)上述函數(shù)更新個(gè)體間相對(duì)位置。其中,每次群體位置更新后,最亮的螢火蟲(chóng)位置為;
若迭代次數(shù)達(dá)到最大迭代次數(shù)M,則停止迭代。否則,繼續(xù)循環(huán)迭代;
將迭代后的最優(yōu)螢火蟲(chóng)個(gè)體代入到CNN中計(jì)算結(jié)果并進(jìn)行排序,并將最大亮度的螢火蟲(chóng)個(gè)體的權(quán)值和閾值代入網(wǎng)絡(luò)進(jìn)行訓(xùn)練[8]。
通過(guò)以上優(yōu)化過(guò)程,可顯著提高CNN技術(shù)在食物識(shí)別中的分辨率,提高計(jì)算性能。
4.基于優(yōu)化CNN技術(shù)的移動(dòng)端食物識(shí)別系統(tǒng)
優(yōu)化CNN技術(shù)以達(dá)到適應(yīng)食物識(shí)別系統(tǒng)在移動(dòng)設(shè)備中低存儲(chǔ)量、高分辨率的目標(biāo)。針對(duì)以上兩點(diǎn)進(jìn)行優(yōu)化,首先進(jìn)行技術(shù)的計(jì)算量改進(jìn),通過(guò)改良模型的卷積方式來(lái)降低整體的計(jì)算次數(shù)來(lái)達(dá)到效果,這是針對(duì)算法的內(nèi)部?jī)?yōu)化;其次進(jìn)行算法的混合使用,善用優(yōu)化算法改善網(wǎng)絡(luò)本身計(jì)算缺陷,這是針對(duì)算法的外部?jī)?yōu)化。兩種優(yōu)化方式互不干擾,共同優(yōu)化整個(gè)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。移動(dòng)端食物識(shí)別系統(tǒng)的整體設(shè)計(jì)理念如下圖所示:
5.結(jié)論
通過(guò)以上對(duì)移動(dòng)端食物識(shí)別系統(tǒng)的詳細(xì)設(shè)計(jì),本文的研究?jī)?nèi)容可概括為以下三點(diǎn):
傳統(tǒng)的機(jī)器學(xué)習(xí)圖像識(shí)別有其存在的研究意義與參考價(jià)值,是未來(lái)研究方向的鋪墊與借鑒的里程碑;
CNN本身強(qiáng)大的識(shí)別優(yōu)勢(shì)和可混合性使其在食物識(shí)別有著巨大的應(yīng)用前景;
CNN智能技術(shù)與傳統(tǒng)識(shí)別技術(shù)不是對(duì)立的,而是基礎(chǔ)與擴(kuò)展的統(tǒng)一關(guān)系,兩者各有特點(diǎn),而技術(shù)替代并非一朝一夕,更需要大量的嘗試與訓(xùn)練。
本文驗(yàn)證了引入CNN技術(shù)設(shè)計(jì)食物識(shí)別系統(tǒng)的方案是可行的,并且對(duì)其進(jìn)行針對(duì)性改進(jìn)與優(yōu)化,使其良性地適用于移動(dòng)設(shè)備也是可行的。但從理論應(yīng)用到完全技術(shù)實(shí)現(xiàn),需要不斷地改進(jìn)與優(yōu)化,探究CNN的無(wú)限創(chuàng)造性和包容性,打造更為適用的移動(dòng)端食物識(shí)別系統(tǒng)。
參考文獻(xiàn):
[1]汪聰. 基于機(jī)器視覺(jué)的菜品智能識(shí)別技術(shù)研究[D].華南理工大學(xué),2019.
[2]張家怡.圖像識(shí)別的技術(shù)現(xiàn)狀和發(fā)展趨勢(shì)[J].電腦知識(shí)與技術(shù),2010,6(21):6045-6046.
[3]楊迪. 基于隨機(jī)森林和SVM的食物圖像識(shí)別的研究[D].安徽理工大學(xué),2017.
[4]楊洪臣,郝韻.卷積神經(jīng)網(wǎng)絡(luò)的人臉超分辨率重建算法[J].中國(guó)刑警學(xué)院學(xué)報(bào),2020(05):104-109.
[5]鞠聰,李濤.基于深度可分離卷積結(jié)構(gòu)的人臉表情識(shí)別研究[J].電腦與電信,2020(06):1-5.
[6]紀(jì)子龍,冀俊忠,劉金鐸,楊翠翠.基于螢火蟲(chóng)算法的腦效應(yīng)連接網(wǎng)絡(luò)學(xué)習(xí)方法[J].哈爾濱工業(yè)大學(xué)學(xué)報(bào),2019,51(05):76-84.
[7] LOKESH J,RAHUL K.Discover opinion leader in online social network using firely algorithm [J]. Expert Syst Appl,2019,122:1-15.
[8]孫永盛,劉鎮(zhèn).螢火蟲(chóng)算法優(yōu)化的卷積網(wǎng)絡(luò)在圖像顯著性檢測(cè)中的應(yīng)用[J].計(jì)算機(jī)與數(shù)字工程,2020,48(06):1474-1478.
基金項(xiàng)目:本文屬2019年國(guó)家級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目:“基于CNN的移動(dòng)端食物識(shí)別系統(tǒng)設(shè)計(jì)”(編號(hào):201910378329)研究成果。
作者簡(jiǎn)介:王永奇(1999-)男,漢族,安徽淮南人,單位:安徽財(cái)經(jīng)大學(xué)管理科學(xué)與工程學(xué)院,2017級(jí)本科生,計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)。