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

?

基于增量學(xué)習(xí)的X射線安檢系統(tǒng)檢測算法研究

2019-02-22 04:59田敏皓
測試技術(shù)學(xué)報(bào) 2019年1期
關(guān)鍵詞:增量目標(biāo)算法

田敏皓,陳 平

(中北大學(xué) 信息探測與處理山西省重點(diǎn)實(shí)驗(yàn)室,山西 太原 030051)

X光安檢機(jī)是安檢過程中的關(guān)鍵設(shè)備. 長期以來安檢作業(yè)都是人工看圖識別,但有時(shí)會由于疲勞而造成漏檢誤檢問題. 為了解決此問題,將人工智能的深度學(xué)習(xí)算法應(yīng)用于安檢系統(tǒng),實(shí)現(xiàn)對圖像識別的智能化[1]. 深度學(xué)習(xí)模型復(fù)雜,對其優(yōu)化需要龐大的數(shù)據(jù)量[2]. 乘客可能攜帶的危險(xiǎn)物種類復(fù)雜,且不斷更新,難以一次性獲取全部訓(xùn)練數(shù)據(jù),致使依賴訓(xùn)練數(shù)據(jù)集的智能安檢系統(tǒng)不能對新型危險(xiǎn)物進(jìn)行有效檢測. 同時(shí),實(shí)際應(yīng)用中安檢系統(tǒng)需保持較高的檢測效率,而對其重新訓(xùn)練要耗費(fèi)較長時(shí)間,于是需要一種模型隨訓(xùn)練數(shù)據(jù)變化而不斷變化的目標(biāo)檢測算法.

增量學(xué)習(xí)可以通過對新樣本的學(xué)習(xí)實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)權(quán)值的調(diào)整,并在已獲取知識的基礎(chǔ)上學(xué)習(xí)新知識,從而適應(yīng)不斷變化的環(huán)境[3]. 利用所有危險(xiǎn)物重新訓(xùn)練模型會造成內(nèi)存占用大、訓(xùn)練時(shí)間長以及完全遺棄原模型的問題,而增量學(xué)習(xí)思想可以有效地解決以上問題. 現(xiàn)有增量學(xué)習(xí)算法中:Divvala等人用數(shù)據(jù)的固定表示實(shí)現(xiàn)增量學(xué)習(xí)[4]; Chen等人用所有收集的數(shù)據(jù)重新訓(xùn)練模型以實(shí)現(xiàn)增量學(xué)習(xí)[5]. 二者都專注于不斷更新訓(xùn)練數(shù)據(jù)集,但遺棄了在舊數(shù)據(jù)集上的訓(xùn)練模型,并且訓(xùn)練時(shí)間會隨著訓(xùn)練樣本的增加而增加; 為解決以上問題,Ristin和Mensink等人通過固定的圖像表示來學(xué)習(xí)分類[6,7],然而該方法將所有訓(xùn)練樣本都進(jìn)行了存儲; 為了使在一種分布數(shù)據(jù)上學(xué)習(xí)到的知識能遷移到另一個(gè)與之相關(guān)的數(shù)據(jù)分布上,Hinton等人提出了蒸餾(distillation)法,該方法無需存儲所有數(shù)據(jù)且節(jié)約了時(shí)間,但依然存在災(zāi)難遺忘問題[8,9]; 于是Li 和Hoiem 在此基礎(chǔ)上將知識蒸餾用于機(jī)器視覺,并通過原始訓(xùn)練數(shù)據(jù)的子集來保留網(wǎng)絡(luò)在舊類上的性能[10]; 此外也有通過其他方式進(jìn)行知識蒸餾以實(shí)現(xiàn)增量學(xué)習(xí)的方法,比如采用新層來增強(qiáng)網(wǎng)絡(luò)的性能、參數(shù)正則化等,但是這些方法會導(dǎo)致網(wǎng)絡(luò)中要學(xué)習(xí)參數(shù)數(shù)目的急劇增加[11]. 以上增量學(xué)習(xí)算法都只對分類問題進(jìn)行了研究. Shmelkov等人將增量學(xué)習(xí)應(yīng)用于目標(biāo)檢測器,解決了以上方法中遺棄原模型重新訓(xùn)練以及不依賴舊數(shù)據(jù)的災(zāi)難遺忘問題[12].

為使現(xiàn)有智能安檢系統(tǒng)將形態(tài)各異的危險(xiǎn)物都檢測出來,本文研究了一種無災(zāi)難遺忘的目標(biāo)檢測增量學(xué)習(xí)算法. 通過對傳統(tǒng)目標(biāo)檢測Faster rcnn網(wǎng)絡(luò)的修改與調(diào)整,構(gòu)造了目標(biāo)檢測增量網(wǎng)絡(luò),并在該網(wǎng)絡(luò)中構(gòu)造了一種新型損失函數(shù). 利用安檢系統(tǒng)上新采集的4類數(shù)據(jù)在原始7類數(shù)據(jù)訓(xùn)練好的模型基礎(chǔ)上對該算法進(jìn)行了驗(yàn)證.

1 目標(biāo)檢測網(wǎng)絡(luò)及算法

1.1 傳統(tǒng)目標(biāo)檢測網(wǎng)絡(luò)

目標(biāo)檢測不同于圖像分類. 它不僅需要對目標(biāo)進(jìn)行分類,同時(shí)由于邊框回歸對于精確目標(biāo)檢測很重要,于是也需要對目標(biāo)的邊框進(jìn)行回歸. 傳統(tǒng)基于深度學(xué)習(xí)的目標(biāo)檢測算法中,F(xiàn)aster rcnn[13]是檢測精度較高且應(yīng)用較為普遍的一種基于提議的算法,其算法框圖如圖 1 所示. 然而,正如圖 1 所示,該算法將用于生成區(qū)域提議的RPN網(wǎng)絡(luò)與檢測器整合到一個(gè)網(wǎng)絡(luò)中,且利用對RPN訓(xùn)練生成的提議來訓(xùn)練目標(biāo)檢測器. 為使現(xiàn)有安檢系統(tǒng)將新舊危險(xiǎn)物都檢測出來,需要用新舊安檢數(shù)據(jù)更新訓(xùn)練集,并用其重新訓(xùn)練Faster rcnn模型,但它遺棄了原訓(xùn)練模型,且訓(xùn)練時(shí)間隨訓(xùn)練數(shù)據(jù)集的增加而增加. 該方法在實(shí)際應(yīng)用中,不能在原模型基礎(chǔ)上繼續(xù)學(xué)習(xí),即不具有增量學(xué)習(xí)能力,故無法適應(yīng)數(shù)據(jù)集不斷變化的安檢系統(tǒng)場景.

圖 1 Faster rcnn算法框圖Fig.1 Framework of the algorithm of Faster rcnn

1.2 目標(biāo)檢測增量學(xué)習(xí)網(wǎng)絡(luò)設(shè)計(jì)

為使目標(biāo)檢測算法能適用于數(shù)據(jù)集不斷變化的安檢系統(tǒng)場景,并解決增量學(xué)習(xí)中利用傳統(tǒng)網(wǎng)絡(luò)不使用舊類數(shù)據(jù)會造成對舊類的遺忘,及使用新舊類數(shù)據(jù)重新訓(xùn)練模型效率低的問題,本文設(shè)計(jì)了一種基于CNN模型的目標(biāo)檢測增量學(xué)習(xí)網(wǎng)絡(luò),如圖 2 所示. 在該網(wǎng)絡(luò)中對傳統(tǒng)目標(biāo)檢測網(wǎng)絡(luò)Faster rcnn進(jìn)行了修改. 首先,由于目標(biāo)檢測算法中邊框回歸對于準(zhǔn)確檢測目標(biāo)具有重要意義,于是目標(biāo)檢測的增量學(xué)習(xí)不僅要實(shí)現(xiàn)目標(biāo)所屬類別的增量,而且要對邊框回歸也進(jìn)行增量. 傳統(tǒng)目標(biāo)檢測Faster rcnn中RPN網(wǎng)絡(luò)生成的提議與類別信息是相關(guān)的,不利于對邊框的提取與增量. 于是本文利用Edge boxes算法對圖像生成2 000個(gè)預(yù)計(jì)算好的目標(biāo)提議,該算法生成的目標(biāo)提議不依賴目標(biāo)類別、無需訓(xùn)練且速度較快[14]. 然后,將特征提取換為速度更快、精度更高的ResNet-50,并在conv5_1層之前加入ROI池化層,最后用兩個(gè)兄弟全連接層代替最終的分類層,最終形成本文目標(biāo)檢測的基網(wǎng)絡(luò). 該基網(wǎng)絡(luò)的設(shè)計(jì)解決了對邊框回歸增量過程中,算法生成提議依賴目標(biāo)類別的問題,有利于在其基礎(chǔ)上實(shí)現(xiàn)目標(biāo)檢測的增量學(xué)習(xí),并且加快了目標(biāo)檢測速度.

圖 2 網(wǎng)絡(luò)整體框架Fig.2 Overall network architecture

圖 2 中,網(wǎng)絡(luò)A是目標(biāo)檢測基網(wǎng)絡(luò),主要針對舊類危險(xiǎn)物的訓(xùn)練; 網(wǎng)絡(luò)B是目標(biāo)檢測增量網(wǎng)絡(luò),其網(wǎng)絡(luò)結(jié)構(gòu)在A網(wǎng)絡(luò)的最后全連接輸出層增加了新類別危險(xiǎn)物的目標(biāo)分類與邊框回歸神經(jīng)元,該增量設(shè)計(jì)確保了增量網(wǎng)絡(luò)B對新舊類別危險(xiǎn)物的檢測能力. 在增量學(xué)習(xí)訓(xùn)練過程中,首先凍結(jié)基網(wǎng)絡(luò)A的權(quán)值,增量網(wǎng)絡(luò)B的權(quán)重初始化復(fù)制了對舊類危險(xiǎn)物有檢測能力的網(wǎng)絡(luò)A的權(quán)值,為保證將網(wǎng)絡(luò)A對舊類別危險(xiǎn)物的檢測能力遷移到網(wǎng)絡(luò)B中,本文引入了蒸餾損失. 該增量網(wǎng)絡(luò)及算法的設(shè)計(jì)實(shí)現(xiàn)了在訓(xùn)練B網(wǎng)絡(luò)時(shí)只使用新類數(shù)據(jù),提高了訓(xùn)練效率.

1.3 目標(biāo)檢測增量學(xué)習(xí)損失函數(shù)設(shè)計(jì)

以上目標(biāo)檢測增量學(xué)習(xí)網(wǎng)絡(luò)核心部分為增量學(xué)習(xí)損失函數(shù)的設(shè)計(jì),其將蒸餾損失與標(biāo)準(zhǔn)交叉熵?fù)p失相結(jié)合作為新型損失函數(shù). 具體公式為

L=Lrcnn+λLdist,(1)

式中:Ldist為蒸餾損失;Lrcnn為標(biāo)準(zhǔn)交叉熵?fù)p失;λ為平衡兩損失的超參數(shù).

Ldist(yA,tA,yB,tB)=1/(N|CA|)·

式中:N是提取感興趣區(qū)域樣本的數(shù)目(本文采用的個(gè)數(shù)是64); |CA|是舊類的數(shù)目,求和表示對舊類在所有感興趣區(qū)域上進(jìn)行求和.

此外,對于目標(biāo)中新類的計(jì)算,算法生成提議經(jīng)網(wǎng)絡(luò)B在向前傳播的過程中,對得分比較高的依據(jù)邊框回歸算法進(jìn)行微調(diào),然后在每類上進(jìn)行非極大值抑制(NMS)以獲得最終檢測結(jié)果 . 該過程相應(yīng)的損失函數(shù)為

Lrcnn(p,k*,t,t*)=

-logpk*+[k*≥1]R(t-t*),(3)

式中:p是網(wǎng)絡(luò)對于所有類分類響應(yīng)的集合;k*是真實(shí)類別;t是邊框微調(diào)層的輸出;t*是真實(shí)邊框提議.

2 實(shí)驗(yàn)及結(jié)果分析

本實(shí)驗(yàn)利用安檢系統(tǒng)獲取了包含11類待檢測目標(biāo)的數(shù)據(jù)集,其中一類是對于刀具中刀刃的標(biāo)識即刀尖(DJ),剩余10類檢測目標(biāo)的實(shí)物數(shù)據(jù)如圖 3 所示. 該數(shù)據(jù)集既包括了訓(xùn)練原網(wǎng)絡(luò)的7類數(shù)據(jù),又包括了需新增的4類數(shù)據(jù)(SQ(手槍)、XGD(西瓜刀)、YSD(鑰匙刀)、ZHD(組合刀)) ,這些新增類在訓(xùn)練A的過程中沒有出現(xiàn)或者至少在原始圖像中沒有進(jìn)行標(biāo)注. 整個(gè)數(shù)據(jù)集中用于訓(xùn)練驗(yàn)證(trainval)和測試的圖片各301張.

圖 3 目標(biāo)數(shù)據(jù)集Fig.3 The data of objects

本文利用該數(shù)據(jù)在具有NVIDIA Geforce GTX 1080顯卡的計(jì)算機(jī)上進(jìn)行了實(shí)驗(yàn),目的是使網(wǎng)絡(luò)能將新增的4類目標(biāo)也檢測出來. 用原始7類訓(xùn)練A時(shí)學(xué)習(xí)率為0.001,動量值為0.9. 用新增類訓(xùn)練網(wǎng)絡(luò)B的過程為:在原始7類基礎(chǔ)上用新增的一類訓(xùn)練網(wǎng)絡(luò)B,之后將所得網(wǎng)絡(luò)凍結(jié),并在該網(wǎng)絡(luò)基礎(chǔ)上繼續(xù)新增一類,以此類推,直到將所有4種新類全部增加完. 在訓(xùn)練網(wǎng)絡(luò)B的過程中,由于新增類數(shù)據(jù)量太小,會出現(xiàn)損失不收斂的問題,于是學(xué)習(xí)率設(shè)為0.000 01.

圖 4(a)為安檢系統(tǒng)測試圖像中的原圖,圖4(b)為用原始7類訓(xùn)練后網(wǎng)絡(luò)在該測試圖像上的結(jié)果,即增量前網(wǎng)絡(luò)的檢測結(jié)果,圖4(c)為在原始7類訓(xùn)練好網(wǎng)絡(luò)基礎(chǔ)上利用本文算法依次增加4類數(shù)據(jù)后所得網(wǎng)絡(luò)在測試圖上的檢測結(jié)果,即增量后網(wǎng)絡(luò)的檢測結(jié)果. 其中RSD,MGD為參與訓(xùn)練的兩類,YSD,ZHD為新增的兩類. 由結(jié)果可知:原始7類訓(xùn)練的網(wǎng)絡(luò)在參與訓(xùn)練類別上獲得1.00的檢測精度,但對新類不能有效檢測,而本文算法不僅能將新類目標(biāo)以大于0.9的精度檢測出來,而且保留了網(wǎng)絡(luò)在舊類上1.00的檢測精度.

圖 4 原圖與增量前后網(wǎng)絡(luò)在新舊類上的檢測結(jié)果Fig.4 The original images and test results before and after increment in new and old

圖 5 中SQ,XGD,YSD,ZHD為新增類. 圖5(a)為增量前網(wǎng)絡(luò)在新增4類后的檢測結(jié)果,圖 5(b)~圖5(e)為在原始7類網(wǎng)絡(luò)基礎(chǔ)上依次新增SQ類、XGD類、YSD類、ZHD類訓(xùn)練網(wǎng)絡(luò)的檢測結(jié)果. 由圖 5 可知:只用原始7類訓(xùn)練的網(wǎng)絡(luò)不能對新增類進(jìn)行有效檢測,而本文算法能將新增類的目標(biāo)檢測出來,并且都有大于0.95的檢測精度.

圖 5 增量前網(wǎng)絡(luò)及依次增加4類數(shù)據(jù)所得網(wǎng)絡(luò)的檢測結(jié)果Fig.5 Detect results before Increment and after sequential increase for four types

利用本文算法在原網(wǎng)絡(luò)基礎(chǔ)上依次新增4類數(shù)據(jù)后的網(wǎng)絡(luò)在原始類及新增類上的檢測結(jié)果以及用所有類聯(lián)合訓(xùn)練網(wǎng)絡(luò)在新舊類上的檢測結(jié)果如圖 6 所示.

圖 6 增量后網(wǎng)絡(luò)及聯(lián)合訓(xùn)練網(wǎng)絡(luò)在原始類及 新增兩類后的檢測結(jié)果Fig.6 Test results after the joint training of all classes

圖6(a)為增量后網(wǎng)絡(luò)的檢測結(jié)果,圖6(b)為聯(lián)合訓(xùn)練網(wǎng)絡(luò)的檢測結(jié)果,其中SQ,ZHD為新增的兩類. 由圖6可得本文算法在新舊類上都取得了與用所有類聯(lián)合訓(xùn)練所得網(wǎng)絡(luò)相近的結(jié)果,即在舊類上保持了1.00的檢測精度,在新類上取得很接近1.00的檢測精度,說明本文算法對于改進(jìn)安檢機(jī)的性能是有效的.

本實(shí)驗(yàn)也用均值平均精度對網(wǎng)絡(luò)進(jìn)行了評估,結(jié)果如表 1 所示. 表 1 顯示了不同設(shè)置下網(wǎng)絡(luò)在安檢系統(tǒng)測試數(shù)據(jù)集上的均值平均精度. 由表1可見:本文算法相比聯(lián)合訓(xùn)練所得網(wǎng)絡(luò)在整體性能上略有下降,但其仍能保持網(wǎng)絡(luò)在舊類上的性能,并且可以對新類進(jìn)行有效的學(xué)習(xí).

表 1 不同設(shè)置下的均值平均精度

表 2 為訓(xùn)練原始7類、用本文算法依次用新增類進(jìn)行訓(xùn)練、一次性用所有4類新增數(shù)據(jù)進(jìn)行訓(xùn)練以及對所有11類聯(lián)合訓(xùn)練所需時(shí)間. 由表2可知:本文算法在依次添加1類,即新增類較少時(shí),極大地縮短了訓(xùn)練時(shí)間,提高了訓(xùn)練效率,并且該情況在實(shí)際中更加具有實(shí)用性. 此外,本文算法在新增類較少時(shí)比用所有11類數(shù)據(jù)聯(lián)合訓(xùn)練所用時(shí)間短,也說明本文算法可以提高訓(xùn)練效率. 另外,本文算法在新類上性能的下降可能是由于增量網(wǎng)絡(luò)只在包含新類的幾百張圖上進(jìn)行了訓(xùn)練,新類分類器沒有獲得足夠的信息,未來的工作是通過增加新類樣本來解決該問題.

表 2 依次增加一類訓(xùn)練網(wǎng)絡(luò)時(shí)間

3 結(jié)束語

為使現(xiàn)有智能安檢系統(tǒng)能對新出現(xiàn)的異種危險(xiǎn)物進(jìn)行有效檢測,并且避免重新訓(xùn)練網(wǎng)絡(luò)的問題,本文研究了一種基于目標(biāo)檢測的增量學(xué)習(xí)算法,該算法通過構(gòu)建目標(biāo)檢測增量學(xué)習(xí)網(wǎng)絡(luò)以及設(shè)計(jì)新的損失函數(shù),使現(xiàn)有安檢系統(tǒng)在利用原模型及新數(shù)據(jù)完善性能時(shí)不產(chǎn)生災(zāi)難遺忘問題. 實(shí)驗(yàn)結(jié)果表明:該算法保持網(wǎng)絡(luò)舊類檢測性能的同時(shí)在新類上也獲得了大于0.9的檢測精度. 同時(shí)該算法相比用新舊數(shù)據(jù)重新訓(xùn)練網(wǎng)絡(luò),提高了訓(xùn)練效率.

猜你喜歡
增量目標(biāo)算法
導(dǎo)彈增量式自適應(yīng)容錯控制系統(tǒng)設(shè)計(jì)
提質(zhì)和增量之間的“辯證”
全現(xiàn)款操作,年增量1千萬!這家GMP漁藥廠為何這么牛?
“價(jià)增量減”型應(yīng)用題點(diǎn)撥
基于MapReduce的改進(jìn)Eclat算法
Travellng thg World Full—time for Rree
進(jìn)位加法的兩種算法
一種改進(jìn)的整周模糊度去相關(guān)算法
新目標(biāo)七年級(下)Unit?。尘毩?xí)(一)
新目標(biāo)七年級(下)Unit?。淳毩?xí)(一)