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

?

基于輕量化YOLOv5的新型菜品識別網(wǎng)絡(luò)

2024-03-21 02:25張成涵宇林鈺哲譚程珂王俊帆顧燁婷董哲康高明煜
計算機應(yīng)用 2024年2期
關(guān)鍵詞:開發(fā)板剪枝菜品

張成涵宇,林鈺哲,譚程珂,王俊帆,2,顧燁婷,2,董哲康,2,高明煜,2*

(1.杭州電子科技大學 電子信息學院,杭州 310018;2.浙江省裝備電子研究重點實驗室(杭州電子科技大學),杭州 310018)

0 引言

隨著人工智能等新技術(shù)與餐飲行業(yè)的結(jié)合日益緊密,餐飲行業(yè)也逐漸朝著數(shù)字化、智能化方向迭代升級[1],其中智能餐飲系統(tǒng)、餐飲機器人等都是餐飲行業(yè)數(shù)字化、智能化轉(zhuǎn)型的重要產(chǎn)物。同時,由于餐飲企業(yè)的“用工荒”、招人難、人力成本高等問題難以解決,對餐飲企業(yè)的服務(wù)質(zhì)量產(chǎn)生了較大的影響,一系列智能產(chǎn)品的誕生能替代部分餐廳服務(wù)人員的工作,減少勞動力成本;且為了更好地適應(yīng)餐飲行業(yè)的無人化及智能化需求,加快推進餐飲行業(yè)智能化發(fā)展刻不容緩。同時,隨著人工智能領(lǐng)域的發(fā)展,神經(jīng)網(wǎng)絡(luò)在菜品識別領(lǐng)域上的應(yīng)用也越來越廣泛。為了更好地完成實際菜品識別的功能,近年研究得到的菜品識別模型準確率正不斷提高,并且為了更好地將菜品識別模型應(yīng)用于實際場景中,也出現(xiàn)了一系列減小模型尺寸、提高識別速度的研究,為本文進一步推動菜品識別模型輕量化的實際應(yīng)用奠定了基礎(chǔ)。

劉麗芳急于將這一結(jié)果告訴丈夫彭偉民,一遍接一遍地撥打他的手機號碼。彭偉民始終不接。無奈之下的劉麗芳只能給他編發(fā)了一條短信。

Kawano 等[2]通過結(jié)合傳統(tǒng)機器學習的HOG(Histogram of Oriented Gradient)算法以及卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)提取菜品圖片的圖像特征,在其自主創(chuàng)建的日式菜品數(shù)據(jù)集UEC-Food100 中top-1 準確率達到72.26%。蘇國煬[3]提出了一種基于雙線性結(jié)構(gòu)的雙流卷積神經(jīng)網(wǎng)絡(luò),通過結(jié)合全局中餐菜品圖像以及局部中餐菜品圖像分別提取圖像的全局特征和局部特征識別菜品,在ChineseFoodNet 數(shù)據(jù)集上達到了81.14%的準確率。邊競等[4]提出基于Inception-V3 模型的中餐菜品標簽分類模型,對VIDEO Food-172 數(shù)據(jù)集進行標簽分類,完成了中餐菜品名稱及成分的識別工作,其中菜品名稱準確率為80.85%,菜品原料識別率為56.26%。王曉朋[5]分別使用基于目標邊界框再定位、結(jié)合多感受野注意力與特征通道加權(quán)等方式研究如何有效提高菜品識別準確率,在自主創(chuàng)建的35 種中餐菜品數(shù)據(jù)集中最高可達85.28%的準確率。吳正東[6]提出了基于注意力機制的雙線性網(wǎng)絡(luò),并創(chuàng)新性地將注意力機制、通道注意力機制以及混合注意力機制分別作為雙線性網(wǎng)絡(luò)的兩路分支在VIREO Food-172 菜品數(shù)據(jù)集上進行菜品識別,最高可以達到84.51%的準確率。何志洋[7]以ResNet-50 作為Backbone 搭建神經(jīng)網(wǎng)絡(luò),通過加入可變形卷積和CBAM 注意力機制模塊等,在自主創(chuàng)建的菜品數(shù)據(jù)集上可以達到91.85%的top-1 準確率。綜合上述研究成果,應(yīng)用一系列機器學習以及深度學習的方法可以有效提高模型的菜品識別準確率,但同時也會導致模型結(jié)構(gòu)愈發(fā)復雜,深度不斷增加,從而降低模型的識別速度,難以應(yīng)用在實際的硬件設(shè)備中。

朱瑤[8]設(shè)計了改進的YOLOv3-ShuffNet 完成菜品檢測,再使用ResNet-50 在Linux 系統(tǒng)一體機上實現(xiàn)對菜品的識別分類,其中菜品檢測模型大小為191 MB。朱凌云[9]利用Transformer 模型進行少樣本情況下的菜品識別,在少樣本的Food-270 數(shù)據(jù)集上準確率為77%,檢測精度和檢測速度相較類差異性對比學習有明顯提高。姚華瑩等[10]設(shè)計了一種輕量型卷積神經(jīng)網(wǎng)絡(luò)MobileNetV2-pro 實現(xiàn)菜品的識別分類工作,通過引入通道混洗、注意力機制提高網(wǎng)絡(luò)的檢測能力的同時利用隨機擦除等圖像預處理技術(shù)處理菜品圖像,提高系統(tǒng)的泛化能力。在FOOD-101 數(shù)據(jù)集上可以達到76.82%的準確率,且模型大小僅為6.98 MB。鄧志良等[11]提出了一種基于改進殘差網(wǎng)絡(luò)的菜品識別模型RNA-TL(ResNet with Attention and Triplet Loss),通過使用多尺度特征以及注意力機制提取圖像深層的信息特征,并使用了三元組損失和支持向量機(Support Vector Machine,SVM)進行分類操作,能在FOOD-208 和FOOD-292 數(shù)據(jù)集上分別達到83.62% 和90.32%的準確率,且訓練時間相較于同等大小的網(wǎng)絡(luò)模型也更少。上述研究通過改進模型結(jié)構(gòu)有效提升了識別速度,但同時也導致菜品識別準確率有了一定的下滑,依舊難以滿足實際的需求。因此在保證模型原有的識別精度的基礎(chǔ)上盡可能提高模型的識別速度,減小模型尺寸,使它可以流暢應(yīng)用在實際的硬件設(shè)備中成為本文亟待解決的問題。

基于以上文獻以及實際的研究,本文提出了一系列的創(chuàng)新。針對文獻[2-7]中網(wǎng)絡(luò)識別準確率較高,但存在結(jié)構(gòu)復雜、冗余參數(shù)較多、識別速度較慢等問題,本文在保持模型原有識別準確率的基礎(chǔ)上對其進行輕量化,提高了識別速度;針對文獻[8-11]中網(wǎng)絡(luò)無法兼具識別準確性與實時性,對硬件設(shè)備算力要求較高、難以實際應(yīng)用等問題,本文基于Qt 軟件將它移植至嵌入式開發(fā)板內(nèi)并進行優(yōu)化,降低成本使它可以有效應(yīng)用于實際餐飲場景中。

今年9月,石屏縣脫貧出列,成為全省15個脫貧摘帽的貧困縣之一。為積極響應(yīng)鄉(xiāng)村振興計劃,今年上海方面給予援滇項目資金410.5萬元,用于龍武鎮(zhèn)龍武村功能提升項目及法烏村產(chǎn)業(yè)振興綜合項目,項目建成之后,將促進兩個村在辦公服務(wù)、建設(shè)多功能陣地、強化產(chǎn)業(yè)發(fā)展方面的條件得到較好改善。此外,省投資促進局積極開展教育幫扶,借助上海市資金、平臺條件,加強本地招商引資干部走出去培訓,與上海知名學府建立長期的干部培訓合作關(guān)系,舉辦招商引資專題培訓班,進一步開闊干部視野,創(chuàng)新工作思路,學習發(fā)達地區(qū)招商引資工作經(jīng)驗,更好地服務(wù)于本職工作。

1 智能出餐系統(tǒng)搭建

為驗證新型菜品識別網(wǎng)絡(luò)的輕量性與實用性,本文將它移植至開發(fā)板內(nèi)后,與機械臂等硬件設(shè)備相結(jié)合,構(gòu)建了智能出餐系統(tǒng),初步實現(xiàn)落地應(yīng)用。該系統(tǒng)主要由三大子系統(tǒng)組成,分別為云端服務(wù)器系統(tǒng)、主控系統(tǒng)、從控系統(tǒng),具體如圖1 所示。

圖1 智能出餐系統(tǒng)構(gòu)建方案Fig.1 Construction scheme of intelligent service system

云端服務(wù)器系統(tǒng)采用基于微信公眾號平臺的WebApp應(yīng)用方案實現(xiàn)用戶在移動端上的點餐工作,在阿里云服務(wù)器中設(shè)計并搭載數(shù)據(jù)庫和相關(guān)前后端界面,實現(xiàn)用戶的點餐功能以及餐廳管理人員對系統(tǒng)的控制維護。主控系統(tǒng)以瑞薩核心開發(fā)板RZ/G2L 作為核心。根據(jù)訂單信息,通過攝像頭以及部署在開發(fā)板上的新型菜品識別模型識別傳入的菜品視頻流,完成識別后會將菜品結(jié)果以及坐標信息傳輸至從控系統(tǒng),實現(xiàn)上位控制。從控系統(tǒng)使用固定在機械臂頭部的勺子作為打菜工具,通過上位機總線信號改變舵機的路線坐標,完成不同的打菜動作,完成后便會向后臺發(fā)送命令,結(jié)束訂單。主控系統(tǒng)與云端服務(wù)器系統(tǒng)通過cURL(commandline Uniform Resource Locator)進行網(wǎng)絡(luò)通信,主控系統(tǒng)與從控系統(tǒng)之間則通過GPIO(General Purpose Input Output)按照自定義協(xié)議進行通信,實現(xiàn)信息的交互。

土墻日光溫室在降雨后,特別是強降水過程時,常常形成溫室前后積水,主要原因是溫室墻體筑造時土方工程量大,如就近取土,畦面下沉幅度小,不異地取土就會造成溫室就邊取土,形成低洼,如沒有良好的排水渠道,雨水易匯集到溫室前后低洼處,倒灌進入溫室,或長期浸泡墻體,對溫室造成危害。

本文的主要貢獻在于依據(jù)實際餐廳出餐需求,即檢測時要在保證識別精度的前提下盡可能提高識別速率,基于YOLOv5 提出了一種新型的菜品識別模型。首先為了提高模型的識別精度,本文對原網(wǎng)絡(luò)結(jié)構(gòu)進行了改進,通過對淺層特征圖與深層特征圖的拼接,豐富網(wǎng)絡(luò)對圖像的特征表示,提高圖像特征檢測的精度,增強特征提取能力。其次通過強化網(wǎng)絡(luò)對特征圖的采樣能力,擴大感受野范圍,提高特征圖分辨率以及菜品識別的精確度。之后為提高模型實際菜品識別的速度,本文還對YOLOv5 模型進行了輕量化處理,減小了模型尺寸,減少了參數(shù)量,有效提高了模型的識別速度,從而能夠滿足菜品識別的時效性需求,并降低后續(xù)對嵌入式開發(fā)板性能的損耗,使識別程序能夠長時間地流暢運行。

2 新型菜品識別網(wǎng)絡(luò)搭建與移植

本文為了保證實際中餐菜品識別的高準確率[12-14],最終決定選用YOLOv5 模型為基本框架完成菜品識別的工作。但由于YOLOv5 模型本身參數(shù)量較多,實際進行菜品識別時會出現(xiàn)嵌入式開發(fā)板運算量大、識別速度慢的問題。因此,本文在原模型的基礎(chǔ)上進行一系列輕量化操作[15-16],包括模型剪枝以及模型量化,在保證原有高準確率的同時,提高模型的識別速度并減小模型整體的尺寸,從而使它在移植到嵌入式開發(fā)板后,可以較為流暢地進行使用。

2.1 模型剪枝

由于神經(jīng)網(wǎng)絡(luò)模型從卷積層到全連接層存在大量冗余參數(shù),這些神經(jīng)元在實際模型運行過程中對結(jié)果影響較小,但卻極大地降低了模型的運行速率。為了更好地提高菜品識別模型實際的識別速度,本文使用模型剪枝技術(shù)篩除網(wǎng)絡(luò)中這類影響較小的神經(jīng)元。

針對新型菜品識別網(wǎng)絡(luò),本文使用結(jié)構(gòu)化剪枝中的通道剪枝實現(xiàn)速度的優(yōu)化,它的核心思想是去除模型結(jié)構(gòu)中影響較小的通道以減少整體的運算量。在Wen 等[17]的研究中可知,如果深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)中卷積層的權(quán)值形成了一個四維張量其中Nl、Cl、Ml、Kl為第l個權(quán)重張量中的卷積核數(shù)、通道數(shù)、高和寬。實現(xiàn)DNN 結(jié)構(gòu)稀疏化規(guī)范的公式如下:

其中:W代表的是DNN 中的權(quán)值矩陣,ED(W)表示數(shù)據(jù)上的損失;R(·)表示每個權(quán)值的非結(jié)構(gòu)化正則化項;R(g·)表示應(yīng)用于每一層的結(jié)構(gòu)化稀疏項。

由于模型網(wǎng)絡(luò)的寬度決定了輸出維度,即特征的豐富程度,僅選擇少量維度進行修剪,會限制模型的壓縮率和精度。故在此研究的基礎(chǔ)上,為了保證菜品識別的精度,本文在實際模型剪枝時將維度選擇拓展到了4 個維度,包括filter、channels、filter shapes 和depth 進行剪枝,而對這四個維度剪枝率的分配,本文則通過將模型精度與各維維數(shù)之間的關(guān)系化為一個多項式問題[18]進行求解,即

但由于批歸一化(Batch Normalization,BN)層中的縮放因子γ與卷積層中的每個通道都有所關(guān)聯(lián),本文在對菜品識別模型剪枝前還需進行稀疏訓練,自動識別出對最終結(jié)果影響較小的通道,同時修剪縮放因子值較小的通道,從而獲得相對更緊湊的模型。這些剪枝后的模型相較于原網(wǎng)絡(luò)結(jié)構(gòu)會變得更窄,在模型大小、內(nèi)存和計算上也會變得更加緊湊。雖然修剪后可能會降低部分性能,但這些可以通過微調(diào)進行一定的補償,從而能基本達到與未經(jīng)過剪枝的網(wǎng)絡(luò)相當?shù)淖R別精度[19]。具體公式如下所示:

本文通過隨機梯度下降法學習Supermask[21]。針對每一個要剪枝的權(quán)值矩陣W,都將創(chuàng)建一個與W形狀相同的門控矩陣G。G將決定哪個參數(shù)ω∈W將參與正向執(zhí)行與反向傳播,上標(·)b則表示門控矩陣G的一個二進制變量。對于一個R層的網(wǎng)絡(luò),將有兩個參數(shù):門控參數(shù)Φ={G1:R}和網(wǎng)絡(luò)參數(shù)θ={W1:R,B1:R},通過對兩個參數(shù)內(nèi)的元素逐個相乘,可以計算得到權(quán)值參量W':

同時,主要為了解決各級黨的機構(gòu)和人員編制快速膨脹、各級領(lǐng)導班子人員過多、年齡老化的問題,黨中央部門機構(gòu)也進行了改革,黨中央30個直屬機構(gòu)的內(nèi)設(shè)局級機構(gòu)減少了11%,處級機構(gòu)減少了10%,總編制減少17.3%,各部門領(lǐng)導職數(shù)減少15.7%。

其中:Γ(f,c,fs,d;Θ)代表模型精度預測器(Model Accuracy Predictor,MAP)的求解函數(shù);f、c、fs和d分別代表預測得到的filter、channels、filter shapes 和depth 這4 個維度對模型精度的影響量化值;Θ代表MAP 的參數(shù);θijkl為Θ內(nèi)與上述4 個維度相關(guān)的參數(shù)。依據(jù)求解得到的結(jié)果判斷4 個維度對模型精度的影響比例,從而得到對4 個維度剪枝率的分配結(jié)果,并以此對這4 個維度分別進行剪枝。

4.進一步放大我省水稻水產(chǎn)“兩水”資源優(yōu)勢,大力發(fā)展稻漁綜合種養(yǎng),全省大面積推廣“雙水雙綠”技術(shù)規(guī)范,利用國家財政政策性支持資金大面積改造適宜稻田,鼓勵農(nóng)業(yè)龍頭企業(yè)流轉(zhuǎn)拋荒的稻田,大面積示范“雙水雙綠”技術(shù),建立公司+農(nóng)戶的農(nóng)業(yè)合作社模式,打造綠色水稻、綠色水產(chǎn)的新模式。

實際的代碼運行環(huán)境均為Anaconda 所創(chuàng)建虛擬環(huán)境,使用pytorch1.7.1 以及python3.7 進行代碼的編寫,并使用cuda11.7 來加速模型的訓練。云端服務(wù)器通過Tomcat、MySQL 以及Redis 部署智能出餐系統(tǒng)的前后臺界面以及實際菜品的數(shù)據(jù)庫;PC 端運行使用Inter Core i7-10875H(2.3 GHz)CPU 以及NVIDIA GeForce RTX 2060 進行模型訓練,并最終將得到的模型移植進入瑞薩RZ/G2L 開發(fā)板內(nèi)進行系統(tǒng)的搭建與測試。

Joan Rubin認為“學習策略是語言學習者用以獲取知識的技術(shù)或手段?!盵14]她指出,有意識地采用學習策略的學習者能夠幫助自己習得第二語言。按照她的研究,優(yōu)秀語言學習者具備的條件之一就是要在犯錯中提高自己的語言糾錯意識,不斷調(diào)整自己的學習策略。

其中:zin和zout分別為BN 層的輸入和輸出;В 指代現(xiàn)在的minibatch;μB和σB為輸入激活的平均值和標準差值;γ和β是可訓練的仿射轉(zhuǎn)換參數(shù),這樣的改變提供了將歸一化激活線性轉(zhuǎn)換回任何尺度的可能性,同時沒有給網(wǎng)絡(luò)帶來額外損耗。

實際訓練時首先對菜品識別模型中BN 層的γ施加L1 正則約束,使模型可以朝著結(jié)構(gòu)性稀疏的方向調(diào)整參數(shù)。此時BN 層的γ的作用類似于信息流通道的開關(guān)系數(shù),它可以控制信息流通道的開關(guān)閉合。在完成稀疏訓練或者正則化后,便按照既定的剪枝率δ對模型進行剪枝操作,從而能夠生成低存儲占用的精簡模型,并大幅提升菜品識別速率。為避免剪枝過量導致識別準確率有較大損失,本文將剪枝率δ設(shè)為0.8,確保有20%的通道將被保留,再對模型整體結(jié)構(gòu)進行微調(diào)后進行訓練即可完成整體的模型剪枝。

但以這種剪枝方法得到的菜品識別模型準確率相較于原模型仍有一定的下降。為了進一步提高新型菜品識別網(wǎng)絡(luò)的準確率,本文在原剪枝方法的基礎(chǔ)上引入了一種改進型的Supermask 剪枝方式,使剪枝后得到的菜品識別網(wǎng)絡(luò)可以更符合實際嵌入式設(shè)備的應(yīng)用需求。

Supermask 是一種新型的剪枝網(wǎng)絡(luò)訓練方法,Zhou 等[20]發(fā)現(xiàn)通過迭代進行剪枝循環(huán)產(chǎn)生的模型中,如果將網(wǎng)絡(luò)模型權(quán)重隨機初始化后作為原始模型的初始權(quán)重,則網(wǎng)絡(luò)模型識別準確率可以得到比使用剪枝率隨機剪枝后的模型更好的結(jié)果,甚至可以達到與原始網(wǎng)絡(luò)相當?shù)臏蚀_率。這是通過對網(wǎng)絡(luò)權(quán)重應(yīng)用一組精心選擇的Supermask 實現(xiàn)的。

完善校內(nèi)師生創(chuàng)新、創(chuàng)業(yè)激勵機制 依照國家、省、市關(guān)于科研院所等事業(yè)單位人員離職創(chuàng)業(yè)的文件,建立健全教師創(chuàng)業(yè)、創(chuàng)新的配套政策[7],支持有能力的教師走出去創(chuàng)辦企業(yè),在企業(yè)穩(wěn)定后回饋學生實踐和一線教學,實現(xiàn)個人與學?;セ莼ダ灰劳新毥碳瘓F搭設(shè)學生創(chuàng)新創(chuàng)業(yè)平臺,立足行業(yè)一線有前景的項目,從調(diào)研論證、小額金融服務(wù)、辦公場地、用水用電、手續(xù)審批等各方面幫扶學生創(chuàng)新創(chuàng)業(yè),實現(xiàn)從校內(nèi)教學育人到職場育人的轉(zhuǎn)變。

對filter 維度剪枝的優(yōu)化目標是去掉模型結(jié)構(gòu)中對識別結(jié)果影響較小的filter;對channel 維度剪枝的優(yōu)化目標是去掉模型結(jié)構(gòu)中對識別結(jié)果影響較小的channel;對shape 維度剪枝的優(yōu)化目標是通過讀取filter 中所有空間位置的對應(yīng)權(quán)值所構(gòu)成的向量集合后,去除其中部分的向量調(diào)整filter 的形狀,使它可以在更好地提取菜品圖片特征的同時減少網(wǎng)絡(luò)的計算成本;對depth 維度剪枝的優(yōu)化目標是去掉模型結(jié)構(gòu)中對識別結(jié)果不重要的網(wǎng)絡(luò)層,轉(zhuǎn)而使用shortcut 傳遞特征數(shù)據(jù)。其中filter 和channel 維度的剪枝主要減小了網(wǎng)絡(luò)的寬度,filter shape 維度的剪枝主要優(yōu)化了網(wǎng)絡(luò)內(nèi)filter 的形狀,depth 維度的剪枝主要減小了網(wǎng)絡(luò)的深度。再通過對4 個維度向量中跨cl個通道的2D 濾波器空間位置(ml,kl)中所有權(quán)值向量進行處理,減小模型的計算成本,提高識別速度,最終達到整個網(wǎng)絡(luò)的優(yōu)化目標:

但實際上,通過Supermask 進行對菜品識別模型的剪枝較為復雜。為了在保證剪枝效果的前提下簡化剪枝的步驟,本文利用L1正則約束后的Gamma系數(shù)作為稀疏損失,施加一個向下的壓力,讓門控變量Φ變化到指定的稀疏度等級,在訓練結(jié)束時,使大多數(shù)對結(jié)果不重要的權(quán)重的門控參數(shù)大小會小于零。這些負值的門控參數(shù)在理想情況下代表最不重要的權(quán)重,可以在不產(chǎn)生性能影響的情況下被刪除,從而在訓練后得到菜品識別準確率與原模型基本一致的剪枝后模型。

2.2 模型量化

由于YOLOv5 原模型網(wǎng)絡(luò)深度較深,若將它直接移植到嵌入式開發(fā)板上使用時會占據(jù)較大的使用內(nèi)存以及計算資源。因此本文進行了Int8 量化,主要通過存儲以及計算兩個方面進行量化,使它可以使用更少的bit 數(shù)完成原先需要浮點數(shù)存儲的tensor 以及計算工作,使訓練后的菜品識別模型中32 位的單精度浮點型參數(shù)轉(zhuǎn)為8 位的整型參數(shù),從而減小模型體積,提高運算速度。

本文訓練菜品識別模型時使用靜態(tài)量化來實現(xiàn)模型尺寸的壓縮[22-24]。通過少量無標簽校準數(shù)據(jù),采用KL(Kullback-Leibler)散度等方法計算量化比例因子。在進行靜態(tài)量化前還需對縮放因子進行校準,對初步量化后的模型進行部分輸入預測結(jié)果,使模型的縮放因子根據(jù)輸入數(shù)據(jù)的分布進行一定的調(diào)整,直至fine-tuning 完成。

實際對模型量化的操作一般可以用式(7)表示:

在實際對菜品識別模型進行靜態(tài)量化操作時,通過PyTorch 內(nèi)置的函數(shù)將模型結(jié)構(gòu)中的部分網(wǎng)絡(luò)層進行了融合,如Conv 層與BN 層進行融合、Conv 層與線性整流函數(shù)(Rectified Linear Unit,ReLU)層進行融合等減少模型使用的參數(shù)。同時在每個支持量化的模塊中加入兩個觀測器,分別用于監(jiān)測Activation 與Weight,從而能夠在幾次迭代后對數(shù)據(jù)進行統(tǒng)計分析得到scale以及zero_point兩個參數(shù),對模型進行Int8 量化。之后還需將準備好的校驗數(shù)據(jù)輸入到模型進行訓練以獲得模型權(quán)重的量化參數(shù)信息并對它進行一定的調(diào)整,進行模型結(jié)構(gòu)的轉(zhuǎn)換,即可得到Int8 量化后的模型。

具體將fp32 類型模型量化為Int8 類型模型偽代碼如下所示:

偽代碼內(nèi)部的qconfig 用于定義量化時的配置方式;fuse_modules 用于融合代碼內(nèi)部的部分層,使融合后得到的模型能夠在完成基本運算的同時,減少所需要經(jīng)過的層數(shù),從而減少運算量;prepare 用于對每個需要量化的層插入觀測器,并最后通過convert 進行轉(zhuǎn)化得到最終量化后的模型。

經(jīng)過對原YOLOv5 模型的模型輕量化(包括剪枝以及量化)后,實際使用的模型大小從原來的28.501 MB 減小到了6.192 MB,共減小了78%,其能夠更好地部署在嵌入式開發(fā)板中,且識別速度得到了有效提高,實現(xiàn)了輕量化的需求。本文最終得到的改進型YOLOv5 模型架構(gòu)如圖2 所示。

圖2 優(yōu)化后YOLOv5模型架構(gòu)Fig.2 Architecture optimized YOLOv5 model

由于本文針對YOLOv5 模型的優(yōu)化方法包括模型剪枝與模型量化等主要著重于對整體模型結(jié)構(gòu)的處理,通過去除模型內(nèi)冗余的參數(shù)和連接等方式,旨在減少模型的存儲與計算成本以提高模型的識別速度,但這將不可避免地導致識別精度的下降。為了保證新型菜品識別網(wǎng)絡(luò)的高精度,本文還調(diào)整原YOLOv5 模型卷積層數(shù)、卷積核大小和部分超參數(shù)等,使本文提出的新型菜品識別網(wǎng)絡(luò)相較于原有的YOLOv5模型在準確率與識別速度上達到了一個較好的權(quán)衡,同時計算成本的減少使它在硬件設(shè)備中也能夠較為流暢地完成菜品識別的工作。

2.3 模型移植

由于目前的嵌入式開發(fā)板并未完全普及與支持神經(jīng)網(wǎng)絡(luò)模型的直接部署與應(yīng)用,僅有一些高端的邊緣計算設(shè)備如Jetson Nano 等可以對它進行有效的支持并實現(xiàn)一定的硬件加速功能,因此還需要對模型代碼進行一系列調(diào)整才能將它移植到開發(fā)板上實現(xiàn)菜品識別功能。

實際通過在開發(fā)板普遍支持的Qt 軟件上對代碼進行一定的改寫,以O(shè)penCV 為核心代碼框架實現(xiàn)YOLOv5 的菜品識別。之后再運用Oracle VM Virtual Box 虛擬機在瑞薩RZ/G2L 開發(fā)板系統(tǒng)內(nèi)進行配置,并調(diào)用aarch64-poky-linux交叉編譯鏈在開發(fā)板系統(tǒng)上搭建編譯Qt 代碼所需的運行環(huán)境,完成OpenCV 以及一系列Qt 所需要動態(tài)庫的編譯工作,再通過ARM 架構(gòu)的qmake 工具對Qt 代碼進行相關(guān)庫的鏈接和編譯,從而調(diào)用需要的庫文件。最后僅需在Qt 代碼中輸入YOLOv5 的模型權(quán)重,并在虛擬機中對它進行交叉編譯,生成可執(zhí)行文件后安裝至開發(fā)板內(nèi),即可在開發(fā)板上利用Qt軟件實現(xiàn)對菜品的識別操作。

運用Origin(Origin Pro 2016)軟件繪圖,運用SPSS(IBM SPSS Statiatics 20)軟件進行顯著性檢驗(單因素方差分析-LSD,P<0.05)。

3 綜合實驗結(jié)果與分析

本文針對新型菜品識別網(wǎng)絡(luò)的研究實驗數(shù)據(jù)集來自自主創(chuàng)建的真實菜品數(shù)據(jù)集和模擬菜品數(shù)據(jù)集。真實菜品數(shù)據(jù)集包含85 種真實菜品的目標對象,具體信息采集來源于3個月的實際食堂餐廳拍攝,共計12 361 張食堂菜品圖片。其中選用8 652 張作為訓練集,2 472 張作為驗證集,1 237 張作為測試集;模擬菜品數(shù)據(jù)集則包含4 種模擬菜品,包括花生、瓜子、糖以及綠豆,共計408 張模擬菜品圖片。其中選用316張作為訓練集,56 張作為驗證集,36 張作為測試集。真實菜品數(shù)據(jù)集用于驗證模型的泛用性,證明本文所提出的新型菜品識別網(wǎng)絡(luò)可以識別真實餐廳內(nèi)的多樣菜并進行實際應(yīng)用;而模擬菜品數(shù)據(jù)集則用于測試整體的出餐流程,減輕開發(fā)板的運行負擔。

其中:(x,y)表示訓練的輸入以及目標;Wt表示可訓練的權(quán)值;g(·)是訓練時對尺度因子的稀疏度懲罰;λ是對式子兩項的平衡處理;第一項表示的是神經(jīng)網(wǎng)絡(luò)正常訓練時產(chǎn)生的損失。本套系統(tǒng)中采用g(γ)=|γ|作為實際的算式實現(xiàn)YOLOv5 網(wǎng)絡(luò)的稀疏化處理,使其稀疏性能夠更強。在此基礎(chǔ)上,針對整個BN 層的輸入輸出則發(fā)生了一定的改變:

文稿中計量單位一律使用國家法定計量單位,所有計量單位符號均為正體,用標準符號表示,如“m”“m2”“t”等。各種專業(yè)術(shù)語按國家標準使用,同一名詞術(shù)語、計量單位、人名、地名等要求全文統(tǒng)一。變量采用斜體,但數(shù)字采用正體。

·算術(shù)中包含豐富的邏輯推理,對于培養(yǎng)學生的分析與創(chuàng)造思維能力極其有益;對其智力發(fā)育起著不可替代的作用.

實際測試中本文選用了RetinaNet[25]、FasterRCNN[26]、YOLOv3[27]、YOLOv5、YOLOv5-Lite、YOLOv6[28]、NanoDet-Plus作為對比模型,以驗證本模型設(shè)計的合理性;同時為保證模型測試的有效性,采用了統(tǒng)一的模型訓練標準。上述5 種模型所使用的初始學習率均為0.005,所使用的優(yōu)化器均為Adam 算法,最大迭代次數(shù)均為300。

(5)發(fā)展村級集體經(jīng)濟,提升村干部在群眾中的影響力。將國家?guī)头鲰椖?、上級幫扶資金等事宜的辦理由村干部出面辦理,堅持好事讓村黨總支做,好人讓村干部當;積極引導村干部解放思想、更新觀念、加強學習、提高本領(lǐng),鼓勵村干部帶頭發(fā)展致富項目,為農(nóng)民群眾做出榜樣。縣里可根據(jù)自治區(qū)相關(guān)文件精神,結(jié)合本地實際,制定有關(guān)優(yōu)惠政策,鼓勵村干部和優(yōu)秀農(nóng)村青年創(chuàng)辦種植合作社、養(yǎng)殖合作社、專業(yè)協(xié)會、地毯加工、手工刺繡工廠等,利用住村工作組的幫扶優(yōu)勢,發(fā)展村級集體經(jīng)濟,解決村級集體收入渠道匱乏,村干部服務(wù)手段弱化,無錢辦事的問題,增強村級班子的凝聚力、吸引力、號召力,提高在群眾中的威信。

3.1 評估指標

1)準確率測試。

本文主要使用平均精度均值(mean Average Precision,mAP)對不同的模型進行評估,根據(jù)交并比(Intersection over Union,IoU)值的不同,即目標檢測中真實框與預測框的重疊度不同,可以分為mAP@0.5 和mAP@0.5:0.95 評估模型的性能,其中mAP@0.5 指代當IoU 值為0.5 時每一個類別下計算所有圖片得到的mAP 值;mAP@0.5:0.95 指代在不同IoU閾值(0.5~0.95,步長0.05)上得到的mAP 值

猜你喜歡
開發(fā)板剪枝菜品
人到晚年宜“剪枝”
團膳菜品質(zhì)量管理存在的問題及完善策略
基于YOLOv4-Tiny模型剪枝算法
迷惑菜品又來了
假蒟葉系列菜品的開發(fā)利用現(xiàn)狀
Microchip最新推出兩款PIC32 Curiosity開發(fā)板
剪枝
淺析單片機開發(fā)板的設(shè)計與制作
Mouser為您呈上開發(fā)關(guān)鍵之STMicroelectronics Nucleo開發(fā)板
Arduino和Atmel發(fā)布Arduino Zero開發(fā)板