解懷奇 樂紅兵
(江南大學 江蘇省無錫市 214122)
隨著網(wǎng)絡帶寬和硬件存儲空間的大幅增加,互聯(lián)網(wǎng)用戶的通信方式從文字、語音和圖像的形式不斷升級,逐漸使用以短視頻和直播為媒介的新的通信方式?,F(xiàn)今從大量的移動設備和監(jiān)控裝置中產(chǎn)生了越來越多的視頻信息,視頻數(shù)據(jù)的爆炸式生成、發(fā)布和傳播,已經(jīng)成為當前大數(shù)據(jù)時代信息的重要組成部分,也促使學術界和工業(yè)界非常重視對視頻的理解和分析,如何將設備產(chǎn)生的海量數(shù)據(jù)加以合理應用具有重要的研究價值。當前計算機視覺領域中,除了對圖像分類、目標檢測、目標跟蹤等基本任務的研究以外,對于視頻中的人體行為識別這個方向的研究越來越受到國內外的重視。視頻中的人體行為識別任務[1]是理解視頻中人體的動作和行為,通過深度學習中的卷積神經(jīng)網(wǎng)絡提取特征,對視頻中連續(xù)幀的時空信息進行分析和處理,進一步識別并理解視頻中的人體行為和動作。
本文在3D卷積神經(jīng)網(wǎng)絡行為識別模型的基礎上,提出了一種融合通道注意力機制的3D殘差網(wǎng)絡結構,將2D的殘差網(wǎng)絡應用到3D的行為識別任務中,采用了改進的殘差網(wǎng)絡結構并融合了通道注意力機制。首先在kinetics數(shù)據(jù)集上進行模型預訓練,然后在UCF-101和HMDB-51數(shù)據(jù)集上的對該網(wǎng)絡結構的準確度進行驗證分別取得了94%和71.4%的精度。
行為識別的主要任務是識別人體的相關的動作區(qū)域,這里引入了一種通道注意力機制,能夠增強網(wǎng)絡對信息特征的敏感度[2],可以使輸出的每個卷積模塊更好地利用區(qū)域以外的上下文信息,尤其能夠減輕較低網(wǎng)絡層次上感受野尺寸較小而無法獲得更多人體行為信息的情況。
通道注意力機制分為3個部分:壓縮模塊、激勵模塊和注意力模塊[3]。壓縮模塊通過使用全局平均池化,并把每個通道內的所有特征值求和再壓縮從而將全局的空間信息擠壓成一個通道特征圖,使該特征圖統(tǒng)計的信息能夠表現(xiàn)全局的特征信息,該模塊的具體計算如公式(1)所示,其中H和W代表特征圖的高和寬,c代表特征圖的通道數(shù)量,uc殘差模塊的特征值。
激勵模塊為了降低模型的復雜度并且增強模型的泛化能力,采用ReLU和Sigmoid激活函數(shù)共同組成,為了更加全面捕獲通道之間的相關性,通過兩個1×1卷積核卷積得到兩個權重參數(shù)W1和W2,訓練這兩個參數(shù)得到一個通道域的激勵權重,并且使用一個簡易的門機制,具體如公式(2)所示,σ和δ分別代表ReLU和Sigmoid激活函數(shù)。
注意力模塊在不同的通道域上得到的激勵權重與原殘差模塊特征值進行融合,即通過增強對關鍵通道上的注意力增加通道域中人體運動的特征權重,進而從模型中獲得更準確的關鍵信息,具體如公式(3)所示:
近些年來,Resnet在圖像分類中作出突出的貢獻[4],該方法引入了一種新的直連通道機制,通過這種直連的方式解決了深層網(wǎng)絡結構中梯度消失和梯度爆炸的問題,除了輸出層計算的圖像特征值外,還可以將之前網(wǎng)絡計算的特征值進行融合輸出,即添加了上一個網(wǎng)絡輸出的殘差。Resnet網(wǎng)絡避免了傳統(tǒng)卷積神經(jīng)網(wǎng)絡信息傳遞的丟失和損耗的情況,進而保護了圖像特征信息的完整性[5]。
改進的ResNeXt殘差網(wǎng)絡使用Resnet網(wǎng)絡并借鑒Inception網(wǎng)絡中的轉換合并機制,改變了殘差模塊的拓撲結構,將3×3×3的卷積模塊進行分組展開,這樣在減少參數(shù)復雜度的情況下有效提高了識別的準確率,本文將最新的ResNeXt網(wǎng)絡結構引入到行為識別任務中,并且使用融合通道注意力機制的3D卷積核對視頻信息特征進行提取,分組轉換計算如公式(4)所示,C為殘差模塊數(shù)目,G為分組組數(shù),wi和xi分別為分組卷積核中的權重和特征值。
將3D殘差模型進行優(yōu)化,并且與通道注意力機制融合,構建SE-ResNeXt模塊,即整個網(wǎng)絡模型中的各個殘差模塊輸出的特征值融合壓縮激勵的通道注意力機制,從而搭建了完整的基于通道注意力機制的3D殘差網(wǎng)絡,然后通過softmax模塊將輸入特征進行分類,并使用交叉熵函數(shù)計算模型損失,最后通過反向傳播迭代更新網(wǎng)絡參數(shù)。
本文中提出的SE-ResNeXt整體網(wǎng)絡結構如圖1所示,包括5種卷積層,1個全連接層,以及一個對視頻中的動作和行為進行分類的Softmax層。第一層卷積層是由7×7×7的3D卷積核組成,第2至第5層卷積層均是由ResNeXt3D卷積模塊組成,每一個卷積層后都有一個歸一化層和ReLU激活層,這4個層的通道數(shù)依次為64,128,256,512。與普通的3D卷積不同,該卷積模塊采用ResNeXt3D模塊,可以使用更深層次的網(wǎng)絡對其深度特征信息進行提取,在每個ResNeXt3D殘差模塊的基礎上融合基于通道注意力機制的SE模塊,在利用3D卷積將時間和空間維度進行卷積的同時,增加通道注意力機制增強連續(xù)視頻幀之間的依賴關系,池化層采用的具體方法為最大值池化,池化的卷積核大小為2×2×2,并且在第1,3,4,5層卷積核中均進行步長為2的時空下采樣,最后的全連接層輸出為512維向量。
圖1:基于通道注意力機制的SE-ResNeXt網(wǎng)絡結構
在研究通道注意力機制對視頻行為識別準確度基礎上,同時進行了網(wǎng)絡結構的深度以及視頻輸入幀數(shù)對模型結果影響的實驗。在SE-ResNeXt的基礎上,探究不同的網(wǎng)絡深度對行為識別的影響。實驗不改變基礎模型結構,通過改變不同SE-ResNeXt中模塊的數(shù)量從而改變模型的深度,通過這種方式可以更加直觀的探究出該模塊的數(shù)量和網(wǎng)絡深度對實驗準確度的影響,能夠取得更好的代表性并且進行更加精確的對比實驗。
為了提升數(shù)據(jù)的性能以及訓練模型的泛化性,實驗對視頻中的內容進行空間處理[6],首先將視頻切成連續(xù)幀,選取一個特定位置對視頻幀進行統(tǒng)一采樣,從而產(chǎn)生一組訓練樣本,如果輸入視頻的幀數(shù)少于16幀,對其進行初始幀循環(huán)插入以滿足輸入視頻16幀的要求。數(shù)據(jù)增強方面,對視頻幀進行10次裁剪,從其左上角開始,對其中一定規(guī)格的幀進行裁剪,并用同樣的方法對其左下、右上、右下和中間部分進行裁剪,將得到的幀做水平鏡像處理。同時為了使模型有更好的魯棒性,實驗還對視頻幀進行了多尺度空間裁剪[7],裁剪的尺寸的比例分別為
本文采用momentum動量隨機梯度下降方法訓練神經(jīng)網(wǎng)絡。在訓練過程中,使用交叉熵損失函數(shù)進行反向傳播權重的梯度,在訓練參數(shù)設置中,權重衰減為0.001,動量參數(shù)為0.9,batch_size為32,學習率策略最初設定為1e-4,輸入視頻采用滑動窗口生成輸入非重疊連續(xù)視頻幀,保證每個視頻都至少有一個特征信息進行訓練,將輸入片段送入神經(jīng)網(wǎng)絡評估所有視頻幀片段的類別分數(shù),最終將視頻幀片段的平均準確率作為視頻行為識別的準確度依據(jù)。
該實驗對SE-ResNeXt18,34,50,101多個網(wǎng)絡進行訓練,訓練過程中使用16個非重疊連續(xù)視頻幀作為輸入,并對SEResNeXt50和SE-ResNeXt101的視頻幀輸入數(shù)量增加至64幀,對比進行觀察實驗。
在對UCF-101和HMDB-51數(shù)據(jù)集進行行為識別的實驗中,深度學習編程框架使pytorch0.4.0,平臺系統(tǒng)為ubuntu16.04,CPU為i7 8700K,內存32G,并且使用1080Ti顯卡進行并行計算。UCF-101數(shù)據(jù)集包括101個行為類別,總共含有13320個人體行為視頻片段,平均每個視頻片段時間為7s,在數(shù)據(jù)集劃分方面,將70%的視頻行為片段作為訓練集,30%的視頻行為片段作為測試集。HMDB-51數(shù)據(jù)集包括51個行為類別,總共含有6766個人體動作行為視頻片段,每個視頻片段平均時間為3秒。HMDB-51數(shù)據(jù)集將70%的視頻行為片段作為訓練集,剩余30%作為測試集。UCF-101和HMDB-51都同時去除了不包含動作行為的視頻片段,從而更加準確地識別人體行為。
圖2:該模型與C3D模型在UCF-101驗證集上的準確度曲線
圖3:該模型與C3D模型在HMDB-51驗證集上的準確度曲線
本文使用kinetics預訓練模型對UCF-101和HMDB-51數(shù)據(jù)集進行遷移學習,圖2為SE-ResNeXt-101和C3D網(wǎng)絡模型在UCF-101數(shù)據(jù)驗證集上進行實驗的平均準確度曲線,觀察不同網(wǎng)絡模型的對比圖可以得出,本文提出的網(wǎng)絡模型相比原始的C3D模型在數(shù)據(jù)訓練中可以提前2至3個周期達到最高的準確度,并且相比原始模型收斂速度更快,而且從最終準確度也比原始模型高出5個百分點左右,所以使用SE-ResNeXt網(wǎng)絡能有效地對UCF-101數(shù)據(jù)集中的人體行為進行識別,并且有了一定的提升。圖3為SEResNeXt-101和C3D網(wǎng)絡模型在HMDB-51數(shù)據(jù)驗證集上進行實驗的平均準確度曲線,和在UCF-101數(shù)據(jù)集上相比大致相同,本文提出模型相比原始C3D提前1至2個周期達到最高的精確度,同時相比原始C3D模型也有著更快的模型收斂速度和更高的精度,但是由于HMDB-51數(shù)據(jù)集視頻內容的不同來源和復雜性的問題,訓練過程中準確度波動較大,但多次訓練過后依舊保持相對穩(wěn)定的狀態(tài),通過兩個數(shù)據(jù)集的對比驗證,更進一步證明了模型的魯棒性和有效性。
表1:在UCF-101和HMDB-51驗證集的精確度
表2:在UCF-101和HMDB-51驗證集的精確度
本節(jié)對該模型不同深度的實驗對比分析,由表1可知,在16幀視頻輸入的SE-ResNeXt模型中,SE-ResNeXt101在UCF-101和HMDB-51數(shù)據(jù)集上取得了最高的精度。從SE-ResNeXt18,34,50,101得出的實驗數(shù)據(jù)對比中,可以觀察出隨著模型網(wǎng)絡層數(shù)的加深,行為識別任務的精確度越來越高,同樣是16幀的行為輸入,發(fā)現(xiàn)SE-ResNeXt模型中數(shù)據(jù)的精度依次增加,實驗結果表明增加網(wǎng)絡層數(shù),增強了網(wǎng)絡模型的表征能力。
通過對數(shù)據(jù)集的觀察與分析發(fā)現(xiàn),在UCF-101和HMDB-51數(shù)據(jù)集中有一些數(shù)據(jù)集中出現(xiàn)行為過短的現(xiàn)象,比如射箭,射擊等瞬時行為,16幀的數(shù)據(jù)有時候難以捕捉到這類行為,在16幀視頻行為輸入的基礎上,增加了輸入時間的片段,將16幀增加到64幀的輸入,并對數(shù)據(jù)集中未達到64幀的行為視頻片段與初始幀循環(huán)連接。實驗表明,增加視頻幀輸入的數(shù)量能夠對模型的準確度進行一定的提升。缺點是增加了數(shù)據(jù)預處理的時間,網(wǎng)絡模型的運算量也更加復雜。
如表2將提出的SE-ResNeXt網(wǎng)絡模型與其他行為識別模型進行對比,選取了SE-ResNeXt101與其他實驗結果進行對比,觀察得出在UCF-101和HMDB-51數(shù)據(jù)集上,SE-ResNeXt網(wǎng)絡模型相比以前的單流網(wǎng)絡模型如C3D[8]、P3D[9]、LSTM[10]和Resnet3D[11]達到的實驗精度更高,并且和時空雙流的TSN[12]相比,SE-ResNeXt在UCF-101和HMDB-51上得到了更好的精確度,但是節(jié)省了RGB視頻幀轉換為光流的時間成本,說明深度的SE-ResNeXt可以在該數(shù)據(jù)集上有更好的泛化性,用融合通道注意力機制的3D殘差模塊的網(wǎng)絡結構取得了和更為復雜模型的相似實驗精度,在證明SE-ResNeXt模塊的有效性的同時,也證明了深度卷積網(wǎng)絡模型在行為識別任務中取得了良好的性能。
本文主要針對單流行為識別模型進行訓練研究,在當前主流的行為識別數(shù)據(jù)集上,通過使用時空3D卷積核取得有效的提升。對各個通道進行加權融合,增加通道之間的依賴性,從而使構建的SE-ResNeXt網(wǎng)絡模型有著更強的表征能力,并且本實驗中通過不同數(shù)量的殘差模塊構建了不同層數(shù)的網(wǎng)絡結構,實驗表明隨著網(wǎng)絡層數(shù)的加深,模型參數(shù)的不斷優(yōu)化,能夠有效地提升行為識別任務的準確度,對當前視頻識別技術領域如智能安防監(jiān)控、人機交互和視頻標注等領域有著很高的工程應用和學術價值。