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

?

基于知識蒸餾方法的行人屬性識別研究

2018-10-24 07:59:32
計算機(jī)應(yīng)用與軟件 2018年10期
關(guān)鍵詞:行人損失準(zhǔn)確率

凌 弘 毅

(南京大學(xué)計算機(jī)科學(xué)與技術(shù)系 江蘇 南京 201203)

0 引 言

由于在智能商業(yè)和視頻監(jiān)控等領(lǐng)域的巨大潛力,學(xué)習(xí)識別諸如性別、年齡、體型、衣服類型等人類屬性在計算機(jī)視覺的研究中受到越來越多的關(guān)注。屬性識別已被用于人類檢測、人類再識別、人臉識別等領(lǐng)域,并且已被證明可以極大地改進(jìn)其與視覺相關(guān)的任務(wù),但在實際監(jiān)控環(huán)境下仍然是一個巨大的挑戰(zhàn)。這是因為在真實的監(jiān)控視頻中,由于監(jiān)控攝像頭與行人之間的距離,幾乎沒有關(guān)于行人臉部或身體區(qū)域的清晰照片。同時,由于行人的數(shù)量以及監(jiān)控攝像頭的位置等因素,用于識別的照片中往往會出現(xiàn)行人身體的部分區(qū)域被遮擋的現(xiàn)象。所以,行人屬性識別會在一個缺少關(guān)鍵面部信息以及部分視覺信息缺失的情況下進(jìn)行。

在面對這個問題的時候,傳統(tǒng)的方法是直接將多余的屬性信息丟棄,僅僅處理需要識別的屬性。這樣的做法會將一些有用的信息直接丟棄,無法有效地利用數(shù)據(jù)集中的所有信息。本文旨在利用這些多余的屬性信息,挖掘出屬性之間隱藏的知識,使得屬性識別的準(zhǔn)確率能夠進(jìn)一步提升。

1 方法描述

關(guān)于屬性識別的研究方法大體分為兩類:

(1) 傳統(tǒng)的機(jī)器學(xué)習(xí)方法。支持向量機(jī)SVM算法、k最鄰近分類算法(kNN)和 AdaBoost算法作為分類算法被大量地使用以及優(yōu)化。文獻(xiàn)[1]從重疊的patch中提取出HOG特征與Adaboost分類器一起完成了性別的屬性識別。文獻(xiàn)[2]提取LBG以及HOG特征來訓(xùn)練ADAboost和kNN分類器,從而完成了屬性分類。文獻(xiàn)[3]提出了利用性別、頭發(fā)長度等二元屬性來描述一個人的外觀方法。

(2) 將深度學(xué)習(xí)應(yīng)用到行人屬性分類與識別。從VGG到Inception[4-7]和RESNET,卷積神經(jīng)網(wǎng)絡(luò)在圖像分類和圖像檢測等方面取得了巨大的成就和廣泛的應(yīng)用。CNN與傳統(tǒng)的機(jī)器學(xué)習(xí)方法最大的區(qū)別是其多層結(jié)構(gòu)能夠自動學(xué)習(xí)多個層次的特征:較淺的卷積層感知域較小,可以學(xué)習(xí)圖像的局部特征;較深的卷積層感知域較大,能夠?qū)W習(xí)到更加抽象的特征。這些抽象特征對物體的大小、位置和方向并不敏感,從而有助于提高識別的準(zhǔn)確度。上述這些研究雖然都嘗試訓(xùn)練一個魯棒的屬性識別模型,但它們都沒有探究丟棄的屬性信息中是否存在有“價值”的信息。本文認(rèn)為在這些被丟棄的屬性信息中含有大量有用的隱藏信息,并且利用這些隱藏信息可以對原本的屬性識別任務(wù)有巨大的提升。

1.1 網(wǎng)絡(luò)結(jié)構(gòu)

為了挖掘多余的屬性信息中的有用信息,本文采用了一個教師網(wǎng)絡(luò)加學(xué)生網(wǎng)絡(luò)的框架,其中:教師網(wǎng)絡(luò)的作用是學(xué)習(xí)多余屬性信息;學(xué)生網(wǎng)絡(luò)的作用是完成真正的屬性識別。首先訓(xùn)練教師網(wǎng)絡(luò),讓其對多余的屬性進(jìn)行識別。然后用已有教師網(wǎng)絡(luò)聯(lián)合數(shù)據(jù)集中屬性數(shù)據(jù),指導(dǎo)學(xué)生網(wǎng)絡(luò)的訓(xùn)練,使教師網(wǎng)絡(luò)的知識能夠被學(xué)生網(wǎng)絡(luò)所吸收。為了達(dá)到這個目的,采用了知識蒸餾的方法,并提出了一種混合的損失函數(shù)(KD Loss)。具體的訓(xùn)練方式如圖1所示。

教師網(wǎng)絡(luò)用于對多余的屬性進(jìn)行識別,它的結(jié)構(gòu)如圖2所示。教師網(wǎng)絡(luò)由一個深度CNN和一個Embedding層組成。輸入為圖片,輸出為一個向量,代表著該圖片的屬性識別結(jié)果。

圖2 教師網(wǎng)絡(luò)的結(jié)構(gòu)

完成對教師網(wǎng)絡(luò)的訓(xùn)練后,會利用教師網(wǎng)絡(luò)的輸出以及數(shù)據(jù)集中屬性數(shù)據(jù)對學(xué)生網(wǎng)絡(luò)進(jìn)行訓(xùn)練,讓學(xué)生網(wǎng)絡(luò)吸收教師網(wǎng)絡(luò)的知識。學(xué)生網(wǎng)絡(luò)的結(jié)構(gòu)如圖3所示。在學(xué)生網(wǎng)絡(luò)中,深度CNN結(jié)構(gòu)后跟著一個Embedding層。Embedding層的輸出是對于所有屬性識別的結(jié)果,我們將結(jié)果分為需要識別的屬性(LOGIT1)以及多余屬性(LOGIT2)。LOGIT1就作為學(xué)生網(wǎng)絡(luò)在測試時的輸出,而LOGIT2則會在學(xué)生網(wǎng)絡(luò)訓(xùn)練時與LOGIT1一起用于計算KD Loss。

圖3 學(xué)生網(wǎng)絡(luò)結(jié)構(gòu)

在對學(xué)生網(wǎng)絡(luò)進(jìn)行訓(xùn)練的過程中,本文方法最重要的部分在于讓學(xué)生網(wǎng)絡(luò)吸收教師網(wǎng)絡(luò)對多余屬性學(xué)習(xí)的知識從而提高屬性識別的準(zhǔn)確度,所以提出了一種混合的損失函數(shù)KD Loss。在計算該損失函數(shù)的過程中會對教師網(wǎng)絡(luò)進(jìn)行知識蒸餾,從而讓學(xué)生網(wǎng)絡(luò)學(xué)習(xí)到數(shù)據(jù)集中的隱藏知識。

1.2 知識蒸餾

傳統(tǒng)的知識蒸餾方法的目的是將一個巨大的模型集合壓縮為單個模型。利用這個方法,將原本數(shù)據(jù)集中離散的屬性標(biāo)簽變成了連續(xù)的概率分布,提取教師網(wǎng)絡(luò)中的隱藏知識,使得教師網(wǎng)絡(luò)學(xué)習(xí)到的知識成為學(xué)生網(wǎng)絡(luò)的一部分,具體的做法如下:

神經(jīng)網(wǎng)絡(luò)通常使用“softmax”輸出層產(chǎn)生一個分類的概率向量p,該輸出層將每個類的logit值zi與其他類的logit值進(jìn)行比較,從而生成每個類的概率pi:

(1)

知識蒸餾的方法[9]對“softmax”輸出層進(jìn)行了修改,讓輸出層產(chǎn)生一個被“軟化”后的概率向量qi:

(2)

式中:T為溫度,當(dāng)T=1的時候就是常用的softmax輸出層。如果T的值使用的較高,會得到一個更平均的概率向量。

在訓(xùn)練學(xué)生網(wǎng)絡(luò)的時候,對訓(xùn)練集上每個情況,使用由教師網(wǎng)絡(luò)高溫蒸餾得到的軟目標(biāo),作為目標(biāo)的一部分,隱藏知識就可以從教師網(wǎng)絡(luò)傳遞到學(xué)生網(wǎng)絡(luò)。即教師網(wǎng)絡(luò)的輸出zi會經(jīng)過一個“高溫”的“softmax”層得到qi,并將其用于KD Loss的計算。

1.3 損失函數(shù)

為了讓學(xué)生網(wǎng)絡(luò)吸收教師網(wǎng)絡(luò)對于多余屬性學(xué)習(xí)的知識,我們將相對熵?fù)p失函數(shù)和交叉熵?fù)p失函數(shù)進(jìn)行了結(jié)合。相對熵?fù)p失函數(shù)用來衡量兩個分布之間的相異度,當(dāng)兩個隨機(jī)分布相同時,它們的相對熵為零;當(dāng)兩個隨機(jī)分布的差別增大時,它們的相對熵也會增大,可以用于衡量教師網(wǎng)絡(luò)輸出的分布和學(xué)生網(wǎng)絡(luò)輸出的分布之間的相異度。交叉熵?fù)p失函數(shù)往往用來表征真實樣本標(biāo)簽和預(yù)測概率之間的差值,當(dāng)預(yù)測概率與真實樣本標(biāo)簽的差異增大時,它們的交叉熵也會增大,可以用于衡量學(xué)生網(wǎng)絡(luò)預(yù)測的概率和真實樣本標(biāo)簽的差值。將這兩種損失函數(shù)進(jìn)行混合后,就可以同時衡量教師網(wǎng)絡(luò)輸出的分布和學(xué)生網(wǎng)絡(luò)輸出的分布之間的相異度以及學(xué)生網(wǎng)絡(luò)預(yù)測的概率和真實樣本標(biāo)簽的差值。由此,本文使用了一個混合的損失函數(shù)KD Loss,表達(dá)式如下:

Loss=KL(p2,q)×alpha×T2+

CE(label,p1)×(1-alpha)

(3)

式中:T為溫度,KL為相對熵(Kullback-Leibler divergence),CE為交叉熵(cross entropy),q為教師網(wǎng)絡(luò)輸出經(jīng)過蒸餾后的結(jié)果,p1為學(xué)生網(wǎng)絡(luò)中的LOGIT1,p2為學(xué)生網(wǎng)絡(luò)中LOGIT2經(jīng)過蒸餾后的結(jié)果,label為數(shù)據(jù)集所給的真實標(biāo)簽信息,alpha為KL和CE在KD Loss中的比例參數(shù)。當(dāng)alpha=0的時候,學(xué)生網(wǎng)絡(luò)就相當(dāng)于一個使用交叉熵作為損失函數(shù)的深度卷積神經(jīng)網(wǎng)絡(luò)。KD Loss的第一部分旨在讓學(xué)生網(wǎng)絡(luò)向一個軟化后的分布(即經(jīng)過知識蒸餾的教師網(wǎng)絡(luò)的輸出)優(yōu)化,第二部分則如傳統(tǒng)的那樣讓學(xué)生網(wǎng)絡(luò)向真實的標(biāo)簽值進(jìn)行優(yōu)化。

2 實驗及結(jié)果分析

實驗主要是為了證明本文提出的框架和損失函數(shù)可以有效地利用多余屬性信息來提升行人屬性識別的準(zhǔn)確率,關(guān)注點在于新的框架和損失函數(shù)對原有網(wǎng)絡(luò)的提升,而不是為了取得超過現(xiàn)有所有方法的準(zhǔn)確率。因此,本文選用了在圖像識別上表現(xiàn)較好的卷積神經(jīng)網(wǎng)絡(luò)ResNet101作為教師網(wǎng)絡(luò)以及學(xué)生網(wǎng)絡(luò)中的deep architecture。實驗的數(shù)據(jù)集選用了圖片數(shù)量巨大、識別難度較高的RAP[10]數(shù)據(jù)集。通過將學(xué)生網(wǎng)絡(luò)與直接使用ResNet101的結(jié)果進(jìn)行對比,證明本文提出的知識蒸餾方法能夠有效地利用多余信息提升屬性識別的準(zhǔn)確率。

2.1 數(shù)據(jù)集

RAP是一個專門針對行人屬性識別的數(shù)據(jù)集,它收集了一個購物中心監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)。在該監(jiān)控網(wǎng)絡(luò)中選擇了26個監(jiān)控攝像頭連續(xù)三個月所拍攝的圖像信息。該數(shù)據(jù)集中的部分圖像如圖4所示。在現(xiàn)實場景中,由于監(jiān)控攝像頭的位置、行人的姿態(tài)、行人的面部朝向、行人距離監(jiān)控攝像頭的距離等因素,同一種屬性會有很大的變化并對屬性識別帶來巨大的挑戰(zhàn)。

圖4 RAP數(shù)據(jù)集中部分圖像的示例

RAP數(shù)據(jù)集共有41 585張剪裁好的行人圖片,分辨率從36×92到344×554,它應(yīng)該是至今為止最大的行人屬性數(shù)據(jù)集。整個RAP數(shù)據(jù)集被劃分為訓(xùn)練集和測試集兩個部分,其中訓(xùn)練集有33 268張圖片,占總數(shù)的80%;測試集有8 317張圖片,占總數(shù)的20%。訓(xùn)練集和測試集的比例為4∶1。在RAP數(shù)據(jù)集給出標(biāo)記的屬性中,選擇了54個屬性(見表1)作為需要識別的屬性,其余66個屬性當(dāng)作多余信息處理。

表1 所有需要識別的屬性名稱

2.2 實驗過程與結(jié)果

首先使用傳統(tǒng)的方式(即將多余的屬性信息直接丟棄)進(jìn)行對照的實驗。這里采用了ResNet101的網(wǎng)絡(luò)結(jié)構(gòu),Batch Normalization的方式作為抑制過擬合的手段,對于模型的初始參數(shù)值采用了隨機(jī)初始化。對輸入的圖像做一個變換,使得網(wǎng)絡(luò)的輸入是一個256×128×3的矩陣,并且不再對輸入圖像做其他的處理。訓(xùn)練完成后將其在測試集上進(jìn)行測試,得到結(jié)果:所有54個屬性的平均準(zhǔn)確率為92.13%,F(xiàn)1-score為71.94%。

為了進(jìn)行對比實驗,我們使用了本文提出的方法。教師網(wǎng)絡(luò)同樣選用了ResNet101的網(wǎng)絡(luò)結(jié)構(gòu),Batch Normalization的方式作為抑制過擬合的手段以及同樣的圖像處理方式。完成對教師網(wǎng)絡(luò)的訓(xùn)練后,使用教師網(wǎng)絡(luò)結(jié)合數(shù)據(jù)集的人工標(biāo)簽對學(xué)生網(wǎng)絡(luò)進(jìn)行訓(xùn)練。學(xué)生網(wǎng)絡(luò)仍然采用了ResNet101作為深度網(wǎng)絡(luò)結(jié)構(gòu),但在損失函數(shù)中使用了本文中提到的KD Loss混合損失函數(shù)。對于KD Loss中的參數(shù):我們嘗試了[1,2,5,10]的溫度,[0.1,0.3,0.5]的比例alpha。最后在測試集上得到的具體結(jié)果如表2所示。

表2 學(xué)生網(wǎng)絡(luò)的屬性識別結(jié)果 %

2.3 結(jié)果分析

通過表2的實驗結(jié)果可以發(fā)現(xiàn):本文提出的方法對于屬性識別有著一定的提升,在T=2,alpha=0.1的情況下提升效果最為明顯,對54個屬性的平均分類準(zhǔn)確率最高提升了1.76%,F(xiàn)1-score最高提高了3.75%。這是在原本ResNet網(wǎng)絡(luò)準(zhǔn)確率已經(jīng)很高的情況下帶來的提升,證明了學(xué)生網(wǎng)絡(luò)吸收教師網(wǎng)絡(luò)對多余屬性學(xué)習(xí)的知識后,挖掘了被丟棄的屬性信息中的隱藏信息,并將其用于對選中的54個屬性進(jìn)行識別。

進(jìn)一步對屬性進(jìn)行分析后發(fā)現(xiàn)了幾個問題:在選中的54個屬性中關(guān)于部分年齡段的識別準(zhǔn)確率非常低,關(guān)于年齡屬于30~45歲還是45~60歲的區(qū)分準(zhǔn)確率只有70%左右。在識別行人鞋子屬于皮鞋還是運動鞋的識別準(zhǔn)確率也比較低,在78%左右。這幾個屬性的識別正確率相較于原本的網(wǎng)絡(luò)幾乎沒有提升。

通過對RAP圖像的深入分析,發(fā)現(xiàn)部分圖像中只有行人的背影,行人的臉部并沒有出現(xiàn)在圖片中。此外,即使是帶有行人臉部的圖片中,由于行人和監(jiān)控攝像頭的距離原因,行人臉部的圖像也很模糊。所以,本文認(rèn)為缺少關(guān)鍵面部信息以及近距離視覺信息是造成以上兩個屬性區(qū)分準(zhǔn)確率很低的主要原因。這些需要在今后的研究中深入探討。

3 結(jié) 語

本文針對神經(jīng)網(wǎng)絡(luò)對訓(xùn)練數(shù)據(jù)中隱藏知識利用不充分的問題以及訓(xùn)練數(shù)據(jù)中的部分信息沒有被利用的問題,研究了一種利用多余屬性信息進(jìn)行數(shù)據(jù)蒸餾的方法。通過優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)并使用一種混合的損失函數(shù),提高了屬性識別的性能。使用最新的大規(guī)模行人屬性數(shù)據(jù)集RAP進(jìn)行實驗,證明了本文提出的優(yōu)化方法能夠有效地利用多余信息提升屬性識別的性能。

猜你喜歡
行人損失準(zhǔn)確率
少問一句,損失千金
胖胖損失了多少元
乳腺超聲檢查診斷乳腺腫瘤的特異度及準(zhǔn)確率分析
健康之家(2021年19期)2021-05-23 11:17:39
不同序列磁共振成像診斷脊柱損傷的臨床準(zhǔn)確率比較探討
毒舌出沒,行人避讓
意林(2021年5期)2021-04-18 12:21:17
2015—2017 年寧夏各天氣預(yù)報參考產(chǎn)品質(zhì)量檢驗分析
路不為尋找者而設(shè)
揚子江(2019年1期)2019-03-08 02:52:34
玉米抽穗前倒伏怎么辦?怎么減少損失?
高速公路車牌識別標(biāo)識站準(zhǔn)確率驗證法
我是行人
富裕县| 丹寨县| 宜阳县| 永平县| 什邡市| 宝清县| 扶风县| 磐石市| 石棉县| 阜阳市| 信阳市| 河北区| 庆云县| 历史| 孝义市| 铅山县| 县级市| 磐安县| 海南省| 独山县| 新竹市| 西和县| 财经| 即墨市| 满洲里市| 突泉县| 白银市| 罗江县| 松溪县| 五河县| 台东县| 卫辉市| 鄯善县| 漳浦县| 特克斯县| 怀宁县| 贺州市| 六盘水市| 康保县| 山东| 南木林县|