最近,來自谷歌的研究員提出了一種用于描述多事件視頻的預訓練視覺語言模型——Vid2Seq,目前已被CVPR23接收。
在以前,理解視頻內容是一項具有挑戰性的任務,因為視頻通常包含在不同時間尺度發生的多個事件。
比如,一個雪橇手將狗拴在雪橇上、然后狗開始跑的視頻涉及一個長事件(狗拉雪橇)和一個短事件(狗被拴在雪橇上)。
而促進視頻理解研究的一種方法是,通過密集視頻標注任務,該任務包括在一分鐘長的視頻中對所有事件進行時間定位和描述。
論文地址:https://arxiv.org/abs/2302.14115
Vid2Seq架構用特殊的時間標記增強了語言模型,使其能夠在同一輸出序列中無縫預測事件邊界和文本描述。
為了對這個統一的模型進行預訓練,研究者通過將轉錄的語音的句子邊界重新表述為偽事件邊界,并將轉錄的語音句子作為偽事件的標注,來利用未標記的旁白視頻。
Vid2Seq模型概述
由此產生的Vid2Seq模型在數以百萬計的旁白視頻上進行了預訓練,提高了各種密集視頻標注基準的技術水平,包括YouCook2、ViTT和Activit.NET Captions。
Vid2Seq還能很好地適用于few-shot的密集視頻標注設置、視頻段落標注任務和標準視頻標注任務。
用于密集視頻標注的視覺語言模型
多模態Transformer架構已經刷新了各種視頻任務的SOTA,比如動作識別。然而,要使這樣的架構適應在長達幾分鐘的視頻中聯合定位和標注事件的復雜任務,并不簡單。
為了實現這一目標,研究者用特殊的時間標記(如文本標記)來增強視覺語言模型,這些時間標記代表視頻中離散的時間戳,類似于空間領域的Pix2Seq。
對于給定的視覺輸入,所產生的Vid2Seq模型既可以接受輸入,也可以生成文本和時間標記的序列。
首先,這使Vid2Seq模型能夠理解轉錄的語音輸入的時間信息,它被投射為單一的標記序列。其次,這使Vid2Seq能夠聯合預測密集的事件標注,并在視頻中以時間為基礎,同時生成單一的標記序列。
Vid2Seq架構包括一個視覺編碼器和一個文本編碼器,它們分別對視頻幀和轉錄的語音輸入進行編碼。產生的編碼隨后被轉發到文本解碼器,該解碼器自動預測密集事件標注的輸出序列,以及它們在視頻中的時間定位。該架構初始化時有一個強大的視覺主干和一個強大的語言模型。
對視頻進行大規模預?訓練
由于任務的密集性,為密集的視頻標注手動收集注釋的成本特別高。
因此,研究者使用了無標簽的解說視頻對Vid2Seq模型進行預訓練,這些視頻在規模上很容易獲得。他們還使用了YT-Temporal-1B數據集,其中包括1800萬個涵蓋廣泛領域的旁白視頻。
研究者使用轉錄的語音句子及其相應的時間戳作為監督,這些句子被投射為單一的token序列。
然后用一個生成目標對Vid2Seq進行預訓練,該目標教導解碼器僅僅預測給定視覺輸入的轉錄的語音序列,以及一個鼓勵多模態學習的去噪目標,要求模型在有噪聲的轉錄語音序列和視覺輸入的情況下預測掩碼。特別是,通過隨機掩蓋跨度的token,把噪聲添加到語音序列中。
下游任務的基準測室結果
由此產生的預訓練的Vid2Seq模型可以通過一個簡單的最大似然目標在下游任務中進行微調,該目標使用教師強迫(即在給定先前的基礎真實token的情況下預測下一個token)。
經過微調,Vid2Seq在三個標準的下游密集視頻標注基準(ActivityNet Captions、YouCook2和ViTT)和兩個視頻剪輯標注基準(MSR-VTT、MSVD)上超越了SOTA。
在論文中,還有額外的消融研究、定性結果,以及在few-shot設置和視頻段落標注任務中的結果。
定性測試
結果表明,Vid2Seq可以預測有意義的事件邊界和標注,而且預測的標注和邊界與轉錄的語音輸入有很大的不同(這也表明輸入中視覺標記的重要性)。
下一個例子有關于烹飪食譜中的一系列指令,是Vid2Seq對YouCook2驗證集的密集事件標注預測的例子:
接下來是Vid2Seq對ActivityNet Captions驗證集的密集事件標注預測的例子,在所有這些視頻中,都沒有轉錄的語音。
不過還是會有失敗的案例,比如下面標紅的這個畫面,Vid2Seq說是一個人對著鏡頭脫帽致敬。
對標SOTA
表5將Vid2Seq與最先進的密集視頻標注方法進行了比較:Vid2Seq在YouCook2、ViTT 和ActivityNet Captions這三個數據集上刷新了SOTA。
Vid2Seq在YouCook2和ActivityNet Captions上的SODA指標比PDVC和UEDVC分別提高了3.5和0.3分。且E2ESG在Wikihow上使用域內純文本預訓練,而Vid2Seq優于這一方法。這些結果表明,預訓練的Vid2Seq模型具有很強的密集事件標注能力。
表6評估了密集視頻標注模型的事件定位性能。與YouCook2和ViTT相比,Vid2Seq在處理密集視頻標注作為單一序列生成任務時更勝一籌。
然而,與PDVC和UEDVC相比,Vid2Seq在ActivityNet Captions上表現不佳。與這兩種方法相比,Vid2Seq整合了較少的關于時間定位的先驗知識,而另兩種方法包括特定的任務組件,如事件計數器或單獨為定位子任務訓練一個模型。
實現細節
- 架構
視覺時間transformer編碼器、文本編碼器和文本解碼器都有12層,12個頭,嵌入維度768,MLP隱藏維度2048。
文本編碼器和解碼器的序列在預訓練時被截斷或填充為L=S=1000個token,在微調期間,S=1000和L=256個token。在推理過程中,使用波束搜索解碼,跟蹤前4個序列并應用0.6的長度歸一化。
- 訓練
作者使用Adam優化器,β=(0.9, 0.999),沒有權重衰減。
在預訓練期間,使用1e^-4的學習率,在前1000次迭代中線性預熱(從0開始),并在其余迭代中保持不變。
在微調期間,使用3e^-4的學習率,在前10%的迭代中線性預熱(從0開始),其余90%的迭代中保持余弦衰減(降至0)。過程中,使用32個視頻的批處理量,并在16個TPU v4芯片上分割。
作者對YouCook2進行了40次epoch調整,對ActivityNet Captions和ViTT進行了20次epoch調整,對MSR-VTT進行了5次epoch調整,對MSVD進行了10次epoch調整。
結論
谷歌提出的Vid2Seq,是一種用于密集視頻標注的新型視覺語言模型,它可以有效地在無標簽的旁白視頻上進行大規模的預訓練,并在各種下游密集視頻標注的基準上取得了SOTA的結果。
作者介紹
論文一作:Antoine Yang?
Antoine Yang是法國國立計算機及自動化研究院Inria和巴黎高等師范學校École Normale Supérieure的WILLOW團隊的三年級博士生,導師為Antoine Miech, Josef Sivic, Ivan Laptev和Cordelia Schmid。
目前的研究重點是學習用于視頻理解的視覺語言模型。他于2019年在華為諾亞方舟實驗室實習,在2020年獲得了巴黎綜合理工學院的工程學位和巴黎薩克雷國立大學的數學、視覺和學習碩士學位,2022年在谷歌研究院實習。