Gemini 1.5 Pro裝進機器人,參觀一遍公司就能禮賓、帶路

机器之心發表於2024-07-15
長上下文大模型幫助機器人理解世界。

最近,谷歌 DeepMind 突然開始炫起了機器人。

圖片

圖片

這個機器人可以輕鬆聽從人類指令、進行視覺導覽,用常識推理在三維空間中尋找路徑。

它使用的是最近谷歌釋出的大模型 Gemini 1.5 Pro。在使用傳統 AI 模型時,機器人常因上下文長度限制而難以回憶起環境細節,但 Gemini 1.5 Pro 的百萬級 token 上下文長度為機器人提供了強大的環境記憶能力。

在真實的辦公室場景中,工程師引導機器人遊覽特定區域,並標出了需要回憶的關鍵地點,例如「劉易斯的辦公桌」或「臨時辦公桌區域」。轉完一圈後,別人要問起來,機器人就能根據這些記憶帶他去這些地點了。Gemini 1.5 Pro裝進機器人,參觀一遍公司就能禮賓、帶路即使你說不出具體要去的地點,只是表達一下目的,機器人也能帶你找到對應的位置。這是大模型的推理能力在機器人身上的具體表現。 Gemini 1.5 Pro裝進機器人,參觀一遍公司就能禮賓、帶路
這一切離不開一個叫 Mobility VLA 的導航策略。
圖片
  • 論文標題:Mobility VLA: Multimodal Instruction Navigation with Long-Context VLMs and Topological Graphs
  • 論文連結:https://arxiv.org/pdf/2407.07775v1

DeepMind 表示,這項工作代表了人機互動的下一步。未來,使用者可以簡單地用智慧手機拍攝他們的環境遊覽經歷。在看過影片後,他們的個人機器人助手就能理解並在環境中導航。

Mobility VLA:利用長上下文 VLM 和拓撲圖進行多模態指令導航

隨著 AI 技術的不斷髮展,機器人導航已經取得了長足進步。早期的工作依賴於使用者在預先繪製的環境中指定物理座標。物體目標導航(ObjNav)和視覺語言導航(VLN)是機器人可用性的一大飛躍,因為它們允許使用者使用開放詞彙語言來定義導航目標,如「去沙發那裡」。

為了讓機器人在我們的日常生活中真正有用並無處不在,谷歌 DeepMind 的研究者提出將 ObjNav 和 VLN 的自然語言空間提升到多模態空間,這意味著機器人可以同時接受自然語言和 / 或影像指令,從而實現另一次飛躍。例如,一個不熟悉某棟建築的人可以一邊拿著塑膠箱子一邊問:「我應該把這個還到哪裡去?」,機器人會根據語言和視覺上下文引導使用者把箱子還到架子上。他們將這類導航任務稱為多模態指示導航(MIN)。
圖片
MIN 是一項廣泛的任務,包括環境探索和指令引導導航。不過,在許多情況下,人們可以透過充分利用示範遊覽影片來繞過探索。示範遊覽有幾個好處:

  1. 易於收集:使用者可以遙控機器人,或者在環境中行走時用智慧手機錄製影片。此外,還有一些探索演算法可用於建立導覽。
  2. 它符合使用者的習慣做法:當使用者得到一個新的家用機器人時,自然會帶著機器人在家裡轉轉,他們可以在參觀過程中口頭介紹感興趣的地點。
  3. 在某些情況下,出於安全和保護隱私的目的,限制機器人在預先設定的區域內活動是可取的。為此,作者在本文中介紹並研究了這一類任務,即「多模態指示遊覽導航(MINT)」,它利用示範遊覽,重點是滿足使用者的多模態指示。

最近,大型視覺語言模型(VLMs)在解決 MINT 問題上顯示出巨大潛力,這得益於它們在語言、影像理解以及常識推理方面令人印象深刻的能力,這些都是實現 MINT 的關鍵要素。然而,單靠 VLM 難以解決 MINT 問題,原因如下:

  1. 由於上下文長度的限制,許多 VLM 的輸入影像數量非常有限,這嚴重限制了大型環境中環境理解的保真度。
  2. 解決 MINT 問題需要計算機器人的行動。請求此類機器人動作的查詢通常與 VLM(預)訓練的內容不一致。因此,機器人的零樣本效能往往不能令人滿意。

為了解決 MINT 問題,DeepMind 提出了 Mobility VLA,這是一種分層式視覺 - 語言 - 行動(VLA)導航策略。它結合了長上下文 VLM 的環境理解和常識推理能力,以及基於拓撲圖的穩健 low-level 導航策略。

具體來說,high-level VLM 使用示範遊覽影片和多模態使用者指令來找到遊覽影片中的目標幀。接下來,一個經典的 low-level 策略使用目標幀和拓撲圖(從遊覽幀中離線構建)在每個時間步生成機器人動作(航點,waypoint)。長上下文 VLM 的使用解決了環境理解的保真度問題,拓撲圖則彌補了 VLM 的訓練分佈與解決 MINT 所需的機器人行動之間的差距。

作者在現實世界(836 平方米)的辦公室和類似家庭的環境中對移動 VLA 進行了評估。在之前難以實現的涉及複雜推理(例如「我想把東西存放在公眾視線之外,我該去哪裡?」)和多模態使用者指令的 MINT 任務上,Mobility VLA 達到了 86% 和 90% 的成功率(分別比基線方法高出 26% 和 60%)。

作者還展示了使用者與機器人互動的便捷性的巨大進步,使用者可以在家庭環境中使用智慧手機進行帶解說的影片漫遊,然後詢問「我的杯墊放在哪裡了?」

技術細節

Mobilit VLA 是一種分層導航策略(如圖 1 所示),包括線上和離線兩個部分。
圖片
在離線階段,根據示範遊覽(N,F)生成拓撲圖 G。在線上階段,high-level 策略透過示範遊覽和多模態使用者指令(d,I)找到導航目標幀索引 g,該索引是一個整數,對應於遊覽的特定幀。下一步,low-level 策略利用拓撲圖、當前攝像頭觀測資料(O)和 g,在每個時間步產生一個航點動作(a),供機器人執行。
圖片
其中,h 和 l 分別代表 high-level 和 low-level 策略。

示範遊覽和離線拓撲圖生成

Mobility VLA 利用環境示範遊覽來解決 MINT 問題。這種遊覽可以由人類使用者透過遠端操作進行,也可以在環境中行走時用智慧手機錄製影片。

然後,Mobility VLA 會離線構建拓撲圖 G = (V,E),其中每個頂點 v_i∈V 都對應演示遊覽影片 (F, N) 中的幀 f_i。作者使用 COLMAP(一種現成的運動結構管道)來確定每幀的近似 6 自由度相機姿態,並將其儲存在頂點中。接下來,如果目標頂點位於源頂點的「前方」(與源頂點的姿態相差小於 90 度),且距離在 2 米以內,則會在 G 中新增一條有向邊。

與傳統的導航 pipeline(例如繪製環境地圖、識別可穿越區域,然後構建 PRM)相比,拓撲圖方法要簡單得多,因為它能根據遊覽軌跡捕捉環境的一般連通性。

基於長上下文多模態 VLM 的 High-Level 目標尋找

在線上執行過程中,high-level 策略利用 VLM 的常識推理能力,從示範遊覽中確定一個導航目標,以滿足各種多模態、口語化且往往含糊不清的使用者指令。為此,研究者準備了一個由文字和影像交錯組成的提示 P (F,N,d,I)。下面是多模態使用者指令的一個具體例子,對應的是表 1 中的一個問題 ——「Where should I return this?」。
You are a robot operating in a building and your task is to respond to the user command about going to a specific location by finding the closest frame in the tour video to navigate to . These frames are from the tour of the building last year . [ Frame 1 Image f1] Frame 1. [ Frame narrative n1] ... [ Frame k Image fk ] Frame k . [ Frame narrative nk ] This image is what you see now . You may or may not see the user in this image . [ Image Instruction I]
 The user says : Where should I return this ? How would you respond ? Can you find the closest frame ?
圖片
VLM 返回一個整數目標幀索引 g。

利用拓撲圖實現 low-level 目標

一旦 high-level 策略確定了目標幀索引 g,low-level 策略(演算法 1)就會接手,並在每個時間步產生一個航點動作(公式 1)。
圖片
在每個時間步中,作者使用實時分層視覺定位系統,利用當前相機觀測值 O 估算機器人的姿態 T 和最近的起始頂點 v_s∈G (第 5 行)。該定位系統透過全域性描述符在 G 中找到 k 個最近的候選幀,然後透過 PnP 計算 T。接下來,透過 Dijkstra 演算法(第 9 行)確定 v_s 與目標頂點 v_g(與 g 對應的頂點)之間拓撲圖上的最短路徑 S。最後,low-level 策略會返回一個航點動作,即 S 中下一個頂點 v_1 相對於 T 的 ∆x、∆y、∆θ(第 10 行)。

實驗結果

為了展示 Mobility VLA 的效能並進一步瞭解關鍵設計,作者設計了實驗來回答以下研究問題:

  • 問題 1:在現實世界中,Mobility VLA 在 MINT 中是否表現出色?
  • 問題 2:Mobility VLA 是否會因為使用長上下文 VLM 而優於替代方案的效能?
  • 問題 3:拓撲圖是否必要?VLM 能否直接產生行動?

Mobility VLA 在現實環境中有著穩健的端到端表現

1、端到端成功率高。表 2 顯示,在大多數使用者指令類別中,Mobility VLA 的端到端導航成功率都很高,包括以前不可行的「推理 - 要求」和「多模態」指令。

2、穩健的 low-level 目標達成。表 2 還顯示了 Mobility VLA 的 low-level 目標達成策略在現實世界中的穩健性(100% 成功率)。其中的示範遊覽記錄是在實驗前幾個月錄製的,當時許多物體、傢俱和照明條件都不同。
圖片
長上下文 VLM 在高階目標查詢方面優於其他選擇

1、Mobility VLA 優於替代方案。表 3 顯示,Mobility VLA 的 high-level 目標查詢成功率明顯高於對比方法。鑑於 low-level 成功率為 100%,這一 high-level 目標查詢成功率代表了端到端成功率。
圖片
2、使用長上下文 VLM 處理高幀率遊覽影片是成功的關鍵。向非長上下文 VLM 輸入大型環境的完整示範遊覽是一項挑戰,因為每幅影像都需要數百個 token 的預算。減少輸入 token 數量的一個解決方案是降低遊覽影片幀頻,但代價是中間幀丟失。表 4 顯示,隨著遊覽幀頻的降低,high-level 目標查詢成功率也在降低。這並不奇怪,因為幀率較低的遊覽影片有時會丟失導航目標幀。此外,在比較最先進的 VLM 時,只有 Gemini 1.5 Pro 的成功率令人滿意,這要歸功於其長達 100 萬個 token 的上下文長度。
圖片
拓撲圖是成功的關鍵

表 5 顯示了 Mobility VLA 在模擬中的端到端效能與提示 VLM 直接輸出航點操作的比較。0% 的端到端成功率表明,Gemini 1.5 Pro 在沒有拓撲圖的情況下無法實現機器人的零樣本導航。根據實驗,作者發現無論當前攝像頭的觀測結果如何,Gemini 幾乎總是輸出「向前移動」的航點動作。此外,當前的 Gemini 1.5 API 需要在每次推理呼叫時上傳全部 948 幅遊覽影像,導致機器人每移動 1 米就需要花費 26 秒的執行時間,成本之高令人望而卻步。另一方面,Mobility VLA 的 high-level VLM 會花費 10-30 秒找到目標索引,然後機器人會使用 low-level 拓撲圖導航到目標,從而形成一個高度穩健和高效(每步 0.19 秒)的系統來解決 MINT 問題。
圖片
更多細節請參考原論文。

相關文章