一. 摘要
如何將現(xiàn)有的圖像 - 文本多模態(tài)大模型(例如 OpenAI CLIP)用于視頻內容理解,是一個非常實用且具有前景的研究課題。它不僅可以充分挖掘圖像大模型的潛力,還可以為視頻大模型的設計和研究鋪平道路。
在視頻內容理解領域,為節(jié)省計算 / 數(shù)據(jù)開銷,視頻模型通常 「微調」圖像預訓練模型。而在圖像領域, 最近流行的語言 - 圖像預訓練模型展現(xiàn)了卓越的泛化性,尤其是零樣本遷移能力。那么人們不禁要問:能否有一種視頻模型兼顧「微調」 的高效和 「語言 - 圖像預訓練」的全能?答案是可以!
為解決此問題,來自微軟的研究者提出了將語言 - 圖像預訓練模型拓展到通用視頻識別的方法,在建模時序信息的同時,利用類別標簽文本中的語義信息。該方法在 Kinetics-400/600 數(shù)據(jù)集上分別取得了 87.7% 和 88.3% 的 Top-1 分類準確率,計算量僅為ViViT 和 Video Swin的十幾分之一,并且在 few-shot 和 zero-shot 評測上大幅領先其它方法,如下圖所示,代碼已開源。
論文鏈接
代碼鏈接
二. 亮點
- 無需海量視頻 - 文本數(shù)據(jù):直接將預訓練的語言 - 圖像模型在下游視頻數(shù)據(jù)集微調,而非從零使用視頻 - 文本預訓練;
- 利用標簽中的語義信息:在視頻識別任務中,拋棄了傳統(tǒng)離散標簽,充分利用每個類別標簽中的語義信息并提升了性能;
- 方法簡單、高效且通用:無縫銜接至不同的語言 - 圖像模型,可用于多種數(shù)據(jù)分布場景,如全樣本、少樣本和零樣本。
至于視頻分類的效果,與其他方法相比,X-CLIP 可用于零樣本識別,即用戶自定義候選標簽,實現(xiàn)對視頻內容更精準的描述,如下圖所示:
- 三只狗在拉雪橇
- 在水池上灌籃
- 更換車輪
三. 研究動機
最近,語言 - 圖像預訓練模型(Language-image pretrained models)在計算機視覺領域引起了極大關注。它使用更廣泛的文本信息作為監(jiān)督,打破了傳統(tǒng)模型學習固定視覺概念的范式。受益于此,其展示出了強大的遷移能力和泛化能力,在全樣本、少樣本和零樣本分類上取得了卓越的成績。
現(xiàn)在是一個短視頻爆發(fā)的時代,現(xiàn)實世界中豐富的概念更是難以被一個固定的封閉集所定義。于是,研究人員和從業(yè)人員也希望有一個泛化能力強大的視頻模型,能在不同的數(shù)據(jù)分布場景和不同的概念環(huán)境中表現(xiàn)優(yōu)異。這樣的模型會助力于現(xiàn)實世界的許多應用,比如自動駕駛、視頻標簽、安防監(jiān)控等。同樣,由于視頻的獲取成本通常更加高昂,少樣本和零樣本的識別能力也被期待。
但是,如果直接模仿語言 - 圖像預訓練,使用視頻 - 文本預訓練會帶來以下兩個問題:
- 數(shù)據(jù)困境:需要數(shù)以億計的視頻 - 文本數(shù)據(jù),但是大量的數(shù)據(jù)是難以獲得的;
- 計算困境:視頻的訓練通常需要數(shù)倍于圖像的計算資源,這些資源消耗通常無法承受。
有鑒于此,研究者考慮探索如何將預訓練的語言 - 圖像模型中的知識遷移到視頻領域,而非從零預訓練一個語言 - 視頻模型。與圖像相比,視頻增加了時間的維度;與傳統(tǒng)視頻識別框架相比,研究者引入了文本信息。
因此,研究者需要解決兩個關鍵問題:
- 如何在語言 - 圖像預訓練模型中建模視頻的時序信息?
- 如何利用視頻類別標簽中的文本信息?
四.方法詳述
針對第一個問題,研究者提出了 Cross-frame Communication Transformer 和 Multi-frame Integration Transformer 模塊,在預訓練模型中引入時序信息;對于第二個問題,研究者提出了 Video-specific Prompting 機制,用于產生視頻自適應的提示信息,充分地利用了類別標簽中的文本信息和視頻信息。方法整體框架圖如下圖所示。
CCA(Cross-frame Communication attention block)模塊如下圖所示:利用message token(cls_token)幀間通訊,來建模時序信息
本文中,研究者提出了一種簡單高效的視頻編碼器。該編碼器由兩部分組成,即 Cross-frame Communication Transformer(CCT)和 Multi-frame Integration Transformer(MIT)。為了避免聯(lián)合時空建模(join space-time attention)的高計算量,整體上,CCT 采用各幀獨立編碼的計算方式。
具體地,對每一幀編碼時,動態(tài)地生成各自的 message token(也即是每一幀的cls_token)(如下圖中彩色的圓形部分),攜帶所在幀的信息,再通過 Cross-frame Fusion Attention 交換不同幀的 message token 攜帶的信息,彌補了時序信息的缺失。具體地,如上圖所示,在 CCT 的每一個 block 中,我們在 cls token 上施加線性變化得到 message token,每幀的 message token 通過 Cross-frame Fusion Attention(CFA)交換信息,如下面公式所示:
隨后,每一幀的 message token 再回歸到所屬幀。通過 Intra-frame Diffusion Attention(也即是每幀進行空間上的self-attention自注意力計算),每一幀內的 spatial tokens 在建模空間信息的同時,吸收了來自 message token 的全局時序信息,如下面公式所示:
最后,每一幀的 spatial tokens 再經(jīng)過 FFN 進一步編碼信息。為了進一步提升性能,研究者在 CCT 產生的每幀的特征上,額外使用一層 Multi-frame Integration Transformer(MIT)聚合每一幀的信息(使用每一幀的cls-token進行multi-self attention自注意力計算),產生視頻最終的表達。
Cross-frame Fusion Attention 和 MIT 是額外添加的模塊并使用隨機初始化。Intra-Frame Diffusion Attention 和 FFN 對應于預訓練 Vision Transformer 中的 self-attention 和 FFN 部分。值得注意的是,因為幀數(shù)(本篇論文通常采用8或者16幀)(message tokens 的數(shù)量)遠小于 spatial tokens 的數(shù)量,所以 Cross-frame Fusion Attention 和一層 MIT 的計算量遠小于 Intra-frame Diffusion Attention, 這樣便以較小的計算代價建模了全局的時序信息。
利用標簽的語義信息:視頻自適應的提示學習針對第二個問題,提示學習(Prompt learning)主張為下游任務設計一種模板,使用該模板可以幫助預訓練模型回憶起自己預訓練學到的知識。比如, CLIP手動構造了 80 個模板,CoOp主張構造可學習的模板。
研究者認為,人類在理解一張圖片或視頻時,自然地會從視覺內容中尋找有判別性的線索。例如有額外的提示信息「在水中」,那么「游泳」和「跑步」會變得更容易區(qū)分。但是,獲取這樣的提示信息是困難的,原因有二:
- 數(shù)據(jù)集中通常只有類別標簽,即「跑步」、「游泳」、「拳擊」等名稱,缺乏必要的上下文描述,固定的標簽名稱;
- 同一個類別下的視頻共享相同的標簽信息,但它們的關鍵視覺線索可能是不同。
為了緩解上述問題,研究者提出了從視覺表征中學習具有判別性的線索。具體地,他們提出了視頻自適應的提示模塊,根據(jù)視頻內容的上下文,自適應地為每個類別生成合適的提示信息。每個視頻的自適應提示模塊由一個 cross-attention 和一個 FFN 組成。令文本特征當作 query,視頻內容的編碼當作 key 和 value(Key,Value是從經(jīng)過視頻編碼器Multi-frame Integration Transformer(MIT)后得到的,也即是視頻每幀添加的cls_token作為key,value),允許每個類別的文本從視頻的上下文中提取有用的提示信息作為自己的補充,最后,使用學習到的提示信息來豐富原本文本信息的表示,使得其具有更強的判別性。,公式如下。
五.試驗結果
研究者在全樣本(Fully-supervised)、**少樣本(few-shot)和零樣本(zero-shot)**上驗證了方法的性能。
在 Kinetics-400 上的實驗如下圖所示,可以看出 X-CLIP 在 FLOPs 更小的情況下領先于其它方法,這得益于提出的視頻編碼器的高效性。當和其它使用互聯(lián)網(wǎng)(Web)規(guī)模數(shù)據(jù)預訓練的模型比較時,本文的方法依然有性能優(yōu)勢,這歸功于該方法充分挖掘和利用了預訓練語言 - 圖像模型中的表達能力。
K400準確度為87.7%,K600準確度為88.3%,如下圖所示:
下圖展示了few-shot少樣本情況下的性能,和經(jīng)典的使用離散標簽監(jiān)督的方法相比,使用文本信息可以大幅提升性能。研究者在消融實驗中證明了性能增益更多來自于文本的使用,而非更強的預訓練模型。
下圖展示了在zero-shot 零樣本情況下,提出的方法依然有效。這種顯著的改進可以歸因于所提出的視頻 - 文本學習框架,該框架利用大規(guī)模的視覺 - 文本預訓練和視頻自適應的提示學習。
消融試驗:研究者在消融實驗中展示了每個模塊的作用,分析了文本信息的必要性,探索了不同數(shù)據(jù)分布下應該訓練哪個分支,比較了不同的 prompts 方法。
文章來源:http://www.zghlxwxcb.cn/news/detail-430719.html
六. 總結
- 視頻編碼器包含兩個transformer,第一個transformer是Cross-frame Communication Transformer(CCT),包含12個block,里面每個block有Cross-frame Fusion Attention(CFA)和 Intra-frame Diffusion Attention(IFA),CFA將各幀cls_token計算多頭自注意力(Mutil-head self attention),從而對視頻時序建模,獲取視頻全局時序信息;IFA計算每一幀里面各個patch的空間自注意力信息。
- 第二個transformer是Multi-frame Integration Transformer(MIT),只包含1個block,一個標準的transformer encoder 的block(一個Mutil-head Self Attention+FFN),輸入是視頻每幀經(jīng)過第一個transformer編碼得到后的所有幀的cls_token作為輸入,進行多頭自注意力計算。
- 視頻自適應文本提示:將數(shù)據(jù)集標簽經(jīng)過text transformer編碼后得到的cls_token當做query與經(jīng)過視頻編碼器后得到的所有幀的cls_token當做key,value 進行多頭注意力計算(注意此處不是進行自注意力計算),來生成視頻自適應的文本提示。
七. 相關鏈接
1. ECCV 2022 | 視頻理解新框架X-CLIP:僅用微調的成本,達到預訓練的全能
2. 論文鏈接
3. 代碼鏈接文章來源地址http://www.zghlxwxcb.cn/news/detail-430719.html
到了這里,關于論文解讀 X-CLIP : Expanding Language-Image Pretrained Models for General Video Recognition的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!