視覺語言導航(VLN)是一個新興的研究領域,旨在構建一種可以用自然語言與人類交流并在真實的3D環境中導航的具身代理,與計算機視覺、自然語言處理和機器人等研究領域緊密關聯。視覺語言導航任務要求構建的具身代理能夠根據語言指令推理出導航路徑,然而,稀疏的語言指令數據集限制著導航模型的性能,研究者們又提出了一些能夠根據導航路徑輸出接近于人類標注質量的語言指令的模型。
本次DISC小編將分享ACL2022和CVPR2022的三篇論文,第一篇論文是一篇綜述,第二篇論文提出了一種監督把控當前導航進程的方法,第三篇文章提出了一套根據導航路徑自動生成描述這條路徑的語言指令的方法。
文章概覽
1.視覺語言導航:任務、方法和未來方向的綜述(Vision-and-Language Navigation: A Survey of Tasks, Methods, and Future Directions)
本文從任務、評價指標、方法等方面回顧了當前視覺語言導航研究的進展,并介紹了當前VLN研究的局限性和未來工作的機會。視覺語言導航有很多任務集,難度和任務設定各異,視覺語言導航也涉及許多機器學習相關的模型方法,本文對當前的一些VLN數據集和經典方法作了分類介紹。通過閱讀本文,可以對視覺語言導航領域有一個總體的了解。
2.一次一步:擁有里程碑的長視界視覺語言導航(One Step at a Time: Long-Horizon Vision-and-Language Navigation with Milestones)
當面對長視界視覺語言導航任務時,代理很容易忽視部分指令或者困在一個長指令的中間部分。為了解決上述問題,本文設計了一個模型無關的基于里程碑(milestone)的任務跟蹤器(milestone-based task tracker,M-TRACK)來指引代理并模擬其進程。任務跟蹤器包含里程碑生成器(milestone builder)和里程碑檢查器(milestone tracker)。在ALFRED數據集上,本文的M-TRACK方法應用在兩個經典模型上分別提升了33%和52%的未知環境中成功率。
3.少即是多:從地標生成對齊的語言指令(Less is More: Generating Grounded Navigation Instructions from Landmarks)
本文研究了從360°室內全景圖自動生成導航指令。現存的語言指令生成器往往擁有較差的視覺對齊,這導致了生成指令的過程主要依賴于語言先驗和虛幻的物體。本文提出的MARKY-MT5系統利用視線中的地標來解決這個問題,該系統包含地標檢測器和指令生成器兩個部分。在R2R數據集上,人類尋路員根據人類標注指令尋找導航路徑的成功率為75%,而根據MARKY-MT5生成的指令尋找導航路徑的成功率仍然有71%,且該指標遠高于根據其它生成器生成的指令尋找導航路徑的成功率。
動機
近年來,視覺語言導航領域飛速發展,越來越多的導航數據集涌現,針對不同設定的任務數據集,研究者們也設計了許多評測指標,不同的研究社區也在VLN領域提出多種多樣的模型方法。本文希望對當前現有的一些任務數據集和VLN方法進行總結分類,為未來VLN研究方向提出一些建議,希望能夠為VLN研究社區提供一個詳盡的參考。
任務和數據集
導航代理解釋自然語言指令的能力使得VLN有別于視覺導航。本文根據交流復雜度和任務目標難度兩個維度來對現有的VLN數據集分類,如表1所示。
表1:根據交流復雜度和任務目標劃分的視覺語言導航基準。
交流復雜度定義了代理與oracle對話的級別,本文劃分了三個復雜程度遞增的級別:①代理只需要在導航開始前理解一個初始指標;②代理在不確定時可以發送一個信號請求幫助,繼而根據oracle的指引完成任務;③擁有對話能力的代理在導航期間可以通過自然語言的形式詢問問題并理解oracle的答復。
任務目標定義代理如何根據來自oracle的初始指令實現其目標,本文劃分了三個難度遞增的級別:①細粒度導航,代理可以根據一條詳細的逐步的路徑描述來找到目標;②粗粒度導航,代理需要根據一條粗略的路徑描述來找到一個距離遙遠的目標,代理可能需要得到oracle的一些幫助;③導航和物體交互,代理除了推理出一條行進路徑,也需要操作環境中的物體。
評測指標
面向目標的指標主要關注代理和目標的接近程度。其中最自然的指標是成功率(Success Rate),它衡量代理成功完成任務的頻率,距離目標一定范圍內即算成功。目標進程(Goal Progress)衡量距離目標剩余距離的減少。路徑長度(Path Length)衡量導航路徑的總長度。最短路徑距離(Shortest-Path Distance)衡量代理的最終位置與目標之間的平均距離。路徑加權成功率(Success weighted by Path Length)同時考慮成功率和路徑長度,因為過長路徑的成功導航是不被期望的。Oracle導航誤差(Oracle Navigation Error)衡量路徑上最接近目標的點到目標的距離。Oracle成功率(Oracle Success Rate)衡量路徑上最接近目標的點到目標的距離是否在一個閾值內。
路徑精確度的指標評估一個代理在多大程度上遵循期望的路徑。有些任務要求代理不僅要找到目標位置,還要遵循特定的路徑。精確性的衡量的是專家演示中的動作序列與智能體軌跡中的動作序列之間的匹配程度。長度分數加權的覆蓋(Coverage weighted by LS)由路徑覆蓋(Path Coverage)和長度分數(Length Score)相乘得到,其衡量代理路徑和參考路徑的接近程度。歸一化動態時間規整(Normalized Dynamic Time Warping)懲罰偏離參考路徑的偏差,以計算兩條路徑之間的匹配。歸一化動態時間規則加權的成功(Success weighted by normalized Dynamic Time Warping)則進一步將nDTW限制為僅成功的片段,以同時衡量成功和精確度。
VLN方法
如圖1所示,本文將現存的VLN方法大致分類為表示學習、動作決策學習、數據中心學習、提前探索等。表示學習主要幫助代理理解多模態的輸入(視覺、語言、動作)及其之間的關系。由于導航依賴累積的動作序列,動作決策學習可以幫助代理做出更好的決策。另外,VLN任務的數據集仍然不夠大,收集VLN訓練數據是昂貴且耗時的。因此,數據中心方法利用現有數據集,創造更多盡可能高質量的訓練數據,提升模型表現。提前探索可以幫助代理適應事先未見過的環境,提升代理泛化能力,降低代理在已知環境和未知環境中的表現差距。
圖1:VLN方法分類。各方法間可能有交集。
表示學習
視覺語言預訓練模型可以提供好的文本和視覺聯合表示,使得代理更好地兼顧理解語言指令和環境觀察。研究者也探索專屬于VLN領域的預訓練,采用VLN領域特定的大規模預訓練數據和針對VLN任務設計的特定預訓練任務,如PREVALENT、Airbert等。
語義理解可以獲取VLN任務中重要特征的知識,同時高層語義表示也能提升代理在未知環境中的表現。語義理解包括模態內和模態間的語義理解。
圖表示可以抽取獲得語言指令和環境觀察中的結構化知識,這為導航提供了顯式的語義關系。圖可以編碼文本和視覺之間的關系,記錄導航過程中的位置信息等。
記憶結構可以幫助代理高效地利用逐漸累積的導航歷史信息。有些方法利用記憶單元,如LSTM、循環的信息狀態等;有些方法建立一個獨立的記憶模型來存儲相關信息。
輔助任務在不需要額外標簽的情況下幫助代理更好地理解環境和其自身所處的狀態,這往往需要引進額外的損失函數。一般的輔助任務有解釋其先前的動作、預測未來決策的信息、預測當前任務的完成狀態和視覺文本的匹配程度等。
動作決策學習
VLN是一個動作序列決策問題并且可以被建模成一個馬爾科夫決策過程。所以強化學習方法可以使代理學得更好的策略。一個應用強化學習的難點在于很難知道一個動作對最終任務完成的貢獻程度,因此無法決定獎勵或懲罰。對此,人們提出了RCM模型和利用指令和關鍵地標之間的局部對齊作為獎勵等方法。
邊導航邊探索可以使代理對狀態空間有一個更好的了解。探索和開發之間存在一個權衡,隨著更多的探索,代理以更長的路徑和更長的導航時間為代價獲得了更好的表現,因此代理需要決定探索的時間和深度。
導航規劃會帶來更好的行動策略,從視覺角度來看,預測路徑點、下一個狀態和獎勵、生成未來的觀察結果和整合鄰居視圖都已經被證明是有效的。
代理在不確定下一個動作時可以詢問幫助,可以利用動作概率分布或者獨立訓練的模型來決定是否詢問,詢問方式可以是發送一個信號或者使用自然語言。
數據中心學習
VLN領域的數據增強主要包含路徑指令對增強和環境增強。擴增的路徑指令對可以直接作為額外的訓練樣本。生成更多的環境數據不僅幫助擴增路徑樣本,還可以避免在已知環境中的過擬合問題,生成額外環境數據一般采用隨機遮蓋不同視點的相同視覺特征。
課程學習的大致思想是在訓練過程中逐漸增大任務的難度,即先用低難度的樣本訓練代理。
多任務學習引入不同的VLN任務進行訓練,促進跨任務知識轉移。
對一條語言指令進行多次不同的指令解釋可以使代理更好地理解其目標。
提前探索
提前探索方法允許代理去觀察和適應未知環境,從而縮小已知和未知環境中的表現差距。一些經典方法有利用測試環境來取樣和擴增路徑樣本來適應未知環境、利用圖結構來提前建立未知環境的信息概況等。
未來方向
鑒于現在的任務設定在環境中都只有一個代理,未來可以關注多代理協作的視覺語言導航任務;其次,希望未來的任務研究更貼合現實情況,比如環境中可能會有人類在改變環境的狀態,而不是只有導航代理的存在;另外,希望視覺語言導航任務的研究能關注到數據隱私和道德的問題;最后,由于當前的訓練數據集基本來自于歐美國家,訓練多文化的代理也是重要的。
動機
近些年,許多VLN模型取得了巨大的成功,尤其是在短視界(short-horizon)問題上。但當面對到擁有很長動作序列的長視界(long-horizon)問題時,許多模型的表現仍然讓人不夠滿意。具體來說,本文作者觀察到在一些實驗中,代理會跳過部分子任務不做或者在一個已完成的子任務內原地徘徊而無法去執行下一個子任務,這些都說明代理在處理長序列任務時,缺乏對其所處進程的認識。本文嘗試構建里程碑(milestone)來模擬任務進程進度,設計了任務跟蹤器M-TRACK。
M-TRACK方法
本文設計任務跟蹤器(M-TRACK),它在子任務中跟蹤任務進度,只有代理達到一個子任務的里程碑時才能進入下一個子任務。M-TRACK包含里程碑生成器(milestone builder)和里程碑檢查器(milestone checker)。里程碑生成器將指令劃分為導航(Navigation)里程碑和交互(Interaction)里程碑,代理需要一步步完成這些里程碑。里程碑檢查器系統地檢查代理在當前里程碑中的進度,并確定何時繼續到下一個里程碑。
下圖展示了一個ALFRED任務,其由一個整體目標和六個子任務組成。每張圖中的藍色/紅色文本框就是該方法從各子任務中抽取出的導航/交互里程碑。一個代理在處理下一個子任務之前需要達到當前所處子任務的里程碑條件。
圖2:M-TRACK方法的示意。
對于長視界(long-horizon)VLN任務,代理往往需要按照一個特定的順序完成多個子任務從而完成一個完整任務。更具體地,完整任務的語言指令中的每一句指令可以視作一個子任務的語言指令。
里程碑生成器(milestone builder)使用命名實體識別技術為每一個子任務從其語言指令中提取出里程碑作為指導。里程碑由一個形如的元組表示。舉個例子,對于指令"Turn to the left and face the toilet",里程碑生成器將輸出標簽,而對于指令"Pick the soap up from the back of the toilet",里程碑生成器將輸出標簽。如果一個子任務擁有多個要求交互的物體,生成器輸出的標簽需要包含所有。本文采用BERT-CRF模型實現里程碑生成器,并用ALFRED模擬器的元數據組成訓練數據。
里程碑檢查器(milestone checker)確認代理是否達到一個里程碑。一個導航里程碑的達成條件是目標物體在視野內且代理可以觸碰到,一個交互里程碑的達成條件是目標物體在代理可以觸碰到的視野內并且代理完成了與該目標物體的交互。
另外,M-TRACK方法在代理執行預測動作前,主動應用里程碑檢查器進行檢查。這可以避免代理與一個錯誤的物體交互后進行額外的糾正錯誤步驟。
如圖3所示,里程碑檢查器在每一步動作執行完畢后檢查當前里程碑是否達成,一旦達成則向代理輸入下一個子任務的語言指令;同時,檢查器在交互動作執行之前,確認交互物體目標是否為交互里程碑中涉及的物體目標,若不是則不執行動作并挑選下一個概率最高的動作執行。
圖3:里程碑檢查過程的示意圖。
值得一提的是,M-TRACK方法只需要用到語言指令、視覺輸入和代理動作,因此該方法是與模型無關的,即可以應用到任何VLN模型上。
實驗結果
本文在ALFRED數據集上驗證M-TRACK方法。ALFRED數據集收集了8055條完成家務任務的專家路徑,其帶有25743條標注的語言指令。驗證集和測試集會被進一步劃分為1)在訓練過程中能看到的環境Seen和2)新的環境Unseen。
表2:ALFRED測試集上的表現。
如表2所示,M-TRACK方法分別應用在LSTM模型和VLN-BERT模型上后,均顯著提高了兩模型的各指標表現,使得兩模型的性能優于其它大多數模型。另外,使用M-TRACK方法的VLN-BERT模型在Unseen環境中的SR和PLWSR指標上達到了最好表現。
動機
訓練數據稀疏一直是視覺語言導航領域的一個問題,研究自動生成高質量的語言指令的模型方法十分重要。自動生成語言指令的一個經典模型是Speaker-Follower模型,但其表現仍然不夠令人滿意。本文觀察到人類標注員在寫語言指令時僅參考了一小部分他們看到的物體,這使得學習視覺輸入和文本輸出之間的精確映射變得更加困難。換一句話說,輸入中涉及過多的視覺信息可能反而導致更差的性能,因為模型會學到很多虛假的相關性。另外,本文還注意到地標說明是語言指令中的重要組成部分。綜上,本文提出了一套僅利用地標和動作序列等較少信息就生成語言指令的流程方法。
制作地標數據集
MARKY-MT5第一階段識別視覺地標作為第二階段指令生成器的輸入,這需要一個地標識別器,而地標識別器的訓練需要制作地標數據集,如圖4所示。
圖4:從RxR數據集制作的地標數據集。
第一步是從語言指令中抽取地標詞組,如圖5所示。第二步是將地標詞組匹配到對應的視覺圖像,對于一條語言指令為了匹配地標詞組和圖像序列,建模矩陣,其中表示詞組和圖像的匹配度。
其中計算MURAL文本表征,計算MURAL圖像表征,返回時間戳。第三步是將圖像中的地標居中,以更好地與地標詞組對齊。
圖5:地標數據集制作過程。
地標檢測
本文采用CenterNet模型作為地標檢測器,輸入形式為360°全景圖的序列,同時每個全景圖上標注了入口和出口方向,如圖6所示,輸出即為檢測出的系列地標。
在訓練時,使用之前從RxR數據集制作的地標數據集。在推理時,聚集每一個視點全景圖的分數最高的3個地標,最終返回T個分數最高的地標,T為路徑長度。
圖6:地標檢測器的全景輸入形式。
指令生成
本文通過將選定地標的視覺表示插入到一個模板式的英文文本序列中,以描述每個地標的方向和穿越路線所需的動作,從而形成模型的輸入。如圖7所示,對于每張有檢測出地標的視點全景圖,用地標方向和當前視點采用的前進方向,配合地標和當前視點的出口視圖,交織成一句語言指令,以此類推,直至描述完所有符合要求的視點全景圖。
本文采用的指令生成模型基于mT5模型,這是T5模型的多語言變體。
圖7:輸入模板和指令生成器的多語言輸出。
實驗結果
MARKY-MT5模型在RxR數據集上訓練,分別在RxR和R2R數據集上評測。評測方法是讓人類去分別根據人類標注和模型生成的語言指令,在虛擬環境中操作完成導航,完成導航的成功率越高,說明語言指令的質量越高。
表3:人類尋路員在R2R未知驗證集上的表現。
表4:人類尋路員在RxR未知驗證集上的表現。
綜上, 可以發現在較簡單的R2R數據集上,MARKY-MT5系統的表現十分接近于人類標注的語言指令,同時又遠高于其它系統模型生成的語言指令質量。而在較復雜的RxR數據集上,MARKY-MT5模型和人類標注的語言指令質量存在一定的差距。
總結
本次 Fudan DISC 小編分享的三篇論文從不同的角度研究了視覺語言導航領域。第一篇工作主要是綜述前人的工作,希望對視覺語言導航的目前進展做出一個歸納整理,無論是對剛入門的人,還是對在這個領域略有心得的人,都是一個不錯的參考啟發資料。第二篇工作主要是意識到了導航代理在把握任務進程方面的難處,并提出了一種可行的進程監督方式。第三篇工作在語言指令生成方面做出了突破性進展,通過精簡視覺輸入的信息,僅利用關鍵性地標和方向動作來生成語言指令,實驗結果達到了SOTA結果。
-
導航
+關注
關注
7文章
528瀏覽量
42413 -
計算機視覺
+關注
關注
8文章
1698瀏覽量
45993 -
自然語言
+關注
關注
1文章
288瀏覽量
13350
原文標題:ACL & CVPR 2022 | 逐步語言指導和導航指令生成最新進展
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論