楊凱翔 高君宇 馮洋博 徐常勝
動作識別作為計(jì)算機(jī)視覺領(lǐng)域的重要任務(wù)之一,其目的是識別視頻中的人物動作.目前,大部分的動作識別研究主要基于閉集環(huán)境,訓(xùn)練集和測試集的類別相同且固定,而真實(shí)世界是一個開放的環(huán)境,動作類別不斷變化.開集動作識別方法(Open Set Action Recognition, OSAR)旨在開放環(huán)境下,通過有限的訓(xùn)練集類別知識,使模型不僅能對已知類動作進(jìn)行準(zhǔn)確識別,還具備拒絕未知類動作的能力.
為了解決上述問題,一些OSAR直接將基于圖像的開集識別方法(Open Set Recognition, OSR)遷移于基于視頻的OSAR任務(wù).例如:OpenMax[1]得到已知類動作和未知類動作的分類概率,通過該概率分布拒絕未知類動作.RPL(Reciprocal Point Lear-ning)[2]對每個已知類都學(xué)習(xí)一個互斥點(diǎn),計(jì)算樣本和各個互斥點(diǎn)間的距離,區(qū)分已知類動作和未知類動作.盡管上述方法適用于基于圖像的OSR任務(wù),但因其無法處理視頻中存在的復(fù)雜時序信息,所以不能較好地遷移到基于視頻的OSAR任務(wù).
因此,學(xué)者們逐漸提出一些專門針對OSAR任務(wù)的方法.已有OSAR通常將動作視為整體進(jìn)行研究,忽略動作內(nèi)在的復(fù)雜性,同時也未考慮動作單元之間的時序關(guān)系,這導(dǎo)致其對相似的已知類動作和未知類動作缺乏判別力.具體而言,Krishnan等[3]將貝葉斯深度學(xué)習(xí)框架應(yīng)用于動作識別任務(wù),通過不確定性估計(jì)區(qū)分已知類動作和未知類動作.然而方法僅依賴于三維卷積神經(jīng)網(wǎng)絡(luò)提取的視頻特征,沒有專門考慮到視頻中時序信息的建模,從而忽略時序信息在開集動作識別中的重要作用,導(dǎo)致在區(qū)分具有相似外觀但不同時序特性的已知類動作和未知類動作時性能下降.Bao等[4]提出DEAR(Deep Evi-dential Action Recognition),在開集動作識別任務(wù)中引入證據(jù)深度學(xué)習(xí),將學(xué)習(xí)到的證據(jù)分?jǐn)?shù)用于識別已知類動作和未知類動作.但其主要研究對象為動作的整體特征,未考慮細(xì)粒度的動作特征,導(dǎo)致其未能充分挖掘整體特征與細(xì)粒度動作特征之間的潛在聯(lián)系.而對于OSAR任務(wù)來說,如果能將二者建立關(guān)系,即所有的已知類動作特征與細(xì)粒度的動作特征建立關(guān)系,那么未知類動作與已知類動作的差異就表現(xiàn)為該關(guān)系的差異,可據(jù)此識別未知類動作.所以不僅需要進(jìn)行細(xì)粒度的動作特征分析,還要聯(lián)系動作的整體特征與細(xì)粒度的動作特征.具體地,Luo等[5]提出AUMN(Action Unit Memory Network),通過對視頻級動作標(biāo)簽的學(xué)習(xí)間接更新細(xì)粒度的動作單元特征,構(gòu)建動作與動作單元間的關(guān)系.但對于OSAR任務(wù)來說,這種間接的學(xué)習(xí)方式無法得到精確的動作單元特征,不利于模型區(qū)分已知類動作和未知類動作.所以需要使用動作單元級別的標(biāo)簽對模型進(jìn)行監(jiān)督,得到準(zhǔn)確的細(xì)粒度動作單元特征.在此基礎(chǔ)上,再進(jìn)一步研究動作與動作單元間的關(guān)系.
具體而言,所有動作共享一個動作單元集合,每個動作都能由該集合中的若干動作單元組成.例如:三步上籃這個動作,可以劃分為跑步、跳躍、投擲三個動作單元.顯然,這些動作單元并不只屬于該動作,也被其它動作共享.不僅如此,每個動作包含的動作單元間存在時序性.所以針對某個未知類動作,其動作單元組成一般與已知類動作不同,即使相同,由于存在順序差異,也可分離未知類動作和已知類動作.
基于上述分析,本文提出時序動作單元感知的開集動作識別方法.由于缺少動作單元級別的標(biāo)簽,影響模型的開集識別性能,所以本文方法分為兩個階段.第一階段得到動作單元特征表示以及動作單元標(biāo)簽,用于后續(xù)訓(xùn)練.第二階段包含兩個模塊,其中動作單元關(guān)系模塊用于學(xué)習(xí)細(xì)粒度的動作單元特征,得到動作和動作單元的關(guān)系模式,并通過已知類動作和未知類動作在動作單元上不同的激活程度以識別未知類動作.動作單元時序模塊用于對動作單元的時序信息進(jìn)行建模,通過動作單元的時序性區(qū)分已知類動作和未知類動作.這樣在關(guān)系模式和動作單元的時序性這兩個角度上使模型具備區(qū)分已知類動作和未知類動作的能力.在UCF-101[6]、HMDB-51[7]、MiT-v2[8]數(shù)據(jù)集上進(jìn)行的開集動作識別實(shí)驗(yàn)表明,本文方法在準(zhǔn)確識別人物動作的同時還能拒絕未知類動作.
動作識別的主要目標(biāo)是判斷一段視頻中人物的動作類別.傳統(tǒng)的動作識別方法中使用人為設(shè)計(jì)的特征,這些特征是根據(jù)人類視覺的敏感程度提取的圖像中有區(qū)分能力的特征,包括全局特征和局部特征.全局特征描述視頻的整體顏色、紋理、形狀[9-10],而局部特征則是從圖像局部區(qū)域中抽取的特征,包括邊緣、角點(diǎn)、線、曲線等.然而,這種人為選取特征的方法費(fèi)時費(fèi)力且依賴人類的專業(yè)知識.隨著深度學(xué)習(xí)的發(fā)展,深度神經(jīng)網(wǎng)絡(luò)可自動從數(shù)據(jù)和標(biāo)注中學(xué)習(xí)相關(guān)特征,因此逐漸摒棄傳統(tǒng)的特征提取方法.Wang等[11]利用光流場獲得視頻序列中的一些軌跡,再沿軌跡分別提取HOF(Histograms of Optical Flow)、HOG(Histograms of Oriented Gradients)、MBH(Motion Boundary Histograms)、trajectory四種特征進(jìn)行分類.Simonyan等[12]提出Two-Stream Convolu-tional Networks,通過光流捕捉視頻幀之間的運(yùn)動信息.
此外,一些研究人員將循環(huán)神經(jīng)網(wǎng)絡(luò)用于視頻中的時序信息建模.Ng等[13]連接長短時記憶網(wǎng)絡(luò)(Long Short-Term Memory, LSTM)與卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)的輸出,通過CNN獲取視頻級的全局特征.考慮到視頻是由一系列圖像幀組成的,一些工作提取視頻每幀的特征,再對這些特征進(jìn)行耦合[14],得到視頻級別特征并進(jìn)行分類預(yù)測,但是這種方法忽略幀間的時序關(guān)系.因此,為了對視頻時序信息進(jìn)行建模,Tran等[15]提出C3D(Convolutional 3D),將二維CNN擴(kuò)展為三維,實(shí)驗(yàn)表明其在視頻時空特征提取方面的有效性.
此外,特征融合[16-17]以及注意力機(jī)制[18]也廣泛應(yīng)用于動作識別任務(wù)中.為了提高網(wǎng)絡(luò)性能,一些工作[19-21]已開始研究具有雙流或多流設(shè)計(jì)的三維CNN模型.最近,隨著基于Transformer[22]的預(yù)訓(xùn)練模型在許多自然語言處理任務(wù)中實(shí)現(xiàn)較優(yōu)結(jié)果,一些工作將 Transformer[23-26]引入動作識別任務(wù).
雖然上述方法在動作識別任務(wù)中已經(jīng)取得較優(yōu)效果,但研究均基于閉集環(huán)境.在開放環(huán)境下,未知類動作的出現(xiàn)會導(dǎo)致上述方法的性能明顯下降.
Li等[27]提出開集識別問題,用于人臉識別系統(tǒng).其后,隨著深度學(xué)習(xí)的成功,深度神經(jīng)網(wǎng)絡(luò)廣泛應(yīng)用于開集識別.Bendale等[1]提出OpenMax,通過已知類動作和未知類動作的分類概率的分布[28]識別未知類動作.隨后,Ge等[29]提出G-OpenMax(Generative OpenMax),結(jié)合OpenMax與生成式對抗網(wǎng)絡(luò)(Generative Adversarial Network, GAN),將GAN生成的未知類動作樣本用于開集識別模型的訓(xùn)練.Krishnan等[3]將貝葉斯深度學(xué)習(xí)框架應(yīng)用于動作識別,通過不確定性估計(jì)區(qū)分已知類動作和未知類動作.Busto等[30]提出ATI(Assign-and-Trans-form-Iteratively),其中目標(biāo)域包含源域中不存在的類別實(shí)例.Bao等[4]在開集動作識別任務(wù)中引入證據(jù)深度學(xué)習(xí),將學(xué)習(xí)到的證據(jù)分?jǐn)?shù)用于識別已知類動作和未知類動作.Feng等[31]提出STE-CapsNet(Spatial-Temporal Exclusive Capsule Network),通過時空路由機(jī)制聯(lián)合捕獲視頻的時空信息,使用點(diǎn)積路由機(jī)制限制閉集和開集的數(shù)據(jù)分布,降低OSAR的開集風(fēng)險.Cen等[32]從信息瓶頸理論分析OSAR任務(wù),提出PSL(Prototypical Similarity Learning),擴(kuò)大特征中包含的實(shí)例級信息和類級信息,獲得較好的開集識別性能.Zhao等[33]提出MULE(Multi-label Evidential Learning),解決場景中存在多個動作的問題.Du等[34]提出Humpty Dumpty,通過重建誤差判斷視頻樣本是否為未知樣本.
與上述方法不同,本文方法研究細(xì)粒度的動作單元特征,通過動作和動作單元的關(guān)系模式以及動作單元的時序性區(qū)分已知類動作和未知類動作.
時間序列分類是指將時間序列數(shù)據(jù)分為不同類別.例如:對于不同的運(yùn)動項(xiàng)目,采集它們的運(yùn)動軌跡數(shù)據(jù)集,那么給定一個未知運(yùn)動軌跡,判斷其相關(guān)的運(yùn)動項(xiàng)目就是一個典型的時間序列分類問題.一般而言,可以計(jì)算兩個序列間的歐氏距離進(jìn)行分類,但是這種基于歐氏距離的經(jīng)典分類算法在這類問題中表現(xiàn)不佳,因?yàn)闀r間序列通常會按照某種模式變化,不同時刻間存在很強(qiáng)的關(guān)聯(lián)性.于是使用動態(tài)時間歸整(Dynamic Time Warping, DTW)對比兩個時間序列的相似性,但是計(jì)算的時間復(fù)雜度較高.為此,Rakthanmanon[35]等優(yōu)化DTW,成功將其應(yīng)用于大型數(shù)據(jù)集上.其后,Hadji等[36]擴(kuò)展DTW,不僅能通過時間嵌入進(jìn)行細(xì)粒度動作識別,還能夠緩解不同拍攝角度對動作識別的影響.
本文提出時序動作單元感知的開集動作識別方法.其中,動作單元關(guān)系模塊用于學(xué)習(xí)細(xì)粒度的動作單元特征,進(jìn)而得到動作和動作單元的關(guān)系模式,并通過已知類動作和未知類動作在動作單元上不同的激活程度以識別未知類動作.動作單元時序模塊用于對動作單元的時序信息進(jìn)行建模,通過動作單元的時序性區(qū)分已知類動作和未知類動作.這樣在關(guān)系模式和動作單元的時序性這兩個角度上使模型具備區(qū)分已知類動作和未知類動作的能力.
具體來說,本文方法分為兩個階段.
1)第一階段流程圖如圖1所示, 先通過訓(xùn)練得到動作單元的特征表示及動作單元的標(biāo)簽信息.
圖1 動作單元特征及動作單元標(biāo)簽提取模塊流程圖
2)第二階段流程圖如圖2所示,使用動作單元標(biāo)簽和更新后的動作單元特征,重新進(jìn)行動作單元學(xué)習(xí),得到細(xì)粒度的動作單元特征以及動作和動作單元的關(guān)系模式,并完成對動作單元時序信息的建模.
集合
Dtrain={(x1,y1),…,(xi,yi),…,(xN,yN)}
為訓(xùn)練集,包含N個視頻樣本,其中,xi為第i個視頻樣本,yi∈{1,2,…,M}為第i個視頻樣本對應(yīng)的標(biāo)簽,M為動作的類別數(shù).集合Dtest為測試集,數(shù)據(jù)標(biāo)簽為
{1,2,…,M}∪{M+1,M+2,…,M+U},
其中U為開集數(shù)據(jù)集中動作類別的數(shù)量.
OSAR任務(wù)不僅要將已知類動作劃分至正確類別,還需要通過計(jì)算得到的閾值θ區(qū)分已知類動作和未知類動作,選取的閾值θ要確保95%的訓(xùn)練集D被識別為已知類動作.對于測試數(shù)據(jù),如果其區(qū)分已知類動作和未知類動作的置信度大于閾值θ,認(rèn)為是已知類動作,否則為未知類動作.
本節(jié)為本文方法的第一階段,本階段得到動作單元的特征表示以及動作單元的標(biāo)簽,用于后續(xù)訓(xùn)練,通過動作單元級別的標(biāo)簽對模型進(jìn)行監(jiān)督,得到細(xì)粒度動作單元特征,在此基礎(chǔ)上,再進(jìn)一步研究動作與動作單元間的關(guān)系.為了與后續(xù)章節(jié)中的特征進(jìn)行區(qū)分,為特征添加上標(biāo)old.
首先,進(jìn)行視頻特征的提取,如圖1所示,給定訓(xùn)練樣本xi,通過主干網(wǎng)絡(luò)(TSM(Temporal Shift Module)[37]等)獲得視頻時空特征:
(1)
其中,T為時間維度,H、W為空間維度,D為通道維度.在以后章節(jié)中,省略下標(biāo)i以精簡公式.
定義一組可學(xué)習(xí)動作單元Aold∈RK×D,K表示動作單元的個數(shù),所有動作都能由Aold中的若干動作單元組成,即Aold為所有的動作共享.然后,定義變換后的動作單元:
(2)
其中,Wa∈RD×D為線性變換參數(shù),ba∈R1×D為偏置.再定義三維池化后的視頻特征:
(3)
(4)
為了得到有效的動作單元預(yù)測得分Gold,關(guān)聯(lián)K個動作單元與M個動作,即
Zold=ReLU(WoGold+bo)={z1,…,zm,…,zM}∈RM,
(5)
其中,zm為第m類動作的預(yù)測得分,Wo∈RM×K為線性變換參數(shù),bo∈R1×M為偏置.這樣可以通過已有的視頻級別的動作標(biāo)簽進(jìn)行監(jiān)督,促進(jìn)對動作單元的預(yù)測.對于第m類動作,使用交叉熵?fù)p失進(jìn)行學(xué)習(xí):
(6)
此外,還使用EDL(Evidential Deep Learning)損失[4]優(yōu)化模型.EDL損失統(tǒng)籌考慮動作分類和不確定性建模,即
Le=EDL(Fold).
(7)
最終,本節(jié)的損失函數(shù)表示為
Lp=αLcl+βLe,
其中α、β為超參數(shù).
在訓(xùn)練后,動作單元Aold更新為Anew∈RK×D,并且動作類別和動作單元之間具備語義相關(guān)性,因此可以統(tǒng)計(jì)其相互的關(guān)系作為標(biāo)簽.具體地,對于每個樣本x,都有其在動作單元上的預(yù)測得分Gold,將第m類動作樣本的Gold均值化,得到該動作類對應(yīng)的動作單元標(biāo)簽Qm∈R1×K,將M個動作類別分別求取其對應(yīng)的動作單元標(biāo)簽,得
Q={Q1,…,Qm,…,QM}∈RM×K.
動作單元Anew和動作單元標(biāo)簽Q將用于后續(xù)章節(jié)的訓(xùn)練.
如圖2所示,本節(jié)共包含兩個模塊,第1個模塊為動作單元關(guān)系模塊,旨在學(xué)習(xí)動作與動作單元間的關(guān)系模式,通過已知類動作和未知類動作在動作單元上激活的差異識別未知類動作.第2個模塊為動作單元時序模塊,旨在學(xué)習(xí)動作單元間的時序關(guān)系,通過動作單元的時序性差異識別未知類動作.
特別地,本節(jié)將對模型重新進(jìn)行訓(xùn)練,所以使用上標(biāo)new與上述章節(jié)中的特征進(jìn)行區(qū)分.圖2中Anew為更新后的動作單元,動作單元標(biāo)簽Q用于模型訓(xùn)練.
2.3.1 動作單元關(guān)系模塊
為了使模型具備拒絕未知類動作的能力,必須能捕捉已知類動作和未知類動作的差異,如果能夠獲得所有已知類動作與動作單元間的關(guān)系模式,當(dāng)一個未知類動作進(jìn)入模型時,該動作與動作單元間的關(guān)系模式一般和已知類動作與動作單元間的關(guān)系模式不同,據(jù)此可以拒絕未知類動作.
首先訓(xùn)練樣本通過式(1)得到特征Fnew,通過式(2)~式(4)得到樣本在動作單元上的預(yù)測得分Gnew,此時公式中的Aold已替換為更新后的Anew.然后,訓(xùn)練過程與式(5)~式(7)一致.不同的是,為了進(jìn)一步建立動作和動作單元的關(guān)聯(lián),對動作單元進(jìn)行更細(xì)粒度的學(xué)習(xí).對于第m類動作,使用二值交叉熵?fù)p失,對動作單元上的預(yù)測得分Gnew進(jìn)行多標(biāo)簽學(xué)習(xí),即
其中,
為第m類動作對應(yīng)的動作單元標(biāo)簽,
Gnew={g1,g2,…,gK}.
從圖2中動作與動作單元的關(guān)系模式可以看出,不同動作單元和動作之間的激活程度不同.
2.3.2 動作單元時序模塊
考慮到未知類動作的動作單元組成若與已知類動作的動作單元組成相同,就會將未知類動作誤認(rèn)為已知類動作,所以研究動作單元的時序性可以使模型進(jìn)一步拒絕未知類動作.
首先,對視頻數(shù)據(jù)進(jìn)行采樣,并通過主干網(wǎng)絡(luò)和池化操作,提取高維的時序特征.這樣,建立底層視頻幀和高維時序特征的聯(lián)系.再去除空間維度,保留時間信息,得到特征
FT=AvgPool2d(Fnew)∈RT×D,
其中AvgPool2d(·)為二維平均池化.然后,將更新后的動作單元Anew與時序特征FT建立聯(lián)系,通過動作單元與不同時刻的不同關(guān)聯(lián)程度識別由于關(guān)系模式相同而無法拒絕的未知類動作,各動作單元與不同時刻的關(guān)聯(lián)程度如下:
P=AnewFT∈RK×T.
通過這種方式,從底層的視頻幀到高維的時序特征,再到與動作單元的關(guān)聯(lián),模型經(jīng)過訓(xùn)練后能夠?qū)W習(xí)動作單元與視頻幀之間的關(guān)系.
考慮到對于同種類別動作,其動作單元與不同時刻的關(guān)聯(lián)較相似,而不同種類動作則相反.所以,聚集一個批量的視頻數(shù)據(jù)的特征P,記為P*,對于其中每個視頻樣本,與其類別相同的樣本為正樣本,類別不同的樣本為負(fù)樣本,在DTW損失的約束下,同種類別動作樣本間的DTW距離更近,而不同類別動作樣本間的DTW距離更遠(yuǎn),這樣得到更具有判別力的特征P*的損失:
Ld=DTW(P*).
最終,整體損失函數(shù)為
Lall=αLcl+βLe+γLb+δLd,
其中α、β、γ、δ為超參數(shù).
綜上所述,通過動作單元關(guān)系模塊,獲得動作與動作單元的關(guān)系模式,通過動作時序模塊,對動作單元時序信息進(jìn)行建模,使模型不僅能對已知類動作進(jìn)行分類,還能在遇到未知類動作時,根據(jù)關(guān)系模式的差異以及動作單元的時序性拒絕未知類動作.
本文使用UCF-101[6]、HMDB-51[7]、MiT-v2[8]這3個動作識別數(shù)據(jù)集驗(yàn)證方法的有效性.UCF-101數(shù)據(jù)集是由YouTube上收集的真實(shí)動作視頻組成的動作識別數(shù)據(jù)集,提供來自101個動作類別的13 320個視頻.HMDB-51數(shù)據(jù)集包含51個類別,6 766個短視頻數(shù)據(jù).MiT-v2數(shù)據(jù)集由100萬個標(biāo)記為3 s的視頻組成,視頻內(nèi)容包括人物、動物和物體,數(shù)據(jù)集的類內(nèi)差異和類間差異均很大.本文將UCF-101數(shù)據(jù)集作為閉集數(shù)據(jù)集,HMDB-51、MiT-v2數(shù)據(jù)集作為開集數(shù)據(jù)集.
實(shí)驗(yàn)使用3種評價指標(biāo):閉集精度(Closed-Set Accuracy)、Open Set AUC分?jǐn)?shù)和Open maF1分?jǐn)?shù).閉集精度衡量閉集動作分類的準(zhǔn)確率.Open Set AUC分?jǐn)?shù)表示區(qū)分已知類動作和未知類動作的能力.Open maF1分?jǐn)?shù)表示將未知類視頻與M個已知類數(shù)據(jù)一起評判模型的M+1類macro-F1分?jǐn)?shù),即同時考慮各類的準(zhǔn)確率和召回率.
本文方法在DEAR[4]代碼框架下實(shí)現(xiàn).使用在Kinetics-400數(shù)據(jù)集[19]上訓(xùn)練的ResNet-50預(yù)訓(xùn)練模型的參數(shù)對本文方法進(jìn)行初始化,并在UCF-101數(shù)據(jù)集上進(jìn)行微調(diào).動作單元的數(shù)量設(shè)置為20,基礎(chǔ)學(xué)習(xí)率設(shè)置為0.001,學(xué)習(xí)的回合數(shù)為50,批量大小為8.在方法的第一階段中,α設(shè)置為0.3,β設(shè)置為1.在方法的第二階段中,α設(shè)置為0.3,β設(shè)置為1,γ設(shè)置為0.1,δ設(shè)置為0.1.其余超參數(shù)保持與DEAR的默認(rèn)參數(shù)相同.
本文選擇如下7種對比方法:OpenMax[1]、RPL[2]、文獻(xiàn)[3]方法、DEAR[4]、STE-CapsNet[31]、MC Dropout[38]、文獻(xiàn)[39]方法.分別在主干網(wǎng)絡(luò)I3D(Two-Stream Inflated 3D ConvNet)[19]、TSM[37],SlowFast[40]、TPN(Temporal Pyramid Network)[41]上進(jìn)行對比實(shí)驗(yàn).
各方法具體指標(biāo)值對比如表1所示,表中黑體數(shù)字表示最優(yōu)值.由表可見,當(dāng)TSM作為主干網(wǎng)絡(luò),HMDB-51數(shù)據(jù)集作為開集數(shù)據(jù)集時,相比STE-CapsNet,本文方法的Open maF1和Open Set AUC分?jǐn)?shù)分別提升1.18%和1.55%.MiT-v2數(shù)據(jù)集作為開集數(shù)據(jù)集時,本文方法的這兩項(xiàng)評價分?jǐn)?shù)得到更明顯的提升,分別提高10.43%和1.71%.所以,通過對動作與動作單元關(guān)系模式的學(xué)習(xí)和對動作單元時序信息的建模,大幅提高模型的開集識別性能.
表1 各方法在兩個開集數(shù)據(jù)集上的測試結(jié)果
雖然本文方法提高模型的開集識別性能,但是在閉集數(shù)據(jù)集上識別性能有少許下降,這是因?yàn)殚]集精度的提升主要依賴于在Kinetics-400數(shù)據(jù)集上的預(yù)訓(xùn)練ResNet-50.然而,本文方法更關(guān)注開集性能的提高而忽略對閉集識別性能的優(yōu)化,可能導(dǎo)致一些相似的類別無法正確分類.盡管如此,本文方法仍然能得到較高的閉集精度,在SlowFast作為主干網(wǎng)絡(luò)時,閉集精度為96.78%,相比STE-CapsNet得到的最高精度97.01%,僅降低0.23%.與開集識別性能的大幅提升來說,少量閉集精度的降低對模型整體性能的影響很小.
在今后的研究中,為了盡可能平衡在開集和閉集上的性能表現(xiàn),首先,可以考慮設(shè)計(jì)更輕量級的模塊,通過使用更簡單的網(wǎng)絡(luò)結(jié)構(gòu)或減少模塊的復(fù)雜度,保留預(yù)訓(xùn)練模型在閉集識別上的能力.其次,可以嘗試使用適當(dāng)?shù)奶卣魅诤戏椒?如注意力機(jī)制等,使開集識別模塊的引入更平衡,減輕對閉集性能的影響.
此外,當(dāng)TPN作為主干網(wǎng)絡(luò),HMDB-51數(shù)據(jù)集作為開集數(shù)據(jù)集時,本文方法的Open Set AUC分?jǐn)?shù)略低于STE-CapsNet,這可能是因?yàn)門PN對視頻中動作在不同的時間尺度上進(jìn)行建模,而本文方法也對動作進(jìn)行細(xì)粒度的動作單元學(xué)習(xí),所以在HMDB-51開集數(shù)據(jù)集上表現(xiàn)不佳.而當(dāng)MiT-v2數(shù)據(jù)集作為開集數(shù)據(jù)集時,本文方法的Open Set AUC分?jǐn)?shù)比STE-CapsNet提高1.19%.這是因?yàn)镸iT-v2數(shù)據(jù)集視頻更多樣,與閉集數(shù)據(jù)集UCF-101存在明顯差異,所以模型更容易區(qū)分UCF-101數(shù)據(jù)集上的已知類動作和MiT-v2數(shù)據(jù)集上的未知類動作.
下面對動作與動作單元的關(guān)系模式進(jìn)行可視化.動作單元數(shù)量設(shè)置為20,消融實(shí)驗(yàn)中討論不同動作單元數(shù)量對模型性能的影響.因?yàn)閁CF-101數(shù)據(jù)集上動作類別過多,選取前20個動作類別,動作與動作單元的可視化結(jié)果如圖3所示,圖中方格顏色越深表示對應(yīng)動作與動作單元關(guān)聯(lián)性越強(qiáng).由圖可見,動作單元14與投籃、扣籃、打保齡球等動作關(guān)聯(lián)性較強(qiáng),所以該動作單元可能為持有物品(球狀).動作單元17與籃球投籃和刷牙關(guān)聯(lián)性較強(qiáng),所以該動作單元可能與手腕活動有關(guān).動作單元5與射箭、騎自行車、打保齡球有關(guān),所以該動作單元可能表示長距離的位移.由于人類動作的復(fù)雜性,視頻樣本間存在巨大差異,通過自適應(yīng)的學(xué)習(xí)可得到各個動作與動作單元間的復(fù)雜關(guān)聯(lián).
圖3 動作與動作單元的關(guān)系模式
本節(jié)實(shí)驗(yàn)均使用TSM作為主干網(wǎng)絡(luò),UCF-101數(shù)據(jù)集作為閉集數(shù)據(jù)集,HMDB-51數(shù)據(jù)集作為開集數(shù)據(jù)集.
有無動作單元關(guān)系模塊和動作單元時序模塊對模型性能的影響如表2所示,表中黑體數(shù)字表示最優(yōu)值.由表可見,當(dāng)加入動作單元關(guān)系模塊(簡稱為關(guān)系模塊)時,Open maF1和Open Set AUC分?jǐn)?shù)分別提高4.21%和2.39%,這說明關(guān)系模塊通過對動作與動作單元間關(guān)系模式的學(xué)習(xí),捕捉到已知類動作和未知類動作在動作單元上不同的激活程度,提升模型的開集識別性能.當(dāng)只加入動作單元時序模塊(簡稱為時序模塊)時,Open maF1和Open Set AUC分?jǐn)?shù)分別提高0.51%和0.53%.時序模塊通過將動作單元與時序特征建立聯(lián)系,并計(jì)算動作單元與不同時刻的關(guān)聯(lián)程度以識別未知類動作,提高模型的準(zhǔn)確性和可靠性.當(dāng)同時加入兩個模塊時,相比未加入兩個模塊的模型,Open maF1和Open Set AUC分?jǐn)?shù)分別提高4.06%和2.79%,這說明兩個模塊能夠協(xié)同工作,利用關(guān)系模塊和時序模塊的優(yōu)勢,可進(jìn)一步提高模型在開集動作識別任務(wù)中的性能.
表2 不同模塊對模型性能的影響
為了分析動作單元的數(shù)量對模型開集識別性能的影響,設(shè)置10個、20個、30個、40個、50個這5種不同的動作單元數(shù)量進(jìn)行實(shí)驗(yàn),結(jié)果如表3所示,表中黑體數(shù)字表示最優(yōu)值.由表可見,當(dāng)動作單元數(shù)量設(shè)置為10時,Open maF1分?jǐn)?shù)最高,為89.94%,當(dāng)動作單元數(shù)量為20時,Open Set AUC分?jǐn)?shù)最高,為81.44%.可以看出,較少數(shù)量的動作單元能夠更好地捕捉不同動作之間的共性特征,提高模型的開集識別性能.而隨著動作單元數(shù)量變大,動作被劃分為更細(xì)粒度的動作單元,反而不利于拒絕未知類動作.
表3 動作單元數(shù)量對開集識別性能的影響
有無動作單元標(biāo)簽對開集識別性能的影響如表4所示,表中黑體數(shù)字表示最優(yōu)值.由表可見,當(dāng)在動作單元關(guān)系模塊中使用動作單元標(biāo)簽對動作單元進(jìn)行細(xì)粒度學(xué)習(xí)時,Open maF1和Open Set AUC分?jǐn)?shù)分別提高5.22%和1.27%.通過細(xì)粒度動作單元學(xué)習(xí),模型能夠更準(zhǔn)確地學(xué)習(xí)不同動作之間的細(xì)微差異和動作單元之間的關(guān)聯(lián).對于未知類動作的識別也會受益于動作單元的細(xì)粒度學(xué)習(xí),因?yàn)槲粗悇幼鞯膭幼鲉卧M成通常與已知類動作不同,模型可以通過學(xué)習(xí)到的動作單元關(guān)系模式進(jìn)行拒絕判斷.
表4 有無動作單元標(biāo)簽對開集識別性能的影響
因此,動作單元的細(xì)粒度學(xué)習(xí)在提高模型的開集識別性能方面起到積極作用,增強(qiáng)模型對動作和動作單元之間關(guān)系的建模能力,從而提高模型在開集動作識別任務(wù)中的表現(xiàn).
3.4.1 混淆矩陣
HMDB-51、MiT-v2數(shù)據(jù)集作為未知數(shù)據(jù)集時的混淆矩陣如圖4和圖5所示,圖中,前101行和列來自UCF-101數(shù)據(jù)集上的已知類,而其余類別來自未知數(shù)據(jù)集,圖中,顏色越淺表示值越大,左下角區(qū)域表示模型將已知類動作錯誤分類為未知類動作,右上角區(qū)域表示模型將未知類動作錯誤分類為已知類動作.
(a)I3D (b)TSM (c)SlowFast (d)TPN
(a)I3D (b)TSM (c)SlowFast (d)TPN
由圖4和圖5可見,當(dāng)使用HMDB-51數(shù)據(jù)集作為未知數(shù)據(jù)集時,相比其它模型,TSM將已知類動作錯誤分類為未知類動作的情況較少.相反,TSM更傾向于將未知類動作錯誤分類為已知類動作.然而,當(dāng)使用MiT-v2數(shù)據(jù)集作為未知數(shù)據(jù)集時,I3D和SlowFast顯示出明顯優(yōu)勢,相比TSM和TPN,能更準(zhǔn)確地識別未知類動作.這表明在面對較大規(guī)模的未知數(shù)據(jù)集時,I3D和SlowFast能夠更好地識別未知類動作.
此外,由于MiT-v2數(shù)據(jù)集比UCF-101數(shù)據(jù)集更龐大,存在大量未知類動作被錯誤歸類為已知類動作的情況.這一結(jié)果進(jìn)一步凸顯開集動作識別領(lǐng)域面臨的挑戰(zhàn)以及不同模型之間的性能差異.
此外,還分析最容易被誤分類的未知類動作,具體結(jié)果如圖6所示,圖中,x軸表示UCF-101、HMDB-51數(shù)據(jù)集上的動作標(biāo)簽,y軸表示UCF-101數(shù)據(jù)集上動作類別的預(yù)測標(biāo)簽,選取最容易被錯誤分類為已知類動作(紅色)的前5個未知類動作(藍(lán)色).
圖6 最容易被錯誤分類的前5個未知類動作
由圖6可以看出,在閉集設(shè)置中,盡管模型的準(zhǔn)確率(對角線上的元素)相對較高,但仍存在未知類動作被錯誤分類為已知類動作的情況.
具體而言,在HMDB-51數(shù)據(jù)集上,未知類動作“推”經(jīng)常被錯誤歸類為已知類動作“俯臥撐”.這種錯誤分類主要是因?yàn)檫@兩個動作在動作特征上具有相似性.該結(jié)果進(jìn)一步驗(yàn)證本文方法的必要性,因?yàn)閮H依靠整體動作特征無法準(zhǔn)確區(qū)分這些相似的動作,需要考慮動作的時序信息以更好地進(jìn)行分類和識別.通過對動作單元的感知和建模,能更好地捕捉動作的細(xì)粒度信息和時序性,提升未知類動作的識別性能,降低已知類動作被錯誤歸類的風(fēng)險.
3.4.2 特定動作類別的性能分析及其相關(guān)性
本文使用UCF-101數(shù)據(jù)集作為開集數(shù)據(jù)集,HMDB-51數(shù)據(jù)集作為閉集數(shù)據(jù)集,TSM作為主干網(wǎng)絡(luò),隨機(jī)選取20個動作類別的Open Set AUC分?jǐn)?shù)及它們對應(yīng)的閉集精度進(jìn)行分析,具體如圖7所示.
圖7 TSM作為主干網(wǎng)絡(luò)時20個動作類別的指標(biāo)值對比
由圖7可觀察到,動作類別的Open Set AUC分?jǐn)?shù)在58.34%~87.69%之間變化,閉集精度在63.04%~100%之間變化.有一些動作類別在Open Set AUC和閉集精度上都表現(xiàn)出色,如足球雜耍、平衡木和自由體操,指標(biāo)值接近或達(dá)到100%.這表明模型在識別和區(qū)分這些動作類別方面非常準(zhǔn)確.然而,也有一些動作類別在Open Set AUC上得分相對較低,如鉛球、跳遠(yuǎn)和跳高,同樣地,它們的閉集精度也相對較低.這可能是因?yàn)檫@些動作類別的特征表示與其它類別較相似,導(dǎo)致模型難以準(zhǔn)確分類.這種分類錯誤進(jìn)一步導(dǎo)致模型在區(qū)分已知類動作和未知類動作時發(fā)生混淆.
盡管Open Set AUC分?jǐn)?shù)和閉集精度之間存在一定的相關(guān)性,較低的閉集精度往往伴隨著較低的Open Set AUC分?jǐn)?shù),但它們并不是完全一致的.如圖7所示,盡管“激流劃艇”動作的閉集精度較低,但相對于具有類似閉集精度的動作類別,如“跳高”和“標(biāo)槍投擲”來說,“激流劃艇”的Open Set AUC分?jǐn)?shù)相對較高.
本文提出時序動作單元感知的開集動作識別方法,包括動作單元關(guān)系模塊和動作單元時序模塊.首先,動作單元關(guān)系模塊用于學(xué)習(xí)細(xì)粒度的動作單元特征并捕捉動作與動作單元之間的關(guān)系模式.通過這種方式,模型能夠了解不同動作與動作單元的關(guān)聯(lián)程度,因?yàn)槲粗悇幼鞯膭幼鲉卧M成一般與已知類動作不同.因此,當(dāng)遇到未知類動作時,模型可以通過關(guān)系模式的不匹配拒絕未知類動作.然后,動作單元時序模塊用于建模動作單元的時序信息,能夠捕捉動作單元在時間上的變化,更好地理解動作的演變過程.通過對動作單元的時序性進(jìn)行建模,模型可以進(jìn)一步提升對已知類動作和未知類動作的區(qū)分能力.實(shí)驗(yàn)表明,本文方法在開集動作識別任務(wù)上表現(xiàn)較優(yōu).今后可考慮采用更簡單的網(wǎng)絡(luò)結(jié)構(gòu)或減少模塊的復(fù)雜度,加快訓(xùn)練速度,在保持一定性能水平的前提下提升模型效率.