Google華博士在ICCV 2021發布新模型,打個雞蛋就知道你要做煎餅
隨著機器學習的模型在現實世界中的應用和部署越來越多,AI 的決策也能夠用于幫助人們在日常生活中做出決策。
在計算機視覺領域的決策過程中,預測(Prediction)一直都是一個核心問題。
如何在不同的時間尺度上對未來作出合理的預測也是這些機器模型的重要的能力之一,這種能力可以讓模型預測出周圍世界的變化,包括其他模型的行為,并計劃下一步如何行動與決策。
更重要的是,成功的未來預測(future prediction)既需要捕捉環境中的有意義的物體變化,也需要了解環境如何隨著時間的推移進行變化,以便作出決策和預測。
計算機視覺中關于未來預測的工作主要受限于其輸出的形式,輸出可能是圖像的像素或者是人工預定義的一些標簽(例如預測某人是否會繼續行走、坐下等)。
這些預測內容都太過詳細以至于難以完全預測成功,并且對現實世界信息的豐富性也缺乏有效利用。也就是說,如果一個模型在預測「跳躍行為」時,并不知道為什么他們會跳躍,或者他們在跳什么等等,那就沒辦法預測成功,結果基本等于亂猜。
此外,除了極少數例外,之前的模型被設計成對未來進行固定偏移(offset)的預測,無法進行動態時間間隔的預測,雖然這是一個限制性的假設,因為我們很少知道何時會出現有意義的未來狀態。

在一個制作冰淇淋的視頻中,從cream到ice cream在視頻中的時間間隔為35 秒,因此預測這種變化的模型需要提前35秒來預判。但這一間隔在不同的行為和視頻中變化很大,例如有的博主可能用了更詳細、更長時間來制作冰淇淋,也就是說在未來的任何時間都有可能制作完成冰淇淋。
此外,可以大規模、數以百萬計收集此類視頻逐幀標注,許多教學視頻都有語音轉換記錄,通常在整個視頻中提供簡明、一般的描述。這種數據源可以引導模型關注視頻中的重要部分,而無需手動標注就能夠對未來事件進行靈活的數據驅動預測。
基于這個思路,Google在ICCV 2021上發表了一篇文章,提出了一種自監督的方法,使用了一個大型、未標記的人類活動數據集。所建立的模型具有高度的抽象性,可以任意時間間隔對未來進行遠距離預測,并能夠根據上下文選擇對未來的遠期預測。

模型具有多模態周期一致性(Multi-Modal Cycle Consistency,MMCC)的目標函數,能夠利用敘事教學視頻來學習一個強大的未來預測模型。研究人員在文中還展示了如何在不進行微調的情況下,將MMCC應用于各種具有挑戰性的任務,并對其預測進行了量化測試實驗。
文章的作者Chen Sun來自Google和布朗大學,目前是布朗大學計算機科學助理教授,研究計算機視覺、機器學習和人工智能,也是谷歌研究所的一名研究科學家。
他在2016年博士畢業于南加州大學,導師是Ram Nevatia教授,于2011年完成清華大學計算機科學學士學位。
正在進行的研究項目包括從無標簽視頻中學習多模式表示和視覺交流,識別人類活動、對象及其隨時間的相互作用,并將表示轉移到embodied agents。
研究中主要解決了未來預測的三個核心問題:
1. 手動標注視頻中的時間關系是非常耗時耗力的,而且很難定義標簽的正確性。所以模型應當能夠從大量未標記的數據中自主學習和發現事件的變換,從而實現實際應用。
2. 對現實世界中復雜的長期事件變換進行編碼需要學習更高層次的概念,這些概念通常在抽象的潛在表示中可以找到,而非只是圖像中的像素。
3. 時序的事件變換非常依賴于上下文,所以模型必須能夠在可變時間間隔下預測未來。
為了滿足這些需求,研究人員引入了一個新的自監督訓練目標函數MMCC以及一個學習表達式來解決這一問題的模型。

模型從敘事視頻中的一個樣本幀開始,學習如何在所有敘事文本中找到相關的語言表述。結合視覺和文本這兩種模式,該模型能夠用到整個視頻來學習到如何預測潛在未來的事件,并估計該幀的相應語言描述,并以類似的方式學習預測過去幀的函數。
循環約束(cycle constraint)要求最終模型預測等于起始幀。
另一方面,由于該模型不知道其輸入數據來自哪個模式,因此必須在視覺和語言上共同運作,因此無法選擇較低級別的未來預測框架。

模型學習嵌入所有視覺和文本節點,然后在其他模式下仔細計算與起始節點對應的跨模式節點。這兩個節點的表示都被轉換為全連接層,預測了在初始模態下使用注意力的未來幀。然后重復backward過程,模型損失是通過預測起始節點來訓練模型的最終輸出來結束循環(cycle)。
在實驗部分,由于大多數先前的benchmark側重于具有固定類別和時間偏移的有監督行為預測,這篇論文中研究人員設計了一系列新的定性和定量實驗來評估不同的方法。
首先是數據,研究人員在無約束的真實世界視頻數據上訓練模型。使用HowTo100M數據集的子集,其中包含大約123萬個視頻及其自動提取的音頻腳本。此數據集中的視頻大致按主題區域分類,并且只使用分類為 Recipe 的視頻,大約是數據集中的四分之一。
在338033個Recipe視頻中,80% 為訓練集,15%在驗證集,5%在測試集。Recipe視頻包含了豐富的復雜對象、操作和狀態轉換,并且該子集能夠讓開發者更快地訓練模型。
為了進行更多的控制測試(controlled test),研究人員使用CrossTask數據集,包含相似的視頻以及特定于任務的標注。
所有視頻都與任務相關,例如制作煎餅等,其中每個任務都有一個預先定義的高級別子任務序列,這些子任務具有豐富的長時間的相互依賴性,例如,要先把糊弄到碗里,然后才能把雞蛋打成碗,再加入糖漿等等。

使用TOP-K召回指標評估模型預測行動的能力來衡量了模型預測正確未來的能力(越高越好)。

對于MMCC,為了確定整個視頻中有意義的隨時間推移的事件變化,研究人員根據模型的預測,為視頻中的每個幀對(pair)定義了一個可能的過渡分數,預測的幀越接近實際幀,則分數越高。
