亚洲欧美国产动漫综合_91久久夜色精品国产免费_日韩国产精品亚洲经典_茄子人成年短视频_女教师的一级毛片_亞洲高清毛片一區二區_黄色三级视频午夜_日韩欧美成人大片中文字幕

登錄 | 注冊 退出

OpenVLA-OFT:OFT 并行解碼 + 動作分塊,機器人控制成功率 97.1%,速度提升 26 倍

三谷秋水 2025-03-11

微信圖片_20250217123723.png

微信圖片_20250217123743.jpg

2025年2月來自斯坦福的論文“Fine-Tuning Vision-Language-Action Models: Optimizing Speed and Success”。

最近的視覺-語言-動作模型 (VLA) 以預訓練的視覺-語言模型為基礎,利用各種機器人數據集來展示強大的任務執行、語言跟隨能力和語義泛化能力。盡管取得了這些成功,但 VLA 仍難以適應新的機器人設置,需要進行微調才能獲得良好的性能,但鑒于存在許多可能的策略,如何最有效地對其進行微調尚不清楚。

這項工作用 OpenVLA 作為代表性基礎模型,研究關鍵的 VLA 自適應設計選擇,例如不同的動作解碼方案、動作表示和微調的學習目標。實證分析為優化微調 (OFT) 方案提供信息,該方案集成并行解碼、動作分塊、連續動作表示和簡單的基于 L1 回歸學習目標,以全面提高推理效率、策略性能和模型輸入輸出規范的靈活性。其提出 OpenVLA-OFT,這是此配方的一個實例,它在 LIBERO 模擬基準上創下新的最高水平,將 OpenVLA 在四個任務套件中的平均成功率從 76.5% 顯著提高到 97.1%,同時將動作生成吞吐量提高 26 倍。

最近的視覺-語言-動作模型 (VLA)——通過在大規模機器人數據集上微調預訓練的視覺-語言模型而構建的用于低級機器人控制的機器人策略——已經在不同的機器人和任務中展示強大的任務性能、語義泛化和語言跟隨能力 [4, 33, 23, 22, 7, 15, 8, 50, 55, 3]。盡管微調有其優勢,但它對于在新型機器人和任務上令人滿意地部署 VLA 至關重要,然而,鑒于設計空間巨大,目前尚不清楚最有效的適應方法是什么。希望將 VLA 微調到新的機器人設置和任務的機器人從業者,可能會默認使用與預訓練相同的訓練方案(或參數高效的變型),但這是否會產生最佳策略并不明顯,而且文獻中對替代微調方法的實證分析有限。

先前的研究已經開始探索 VLA 適應策略,其中 Kim [22] 提出通過 LoRA 進行參數高效微調。然而,它們的自回歸動作生成對于高頻控制(25- 50+ Hz)來說仍然太慢(3-5 Hz),并且 LoRA 和自回歸 VLA 的完全微調在雙手操作任務中通常都無法獲得令人滿意的性能 [51, 26, 3]。雖然最近的方法通過更好的動作token化方案 [2, 36] 提高效率,實現 2 到 13 倍的加速,但動作塊之間的顯著延遲(例如,最近的 FAST 方法 [36] 為 750 毫秒)仍然限制高頻雙手機器人的實時部署。探索同時實現令人滿意的速度和質量的替代 VLA 適應方法,仍然是一個尚未被充分探索的研究領域。

已有研究利用語言和視覺基礎模型來增強機器人能力,利用它們作為預訓練的視覺表示來加速機器人策略學習 [29、32、30、19、31],用于機器人任務中的目標定位 [9、45],以及高級規劃和推理 [1、17、42、16、43、18、6]。最近,研究人員探索微調視覺-語言模型 (VLM) 來直接預測低級機器人控制動作,產生了“視覺-語言-動作”模型 (VLA) [4、33、23、22、7、15、8、50、55、51、3、2],這些模型已證明能夠有效地泛化到分布外的測試條件和未見過的語義概念。

盡管微調對于現實世界的 VLA 部署非常重要,但對有效微調方法的實證分析仍然有限。雖然 Kim [22] 研究各種參數更新策略,并從他們的研究結果表明,LoRA 微調能夠有效適應在低控制頻率(< 10 Hz)下運行的單臂機器人,但他們的分析并未擴展到具有高控制頻率(25-50+ Hz)的雙手機器人,這是一種更復雜的控制場景。

Belkhale & Sadigh [2] 以及 Pertsch 的最新工作[36],通過新的動作 token 化方案提高 VLA 效率,使用矢量量化或基于離散余弦變換的壓縮來表示動作塊(動作序列),其 token 化比簡單的按維度分箱(如 RT-2 [4] 和 OpenVLA [22] 中所用)要少。

另一項研究 [51, 26, 3] 展示使用擴散或流匹配等生成方法,對高頻雙手操作進行有效的 VLA 微調。雖然這些基于擴散的 VLA 通過同時生成多時間步長動作塊,實現了比自回歸 VLA 更高的動作吞吐量,但它們通過較慢的訓練和推理時間的多個去噪或集成步驟,引入計算權衡。此外,這些擴散 VLA 在架構、學習算法、視覺語言融合方法和輸入輸出規范方面差異很大——哪些設計元素對性能影響最大仍不清楚。

本文 OpenVLA-OFT 是優化微調 (OFT) 配方的實例。對于現實世界的 ALOHA 任務 [53],用 FiLM [35] 增強該配方,以增強語言基礎,將增強后的配方稱為 OFT+,如圖所示。

image.png

關鍵的 VLA 微調的設計如圖所示。左圖:自回歸解碼(按順序生成動作)與并行解碼(利用雙向注意并在一次前向傳遞中生成所有動作)之間的比較。右圖:具有下一個 token 預測的離散動作 token 與具有 L1 回歸或擴散建模目標的連續動作值之間比較。原始 OpenVLA 訓練方案包括自回歸解碼、離散動作和下一個 token 預測。

image.png

VLA 微調設計決策

現有使用基礎模型自回歸訓練方案微調 VLA 的方法,面臨兩個關鍵限制:推理速度慢(3-5 Hz),不適合高頻控制,以及雙手操作器上的任務執行不可靠 [51, 26, 3]。 為了應對這些挑戰,研究 VLA 微調的三個關鍵設計組件:

(a) 動作生成策略(如圖,左):將需要逐 token 順序處理的自回歸生成與并行解碼進行比較,并行解碼可同時生成所有動作并實現高效的動作分塊。

(b) 動作表示(如圖,右):檢查通過 softmax-based token prediction 處理的離散動作(規范化動作的 256 bin離散化)與 MLP 動作頭直接生成的連續動作。對于離散動作,語言模型解碼器的最終隱藏狀態被線性投影到 logits 中,然后通過 softmax 運算處理以形成動作 token 的概率分布。對于連續動作,最終隱藏狀態則由單獨的動作頭 MLP 直接映射到規范化的連續動作。

? 學習目標(如圖,右):比較針對離散動作的下一個 token 預測微調策略、針對連續動作的 L1 回歸 [53] 和針對連續動作的條件去噪擴散 [5](類似于 Chi [5])。

用 OpenVLA [22] 作為基礎模型進行研究,由于訓練數據集相對較?。?00 次演示,而預訓練為 1M 次演示),因此通過 LoRA 微調 [14] 對其進行調整。

實現替代設計組件

基本 OpenVLA 模型最初采用通過下一個 token 預測優化的離散動作 token 自回歸生成。在保持原始預訓練不變的同時,實施替代設計決策以進行微調。

并行解碼和動作分塊。與需要順序 token 預測的自回歸生成不同,并行解碼使模型能夠在一次前向傳遞中將輸入嵌入映射到預測的輸出序列。在此修改模型,接收空動作嵌入作為輸入,并用雙向注意替換因果注意掩碼,從而允許解碼器同時預測所有動作。這將動作生成從 D 次順序傳遞減少到一次傳遞,其中 D 是動作維度。

并行解碼自然地延伸到動作分塊:要預測多個未來時間步的動作,只需在解碼器的輸入中插入額外的空動作嵌入,然后將其映射到一組未來動作。對于塊大小 K,該模型在一次前向傳遞中預測 KD 動作,將吞吐量提高 K 倍,同時將延遲影響降至最低。雖然并行解碼在理論上可能不如自回歸方法具有表現力,但實驗表明,在不同任務中性能沒有下降。

連續動作表征。OpenVLA 最初使用離散動作token,其中每個動作維度被歸一化為 [-1,+1] 并均勻離散化為 256 個箱。雖然這種方法很方便,因為它不需要對底層 VLM 進行架構修改,但離散化過程可能會犧牲細粒度的動作細節。研究連續動作表示,其兩個學習目標來自著名的模仿學習方法:

首先,與 Zhao [53] 類似,通過將解碼器的輸出嵌入層替換為 MLP 動作頭來實現 L1 回歸,該 MLP 動作頭直接將最終解碼器層隱狀態映射到連續動作值。該模型經過訓練以最小化預測動作和真實動作之間的平均 L1 差異,保持并行解碼的效率優勢,同時可能提高動作精度。

其次,受 Chi [5] 的啟發,實現條件去噪擴散建模,其中模型學習預測在正向擴散期間添加到動作樣本中的噪聲。在推理過程中,該策略通過反向擴散逐漸對嘈雜的動作樣本進行去噪,以產生真實動作。雖然這種方法提供了可能更具表現力的動作建模,但它在推理過程中需要多次前向傳遞(在本文實現中為 50 個擴散步驟),即使使用并行解碼也會影響部署延遲。

額外的模型輸入和輸出。雖然原始的 OpenVLA 處理單個攝像機視圖,但一些機器人設置包括多個視點和額外的機器人狀態信息。在此實現一個靈活的輸入處理流水線:對于攝像機圖像,用 OpenVLA 的雙視覺編碼器從每個視圖提取 256 個 patches 嵌入,這些嵌入通過共享投影器網絡投影到語言嵌入空間中。對于低維機器人狀態輸入(例如關節角度和夾持器狀態),用單獨的投影網絡將它們映射到同一個嵌入空間中作為一個額外的輸入嵌入。

所有輸入嵌入(視覺特征、機器人狀態和語言 tokens)在傳遞到解碼器之前都沿序列維度連接起來。這種統一的潛表示使模型能夠在生成動作時關注所有可用信息。結合并行解碼和動作分塊,該架構可以高效處理豐富的多模態輸入,同時生成多個動作時間步。

使用 FiLM 增強 OpenVLA-OFT 以增強語言基礎

語言跟隨的挑戰。在 ALOHA 機器人設置上部署具有多個視點的腕戴式攝像頭時,由于視覺輸入中的虛假相關性,策略可能會難以跟蹤語言。在訓練期間,策略可能會學會在預測動作時抓住這種虛假相關性,而不是正確地關注語言指令,導致在測試時無法很好地遵守用戶的命令。此外,語言輸入可能僅在任務中的特定時刻至關重要 - 例如,在“將 X 舀入碗中”任務中抓住勺子并決定舀哪種配料之后。因此,如果沒有特殊技術,訓練模型以適當地關注語言輸入可能特別具有挑戰性。

FiLM。為了增強語言跟隨,采用特征線性調制 (FiLM) [35],它將語言嵌入注入視覺表示中,以便模型更加關注語言輸入。從任務描述中計算語言嵌入 x 的平均值,并對其進行投影以獲得縮放和平移向量 γ 和 β。這些向量通過仿射變換調節視覺特征 F。

一個關鍵的實現細節,是選擇什么代表視覺 Transformer 中調制的“特征”。雖然人們可能自然而然地考慮將單個patch 嵌入視為要調制的特征,但這種方法會導致語言理解能力較差。相反,借鑒 FiLM 在卷積網絡中的運作方式,其中調制通過縮放和移動整個特征圖以空間無關的方式應用,將 γ 和 β 的每個元素應用于所有視覺 patches嵌入中的相應隱單元,以便 γ 和 β 影響所有補丁嵌入。具體而言,這使得 γ 和 β 成為 D_ViT 維向量,其中 D_ViT 是視覺 patch 嵌入的隱維度。

在每個視覺 Transformer 塊中的自注意層之后和前饋層之前應用 FiLM,每個塊都有單獨的投影儀。僅將 FiLM 用于 ALOHA 實驗,其中多個攝像機視點會導致視覺輸入中存在大量虛假相關性。

LIBERO 實驗設置

在 LIBERO 模擬基準 [25] 上進行評估,該基準在模擬中采用 Franka Emika Panda 手臂,演示內容包括相機圖像、機器人狀態、任務注釋和增量末端執行器姿勢動作。用四個任務套件 - LIBERO-Spatial、LIBERO-Object、LIBERO-Goal 和 LIBERO-Long - 每個任務套件提供 10 個任務中的 500 個專家演示,以評估策略對不同空間布局、目標、目標和長范圍任務的泛化。

按照 Kim [22] 的做法,過濾不成功的演示,并通過 LoRA [14] 在每個任務套件上獨立微調 OpenVLA。對非擴散方法進行 50-150K 梯度步驟訓練,對擴散方法(收斂速度較慢)進行 100-250K 步驟訓練,在 8 個 A100/H100 GPU 上使用 64-128 的批處理大小。每 50K 步測試一次檢查點,并報告每次運行的最佳性能。除非另有說明,策略都會接收一個第三人稱圖像和語言指令作為輸入。對于使用動作分塊的方法,將塊大小設置為 K = 8 以匹配擴散策略基線 [5],并在重規劃之前執行完整塊,這可以提高速度和性能。

主要基線是使用原始微調配方進行微調的基本 OpenVLA 模型。然而,為了進行更廣泛的比較,還包括來自先前模仿學習方法的 LIBERO 結果,例如擴散策略 [5]、Octo [47]、DiT 策略 [13]、Seer [48]、MDT [38] 和 π0 [3]。注:Seer 使用額外的 LIBERO-90 預訓練數據。

ALOHA 實驗設置

ALOHA 平臺包括兩個 ViperX 300 S 臂、三個攝像頭視點(一個自上而下,兩個腕戴式)和機器人狀態輸入(14 維關節角度)。它以 25 Hz 運行(原來的 50 Hz,降低是為了實現更快的訓練,同時仍保持平穩的機器人控制),動作代表目標絕對關節角度。此設置與 OpenVLA 的預訓練有很大不同,后者僅包括單臂機器人數據、第三人稱相機的單個攝像頭視點、無機器人狀態輸入、低頻控制(3-10 Hz)和相對末端執行器姿勢動作。分布變化對該模型的適應性提出挑戰。

設計四個代表性任務,測試可變形目標操縱、長范圍技能、工具使用和語言驅動控制:

1)“折疊短褲”:在桌子上用兩次連續的雙手折疊白色短褲。訓練:20 次演示。評估:10 次試驗。

2) “折疊襯衫”:通過多次同步雙手折疊白色 T 恤,測試接觸豐富、長范圍操作。訓練:30 次演示。評估:10 次試驗。

3) “將 X 舀入碗中”:用左臂將碗移到桌子中央,用右臂用金屬勺舀出指定成分(“葡萄干”、“杏仁和綠色 M&M 巧克力豆”或“椒鹽脆餅”)。訓練:45 次演示(每種成分 15 次)。評估:12 次試驗(每種成分 4 次)。

4) “將 X 放入鍋中”:用左臂打開鍋,用右臂放置指定物品(“青椒”、“紅椒”或“黃玉米”),然后關上鍋。訓練:300 次演示(每個目標 100 次)。評估:24 次試驗(12 次分布內,12 次分布外)。

用 OFT+ 在每個任務上獨立微調 OpenVLA,梯度步驟為 50-150K(總批次大小為 32,使用 8 個 A100/H100-80GB GPU),動作塊大小為 K = 25。在推理時,會執行完整的動作塊,然后再向模型重新查詢下一個塊。

基本 OpenVLA 架構

OpenVLA 結合融合視覺主干(帶有 SigLIP [52] 和 DINOv2 [34] 視覺Transformer)、Llama-2 7B 語言模型 [49] 和帶有 GELU 激活的 3 層 MLP 投影器 [11],用于將視覺特征投影到語言嵌入空間。

原始模型處理單個第三人稱圖像和語言指令(例如,“將茄子放入鍋中”)。融合視覺編碼器從每個視覺Transformer中提取 256 個 patch 嵌入,沿隱維度連接它們,然后將它們投影到語言嵌入空間中。這些投影的特征與語言嵌入沿序列維度連接,然后由 Llama-2 解碼器處理以輸出表示增量末端執行器姿勢的 7 維機器人動作,由一串離散動作 token 表示。

OpenVLA-OFT 架構修改

OpenVLA-OFT 引入六個關鍵變化:

通過共享的 SigLIP-DINOv2 主干處理多個輸入圖像(例如,第三人稱圖像加上手腕相機圖像);

通過具有 GELU 激活的 2 層 MLP 將機器人本體感受狀態投射到語言嵌入空間;

用雙向注意取代因果注意以實現并行解碼;

用 4 層 MLP(ReLU 激活)取代語言模型解碼器輸出層以生成連續動作(而不是離散動作);

輸出 K 動作的塊而不是單時間步動作;

6)(對于 OpenVLA-OFT+)添加 FiLM [35] 模塊,使用平均任務語言嵌入來調節 SigLIP 和 DINOv2 視覺Transformer中的視覺特征。

實施細節

并行解碼實施:在原始的 OpenVLA 自回歸訓練方案中,模型接收向右移動一個位置的真實動作token作為輸入(這種設置稱為教師強制)。因果注意掩碼確保模型只關注當前和之前的token。在測試時,每個預測的token都會作為下一個預測的輸入反饋。對于并行解碼,用空動作嵌入替換此輸入,這些嵌入僅在位置編碼值上有所不同(類似于 [53])。還使用雙向注意掩碼(而不是因果),使模型能夠在預測動作塊中的每個元素時,非因果地利用所有中間特征。

連續動作表示:對于離散動作,增加用于離散化的 bin 數可以提高精度,但會降低訓練數據中單個 token 的頻率,這可能會損害泛化。另一方面,使用連續動作表示,VLA 可以直接對動作分布進行建模,而無需有損離散化。連續表示實現使用以下規范:

L1 回歸:MLP 動作頭由 4 層組成,具有 ReLU 激活,將最終的 Llama-2 解碼器層隱狀態直接映射到連續動作。

擴散:使用 DDIM [44] 采樣器,具有 50 個擴散時間步長,遵循 [5, 54] 的平方余弦 beta 調度器,具有與 L1 回歸頭相同 MLP 架構的 4 層噪聲預測器。

輸入處理細節:將每個輸入圖像通過 OpenVLA 融合視覺編碼器產生 256 個 patch 嵌入,這些嵌入通過具有 GELU 激活的 3 層 MLP 投射到語言模型嵌入空間 [11]。低維機器人狀態也通過具有 GELU 激活的 2 層 MLP 投射到語言嵌入空間。

在 OpenVLA 主干中,FiLM 實現如下圖所示:

image.png

OpenVLA-OFT 訓練

OpenVLA-OFT 在 LIBERO 上微調的超參列于下表。訓練直到預測和真實歸一化動作(在 [-1, +1] 之間縮放)之間的平均 L1 損失低于 0.01。為了更快地收斂,在 100K 梯度步驟后將學習率從 5e-4 降低到 5e-5。每 50K 步評估一次檢查點,150K 檢查點在除 LIBERO-Goal 之外的所有任務套件中均實現最佳性能。注:不會在 LIBERO 實驗中使用 FiLM,因為沒有它的微調策略已經展示良好的語言基礎。

image.png

OpenVLA-OFT+ 針對 ALOHA 的訓練細節。 OpenVLA-OFT+ 在 ALOHA 任務上訓練的超參(在增強型 OFT+ 配方中使用 FiLM)如表所示。保持與 LIBERO 實驗相同的收斂標準(訓練直到平均正則化 L1 損失降至 0.01 以下)和類似的學習率衰減策略(再次減少 10 倍,但在 50K 梯度步驟之后而不是 100K,因為 ALOHA 數據集較小)。對于不需要語言基礎的兩個衣服折疊任務,仍然包括 FiLM 以驗證這些附加參數不會影響任務執行。

image.png

ALOHA 的 ACT 訓練細節。下表列出針對每個任務從頭開始訓練的 ACT [53] 超參。對于不依賴語言的任務(“折疊短褲”、“折疊襯衫”),用默認的 ResNet-18 [10] 主干,其中不包括語言條件。對于依賴語言的任務(“將 X 舀入碗中”、“將 X 放入鍋中”),用 FiLM [35] 實現 EfficientNet-B0 [46],類似于 [41]。雖然 ACT 建議至少進行 5K 次訓練,但將每個任務的訓練擴展到 10K-70K 次訓練以提高性能。

image.png

ALOHA 的擴散策略訓練。對于擴散策略訓練,用 DROID 實現 [21],它根據任務描述的 DistilBERT [40] 語言嵌入來調節動作預測。

RDT-1B 的 ALOHA 訓練。RDT-1B 建議訓練 150K 梯度步驟,但由于微調數據集比 RDT-1B 微調數據集小得多,因此訓練收斂的步驟明顯更少。因此,沒有必要進行如此長時間的訓練。事實上,在“將 X 舀入碗中”中,較早的 18K 步驟檢查點(成功率為 73.3%)優于較晚的 40K 步驟檢查點(成功率為 70.0%)。

π0 的 ALOHA 訓練。用全微調(其代碼庫中的默認選項)并訓練直至收斂。

END

轉載自CSDN-三谷秋水

底.png

下一篇: 擴散 Transformer 策略:大規模預訓練驅動跨具身 VLA 泛化,Calvin 基準 3.6 任務突破
上一篇: ForceMimic:HybridIL + 力控制,機器人接觸操作成功率提升 54.5%
相關文章
返回頂部小火箭