蔣鵬飛吳 超年福東呂 剛
(1.合肥學院 生物食品與環境學院,安徽 合肥 230601;2.合肥學院 先進制造工程學院,安徽 合肥 230601)
行人重識別[1]是一項極具挑戰性的目標識別任務,旨在給定一張行人圖像,從包含不同行人在不同場合下的大規模圖像底庫中檢索出該行人對應的圖像。當前絕大多數行人重識別算法都是基于監督學習的方法去改進應用,雖然取得了不錯的效果,但這一過程需要大量高質量的帶標簽的訓練數據,并且高質量行人重識別數據的標注需要大量的人力去協同完成,這使得基于監督學習下的行人重識別方法效率和應用范圍受到一定的限制。為了解決上述所面臨的難題,基于半監督和無監督以及自監督行人重識別的方法受到了廣泛的關注。Xin等[2]提出了僅使用部分有標簽數據來微調異構卷積神經網絡和多視圖聚類的方法,通過聚類將未標記數據生成偽標簽,然后通過與真實標簽來微調異構卷積神經網絡從而生成準確的偽標簽。但該方法只能局限于一個卷積神經網絡,無法擴展到多個神經網絡以獲取更多的互補特征以及無法有效的利用未標注數據來訓練網絡。單純、王敏[3]提出了一種漸進訓練框架,使用聯合訓練的方式優化模型,進而有效地解決單樣本設置下行人重識別問題。但在復雜多樣本條件下,該方法還面臨諸多挑戰。Xiao等[4]提出了一種半監督式耦合字典學習方法,解決了在不同攝像機之間捕捉行人外貌變化的問題。但這一過程需要大量攝像機和行人的數據,使其應用范圍受到限制。綜上缺點,Hao等[5]提出了一種使用部分帶標簽和大量無標簽作為輸入,訓練編碼解碼結構模型的半監督行人重識別方法。Chen等[6]提出了一種視覺特征對比學習框架SimCLR,該框架創新地提出多種數據增強聯合方法并在特征和對比損失之間引入了一種可學習的非線性變換,極大的改進了自我監督、半監督和遷移學習方法。
基于上述分析,建立了一個基于正則化約束的半監督行人重識別方法。該方法可以基于監督學習方法優化改進,減少了繁雜的工作量以及訓練時間[7-8]并且不需要考慮攝像機、行人姿態、以及網絡提取特征模型等因素。其正則化約束的思路如下:首先利用數據增廣處理未標記的數據,接著將處理后的數據輸入原網絡分類器中,訓練時使預測結果保持一致[9]。再構造出相同初始化參數的雙模型網絡,即教師網絡和學生網絡。該網絡基于監督學習網絡ABD-Net[10]。接著在訓練過程中隨機使用部分有標簽數據和大量無標簽數據輸入雙模型網絡,同時利用正則化對雙模型網絡的參數進行約束,使雙模型網絡對于同一個有標簽或無標簽輸入數據的輸出結果保持一致。基于正則化約束的方法具有結構簡單、便于訓練、訓練時間短等優點。
首先公式化定義正則化約束的半監督行人重識別任務。設訓練集共有N幅圖像,其中M幅對應有標簽圖像,剩余N-M幅為無標簽的圖像。記有標簽的訓練數據集,無標簽的訓練數據集。其中,xi∈RC×H×W表示第 i幅有標簽圖像,C、H、W分別表示圖像的通道、高、寬,yi為對應圖像的標簽,則半監督行人重識別任務可以公式化表示為:

其中,LS表示有標簽數據經過教師網絡中所得的損失函數,R表示無標簽數據在雙模型網絡中的損失函數,f(.)表示教師圖像網絡,λ表示在雙模型網絡中用正則化控制其比重。
基于正則化約束的半監督行人重識別算法框圖如圖1所示,算法核心是相同初始化參數的雙模型網絡,分別命名為教師網絡f(.)和學生網絡 g(.)。在此基礎上,教師網絡 f(.)利用梯度下降法優化得到其所需參數θ,學生網絡g(.)則利用教師網絡f(.)優化過的參數θ進行權重加權移動平均迭代得到其所需參數θ'。其中雙模型網絡為監督模型ABD-Net[10]框架如圖2所示,網絡主體骨架默認為Resnet50[11],并在Conv_2層的輸出上加入通道注意力模塊CAM和特征正交正則化OF,之后將Conv_4層輸出的結果分為全局網絡和局部網絡進入Conv_5層,并在局部注意力網絡中增加通道注意力模塊CAM和位置注意力模塊PAM。所有的卷積層Conv后都增加一個權值正交正則化OW。網絡的后半部分將全局網絡輸出的特征向量與局部網絡輸出的特征向量進行融合相加得到Liner層,最后使用Softmax進行分類。

圖1 本研究算法框架圖

圖2 雙模型網絡框架
在網絡模塊中位置注意力模塊(PAM)是將經過擴展的殘差網絡輸出的特征C×H×W輸入到卷積層中進行重塑,得到三個新的特征大小為C×N,然后對前兩個新的特征進行矩陣乘法,并用Softmax層計算其空間注意圖。最后將上述計算空間注意圖得到的結果與最后一個新的特征進行矩陣相乘,并將其特征大小重塑為C×H×W與原擴展的殘差網絡輸出的特征C×H×W進行融合得到最終特征。位置注意力模塊圖如圖3所示。通道注意力模塊(CAM)則是將經過擴展的殘差網絡輸出的特征C×H×W分為四個相同的特征進行處理,首先將其中兩個特征進行矩陣相乘并利用Softmax層獲得通道注意圖特征C×C,然后將注意力圖特征C×C與第三個特征C×H×W進行矩陣相乘得到的結果再和最后一個特征C×H×W進行融合得到最終特征。通道注意力模塊圖如圖4所示。

圖3 位置注意力模塊PAM

圖4 通道注意力模塊CAM
1.2.1 教師網絡參數θ的計算

其中LOF和LOW分別應用于隱藏特征和權值基于譜范數的正則化[10]的懲罰項,β是超參數。
雙模型網絡的輸出用均方誤差損失函數進行約束,公式化表示:

由式(3)可知,LE表示有標簽圖像和無標簽圖像共同訓練的損失函數,當用于有標簽訓練數據集D和無標簽數訓練據集U時,LE即是式(1)中的R(θ,D,U)。
由式(1)~(3)可得總損失函數:

因此,教師網絡參數即為式(4)采用隨機梯度下降法優化得到最小值的參數。
1.2.2 學生網絡參數θ'的計算
學生網絡則利用教師網絡優化過的參數θ進行權重加權移動平均迭代得到其所需參數θ',公式化表示如下:

其中,下標t表示每輪所有訓練樣本訓練一次所迭代的批次,α表示訓練過程中權重參數,公式化表示如下:

1.2.3 模型參數優化步驟
計算最優網絡參數θ的訓練步驟如下:
Step 1 隨機初始化教師網絡參數優化算法。
Step 2 令θ'=θ,獲得學生網絡初始化參數θ'。
Step 3 雙模型網絡的輸入是由少量有標簽圖像和大量無標簽圖像按比例構成,其中按有標簽:無標簽 =1∶99、5∶95、10∶90 等比例來做實驗。
Step 4 根據式(4)采用隨機梯度下降法優化得到最小值的參數θ來更新教師網絡參數。
Step 5 根據式(5)權重加權移動平均迭代得到參數θ'以此來更新學生網絡參數。
Step 6 重復Step3~5,直到訓練損失函數值收斂至80輪結束。
采用market1501作為數據集。其中訓練集一共有751位行人。本研究將訓練集按751位行人進行有標簽與無標簽的劃分,其中有標簽占整個訓練集標簽的比例分別為 1%、5%、10%、20%、40%,并在這幾種條件下進行消融實驗。
采用平均精度均值和檢索結果中置信度最高的n張圖片中正確結果的概率作為行人重識別的準確率度量標準。
實驗采用PyTorch1.7深度學習框架進行算法實現。特征提取骨架網絡采用ResNet50[11]。在訓練過程中,輸入圖像被縮放到384×128,然后通過隨機水平翻轉和隨機擦除來增強數據[12]。采用兩步遷移學習算法對模型參數進行更新,凍結了主干網絡的權重參數,只訓練1×1卷積層、分類層和所有注意力模塊的參數,并只用交叉熵損失和三元組損失,然后使用全部損失函數對網絡的所有參數進行微調,其中根據經驗設置βtr=10-1,βOF=10-6,βOW=10-3和三元組損失參數 α=1.2。使用Adam[13]作為優化器,學習率初始化為3×10-4,并在30、40 輪迭代時分別衰減到 3 ×10-5,3 ×10-6。
表1提供在不同比例的有標簽個數下,其未利用無標簽數據與利用無標簽數據之間的mAP和Rank-1精度對比,由表1可以看出,該算法在利用無標簽數據和有標簽數據一起訓練時的mAP和Rank-1比未利用無標簽數據的mAP和Rank-1均有明顯提升,此結果表明該算法在無標簽和有標簽數據一起訓練下能提高有監督行人重識別的準確率。

表1 不同有/無標簽訓練的mAP和Rank-1對比
為了驗證算法相較于無監督模型方法、半監督模型方法以及遷移學習方法的優越性,選擇了幾種典型的無監督模型方法、半監督模型方法以及遷移學習方法進行對比。結果如表2所示,在有標簽個數近似40%的情況下,本研究算法在行人重識別方面的準確率以及檢索結果中置信度最高的n張圖片中正確結果的概率上較典型算法UMDL[14]、PUL[15]、SPGAN[16]、MVC[2]、SPC-ResNet50[17]小幅提升。這是由于原算法結合通道注意力模塊和位置注意力模塊且加入了一個正交化約束,可有效的避免注意力機制過度集中于前景、冗余細節等特征,有效地減少所學特征相關性且增強權重的多樣性,所以該改進算法能更好的把注意力放在人身上。對比結果也表明該算法的優越性。

表2 與無監督方法、半監督方法以及遷移學習方法對比
為了驗證該算法相較于監督學習算法的優越性,選取了所監督學習ABD-Net[10]算法中不同網絡骨架和層數以及典型的監督學習網絡進行對比。如表3所示,ABD-ResNet[10-11]網絡骨架隨著網絡層數增加,其mAP和Rank-1均大幅上升,并在網絡層數為50時,達到最優。而在層數為101層時,其mAP和Rank-1均下降,這是由于該實驗中行人重識別數據集單一簡單造成的。ABD-DenseNet[10,18]網絡骨架則在網絡層數為164層時,出現梯度爆炸。監督學習算法Zheng[19]和MLFN[20]需要在數據集標簽個數為100%時,其準確率才能達到最好,而本研究算法只需在標簽個數為40%-80%左右時,其準確率達到最好。此結果表明,基于ABD-ResNet50[10-11]網絡骨架的算法優于典型的監督學習以及其自身其他網絡骨架模型。

表3 與監督學習方法對比
實驗過程中,選取訓練數據集為10%有標簽數據與10%有標簽數據+90%無標簽數據和40%有標簽數據與40%有標簽數據+60%無標簽數據做平均損失函數圖。其中訓練過程中平均損失值變化曲線如圖 5(a)、圖 5(b)所示。

圖5 利用無標簽訓練數據前后的平均損失值曲線對比
由圖5可以看出,在訓練階段利用提出的算法同時對有標簽和無標簽進行學習,其平均損失曲線較僅使用有標簽訓練的平均損失曲線下降更快,最終平均損失曲線較僅使用有標簽訓練的平均損失曲線更平滑、損失值更小。這種現象表明該算法在訓練過程中,利用均方誤差函數以及Ls損失函數共同作用于無標簽數據與有標簽數據輸出的結果,最終可以增強網絡的魯棒性與表示能力,使得模型的性能更好。
提出基于正則化約束的半監督行人重識別算法,解決了訓練過程中需要大量高質量的帶標簽的訓練數據。算法框架由相同初始化參數的雙模型網絡組成,利用正則化對雙模型網絡的參數進行約束,使其輸出結果保持一致。算法簡單易于實現。在market1501公開數據集上實驗驗證本算法具有一定的有效性與魯棒性。今后將考慮在數據處理階段和特征提取骨架網絡階段進行算法改進,并在不同行人重識別數據上進行實驗。