張家波 高 潔 黃鐘玉 徐光輝
(重慶郵電大學(xué)通信與信息工程學(xué)院 重慶 400065)
人類情緒在日常生活中發(fā)揮著至關(guān)重要的作用,對(duì)思考、行為和社交關(guān)系產(chǎn)生深遠(yuǎn)影響。因此,準(zhǔn)確識(shí)別人類情緒至關(guān)重要,它能更深入地理解自身以及他人的情感狀態(tài),從而增進(jìn)彼此的理解[1,2]。在早期的研究中,情緒識(shí)別主要依賴于面部表情的識(shí)別。然而,隨著 步態(tài)分析在外科研究中的應(yīng)用[3],研究人員開始意識(shí)到步態(tài)在情緒識(shí)別中的廣泛應(yīng)用可能性[4]。
然而,在早期步態(tài)研究中,獲取和分析步態(tài)數(shù)據(jù)的方法主要依賴于人工收集和分析,這給步態(tài)數(shù)據(jù)的獲取和分析帶來了巨大挑戰(zhàn)。隨著人工智能技術(shù)的快速發(fā)展,近年來越來越多的研究開始探討如何利用神經(jīng)網(wǎng)絡(luò)架構(gòu)從步行視頻中提取人體姿態(tài)信息[5]。通過精心設(shè)計(jì)的人工智能算法和精確的損失函數(shù),可以從視頻和圖片數(shù)據(jù)中提取出基于人體骨骼的姿態(tài)特征數(shù)據(jù)。文獻(xiàn)[6]提出一種基于自動(dòng)編碼器的半監(jiān)督學(xué)習(xí)方法,本方法將人體姿態(tài)編碼映射,并通過自上而下的方式完成對(duì)人類步態(tài)情緒的分類。為了從步態(tài)中更準(zhǔn)確地感知人類情緒,文獻(xiàn)[7]提出一種新的基于時(shí)空?qǐng)D卷積網(wǎng)絡(luò)架構(gòu)的方法。更進(jìn)一步地,文獻(xiàn)[8]提出一種將人體空間骨骼特征與原始視覺特征融合的方法,以實(shí)現(xiàn)更準(zhǔn)確的情緒識(shí)別。此外,為了實(shí)現(xiàn)更廣泛的識(shí)別功能,文獻(xiàn)[9]提出一種多任務(wù)步態(tài)識(shí)別方法,不僅可以進(jìn)行步態(tài)情緒識(shí)別,還可以同時(shí)進(jìn)行步態(tài)動(dòng)作預(yù)測(cè)與身份識(shí)別。為了在獲取步態(tài)數(shù)據(jù)時(shí)保護(hù)被研究者的隱私,文獻(xiàn)[10]提出一種利用步態(tài)特征識(shí)別來保護(hù)隱私的方法。
然而,由于步態(tài)特征的復(fù)雜性,步態(tài)特征的提取仍然是一個(gè)具有挑戰(zhàn)性的問題。現(xiàn)有文獻(xiàn)[8-14]使用的方法僅使用空間或時(shí)間模塊提取特征,忽略不同幀節(jié)點(diǎn)之間的關(guān)聯(lián)性。因?yàn)椴綉B(tài)中的不同時(shí)間節(jié)點(diǎn)之間存在強(qiáng)相關(guān)性,例如腿部和臀部的運(yùn)動(dòng)。因此,為了更好地反映步態(tài)的結(jié)構(gòu)和動(dòng)態(tài)信息,一個(gè)節(jié)點(diǎn)的特征應(yīng)該包含其相關(guān)時(shí)間節(jié)點(diǎn)的信息[15,16]。此外,在特征提取時(shí),文獻(xiàn)[9,17-19]只考慮整體人體姿態(tài)的變化,而沒有進(jìn)行局部到整體的層次分析。實(shí)際上,步態(tài)中不同部位的運(yùn)動(dòng)具有不同的規(guī)律和重要性。所以,通過先提取局部區(qū)域的特征變化,再綜合多個(gè)區(qū)域的特征變化來獲取全局動(dòng)作的特征變化,實(shí)現(xiàn)步態(tài)情緒的識(shí)別。因此,本文提出多尺度分區(qū)有向自適應(yīng)時(shí)空?qǐng)D卷積神經(jīng)網(wǎng)絡(luò)(Multi-scale Partition Directed Adaptive Spatio-Temporal Graph Convolutional Neural network,MPDAST-GCN)方法。首先對(duì)人體步態(tài)數(shù)據(jù)按照人體部位進(jìn)行分區(qū)處理,構(gòu)建分區(qū)有向時(shí)空?qǐng)D,并使用圖深度學(xué)習(xí)將每幀節(jié)點(diǎn)特征按照分區(qū)進(jìn)行聚合和更新。然后通過多尺度自適應(yīng)圖卷積模塊,更新的特征數(shù)據(jù)能夠自適應(yīng)地學(xué)習(xí)每個(gè)圖的特征。最后并且使用分區(qū)融合模塊,融合更新后的局部特征。綜上所述,本文的主要貢獻(xiàn)如下:
(1) 提出一種分區(qū)有向時(shí)空?qǐng)D構(gòu)建方法。本方法將人類步態(tài)分割為5個(gè)部分,并在時(shí)間維度上將所有幀節(jié)點(diǎn)打破原有的拓?fù)浣Y(jié)構(gòu),重新構(gòu)建成一張分區(qū)有向時(shí)空?qǐng)D。由于采用分區(qū)有向時(shí)空?qǐng)D,所有節(jié)點(diǎn)之間都是1跳或多跳鄰居,能夠獲取任意兩個(gè)幀節(jié)點(diǎn)之間的聯(lián)系,有序地提取特征,避免特征信息的冗余。
(2) 提出一種多尺度分區(qū)聚合和分區(qū)融合的方法。本方法利用圖深度學(xué)習(xí)技術(shù)對(duì)構(gòu)建的分區(qū)有向時(shí)空?qǐng)D進(jìn)行特征更新。將分區(qū)劃分為5個(gè)部分,將每個(gè)分區(qū)內(nèi)的節(jié)點(diǎn)與其前面1幀或多幀的鄰居節(jié)點(diǎn)進(jìn)行有向連接。更新特征后,進(jìn)行分區(qū)融合,將1個(gè)或多個(gè)節(jié)點(diǎn)的特征自適應(yīng)地融合成1個(gè)節(jié)點(diǎn)特征,從而減小網(wǎng)絡(luò)復(fù)雜度。
(3) 提出多尺度分區(qū)有向自適應(yīng)時(shí)空?qǐng)D卷積神經(jīng)網(wǎng)絡(luò)(MPDAST-GCN)方法,本方法不僅考慮每幀節(jié)點(diǎn)之間的相互影響和相鄰幀節(jié)點(diǎn)之間相互影響,還同時(shí)考慮局部和整體時(shí)間的關(guān)系,讓網(wǎng)絡(luò)自適應(yīng)地學(xué)習(xí)它們之間聯(lián)系的重要程度,并利用有向時(shí)空?qǐng)D更新每幀節(jié)點(diǎn)的特征。通過多尺度自適應(yīng)圖卷積模塊,更新的特征數(shù)據(jù)能夠自適應(yīng)地學(xué)習(xí)多跳鄰居的特征。
本文模型由3個(gè)部分組成:分區(qū)聚合更新模塊、多尺度自適應(yīng)圖卷積塊和分區(qū)融合模塊。首先,將每個(gè)樣本數(shù)據(jù)的所有節(jié)點(diǎn)構(gòu)建為1張分區(qū)有向時(shí)空?qǐng)D。然后,通過分區(qū)聚合更新模塊獲取每個(gè)分區(qū)更新后的節(jié)點(diǎn)數(shù)據(jù)。接著,通過多尺度自適應(yīng)圖卷積塊自適應(yīng)地學(xué)習(xí)每個(gè)節(jié)點(diǎn)特征數(shù)據(jù)之間的相關(guān)性,并根據(jù)相關(guān)性自適應(yīng)地更新這些節(jié)點(diǎn)特征。最后,進(jìn)行分區(qū)內(nèi)1個(gè)或多個(gè)相似特征節(jié)點(diǎn)的融合。如圖1所示,模型共有5層。在前兩層中,每經(jīng)過1層,節(jié)點(diǎn)都會(huì)進(jìn)行1次融合。而在后3層中,節(jié)點(diǎn)并不會(huì)進(jìn)行融合。學(xué)習(xí)到的特征數(shù)據(jù)經(jīng)過全局池化后,將情緒數(shù)據(jù)分成4種類型:高興、傷心、憤怒和平常。

圖1 多尺度分區(qū)有向聚合自適應(yīng)圖卷積網(wǎng)絡(luò)
2.1.1 分區(qū)方式
本算法使用的是最新的數(shù)據(jù)集Emotion-Gait[7],它是將視頻形式的步態(tài)數(shù)據(jù)轉(zhuǎn)化為每幀21個(gè)節(jié)點(diǎn)的圖結(jié)構(gòu)數(shù)據(jù)。在進(jìn)行分區(qū)時(shí),將步態(tài)圖結(jié)構(gòu)數(shù)據(jù)分為左手、右手、左腿、右腿、軀干5個(gè)部分,如圖2。一般而言,行走時(shí),手的擺幅比較大,腿的擺幅比較小,而軀干的運(yùn)動(dòng)變化則更加細(xì)微,此外,手和腿的運(yùn)動(dòng)方向也是相反的。因此,把步態(tài)圖結(jié)構(gòu)數(shù)據(jù)分為5個(gè)部分,可以更加準(zhǔn)確地捕捉到行走過程中每個(gè)部位的變化,從而更好地解讀行走動(dòng)作。

圖2 兩次節(jié)點(diǎn)分區(qū)方式和融合方式
2.1.2 多尺度分區(qū)聚合
在以前的工作中,絕大部分算法都是直接從全局特征入手,沒有考慮到人體不同位置的差異。在人類步態(tài)序列中,不同節(jié)點(diǎn)的特征數(shù)據(jù)屬性因空間位置變化而異。考慮到上述問題,提出一種分區(qū)有向聚合方法,本方法為整個(gè)樣本時(shí)間序列構(gòu)建一個(gè)分區(qū)有向時(shí)空?qǐng)D,打破原來節(jié)點(diǎn)間的拓?fù)浣Y(jié)構(gòu),圖的節(jié)點(diǎn)數(shù)量是所有幀節(jié)點(diǎn)的總和。考慮到時(shí)間流逝的方向,邊的連接方式是,前一幀或幾幀的k跳鄰居節(jié)點(diǎn)指向當(dāng)前節(jié)點(diǎn),這是一個(gè)有向邊,如圖3所示。分區(qū)有向時(shí)空?qǐng)D使用鄰接矩陣表示,如式(2)。圖神經(jīng)網(wǎng)絡(luò)對(duì)整張分區(qū)有向時(shí)空?qǐng)D節(jié)點(diǎn)進(jìn)行更新。如式(3)所示

圖3 多幀節(jié)點(diǎn)之間的連接關(guān)系
式(1)表示一幀圖結(jié)構(gòu)k跳鄰居節(jié)點(diǎn)間的連接關(guān)系,邊的權(quán)重始終為1,d(vi,vj) 代表節(jié)點(diǎn)vi到節(jié)點(diǎn)vj的距離。式(2)表示分區(qū)有向時(shí)間圖中節(jié)點(diǎn)之間的連接關(guān)系,當(dāng)k=1時(shí),表示正常一跳鄰居節(jié)點(diǎn)的連接關(guān)系。τ表示與每幀相連幀的數(shù)量,本文中設(shè)置為1或2。NT表示整張圖中所有節(jié)點(diǎn)數(shù)量,其值為N×T,N是每幀圖節(jié)點(diǎn)數(shù)量,T是所有幀數(shù)量。在圖神經(jīng)網(wǎng)絡(luò)的第l層中,輸出特征被表示為∈RCout×T×N,Cout表示輸出特征圖數(shù)量。節(jié)點(diǎn)輸入特征表示為∈RCin×T×N,Cin表示輸入特征圖數(shù)量。δ為歸一化函數(shù),用于歸一化更新后的節(jié)點(diǎn)特征值。Θl為有向圖神經(jīng)網(wǎng)絡(luò)抽象函數(shù),包含3個(gè)函數(shù):更新函數(shù),以及兩個(gè)特征提取函數(shù),如式(4)、式(5)
其中Θl的兩個(gè)特征提取函數(shù)用于從原始節(jié)點(diǎn)屬性提取特征,更新函數(shù)來對(duì)任意節(jié)點(diǎn)i屬性進(jìn)行更新。
(1) 對(duì)于每個(gè)目標(biāo)節(jié)點(diǎn),使用 gvt(·)提取每個(gè)目標(biāo)節(jié)點(diǎn)的目標(biāo)節(jié)點(diǎn)的特征。
(2) 對(duì)于每個(gè)源節(jié)點(diǎn),使用 gvs(·)用于提取每個(gè)源節(jié)點(diǎn)的特征。
(3) 通過函數(shù)hv(·)更新所有的節(jié)點(diǎn),使用輸入節(jié)點(diǎn)特征提取出和,最后輸出更新后的節(jié)點(diǎn)特征。
需要引入兩個(gè)矩陣來提取它們的特征聯(lián)系。對(duì)于每個(gè)節(jié)點(diǎn),通過指定的可學(xué)習(xí)參數(shù)矩陣As對(duì)源節(jié)點(diǎn)特征進(jìn)行提取。類似地,采用設(shè)定的另一個(gè)可學(xué)習(xí)參數(shù)矩陣At對(duì)每個(gè)節(jié)點(diǎn)的目標(biāo)節(jié)點(diǎn)特征提取。進(jìn)一步,可以將式(4)中關(guān)于目標(biāo)節(jié)點(diǎn)和源節(jié)點(diǎn)特征提取的方程更新為式(7)
對(duì)每個(gè)節(jié)點(diǎn)的源節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)進(jìn)行特征提取后,利用提取到的特征數(shù)據(jù),更新每個(gè)節(jié)點(diǎn)。更新函數(shù)hv的過程可以分為兩個(gè)主要步驟,首先對(duì)數(shù)據(jù)Vs,Vt和進(jìn)行拼接,而后將拼接后的數(shù)據(jù)通過全連接層,將網(wǎng)絡(luò)自適應(yīng)學(xué)習(xí)3種特征數(shù)據(jù)權(quán)重,得到更新后的節(jié)點(diǎn)特征數(shù)據(jù)。其節(jié)點(diǎn)更新方程式(5)可以更新為式(8)
其中,X是更新后的節(jié)點(diǎn)特征。W是一個(gè)大小為(3×lchannel,lchannel) 的權(quán)重矩陣, 3×lchannel是輸入神經(jīng)元的數(shù)量,lchannel是輸出神經(jīng)元的數(shù)量,也是輸入數(shù)據(jù)X的輸入特征圖數(shù)量,方便輸入后續(xù)模塊,并使用服從正態(tài)分布的隨機(jī)數(shù)初始化W參數(shù)。b內(nèi)的每個(gè)元素初始化為1。
在2.1節(jié)中,構(gòu)建分區(qū)有向時(shí)空?qǐng)D,用于描述人體姿態(tài)局部特征之間的聯(lián)系。每個(gè)分區(qū)包含多個(gè)節(jié)點(diǎn)和有向邊,實(shí)現(xiàn)多級(jí)特征提取和表示多級(jí)關(guān)系。此外,通過圖神經(jīng)網(wǎng)絡(luò)對(duì)分區(qū)有向時(shí)空?qǐng)D中節(jié)點(diǎn)特征進(jìn)行更新,可以有效提高模型的魯棒性和準(zhǔn)確率。然而,在討論中沒有提到如何處理聚合更新后的特征。因此,在本節(jié)中,引入多尺度時(shí)空分區(qū)有向聚合自適應(yīng)圖卷積網(wǎng)絡(luò),以完成對(duì)每一幀圖內(nèi)的特征提取,從而實(shí)現(xiàn)對(duì)整體特征的表達(dá)。
2.2.1 自適應(yīng)圖卷積網(wǎng)絡(luò)
自適應(yīng)圖卷積網(wǎng)絡(luò)[15]是一種改進(jìn)過的圖卷積[11],它為每一幀圖添加一個(gè)自適應(yīng)學(xué)習(xí)結(jié)構(gòu)。可以用式(9)和式(10)來描述它
其中,X是第l層的有向更新后輸出特征,Y是第l層的輸出特征,Wn是每層網(wǎng)絡(luò)可學(xué)習(xí)的權(quán)重矩陣,An是表示采用分層策略的圖結(jié)構(gòu),但不進(jìn)行參數(shù)更新。Bn是一個(gè)N×N的圖結(jié)構(gòu),Bn的每個(gè)元素都是可以學(xué)習(xí)的參數(shù)。Cn表示所有數(shù)據(jù)的連接相關(guān)圖,也是可以學(xué)習(xí)的參數(shù),Wθn和Wφn分別是θ和φ兩個(gè)圖神經(jīng)網(wǎng)絡(luò)嵌入函數(shù)的參數(shù)。通過自適應(yīng)圖卷積網(wǎng)絡(luò),可以更有效地提取每一幀圖像的特征,此外,還可以通過學(xué)習(xí)參數(shù)Wn,Bn和Cn來調(diào)整網(wǎng)絡(luò)的結(jié)構(gòu),使模型更加適應(yīng)不同的場(chǎng)景。
2.2.2 多尺度時(shí)空分區(qū)有向聚合自適應(yīng)圖卷積塊
考慮到按分區(qū)提取相鄰幀節(jié)點(diǎn)特征,卻沒有考慮每幀多跳節(jié)點(diǎn)特征之間的聯(lián)系。比如仰頭大笑動(dòng)作和拍手動(dòng)作代表高興的情緒,頭部節(jié)點(diǎn)的空間特征應(yīng)該和拍手動(dòng)作有很強(qiáng)的關(guān)聯(lián)性。為了能夠有效提取多跳節(jié)點(diǎn)之間的特征聯(lián)系,提出多尺度時(shí)空分區(qū)有向聚合自適應(yīng)圖卷積塊,來對(duì)長(zhǎng)距離鄰居特征信息進(jìn)行提取和更新。輸入數(shù)據(jù)通過多尺度時(shí)空分區(qū)有向聚合自適應(yīng)圖卷積塊中,將所有樣本節(jié)點(diǎn)合并到同一張圖中構(gòu)建分區(qū)有向時(shí)空?qǐng)D,而后使用圖深度學(xué)習(xí)方法對(duì)節(jié)點(diǎn)特征進(jìn)行更新,設(shè)計(jì)一個(gè)分區(qū)有向聚合模塊來實(shí)現(xiàn)該功能。該圖卷積塊由以下幾個(gè)步驟組成:首先,對(duì)所有節(jié)點(diǎn)按設(shè)定的分區(qū)方式進(jìn)行分區(qū),并構(gòu)建為分區(qū)有向時(shí)空?qǐng)D。使用圖神經(jīng)網(wǎng)絡(luò)提取分區(qū)內(nèi)的節(jié)點(diǎn)特征聯(lián)系;其次,使用多尺度自適應(yīng)圖卷積塊,提取每幀內(nèi)多跳節(jié)點(diǎn)間的聯(lián)系,形成一個(gè)更加精細(xì)的節(jié)點(diǎn)特征表達(dá);最后,對(duì)每個(gè)分區(qū)的特征進(jìn)行融合,將每個(gè)分區(qū)的相似特征的節(jié)點(diǎn)融合聚合成一個(gè)新的特征節(jié)點(diǎn)表示。采用多尺度分層策略如圖4,式(9)和式(10)可以更新為式(11),式(12)

圖4 多尺度分區(qū)策略
其中,An,m是多尺度分層策略為m時(shí)的構(gòu)造圖的子圖,Bn,m與An,m的形狀大小相同,初始值為0。通過多尺度學(xué)習(xí)的方式,對(duì)每個(gè)節(jié)點(diǎn)的不同距離的鄰居節(jié)點(diǎn)進(jìn)行特征提取和更新。由于采用分層策略,可以針對(duì)不同類型的鄰居采用不同的聚合方式來進(jìn)行特征提取。
在圖4中,綠色代表向心節(jié)點(diǎn),黑色代表人體姿態(tài)重心位置,藍(lán)色代表離心節(jié)點(diǎn),紅色代表采用策略的目標(biāo)節(jié)點(diǎn),3條虛線代表3個(gè)節(jié)點(diǎn)到重心的歐氏空間距離。
2.2.3 多尺度信息自適應(yīng)融合
通過式(14)和式(15),對(duì)每幀圖結(jié)構(gòu)節(jié)點(diǎn)的m跳鄰居節(jié)點(diǎn)特征提取學(xué)習(xí),但是沒有對(duì)不同尺度提取到的特征進(jìn)行整合,考慮到每個(gè)節(jié)點(diǎn)不同跳的鄰居集特征對(duì)每個(gè)節(jié)點(diǎn)的影響是有差異的。所以,通過對(duì)不同尺度的特征信息進(jìn)行拼接,通過一個(gè)1×1大小的卷積塊對(duì)不同尺度的信息進(jìn)行融合。如式(16)
其中,M代表最大鄰居距離,本文設(shè)置為4。Conv1×1第l層 1×1 大小的卷積塊參數(shù)。σ(·)代表激活函數(shù)。式(13)可以自適應(yīng)地融合不同尺度的鄰居的特征,動(dòng)態(tài)地學(xué)習(xí)不同尺度的特征權(quán)重。
2.3.1 節(jié)點(diǎn)融合
為了減少信息冗余和增強(qiáng)特征表達(dá),采用自上而下的分區(qū)融合方法,將初始圖結(jié)構(gòu)中的21個(gè)節(jié)點(diǎn)進(jìn)行合并。初始圖結(jié)構(gòu)中的節(jié)點(diǎn)特征有不同的相似度,例如手指和手腕兩個(gè)位置,在局部特征變化上有較大的差異,而在整體特征變化上有較小的差異。根據(jù)節(jié)點(diǎn)特征的相似度,逐步融合特征相近的節(jié)點(diǎn)。融合方式如式(14)所示
其中,D是融合矩陣,進(jìn)行兩次特征融合操作,分別使用融合矩陣D1∈R21×12和D2∈R12×7。融合矩陣D1的第1維表示源節(jié)點(diǎn),數(shù)量為21個(gè)節(jié)點(diǎn),第2維表示融合后節(jié)點(diǎn),數(shù)量為12。融合矩陣D2的第1維,同樣表示源節(jié)點(diǎn),數(shù)量為12,第2維表示融合后節(jié)點(diǎn),數(shù)量為7。兩次融合時(shí),源節(jié)點(diǎn)和融合后的節(jié)點(diǎn)對(duì)應(yīng)關(guān)系如圖2所示,數(shù)字代表對(duì)節(jié)點(diǎn)標(biāo)號(hào),大括號(hào)左邊代表被融合節(jié)點(diǎn),大括號(hào)右邊代表融合后新的節(jié)點(diǎn)。是輸入數(shù)據(jù)。
本算法的兩次融合以滿足兩個(gè)不同的目的。第1次融合的目的在于將相似的特征融合在一起。網(wǎng)絡(luò)就可以更加關(guān)注特征之間的差異,以便更好地分類輸入樣本。第2次融合的目的是讓網(wǎng)絡(luò)的注意力更多地集中在全局特征之間的聯(lián)系上,因此可以通過1次融合就獲得多跳鄰居節(jié)點(diǎn)之間的聯(lián)系,無需再進(jìn)行多次疊加操作。
2.3.2 自適應(yīng)融合
對(duì)源節(jié)點(diǎn)進(jìn)行聚合和融合時(shí),不同節(jié)點(diǎn)擁有的節(jié)點(diǎn)屬性有所差異,對(duì)目標(biāo)節(jié)點(diǎn)的影響也會(huì)有所不同,為了進(jìn)一步提高源節(jié)點(diǎn)對(duì)目標(biāo)節(jié)點(diǎn)聚合的魯棒性,讓所有融合節(jié)點(diǎn)的參數(shù)權(quán)重動(dòng)態(tài)地增強(qiáng)和減弱該節(jié)點(diǎn)對(duì)目標(biāo)的節(jié)點(diǎn)的影響,自適應(yīng)地調(diào)節(jié)目標(biāo)節(jié)點(diǎn)的特征強(qiáng)度。并且通過添加掩碼mask,讓節(jié)點(diǎn)融合時(shí),根據(jù)節(jié)點(diǎn)特征強(qiáng)度表達(dá)的不同,自適應(yīng)地學(xué)習(xí)融合權(quán)重,式(14)可以更新為式(15)。通過自適應(yīng)的方式,可以讓模型具有更強(qiáng)的魯棒性,以適應(yīng)不同節(jié)點(diǎn)的特征表達(dá),提高模型的準(zhǔn)確率。
本算法使用最新的Emotion-Gait[7]數(shù)據(jù)集,包括經(jīng)典數(shù)據(jù)集 BML[18], Human3.6M[20], ICT[21],CMU-MoCap,以及新采集的步態(tài)數(shù)據(jù)。Emotion-Gait對(duì)各種步態(tài)數(shù)據(jù)進(jìn)行全面處理,將視頻、圖片和圖序列步態(tài)數(shù)據(jù)都轉(zhuǎn)化為圖序列步態(tài)數(shù)據(jù)。此外,該數(shù)據(jù)集使用文獻(xiàn)[22]的算法,將所有模型統(tǒng)一為ELMD[23]中使用的21關(guān)節(jié)姿勢(shì)模型,具有更高的標(biāo)準(zhǔn)化程度和可比性。數(shù)據(jù)集共有1 835個(gè)步態(tài),其中10個(gè)注釋者提供情感標(biāo)簽。標(biāo)簽數(shù)據(jù)中,大約58%的步態(tài)為快樂情感,32%的步態(tài)為悲傷情感,23%的步態(tài)為憤怒情感,只有14%的步態(tài)為中性情感。
本次實(shí)驗(yàn)使用Python語言編寫,Python版本為3.7.12。實(shí)驗(yàn)代碼基于PyTorch 1.4.0實(shí)現(xiàn),使用Adam優(yōu)化器進(jìn)行網(wǎng)絡(luò)優(yōu)化,學(xué)習(xí)率設(shè)置為5E-4。網(wǎng)絡(luò)的參數(shù)設(shè)置如下:第1層網(wǎng)絡(luò)k=3,m=3;第2層網(wǎng)絡(luò)k=2,m=2; 第3層網(wǎng)絡(luò)k=4,m=4;第4層網(wǎng)絡(luò)k=4,m=4 ;第5層網(wǎng)絡(luò)k=4,m=4,并且使用Dropout因子來降低過擬合風(fēng)險(xiǎn),設(shè)置為0.3。網(wǎng)絡(luò)迭代次數(shù)為500,數(shù)據(jù)集劃分為90%訓(xùn)練集,10%測(cè)試集,每層網(wǎng)絡(luò)構(gòu)建兩個(gè)分區(qū)有向時(shí)空?qǐng)D,所以τ的值分別設(shè)置為1,2。實(shí)驗(yàn)設(shè)備為配備NVIDIA服務(wù)器顯卡V100的計(jì)算機(jī)。
本文將比較7種算法在步態(tài)情緒數(shù)據(jù)集上的表現(xiàn),所有方法都基于Emotion-Gait數(shù)據(jù)集[7]進(jìn)行展示:(1) 文獻(xiàn)[24]將長(zhǎng)短期記憶(Long Short Term Memory, LSTM)與步態(tài)情緒識(shí)別結(jié)合,利用步態(tài)關(guān)節(jié)空間位置數(shù)據(jù)作為輸入,將其轉(zhuǎn)換為用于分類任務(wù)的向量。(2) 文獻(xiàn)[7]采用時(shí)空?qǐng)D卷積網(wǎng)絡(luò)作為基本網(wǎng)絡(luò),以步態(tài)姿態(tài)數(shù)據(jù)為輸入訓(xùn)練網(wǎng)絡(luò)。同時(shí),構(gòu)建基于時(shí)空?qǐng)D卷積網(wǎng)絡(luò)的變分自編碼器,并通過精調(diào)時(shí)空?qǐng)D卷積網(wǎng)絡(luò)參數(shù)提高性能。(3) 文獻(xiàn)[6]使用基于自編碼器的半監(jiān)督學(xué)習(xí),輸入為4維數(shù)據(jù),包括3維空間運(yùn)動(dòng)數(shù)據(jù)和1維關(guān)節(jié)旋轉(zhuǎn)數(shù)據(jù)。編碼器中,關(guān)節(jié)運(yùn)動(dòng)數(shù)據(jù)自下而上分層匯聚;解碼器自上而下從潛在嵌入重建每個(gè)時(shí)間步的關(guān)節(jié)運(yùn)動(dòng)。訓(xùn)練分類器將嵌入數(shù)據(jù)映射到情感標(biāo)簽。(4) 文獻(xiàn)[11]提出分層策略,根據(jù)3D骨架結(jié)構(gòu)計(jì)算每個(gè)關(guān)節(jié)點(diǎn)的圖卷積,依據(jù)不同時(shí)間步的相同關(guān)節(jié)點(diǎn)實(shí)例計(jì)算時(shí)間鄰域,執(zhí)行卷積操作。(5) 文獻(xiàn)[25]根據(jù)運(yùn)動(dòng)學(xué)依賴性計(jì)算骨結(jié)構(gòu)的有向無環(huán)圖,利用圖神經(jīng)網(wǎng)絡(luò)和隨機(jī)游走方法更新節(jié)點(diǎn)特征,使用輸入人體姿勢(shì)空間特征數(shù)據(jù)訓(xùn)練DGNN網(wǎng)絡(luò)。(6) 文獻(xiàn)[17]在空間維度執(zhí)行多尺度圖卷積,時(shí)間維度添加跳躍連接,學(xué)習(xí)各種動(dòng)作的長(zhǎng)程依賴關(guān)系。(7) 文獻(xiàn)[12]將輸入的3D空間姿態(tài)數(shù)據(jù)分為多個(gè)通道維度特征,通過堆疊時(shí)空?qǐng)D卷積網(wǎng)絡(luò)進(jìn)行批處理,學(xué)習(xí)圖節(jié)點(diǎn)間的長(zhǎng)距離特征。
本文所提出的算法相對(duì)于以前的方法提高所有情緒類別的識(shí)別性能,如表1所示。具體來說,本文使用的方法在快樂、悲傷、憤怒和正常類別上的準(zhǔn)確率相對(duì)于分層注意力池化(Hierarchical Attention Pooling, HAP)[6]的方法分別提高1%, 3%,10%和7%。

表1 與其他算法對(duì)比(%)
從表1的數(shù)據(jù)可以看出,網(wǎng)絡(luò)對(duì)于高興和悲傷情緒的識(shí)別精度提升較小,而對(duì)于憤怒和平常情緒的提升較大。通過在小樣本上提高精度,可以驗(yàn)證所提出方法的有效性。
圖5分別表示網(wǎng)絡(luò)對(duì)步態(tài)情緒識(shí)別精度的變化和網(wǎng)絡(luò)損失值的變化。從圖5(a)中可以看出,隨著迭代次數(shù)的增加,網(wǎng)絡(luò)的識(shí)別精度逐漸提高,并在迭代次數(shù)到達(dá)250時(shí)趨于穩(wěn)定,識(shí)別率也保持在90%。而從圖5(b)中可以看出,當(dāng)?shù)螖?shù)到達(dá)250時(shí),網(wǎng)絡(luò)損失值也不再變化,表明網(wǎng)絡(luò)具有較好的魯棒性。

圖5 網(wǎng)絡(luò)的精度損失值變化
網(wǎng)絡(luò)對(duì)4種情緒(快樂、悲傷、憤怒、平常)的識(shí)別精度變化如圖6所示。從如圖6(a)可見,經(jīng)過幾輪迭代后,網(wǎng)絡(luò)對(duì)快樂情緒的識(shí)別率超過90%,這是因?yàn)閿?shù)據(jù)集中快樂情緒樣本數(shù)量超過50%,同時(shí)也說明網(wǎng)絡(luò)對(duì)步態(tài)情緒識(shí)別的有效性。從圖6(b)可知,網(wǎng)絡(luò)對(duì)悲傷情緒的精度提升較慢,當(dāng)?shù)螖?shù)達(dá)到350時(shí),識(shí)別率趨于穩(wěn)定,達(dá)到92%。從圖6(c)可見,網(wǎng)絡(luò)對(duì)憤怒情緒的精度提升較緩慢,當(dāng)識(shí)別精度達(dá)到80%后,識(shí)別精度波動(dòng)較大,說明網(wǎng)絡(luò)更傾向于宏觀特征和全局特征。當(dāng)?shù)螖?shù)達(dá)到350后,識(shí)別精度趨于穩(wěn)定,說明網(wǎng)絡(luò)有效地提取局部特征,并將其融合入全局特征。從圖6(d)可看出,對(duì)于平常情緒,識(shí)別精度一開始波動(dòng)較大,這是因?yàn)槠匠G榫w樣本數(shù)量最少,網(wǎng)絡(luò)更傾向于擬合樣本數(shù)量較多的類別。另一部分原因是平常情緒的特征變化不明顯,人體姿態(tài)在各個(gè)位置上的聯(lián)系不強(qiáng),更多地人體局部位置的變化。當(dāng)?shù)螖?shù)達(dá)到300后,網(wǎng)絡(luò)有效地提取到局部特征,對(duì)平常情緒的識(shí)別也趨于穩(wěn)定,達(dá)到78%。

圖6 網(wǎng)絡(luò)對(duì)4種識(shí)別精度變化
為驗(yàn)證本研究所提出的分區(qū)聚合、分區(qū)融合和多尺度自適應(yīng)圖卷積塊的有效性,分別設(shè)計(jì)消融實(shí)驗(yàn)。
3.4.1 分區(qū)聚合
為了研究分區(qū)聚合模塊的性能,本研究將多尺度自適應(yīng)圖卷積塊的學(xué)習(xí)尺度設(shè)置為m=1,并且不使用分區(qū)聚合方法,每層模塊的輸入樣本都是21個(gè)節(jié)點(diǎn)的圖數(shù)據(jù),分析在使用分區(qū)聚合的情況下不同的分區(qū)尺度k的性能。實(shí)驗(yàn)結(jié)果如表2所示。在基準(zhǔn)實(shí)驗(yàn)中,采用有向聚合方法,但未使用分區(qū)聚合。實(shí)驗(yàn)結(jié)果表明,當(dāng)使用分區(qū)聚合時(shí),相比于基準(zhǔn)實(shí)驗(yàn),精度提高1.1個(gè)百分點(diǎn),這表明分區(qū)聚合方法能夠有效提取局部特征。同時(shí),隨著聚合尺度k的增加,精度也不斷提升,說明多跳節(jié)點(diǎn)特征之間的聯(lián)系也可以被有效地提取。有向聚合尺度k的設(shè)置不斷變大,雖然整體精度有提升,當(dāng)設(shè)置k=3時(shí),4種情緒精度相比k=1時(shí),對(duì)傷心情緒下降4.4個(gè)百分點(diǎn),對(duì)于憤怒情緒提升4.4個(gè)百分點(diǎn),平常情緒提升2.6個(gè)百分點(diǎn)。而與這是因?yàn)椴煌楦蓄悇e所依賴的時(shí)間尺度和空間特征尺度不同。悲傷情緒的特征表達(dá)更加依賴近鄰結(jié)構(gòu),過于擴(kuò)大聚合尺度會(huì)使這些特征被過度平滑,從而識(shí)別率下降。相比之下,憤怒和平常情緒則更加依賴較大范圍的空間特征,因此增大聚合尺度有利于這兩類情緒的識(shí)別。綜上,分區(qū)聚合方法可以根據(jù)不同類別的特征來調(diào)整聚合尺度,當(dāng)輸入訓(xùn)練數(shù)據(jù)中,憤怒和平常情緒占比較低時(shí),可以適當(dāng)增加k值,當(dāng)悲傷情緒占比較低時(shí),可以適當(dāng)減少k,提高網(wǎng)絡(luò)對(duì)于小樣本的識(shí)別能力,從而在整體上提高網(wǎng)絡(luò)的表征能力。

表2 是否使用分區(qū)聚合算法以及不同聚合尺度 k對(duì)網(wǎng)絡(luò)性能影響
3.4.2 分區(qū)融合
為了分析分區(qū)融合對(duì)整體網(wǎng)絡(luò)性能的影響,本研究將分區(qū)聚合尺度和多尺度自適應(yīng)圖卷積塊的學(xué)習(xí)尺度均設(shè)置為1,探究分區(qū)融合模塊在步態(tài)情緒識(shí)別中的作用。為了進(jìn)行對(duì)比實(shí)驗(yàn),還設(shè)計(jì)一個(gè)不使用分區(qū)融合模塊的網(wǎng)絡(luò)模型,其性能見表3。實(shí)驗(yàn)結(jié)果表明,相比于不使用分區(qū)融合模塊的模型,使用分區(qū)融合模塊的模型整體性能提升2.1個(gè)百分點(diǎn)。這表明分區(qū)融合模塊能夠有效地將局部特征融合成全局特征,從而提高對(duì)步態(tài)情緒的識(shí)別精度。使用分區(qū)融合時(shí)整體精度提升較大,其中悲傷、憤怒、平常情緒類別都有較大提升,但快樂情緒的識(shí)別精度稍微有所降低。這是因?yàn)榭鞓非榫w在步態(tài)表達(dá)上較難以識(shí)別和區(qū)分,局部特征的融合使得快樂情緒的細(xì)微差別被一定程度上平滑掉,增加混淆的可能性,導(dǎo)致識(shí)別率下降。總體而言,分區(qū)融合模塊對(duì)提高模型的泛化能力和整體性能有非常重要的作用,但在某些類別上可能會(huì)出現(xiàn)一定的識(shí)別率降低,需要在未來的研究中進(jìn)一步優(yōu)化。

表3 是否使用分區(qū)融合方法對(duì)網(wǎng)絡(luò)性能影響
3.4.3 多尺度自適應(yīng)圖卷積塊
為了分析不同的圖卷積學(xué)習(xí)尺度對(duì)整體網(wǎng)絡(luò)性能的影響,本研究設(shè)置分區(qū)聚合尺度k為1,并添加分區(qū)融合的方法,探究多尺度自適應(yīng)圖卷積塊在步態(tài)情緒識(shí)別中的作用。表4顯示在不同學(xué)習(xí)尺度m(分別為1,2,3)下的網(wǎng)絡(luò)性能效果。實(shí)驗(yàn)結(jié)果表明,當(dāng)自適應(yīng)學(xué)習(xí)尺度從1設(shè)置為2時(shí),精度提高0.8個(gè)百分點(diǎn),當(dāng)m設(shè)置為3時(shí),相比于m=2時(shí),精度提升0.5個(gè)百分點(diǎn)。可以看出,多跳鄰居之間存在較強(qiáng)聯(lián)系,隨著學(xué)習(xí)尺度的擴(kuò)大,遠(yuǎn)距離鄰居之間的聯(lián)系逐漸減弱。使用多尺度自適應(yīng)圖卷積塊進(jìn)行步態(tài)情緒識(shí)別時(shí),m設(shè)置為3相比于m設(shè)置為1時(shí),在快樂情緒上只有細(xì)微波動(dòng),但在悲傷情緒上下降2.2個(gè)百分點(diǎn),而在憤怒情緒上提升3個(gè)百分點(diǎn),平常情緒上提升4.7個(gè)百分點(diǎn)。出現(xiàn)這種情況的原因主要是因?yàn)椴煌楦蓄悇e在步態(tài)表達(dá)上所體現(xiàn)的空間結(jié)構(gòu)特征不同。快樂情緒的步態(tài)特征整體較為穩(wěn)定,擴(kuò)大學(xué)習(xí)尺度對(duì)其影響不大,而悲傷情緒的特征表達(dá)則更加依賴近鄰結(jié)構(gòu),擴(kuò)大學(xué)習(xí)尺度會(huì)使這些特征被過度平滑,從而導(dǎo)致識(shí)別率下降。相比之下,憤怒和平常情緒則更加依賴較大范圍的空間特征,因此學(xué)習(xí)尺度的擴(kuò)大有利于這兩類情緒的識(shí)別。

表4 不同尺度下的圖卷積塊對(duì)網(wǎng)絡(luò)性能影響
本文提出一種新的算法,本算法從整個(gè)時(shí)間維度和人體姿態(tài)局部特征出發(fā),使用分區(qū)聚合、分區(qū)融合和多尺度自適應(yīng)圖卷積塊來提取人體姿態(tài)特征,以提高所有情緒類別的識(shí)別性能。消融實(shí)驗(yàn)表明分區(qū)聚合、分區(qū)融合和多尺度自適應(yīng)圖卷積塊對(duì)算法的有效性具有重要作用。其中,分區(qū)聚合的方法用于在人體姿態(tài)的不同位置提取特征,并獲取不同位置之間的特征聯(lián)系。分區(qū)融合的方法對(duì)相似特征進(jìn)行融合,將局部特征融合入全局特征。多尺度自適應(yīng)圖卷積塊可以獲取人體姿態(tài)遠(yuǎn)距離位置之間的特征聯(lián)系。本方法在Emotion-Gate數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),結(jié)果表明對(duì)于憤怒和平常情緒的提升較大,驗(yàn)證本方法的有效性。