張 穎 張冰冰 董 微 安峰民 張建新 張 強
視頻行為識別是視頻理解領域中的重要問題,其致力于識別視頻中人類的不同行為[1-3],在智能監(jiān)控、人機交互、醫(yī)療健康等眾多領域扮演著重要的角色.進入深度學習時代以來,以卷積神經網絡(Convolution neural network,CNN)[4-12]和視覺Transformer (Vision transformer,ViT)[13-17]為基礎網絡的視頻行為識別模型取得了極大發(fā)展.目前,廣泛使用的視頻行為識別模型都是在預定義好類別的人工標注數據集上,以監(jiān)督學習的方式進行閉集訓練.這類模型只關注視覺表示,將類別名稱轉換為矢量標簽以簡化訓練過程,從而忽略了類別名稱的語義信息,導致學習到的特征對訓練數據類別的依賴性高、泛化性差,識別訓練數據類別以外的視頻需要重新標注數據以提供監(jiān)督信號并進行額外的訓練.為實現學習視覺通用表示來解決各種現實問題的目標,這種面向固定類別、只能解決單一問題的模型顯然不能滿足需求.
最近,語言-視覺對比學習模型[18-20]開拓了解決閉集訓練問題的思路,給學習泛化性能更強的通用視覺表示帶來了希望,尤其是在零樣本學習上表現出較大潛力.這類模型保留類別標簽的語言描述作為監(jiān)督信號,將視覺單模態(tài)模型拓展到語言-視覺多模態(tài)架構,在億級甚至10 億級別的語言-圖像對上進行自監(jiān)督訓練,以對比學習的方式同時優(yōu)化語言和視覺編碼器.在測試過程中,該對比學習模型直接將單模態(tài)架構下的概率模型轉換為語言-圖像的檢索問題.受到語言-視覺對比學習模型的啟發(fā),本文嘗試在視頻行為識別任務中引入語言監(jiān)督來輔助學習更廣泛的視覺概念,以獲得泛化性更強的視頻表達.
首先,考慮到視頻訓練所需計算成本較高,以及現有視頻數據集規(guī)模相對較小的問題,拋棄在語言-視頻數據上從頭進行預訓練的做法,致力于解決如何將對比語言-圖像預訓練(Contrastive language-image pre-training,CLIP)[18]模型遷移到視頻行為識別任務的問題.其次,由于視頻存在區(qū)別于圖像的時序信息,并且其類別標簽所攜帶的語言信息十分有限,完成CLIP 模型從圖像到視頻的遷移和適應必須解決兩個關鍵問題: 1)如何利用視頻的時序信息;2)如何強化現有類別標簽的語言表達.為此,提出一種新的時序建模結構,將圖像編碼器拓展為視頻編碼器.該結構包含虛擬幀交互模塊和全局幀融合模塊兩個關鍵部件.虛擬幀交互模塊借助“虛擬幀分詞”完成幀間信息交互,使幀級編碼器能提供包含時序信息的幀級表達;全局幀融合模塊集成幀級特征,得到視頻表達.同時,針對問題2)提出視覺強化提示模塊,該模塊通過注意力機制融合視覺信息,自動生成語言提示,將初級語言表達轉換為強化語言表達.依賴上述兩方面拓展,CLIP模型可以有效適用于視頻行為識別任務.本文主要貢獻如下:
1)在CLIP 模型基礎上,提出一種新穎的基于語言-視覺對比學習的多模態(tài)視頻行為識別模型,將CLIP 模型在圖像領域的先驗知識遷移至視頻領域.
2)對于視覺編碼器,提出虛擬幀交互模塊.該模塊首先使用視頻采樣幀的類別分詞進行線性變換生成“虛擬幀分詞”,接著通過對“虛擬幀分詞”進行時序卷積和虛擬幀分詞移位操作完成幀間信息交互,實現在網絡中間層充分利用視頻時序信息的目的.
3)對于語言分支,提出視覺強化提示模塊.該模塊通過注意力機制融合視頻編碼器輸出的類別分詞和視覺分詞中帶有的視覺信息,自動生成適應視頻行為識別的語言提示,對語言編碼器生成的初級語言表達進行加權來達到強化語言表達的目的.
4)在4 個視頻行為識別公開數據集上進行全監(jiān)督、小樣本和零樣本實驗,驗證本文模型的有效性和泛化性.
CLIP 是語言-視覺對比學習的代表性工作之一,其核心思想是直接從圖片標簽對應的語言描述中獲取額外的監(jiān)督信號,通過對比學習產生泛化性能強大的視覺表達.文獻[21-27]將CLIP 應用于視頻行為識別,表現出十分有前景的性能.這些工作可大致分為兩類: 1)專注視覺建模的單模態(tài)模型僅使用CLIP 圖像編碼器的預訓練參數對視頻編碼器做強初始化,如ST-Adaptor (Spatio-temporal adapter)[21]、EVL (Efficient video learning)[22]和AIM (Adapt pre-trained image models)[23];2)繼承CLIP 的多模態(tài)思想和“雙塔”架構的語言-視頻多模態(tài)模型,如VideoCLIP[24]、PromptCLIP[25]、ActionCLIP[26]和X-CLIP[27].
文獻[21-23]在單模態(tài)框架下利用CLIP 預訓練模型,雖然這類方法可以通過參數初始化的方式利用多模態(tài)預訓練的優(yōu)勢,特別是AIM 在純圖像主干下簡單地重用預訓練的自注意進行時間建模,取得了優(yōu)秀的性能,但是使模型失去了在微調過程中進一步進行多模態(tài)交互的能力.為更好地探索多模態(tài)交互對模型表達能力的促進作用,本文選擇在多模態(tài)框架下進行模型遷移.在多模態(tài)框架下,Video-CLIP 將語言-圖像數據替換為語言-視頻數據,從頭進行預訓練.這種方式對存儲硬件、計算資源的要求很高,而且實驗周期相對更長.PromptCLIP凍結預訓練參數,僅通過優(yōu)化文本分支的一組可學習的“連續(xù)提示向量”和位于視覺編碼器末端的輕量級時序Transformer,來使預先訓練的語言-視覺模型適應視頻理解任務.其提示學習的信息僅在語言分支流動,且對時序信息的利用不夠充分.Action-CLIP 提出一個“預訓練-提示-微調”的范式,通過手工設計的語言提示和視覺提示,將CLIP 模型的知識遷移到視頻行為識別.X-CLIP 提出一種新的跨幀通信注意力操作和特定于視頻的提示學習方法,來完成CLIP 模型從圖像到視頻的擴展.本文模型與ActionCLIP 和X-CLIP 最為相關,首先,將CLIP 模型從二維圖像域擴展到三維視頻域;然后,在視頻行為識別基準上進行端到端的微調,來達到知識遷移的目的.
相比之下,本文模型是性能與計算成本權衡下的更優(yōu)選擇.其中,虛擬幀交互模塊作為一種“即插即用”的輕量級時序建模模塊,克服了在網絡中間層融入時序建模可能導致的“災難性遺忘”風險.相較于ActionCLIP 在視覺分支末端使用Transformer層融合時序信息的做法,本文通過在模型中間層插入虛擬幀交互模塊,更充分地利用了視頻時序信息.視覺強化提示模塊同時將視頻編碼器輸出的類別和視覺分詞作為提示信號,利用其中包含的視覺信息自動生成語言提示,得到強化語言表達.相較于XCLIP 中的特定于視頻的提示學習方法,視覺強化提示模塊更充分地考慮了不同視頻分詞包含的視覺信息對語言表達強化作用的互補性.
視頻由一系列靜態(tài)圖像組成,這些視頻幀不是簡單的圖像集合,它們之間存在前后關聯(lián)的時序關系.因此,精準、有效地對視頻幀之間的時序信息進行建模是建立具有魯棒性視頻行為識別模型的關鍵因素.進入深度學習時代以來,CNN 在計算機視覺領域占有主導地位.基于CNN 的網絡架構下有3類代表性的時序建模方式: 1)添加額外的分支對運動信息(光流)建模,以描述幀間的時序關系[4];2)使用3D 卷積[5-6]將時間維度納入計算或將3D CNN在時間和空間維度上進行分解,以提高計算效率[7-9];3)在2D CNN 的基礎網絡上,插入時序建模模塊[10-12]來平衡識別準確率和計算速度.
基于CNN 的網絡雖然在視頻行為識別任務上取得了優(yōu)秀的成績,但卷積計算的有限感受野限制了模型對遠距離依賴的建模能力.Transformer[28]應用注意力機制將序列中任意兩個位置之間的距離縮小為一個常量,有效解決了遠距離依賴建模的難題.ViT[29]將Transformer 從自然語言處理遷移至計算機視覺后,依賴性能優(yōu)秀的預訓練模型,基于ViT 的模型開始在視頻領域被廣泛使用.由于注意力計算的高復雜度,在Transformer 架構下,直接進行時空聯(lián)合注意力計算顯然會帶來過高的計算成本.因此,存在兩類平衡識別準確率和計算復雜度的方式: 1)設計計算更節(jié)約的網絡架構.如VTN(Video transformer network)[13]和ViViT (Video vision transformer)[14]劃分空間和時間編碼,先用幀級編碼器對視頻幀進行獨立的空間建模,再利用一個Transformer 層融合時間信息.2)設計計算開銷更小的新的注意力機制.如文獻[15]將時空聯(lián)合注意力機制分為空間和時間的注意力計算,MViT(Multi-scale vision transformers)[16]提出多尺度視覺Transformer,Swin (Video swin transformer)[17]在視頻Transformer 中引入局部歸納偏置.本文的時序建模參考VTN 和ViViT,先進行幀級編碼,再進行時間融合.與在各幀上進行獨立空間編碼不同的是,本文虛擬幀交互模塊在允許幀級編碼器在空間編碼的同時,充分利用視頻中的時序線索.
提示學習源于自然語言處理,其通過給予適當的“提示”,讓模型更好地理解下游任務的需求,并產生相應的輸出.例如給定一個示例后,GPT-3 (Generative pre-trained transformer 3)[30]模型即使某個目標領域從未被訓練過,也可以自動給出該目標領域的答案.根據構建方式,可將提示學習分為兩類:1)手工模板工程設計精準,但對領域知識依賴性高且靈活性差;2)自動模板學習包括離散提示[31-34]和連續(xù)提示[35-36].對于手工模板工程,“提示”是實際的語言字符串;在自動模板學習中,“提示”被映射到一個連續(xù)的向量空間中,不是可解釋的自然語言.計算機視覺同樣受益于提示學習,CLIP 和Action-CLIP 在測試階段使用手工模板輔助模型表現出強大的泛化能力.CoOp (Context optimization)[37]和CoCoOp (Conditional context optimization)[38]開始探索可學習的語言提示方法.本文延續(xù)連續(xù)提示方法的思想,提出一種可學習的自動語言提示生成方法,稱為“視覺強化提示”.該方法將視頻編碼器輸出的類別分詞和視覺分詞作為提示信號,通過注意力機制融合其帶有的視覺信息,自動生成適應視頻行為識別的語言提示,以強化語言表達.
本文從時序建模和提示學習兩個方面對CLIP模型進行拓展,得到一種基于語言-視覺對比學習的多模態(tài)模型,該模型有效適用于視頻行為識別任務.本節(jié)安排如下: 第2.1 節(jié)概述模型結構,第2.2節(jié)和第2.3 節(jié)介紹本文提出的虛擬幀交互模塊和視覺強化提示模塊.
如圖1 所示,模型遵循視覺分支和語言分支獨立的“雙塔”結構,通過聯(lián)合訓練視頻編碼器和語言編碼器學習對齊視頻表達和相應的語言表達.具體地,模型整體包含視頻編碼器Fθv(·)、語言編碼器Fθt(·) 和視覺強化提示模塊Fθp(·) 三個組成部分.給定一個語言-視頻數據集 (L,V),V∈V是一個視頻片段,L∈L是其對應類別標簽的語言描述.將V和L分別輸入視頻編碼器Fθv(·) 和語言編碼器Fθt(·)中,獲得視頻表達v和初級語言表達?:

圖1 基于語言-視覺對比學習的多模態(tài)模型Fig.1 Multi-modal model based on language-visual contrastive learning
式中,vcls和vvis分別為視頻編碼器輸出的類別分詞和視覺分詞.將兩類視頻分詞作為視覺提示信號,與初級語言表達?共同輸入視覺強化提示模塊Fθp(·),獲得經過視覺信息強化的語言表達:
最后,模型會計算視頻表達v與強化語言表達之間的相似性:
式中,c os(·) 代表余弦相似度計算.數據集中一一對應的語言-視頻對被視作正樣本,其他組合均視作負樣本.模型最終的優(yōu)化目標是當V和L互為正樣本時,最大化相似度計算值;反之,最小化相似度計算值.
2.1.1 視覺分支
模型的視覺分支由視頻編碼器Fθv(·) 構成,視頻編碼器包含幀級編碼器H(·) 和全局幀融合模塊兩個組成部分.首先,幀級編碼器以原始幀作為輸入,提供幀級表達;然后,全局幀融合模塊集成幀級表達,得到視頻表達.
具體地,給定一個視頻片段V∈RT×H×W×3,其中T為采樣幀數,H×W為視頻幀的空間分辨率,輸入通道數為3.首先,依據ViT 對圖像的劃分方法將各視頻幀獨立劃分為N個互不重疊的圖像塊空間分辨率為P×P.其中t ∈{1,2,···,T}代表視頻幀的時序索引,N=HW/P2代表第t個視頻幀被劃分的圖像塊數量.然后,使用線性映射E∈R3P2×D將各幀圖像塊RP2×3映射為序列長度為N的塊嵌入,并在各幀序列首部拼接一個可學習的類別分詞 (zt,0=xclass).最后,給各幀序列添加空間位置編碼espa ∈R(N+1)×D以保留圖像塊在原始幀中的位置信息.幀級編碼器H(·) 在第t幀處的輸入可表示為:
式中,l代表H(·) 的層索引編號,共有LH層.是類別分詞在輸出序列中對應的輸出狀態(tài).構成幀級編碼器的虛擬幀交互模塊在第2.2 節(jié)詳細描述.
最后,將整個視頻的幀級表達的集合H=[h1,h2,···,hT]輸入全局幀融合模塊(Global frame fusion module,GBM),進行時序上的“后融合”,以生成視頻表達v:
式中,A vg Pool 和Etemp ∈RT×D分別代表平均池化和時間位置編碼.GBM 由標準的多頭自注意力(Multi-head self-attention,MHSA)和前饋神經網絡(Feed-forward networks,FFN)組成.
在視覺分支中,對虛擬幀交互模塊和全局幀融合模塊做隨機初始化,其他部分使用CLIP 預訓練模型權重.
2.1.2 語言分支
模型的語言分支由語言編碼器Fθt(·) 和視覺強化提示模塊構成.首先,語言編碼器將類別標簽的語言描述作為輸入,提供初級語言表達;然后,視覺強化提示模塊將初級語言表達轉換為強化語言表達.
本文使用預訓練的CLIP 語言編碼器(含12層Transformer)生成視頻的初級語言表達.具體地,首先,對類別標簽的語言描述進行字節(jié)對編碼(Byte pair encoding,BPE)[39],得到語言序列為方便批量處理,將語言序列的長度n固定為77,包含在序列尾部添加的[EOS]分詞.然后,對語言序列進行詞嵌入,d=512 代表語言序列的嵌入維度.語言編碼器Fθt(·) 的輸入可表示為:
式中,E mbed 代表詞嵌入操作,e∈Rn×d是分詞的位置編碼.c(0)∈Rn×d被輸入到語言編碼器Fθt(·)中,得到初級語言表達?:
式中,l代表Fθt(·) 的層索引編號,index([EOS]) 代表[EOS]分詞的索引編號.是[EOS]分詞在輸出序列中對應的輸出狀態(tài).
最后,如式 (3) 所示,初級語言表達?和兩類視頻分詞共同輸入視覺強化提示模塊,得到最終用于視頻行為識別的強化語言表達視覺強化提示模塊在第2.3 節(jié)詳細描述.在語言分支中,視覺強化提示模塊進行隨機初始化,語言編碼器使用預訓練模型權重.
考慮到僅在幀級編碼器末端以“后融合”方式進行時序建模的做法[13-14]未能充分利用視頻的時序信息,本文提出虛擬幀交互模塊(Virtual-frame interaction module,VIM).該模塊使幀級編碼器能夠在網絡中間層進行空間編碼的同時,融合視頻的時序信息.
在網絡中間層插入時序建模模塊,可能會破壞預訓練模型的表達能力.例如ActionCLIP 在網絡中間層引入時序移動模塊[10],引發(fā)了“災難性遺忘”問題.本文認為其原因在于對特征做全局移動操作導致了相對預訓練模型的大幅數據分布偏差.因此,如圖2 所示,虛擬幀交互模塊為每一幀引入一個“虛擬幀分詞”,來完成幀間信息交換.具體地,首先,第l層中第t幀的虛擬幀分詞由第l-1 層的類別分詞進行線性變換得到,在形式上代表該幀在當前層的抽象信息,該模塊對全部虛擬幀分詞進行基于時序卷積(Temporal convolution,T-Conv)和虛擬幀分詞移位(Virtual-frame token shift,VTShift)的時序建模操作.T-Conv 是應用于時間維度的一維卷積,使用大尺寸卷積核以捕獲視頻遠距離依賴.受到Token Shift[40]沿時間維度移動部分類別分詞進行相鄰幀信息交互的做法的啟發(fā),VTShift 沿時間維度移動部分虛擬幀分詞以達到相鄰幀信息交換的目的.這樣,連續(xù)的T-Conv 和VTShift 所構成的VIM 就兼顧了相鄰幀和遠距離的時序依賴建模.在計算成本上,VT-Shift 是一個0 參數量、0 計算量的高效操作;T-Conv 在實現時使用分組卷積,以平衡使用較大卷積核所帶來的計算開銷.其中,第l層的虛擬幀交互模塊的計算過程可表示為:

圖2 虛擬幀交互模塊Fig.2 Virtual-frame interaction module
然后,虛擬幀交互模塊輸出的攜帶時序信息的虛擬幀分詞與對應幀的視覺分詞拼接,共同輸入標準的MHSA 和FFN,進行幀內空間建模:
式中,[·,·] 代表虛擬幀分詞與視覺分詞拼接,虛擬幀分詞在進入FFN 層之前被丟棄.值得注意的是,虛擬幀分詞攜帶的時間信息在MHSA 和FFN 中得以繼續(xù)擴散和加強,這部分計算使用空間建模的計算成本建模了全局時空依賴.
虛擬幀交互模塊保持原始幀嵌入不變,借助“虛擬幀分詞”進行時序建模的做法避免了對幀級特征做全局移動可能導致的“災難性遺忘”風險.作為一個輕量級時序建模模塊與其他時序建模機制[14-16,27]相比,大大降低了計算成本.同時,虛擬幀交互模塊可插入任何基于Transformer 的視覺編碼器中,在網絡的中間層捕獲幀間時序信息及遠距離依賴,是一種“即插即用”的中間層時序建模模塊.
現有視頻數據集的類別標簽大多只是一個單詞或短語,不充分的語言信息限制了預訓練模型的表達能力.為強化語言表達,本文提出視覺強化提示模塊(Visual-reinforcement prompt module,VPM),該模塊借助視覺信息,自動生成適應視頻行為識別的語言,提示以強化語言表達.
參考人類理解圖像時的語言、視覺多模態(tài)協(xié)作,語言-視覺多模態(tài)模型[18-20]取得了巨大成功.但是,目前這種多模態(tài)協(xié)作大多體現在語言對視覺的監(jiān)督作用,而在語言分支采用離線的手工提示模板[18,26]或給語言分詞拼接可學習隨機向量[37]的做法忽略了視覺信息對語言表達的強化作用.基于這點思考,本文設計了視覺強化提示模塊.該模塊通過注意力機制融合視頻編碼器輸出的視頻分詞中帶有的視覺信息,自動生成適應視頻行為識別的語言提示,從視覺對語言的強化作用的角度,深化了語言與視覺的多模態(tài)交互.在視頻分詞的選擇上,使用類別分詞對應的輸出作為視覺信息的代表進行分類,是一種被廣泛認可和使用的做法.SoT (Second-order transformer)[41]認為視覺分詞中包含的豐富圖像語義是對類別分詞的補充,并同時使用視覺分詞和類別分詞進行分類.受到SoT 的啟發(fā),VPM 同時使用視覺分詞和類別分詞作為提示信號,與語言信息進行跨模態(tài)交互來更充分地利用不同視頻分詞中包含的視覺信息.
具體地,視覺強化提示模塊的每個塊都由多頭交叉注意力(Multi-head cross attention,MHCA)和FFN 組成,以初級語言表達?作為查詢信號,代表視頻幀級表達的類別分詞H ∈RT×D和代表視頻各幀內容的視覺分詞分別作為兩組鍵和值,給予語言表達直接的視覺提示信號,生成兩類適應視頻行為識別的語言提示
式中,α和β是兩個可學習參數,是最終用于與視頻表達計算相似性的強化語言表達.視覺強化提示模塊分別使用視頻類別和視覺分詞構建原始語言描述以外的視頻上/下文語言提示,充分地考慮了不同視頻分詞所包含的視覺信息對語言表達強化作用的互補性.同時,相較于手工設計模板和可學習隨機向量需要在前期的語言符號化過程中完成復雜設計的特點,該模塊直接置于語言編碼器末端,將提示學習融入了模型整體設計.
3.1.1 模型實例
本文模型的語言編碼器與CLIP 一樣采用12層Transformer (Lc=12,Nh=8,d=512).其中,Lc表示層數,Nh表示注意力頭數.模型采用ViT (B)(Lc=12,Nh=12,d=768)作為基礎網絡構建幀級編碼器,設置32×32 像素和16×16 像素兩種視頻幀分塊尺寸.全局幀融合模塊(Lc=1,Nh=8,d=512) 和視覺強化提示模塊 (Lc=2,Nh=8,d=512),層數分別設置為1 和2.
3.1.2 數據集
本文使用K400 (Kinetics-400)[42]、Mini-K200(Mini Kinetics-200)[9]、UCF101[43]和HMDB51[44]四個公開視頻行為識別數據集,對本文提出模型的有效性和泛化性進行驗證和對比.其中,K400 是一個用于視頻行為識別的大規(guī)模、高質量數據集,共有400 個動作類別,如人與物體的交互、人與人的交互,包含約240 000 個訓練視頻和約20 000 個測試視頻,每個視頻片段大約持續(xù)10 s;Mini-K200 是K400 的子集,包含200 個動作類別,每個類別分別從訓練集和測試集中隨機抽取400 個和25 個視頻,共產生80 000 個訓練視頻和5 000 個測試視頻;UCF101 包含約13 000 個視頻片段,視頻固定幀率為25 fps,分為101 個動作類別,涵蓋人類身體運動、人與人的互動、人與物的互動、演奏樂器和體育運動5 個組別;HMDB51 包含來自51 個動作類別的約6 000 個視頻片段,每個類別至少包含101 個視頻.UCF101 和HMDB51 分別提供3 種不同的訓練和測試數據的劃分方式,用于衡量模型性能.
3.1.3 實驗細節(jié)
在訓練過程中,采用與TSN (Temporal segment network)[45]相同的視頻采樣方法,將視頻片段分為T個部分,并在每個部分中隨機采樣1 幀,設置采樣幀數T=8 或T=16 .采樣幀輸入尺寸為224×224像素.與X-CLIP 相同,在訓練過程中,采用正則化和多種數據增強策略,詳細的模型訓練超參數見附錄A.在測試過程中,全監(jiān)督實驗采用與ViViT 和Swin 相同的4 個時間剪輯×3 個空間裁剪的多視圖測試,即對一個視頻在時間維度上進行4 次幀采樣,每個采樣幀取3 個不同的空間裁剪,取12 個視圖識別結果的平均值作為最終結果.小樣本和零樣本實驗采用1 個時間剪輯×1 個空間裁剪的單視圖測試,僅對視頻做1 次幀采樣,對采樣幀做中心裁剪.3 種實驗設置均以預測概率排名第1 的類別與實際結果相符的準確率(稱為第1 識別準確率)或預測概率排名前5 的類別包含實際結果的準確率(稱為前5 識別準確率) 作為評價標準.對于HMDB51和UCF101 數據集,在全監(jiān)督和零樣本實驗中,采用3 種劃分方式的測試集第1 識別準確率的平均值作為評價指標;在小樣本實驗中,僅使用第1 種劃分方式進行訓練和測試.無特殊說明,在所有消融實驗中,模型均使用分塊尺寸為 32×32 像素、8 幀輸入、單視圖測試.
本文模型的訓練和測試基于開源的PyTorch深度學習框架,該框架在配備2 個NVIDIA GeFoce RTX 3090 GPU 的服務器上運行.
在Mini-K200 上,對本文模型的各個模塊和設置進行充分的消融實驗和分析.
3.2.1 語言信息的作用
為評估引入語言信息的作用,設計一種單模態(tài)模型的變體,該變體與本文模型具有相同的視覺基礎網絡、時序建模方法和預訓練權重,將語言編碼器替換為隨機初始化的全連接層作為分類頭.如表1 所示,本文模型比對應的單模態(tài)模型變體的識別準確率提升3.0% 和3.2%.這表明,語言中所包含的語義信息有助于模型學習更具判別性的視頻表達,可以有效提升模型性能.

表1 模型具有/不具有語言信息的消融研究(%)Table 1 Ablation studies of the model w/wo language information (%)
3.2.2 各模塊的消融實驗
為了驗證本文提出模型和各模塊的有效性,設計一個簡單的基線CLIP-Mean.該基線使用語言監(jiān)督,但不包含任何時序建模和提示學習方法,將幀級表達做簡單平均獲得視頻表達.依次在CLIP-Mean上添加各模塊,觀察性能提升情況,如表2 所示.首先,在基線的圖像編碼器中插入虛擬幀交互模塊VIM,第1 識別準確率提升0.6%;接著,在幀級編碼器末端添加全局幀融合模塊GBM,識別準確率進一步提升0.2%,說明本文提出的模型能通過虛擬幀交互模塊和全局幀融合模塊有效利用視頻的時序線索,且二者的時序建模作用互補;最后,繼續(xù)在語言編碼器末端添加視覺強化提示模塊VPM,識別準確率進一步提升0.9%,說明視覺強化提示模塊借助視覺信息生成的語言提示有效強化了原有的視頻語言表達,使之更具判別性.總之,本文模型相較基線模型,提升了1.7%,成功適應視頻行為識別,驗證了它的有效性.

表2 本文模塊的消融實驗結果 (%)Table 2 Ablation studies of the proposed modules (%)
3.2.3 虛擬幀交互模塊超參數的選擇
虛擬幀交互模塊由時序卷積T-Conv 和虛擬幀分詞移位VT-Shift 兩個時序建模操作構成.為評估T-Conv 的卷積核尺寸和VT-Shift 的移動比例對時序建模效果的影響,僅在基線上添加虛擬幀交互模塊,依次進行VT-Shift (移動比例分別為{1/4,1/8,1/16})和T-Conv (卷積核尺寸分別為{3,5,7}像素)操作.圖3 展示了對VT-Shift 和T-Conv 的超參數進行消融實驗的結果.

圖3 虛擬幀交互模塊超參數消融實驗結果Fig.3 Ablation studies of hyper-parameters of virtual frame interaction module
如圖3(a)所示,對虛擬幀分詞施加適當移動比例的VT-Shift 操作,可捕獲相鄰幀之間的時序信息,當移動比例為1/8 時,效果最好,識別準確率達到84.4%,比基線提升0.4%.因此,在固定VT-Shift操作的移動比例為1/8 的基礎上,增加T-Conv 操作,結果如圖3(b)所示.當卷積核大小為7 時,識別準確率進一步提升到84.6%;而當卷積核尺寸為3或5 時,則會導致識別準確率降低.這說明當T-Conv采用較大的卷積核去關注遠距離依賴時,可以發(fā)揮與VT-Shift 互補的時序建模作用.短距離的T-Conv與VT-Shift 重復對相鄰幀之間的信息進行交換,從而抵消了VT-Shift 已經建立的時序關聯(lián),導致識別準確率降低,甚至減退到基線水平.
3.2.4 與其他提示學習方法對比
為進一步驗證本文提出的視覺強化提示模塊的有效性,將本文模型與其他提示學習方法進行對比,結果見表3.其中,ActionCLIP 和CoOp 分別使用16 個手工提示模板(具體內容見附錄B)和16 個隨機初始化的向量進行提示學習.本文的視覺強化提示模塊VPM 獲得了85.7%和97.2%準確率,優(yōu)于其他方法;分類性能分別提升了0.9%和0.2%,驗證了該模塊的有效性.這一提升依賴視覺強化提示模塊融合視頻類別和視覺分詞所生成的視頻自適應的語言提示,初級語言表達經該提示強化后,獲得了更強的判別性.

表3 提示學習方法的比較 (%)Table 3 Comparisons of prompt learning methods (%)
本節(jié)使用完整的訓練集和測試集分別進行訓練和測試,在K400、UCF101 和HMDB51 數據集上評估模型的性能.模型訓練過程中凍結語言編碼器的參數,只訓練視頻編碼器和視覺強化提示模塊.表4 為在K400 數據集上,本文模型與其他模型對比的實驗結果,其他模型包含基于3D CNN 的模型[46-49]、基于2D CNN 的模型[10-11,50-51]、基于ViT 的單模態(tài)模型[13-17,22-23]和基于語言-視覺對比學習的多模態(tài)模型[26-27]共4 個部分.其中,CorrNet (Correlation network)[47]、SlowFast[48]、X3D-XXL[49]和MViT(B,6 4×3)從頭進行訓練;I3D NL[46]和所有基于2D CNN 的TSM[10]、TEA (Temporal excitation and aggregation)[11]、TEINet (Temporal enhancement-and-interaction)[50]、TDN (Temporal difference network)[51]在包含1 000 個類別的ImageNet數據集上進行預訓練;VTN (ViT-B)、TimeSformer (L)[15]和Swin (L)在包含21 000 個類別的ImageNet 數據集上進行預訓練;ViViT(L/16×2)在數據規(guī)模為3 億的JFT 數據集上進行預訓練;EVL (ViT-B/16)、AIM (ViT-B/16)和第4、5 部分方法均是在數據規(guī)模為4 億的WIT 數據集上進行預訓練.由表4 可以看出,基于ViT 的模型整體上優(yōu)于第1、2 部分中基于CNN 的模型,顯示了ViT在視頻任務上的優(yōu)勢,但同時也帶來了更大的計算成本.與之相比,本文模型(ViT-B/32)僅用8 幀輸入就達到80.5%的第1 識別準確率,超過了第1、2部分中所有模型和使用更多輸入幀的VTN (ViTB),且每秒10 億次的浮點運算數(Giga floatingpoint operations per second,GFLOPs) 更低,彰顯了多模態(tài)模型的巨大優(yōu)勢.本文模型(ViT-B/16)的識別準確率超過第3 部分所有基于ViT 的單模態(tài)模型[13-17,22-23],同時也獲得了表4 所有模型中最高的識別準確率84.1%,且GFLOPs 比VTN (ViTB)、ViViT (L)和TimeSformer (L)分別降低了29倍、27 倍和16 倍.此外,與其他多模態(tài)模型相比,本文模型在所有設置下的實驗結果均高于Prom-ptCLIP;在相同基礎網絡和采樣幀數下,本文模型較ActionCLIP 具有明顯性能優(yōu)勢,并且本文模型(ViT-B/16)在8 幀輸入設置下的識別準確率高于使用32 幀輸入的ActionCLIP (ViT-B/16);與當前先進模型X-CLIP 相比,本文模型僅增加較小的計算量,就獲得了相同基礎網絡和輸入幀設置下的更優(yōu)性能.

表4 K400 數據集上,全監(jiān)督實驗結果Table 4 Fully-supervised experiment results on K400 dataset
圖4 直觀地展示了表4 中基于ViT 的模型及其變體、多模態(tài)模型及其變體和本文模型的變體在識別準確率和計算成本方面的平衡情況,橫軸表示GFLOPs,縱軸表示第1 識別準確率.由圖4 可以看出,AIM 雖然可以獲得更優(yōu)的識別準確率,但GFLOPs 也顯著增加.除AIM 外,基于ViT 的單模態(tài)模型的識別準確率折線整體處于本文模型的右下方,體現了虛擬幀交互模塊輕量級時序建模的優(yōu)勢和本文模型引入語言監(jiān)督對提升視頻表達質量和分類性能的有效性.與ActionCLIP 相比,本文模型以更小計算成本顯著超越其性能;與X-CLIP 相比,本文模型以可忽略的GFLOPs 增加換取了性能上的提升.

圖4 在K400 數據集上,本文模型與目前先進模型的識別準確率和浮點運算數比較Fig.4 Comparisons of accuracy and GFLOPs between the proposed model and state-of-the-art models on K400 dataset
表5 總結了在HMDB51 和UCF101 數據集上,基于2D CNN[45,52-54]、3D CNN[55-57]和多模態(tài)對比學習的視頻行為識別模型和本文模型的分類性能.所有模型都先在K400 上進行預訓練,再在UCF101 和HMDB51 數據集上進行微調.本文模型(ViT-B/16) 使用8 幀輸入,在HMDB51 和UCF101 數據集上分別獲得76.7%和97.6%的第1 識別準確率,與其他模型相比,獲得了最佳性能.

表5 HMDB51 和UCF101 數據集上,全監(jiān)督實驗結果Table 5 Fully-supervised experiment results on HMDB51 and UCF101 datasets
表5 總結了TSN、TBN (Temporal Bilinear Network)[52]、PPAC (Pyramid pyramid attention clusters)[53]、TCP (Temporal-attentive covariance pooling)[54]等基于2D CNN 的模型,ARTNet (Ap-pearance and relation network)[55]、R3D (3D Res-Net)[56]、MCL (Motion-focused contrastive learning)[57]等基于3D CNN 的模型以及多模態(tài)對比學習模型和本文模型在UCF101 和HMDB51 數據集上的分類性能.由全監(jiān)督實驗結果可以看出,本文模型與目前流行的基于ViT 的模型和多模態(tài)模型相比,都取得了十分有競爭力的性能.這歸因于2個因素: 1)虛擬幀交互模塊能有效地在ViT 結構的中間層建模視頻的時間依賴;2)本文提出的模型可以有效適應視頻行為識別任務,展現其強大的視頻表達能力.
遵循一般設置,從UCF101 和HMDB51 數據集的每個類別中,隨機抽取K={2,4,8,16} 個視頻構建訓練集,使用第1 種劃分方式進行評估.實驗使用8 幀輸入的本文模型(ViT-B/16)進行單視圖測試.表6 為本文模型在小樣本實驗上的第1 識別準確率,并與其他表現優(yōu)秀的單模態(tài)和多模態(tài)模型對比.表6 中,單模態(tài)模型TSM、TimeSformer和Swin (B)與多模態(tài)模型ActionCLIP (ViT-B/16)、X-CLIP (ViT-B/16)相比,存在顯著的性能差距,在K=2 的極端情況下,差距最為明顯,這說明單模態(tài)模型由于數據的嚴重缺乏,發(fā)生了過擬合.

表6 HMDB51 和UCF101 數據集上,小樣本實驗結果 (%)Table 6 Few-shot experiment results on HMDB51 and UCF101 datasets (%)
隨著數據量增加,過擬合問題得到緩解.本文模型在相同數據條件下,顯示出明顯的性能優(yōu)勢和穩(wěn)健性.在K=2 時,本文模型(ViT-B/16)在HMDB51 和UCF101 數據集上的第1 識別準確率分別超過Swin (B) 28.7%和23.1%.這得益于語言信息對視覺分支的監(jiān)督作用,也進一步驗證了本文模型將CLIP 的知識遷移到視頻小樣本識別的有效性.同時,與ActionCLIP 和X-CLIP 相比,在提供完全相同的訓練數據(見附錄C)時,本文模型表現出最優(yōu)性能.
零樣本實驗十分具有挑戰(zhàn)性,要求模型對從未訓練過的類別進行測試.與文獻[18]相同,首先使用8 幀輸入的本文模型(ViT-B/16)在K400 上進行預訓練,然后分別在UCF101 和HMDB51 的3種劃分的測試集上進行測試,表7 為3 種劃分的第1 識別準確率的平均值.

表7 HMDB51 和UCF101 數據集上,零樣本實驗結果(%)Table 7 Zero-shot experiment results on HMDB51 and UCF101 datasets (%)
如表7 所示,對比單模態(tài)模型ZSECOC (Zeroshot error-correcting output codes)[58]、UR (Universal representation)[59]、TS-GCN (Two-stream graph convolutional network)[60]、E2E (End-to-end algorithm for zero-shot learning in video classification)[61]和ER-ZSAR (Elaborative rehearsal enhanced zero-shot action recognition)[62],本文模型在UCF101 和HMDB51 上,分別比以往最佳結果ER-ZSAR 提升了20.8%和8.7%.對比多模態(tài)模型,使用完全相同的訓練方式,本文模型在HMDB51和UCF101 上的識別準確率分別優(yōu)于ActionCLIP 2.1%和6.0%,優(yōu)于X-CLIP 0.5%和1.7%.這種顯著改進說明本文模型可以適應視頻行為識別任務,獲得了泛化性能強大的視頻表達.
本文通過對CLIP 模型進行擴展,提出一種適用于視頻行為識別任務的多模態(tài)模型.該模型在視覺編碼器中構造了虛擬幀交互模塊,完成網絡中間層的跨幀信息交互,更好地捕獲了視頻遠距離及相鄰幀之間的時間依賴信息;同時,在語言分支上構建了視覺強化提示模塊,通過注意力機制融合視覺分支輸出分詞中包含的視覺信息,自動生成適應視頻行為識別的語言提示,強化視頻的語言表達.在全監(jiān)督、小樣本和零樣本3 種不同實驗場景下的實驗結果表明了本文多模態(tài)模型在視頻行為識別任務上的有效性和泛化性.
在未來工作中,將模型拓展到不同的視頻理解任務中,例如視頻檢索、視頻標注、視頻語義分割等.此外,考慮構建更優(yōu)的語言提示學習模塊和時空建模方式,以進一步增強多模態(tài)模型的識別準確率.
附錄 A 模型訓練超參數
3 種實驗設置下模型訓練超參數如表A1 所示,其中設置隨機初始化參數的學習率比基礎學習率高10 倍.
附錄 B 手工提示模板
第3.2.4 節(jié)中,為將視覺強化提示模塊與手工提示模板進行對比,構建如下16 個手工模板:
A photo of action {label};A picture of action {label};Human action of {label};{label},an action;{label},this is an action;{label},a video of action;Playing action of {label};{label};Playing a kind of action,{label};Doing a kind of action,{label};Look,the human is {label};Can you recognize the action of {label}?;Video classification of {label};A video of {label};The man is{label};The woman is {label}.

表A1 模型訓練超參數Table A1 Hyper-parameters for model training
附錄 C 小樣本實驗
第3.4 節(jié)對模型在小樣本實驗設置下的性能進行評估.表6 中TSM、TimeSformer 和Swin (B)的實驗結果引自X-CLIP,訓練和測試使用原論文默認超參數訓練.
為進行公平對比,ActionCLIP、X-CLIP 和本文模型使用相同K個隨機樣本進行訓練,隨機樣本在UCF101 和HMDB51 數據集上第1 種劃分中隨機抽取得到.表C1 展示了小樣本實驗所使用的隨機樣本編號.

表C1 小樣本實驗使用的隨機樣本Table C1 Random examples used in few-shot experiment