你有沒有想過,一個機器人在做家務的時候,它的"腦子"里到底在發生什麼?
它看到的畫面、感知到的自己手臂的位置、聽到的指令,這些資訊亂糟糟地混在一起,機器人怎麼把它們理清楚、變成一個連貫的行動序列?這不是一個抽象的哲學問題,而是當下機器人學習領域真正卡住很多研究者的一道坎。
這篇來自武漢大學、清華大學研究者的論文,提出了一個叫WorldToken
的系統,試圖用一種特別直接的方式回答這個問題。它的思路說起來簡單,做起來卻牽動了整個機器人策略設計的骨架。
**核心問題:機器人的"一個瞬間"應該被切成幾塊?**
先說說語言模型的世界是怎麼運作的。
當你問ChatGPT一個問題,它處理的是一串文字符號,每個詞、每個字都是一個獨立的token,按時間順序一個接一個排列。這套邏輯簡單粗暴又好用:整個序列只有一種"磚塊",所有的智能都建立在這些同質磚塊的因果關係上。
Token:可以理解為語言模型處理資訊的最小單位,比如一個詞或者一個字,模型讀文字就是一串一串地讀這些token。
但機器人面對的世界完全不是這麼回事。
同樣是"一個瞬間",機器人接收到的資訊卻是五花八門的:三個攝影機拍到的畫面、手臂關節的角度和速度、語言指令說要做什麼任務。這些東西性質完全不同,一個是視覺像素,一個是數值狀態,一個是語義指令。研究界對這個問題給出了完全不同的答案。有的方法把一幀畫面拆成幾十個視覺token,讓每個觀測時刻占據序列里的很多個位置;有的用循環神經網路把歷史悄悄壓縮進一個隱藏狀態;還有的乾脆搭一個獨立的記憶模組,專門負責存取過去的資訊。
這些設計都能處理時間資訊,但它們對"序列里的一個位置到底代表什麼"這件事,給出的答案完全不統一。這不是吹毛求疵的架構分歧,而是直接決定了後續所有模組怎麼對接、怎麼調試、怎麼放大規模的核心選擇。
WorldToken的答案異常乾脆:每一個策略決策時刻,不管裡面塞了多少種傳感器資訊,最終都只能生成一個token,這個token叫做世界token。時間上的每一步,就是序列里的一個位置,不多不少。
**世界token是怎麼"煉"出來的?**
具體怎麼把一堆異構資訊壓成一個token?
論文裡的做法是這樣的:每個攝影機有自己的卷積網路處理視覺輸入,機器人的關節角度資訊經過一個投影層,任務指令經過一個凍結的CLIP
文本編碼器,統統轉換成同一個維度的向量。
CLIP:一種由OpenAI提出的視覺語言對齊模型,這裡只用它的文字編碼部分,把"打開微波爐"這樣的指令變成一個數字向量,而且這部分參數是凍結不訓練的。
這些向量拼在一起,餵給一個within-step Transformer
(單步內Transformer),這個Transformer里還額外加了四個可學習的"讀出token"。這四個讀出token的工作方式挺有意思:觀測資訊之間可以互相看,但讀出token只能看觀測資訊,不會被觀測資訊看到,這樣保證讀出token純粹是在"收集資訊",不會反過來污染原始觀測的表徵。
最後,把這四個讀出token的輸出拼起來,過一次歸一化和線性投影,就得到了這一時刻唯一的世界token。
這就好比你去參加一個多方會議,會議室里同時有PPT演示、語音發言、手寫白板筆記,資訊形式完全不同。如果你想在會後只留一份紀要交給下一個決策環節,你不會把PPT原圖、錄音文件和白板照片全部塞進去,你會派一個專門的書記員,一邊聽一邊看一邊記,最後濃縮成一頁會議摘要。如果不這麼做會怎樣?下一個環節的人就得自己去翻錄音、看PPT、辨認潦草的白板字,效率崩掉,而且不同會議記錄的格式還可能不一樣,沒法批量處理。世界token乾的就是書記員的活,它把這一時刻所有異構的感官資訊,濃縮成一份統一格式的摘要,交給下一步的時間推理模組。
這樣設計帶來一個直接的好處:序列的長度只取決於機器人做了多少次決策,和每一步用了多少攝影機、多少視覺patch完全沒關係。你可以在單步內部隨便加相機、加傳感器,序列的"時間粒度"始終保持恆定。
**時間怎麼被記住的?因果Transformer登場**
有了逐時刻的世界token序列之後,接下來要解決的是怎麼讓機器人記住過去發生了什麼。
論文用的是基於Qwen2
解碼器架構的因果Transformer,從零開始訓練,不藉助任何預訓練權重(除了那個凍結的CLIP文本編碼器)。
因果自注意力
:一種只允許模型看"過去"不允許看"未來"的注意力機制,保證當前時刻的決策不會作弊偷看還沒發生的觀測。
它對世界token序列做一維RoPE
位置編碼,用因果自注意力保證當前時刻的表徵只依賴於過去和現在,不會偷看未來。
RoPE:旋轉位置編碼,一種給序列里的每個位置打上"相對位置"標記的技術方式,方便Transformer理解誰在前誰在後。
這裡有個細節值得說一下:執行完的動作本身不會被塞回序列里,機器人不是靠"記住我剛才做了什麼動作"來續寫歷史,而是靠"看到動作造成的結果",也就是新的圖像和新的關節狀態,來間接感知歷史。論文裡提到這不是因為觀測能完全還原動作歷史,而是一種設計選擇,把動作也顯式編碼進序列是可以做的擴展,但不是默認方案。
窗口滑動的時候,論文特別強調了保留token會被重新編號,不加絕對位置嵌入,因為RoPE本身是相對位置敏感的,整體減去一個偏移量不會改變token之間的相對幾何關係。這個細節保證了截斷歷史這個實驗操作,改變的只是"能看到多少",不會引入額外的位置編碼噪音干擾結果的解讀。
**動作怎麼生成?擴散模型來兜底**
拿到了歷史壓縮後的表徵,最後一步是決定機器人到底該怎麼動。
WorldToken用的是DiT
擴散模型來生成動作,不是直接回歸一個具體數值,而是學習一個噪聲預測過程,給定當前的歷史表徵作為條件,通過adaLN-Zero調製,一步步把隨機噪聲去噪成一段動作序列。
DiT:Diffusion Transformer,一種用Transformer結構做擴散模型去噪的方案,這裡用來生成一小段未來的動作序列。DDPM
:Denoising Diffusion Probabilistic Models,去噪擴散概率模型的技術全稱,也就是訓練時往真實動作里加噪聲,再教模型學會怎麼把噪聲去掉還原動作。
控制流程用的是receding-horizon
(滾動時域)方式:每次生成十步的動作,但只執行前四步,然後重新觀測環境、重新決策。這種"生成多步、只用一小段、馬上重新看世界"的做法,某種程度上像是你規劃一次長途開車路線,但每開五分鐘就重新看一次導航更新實時路況,而不是死板地按最初那條路線一直開到底。如果不這樣滾動重新觀測,一旦前面預測的十步動作里有一步執行偏了,後面九步全都跟著跑偏,而機器人還蒙在鼓裡繼續按原計劃走。
**訓練效果究竟如何?85M參數就能打平十億級模型**
理論說清楚了,數據說話才是硬道理。
研究者在RoboCasa
這個廚房家務任務基準上做了大規模實驗,涵蓋23個任務,包括開關門、倒咖啡、開關水龍頭、微波爐操作等等。
一個只有85.3M參數的WorldToken策略,在每個任務用2900條生成演示數據訓練之後,達到了59.45%的任務平均閉環成功率,最佳單次評測跑到60.1%。
這個數字放在什麼背景下看才有意義?論文調研了目前公開報道的、用十億級參數規模並且做了大規模預訓練的RoboCasa系統,它們的成功率大致在50%到79%之間,大部分落在58%到70%這個區間。也就是說,WorldToken用不到一億參數、完全從零訓練(沒有用任何機器人軌跡預訓練、沒有借用大型影片模型),就摸到了那些動輒幾十億參數、吃過海量預訓練數據的系統的表現區間下限附近。
在數據量相同的對照實驗裡,300條演示數據的設定下,WorldToken比官方代碼復現的BC-Transformer基線高出12到16個百分點。
**擴大數據和模型,收益規律是什麼樣的?**
研究團隊沒有滿足於跑一個漂亮數字,而是做了一次完整的5×5×2掃描實驗:5種數據規模(50、100、300、1000、2900條演示每任務)、5種模型規模(44.3M到1.49B參數)、2個訓練種子,一共50個訓練出來的策略,總計172500次閉環評測episode。
數據規模的效果非常乾淨利落。所有40組相鄰數據規模的對比里,增加數據量總能讓離線動作預測誤差(RMSE)下降,閉環成功率也總能提升。從50條演示擴到2900條,RMSE下降了47%到57%,閉環成功率提升了32.7到39.3個百分點。而且這個RMSE隨數據量下降的曲線,用一個簡單的冪律公式就能擬合得很好,擬合的R?值普遍在0.99以上,這種規律性某種程度上呼應了語言模型領域裡那種數據和模型協同擴展的現象。
RMSE:Root Mean Square Error,均方根誤差,這裡用來衡量策略在專家演示數據上預測出的動作,跟真實專家動作之間差多少,數值越低說明模仿得越准。
模型規模的效果就沒那麼整齊了。參數從44.3M提高到218.8M,RMSE持續下降,但再往上加到648.9M甚至1.49B,RMSE不再穩定改善,閉環成功率也沒有清晰的排序。也就是說,在這套訓練配方下,模型容量的紅利大部分被44.3M到218.8M這一段吃掉了,再往後加參數,邊際收益明顯遞減。
**機器人到底用沒用到"記憶"?兩組對照實驗揭曉答案**
這裡出現了論文裡我覺得特別值得琢磨的部分。
研究者做了兩組互補的實驗,專門檢驗機器人策略是不是真的在用它接收到的歷史資訊,而不是只看當下這一幀就夠了。
第一組叫"同一權重歷史截斷"。拿主掃描實驗裡訓練好的全部50個策略,權重完全不變,只是在推理階段人為把能看到的歷史長度砍短,從10步壓到1步、2步、5步。結果是,所有50個策略在只給1步或2步歷史的時候,成功率都下降了,最小降幅也有3.5個百分點(1步)和1.4個百分點(2步)。到5步歷史的時候,47個策略已經恢復到接近10步歷史的水平。這說明,這些策略確實在用它們訓練時習得的歷史依賴關係,把歷史砍掉,性能就掉。
第二組是反過來,專門訓練幾個只給短歷史的策略,看它們能不能適應這種"先天缺陷"。結果發現,專門用1步歷史訓練出來的策略,評測時給1步歷史,成功率能到46.75%和47.68%,遠高於那個"本來訓練時用10步歷史、評測時突然被砍到1步"的策略(27.91%和27.83%)。
這兩組實驗放在一起看,故事就完整了。這就像一個人如果從小習慣邊看導航邊開車,你突然把他的導航螢幕關掉,他會明顯手忙腳亂;但如果你從一開始就訓練他不看導航開車,他反而能適應得挺好,甚至比那個"被迫失去導航"的司機開得更穩。如果沒有第二組實驗,你可能會以為機器人對歷史資訊的依賴是任務本身天然要求的,不可動搖;但第二組實驗告訴你,這種依賴更多是"訓練適配"出來的結果,不是任務硬性需要的。
有意思的是,離線RMSE和閉環成功率在這裡出現了分歧。訓練和評測都用10步歷史的RMSE比用5步歷史的RMSE更低,但閉環成功率卻是5步歷史那組更高。這說明"更擅長模仿專家動作"和"更擅長真正完成任務",不完全是同一件事。
**長時序任務:context越長,行為越可靠**
前面討論的RoboCasa任務,大部分決策窗口比較短,5步歷史基本就夠用了。研究者接著跑了一個更硬核的案例:RMBench基準里的Blocks Ranking(積木排序)任務。
這個任務要求把三個積木從L、M、R三個槽位排列成目標順序,需要按照一個固定的三步一循環的換位規則(swap(M,R)→swap(L,R)→swap(L,M))反覆執行,有的初始排列需要連續做完五次換位才能到達目標。
研究者固定同一個訓練好的checkpoint、固定同樣的100個初始條件,只改變推理時能看到的歷史窗口長度,從608個世界token(約146秒)砍到32個(約8秒)。評測器認定的成功率從95%一路降到28%。更細緻的行為審查發現,失敗主要集中在需要連續多次換位的場景,而不是單次局部操作的場景。1步換位的任務在所有歷史長度下都是100%成功,但需要5步換位的任務,歷史長度砍到64或32時,成功率直接歸零。
這就像讓一個人拼一套需要連續五個步驟的宜家家具,如果他每次只能看到最近八秒鐘發生的事情,他大概能記住手裡正在擰的這一顆螺絲,但完全記不清自己是剛擰完第二步還是第四步,拼到第三步就開始亂套;如果給他看最近146秒的完整操作記錄,他就能順著說明書穩穩走完全程。
更讓人意外的是一次探索性的壓力測試。研究者取消了任務在第一次成功後就終止的規則,讓機器人繼續跑,不重置場景也不重置歷史。結果九條測試軌跡里,有五條在context窗口(608個token,約146秒)開始滑動之後,依然繼續正確地執行換位動作。最長的一條完成了31次正確排序的換位,相當於把那個三步一循環的規則完整重複了十輪還多一步,最後一次正確換位發生在第856秒,已經遠遠超出了訓練演示里最多五次換位的記錄,也遠超單次可見context窗口的長度。
這說明這個策略學到的不只是"記住訓練數據里的那幾條特定軌跡",而是真的學到了那個可以無限重複的三步循環規律。
**離線指標和真實表現之間的鴻溝**
論文專門花了一整節討論一件事:RMSE低,不代表閉環成功率一定高。
在數據和模型規模的大跨度對比里,這兩個指標基本是同向變動的,RMSE低的策略往往閉環成功率也更高。但一旦比較相鄰很接近的配置,這種一致性就會打折扣。前面提到的歷史長度對照實驗就是個例子,10步歷史的RMSE比5步歷史更低,但閉環成功率反而是5步歷史更高。
論文歸納了兩個原因。第一,離線RMSE是在專家軌跡上測的,機器人只要偏離專家的路徑一點,後面遇到的狀態可能是訓練數據里完全沒見過的,這時候"離專家動作的距離"這個指標就失去了參考意義,因為專家演示的動作也不是唯一正確答案。第二,動作層面的微小誤差,不一定影響任務層面的成敗,但有時候一個毫米級的執行偏差就能決定成敗。論文舉了Blocks Ranking里一個具體例子:一個用標準擴散損失訓練出的策略,幾乎每次都能把積木排對順序(99次中有99次排對),但因為最後按按鈕的深度差了幾毫米沒觸發評測器認定的成功閾值,導致實際成功率只有13%。後來研究者加入了一個專門針對這個"按壓深度"的輔助訓練目標,把成功率一口氣拉到95%,而且原來13次成功的案例全部保留,又多拿下82個之前失敗的案例。
這個發現提醒人一件很樸素的事:評價一個系統好不好,不能只盯著一個容易量化的代理指標,代理指標和真實目標之間總會有縫隙,縫隙藏在哪裡往往比指標數字本身更值得關注。
**這套架構真正想解決的,是一個"接口"問題**
讀到這裡你可能會問,這一整套設計,到底圖什麼?
論文的作者在討論部分說得很直白:他們並不是想證明"時間優先"這種組織方式一定比別的方式更好,而是想提供一個乾淨的分析接口。因為一旦把"每個策略時刻對應一個token"這件事定死了,你就可以單獨調整單步內部怎麼壓縮感知資訊、時間維度怎麼做計算、動作怎麼生成,而不用擔心這些改動同時改變了"歷史裡的一個位置到底代表什麼"這個基本語義。這讓不同架構改動之間的比較,變得更可控、更可歸因。
論文還提出一個挺有啟發性的觀點:機器人和純語言模型或者多模態語言模型不一樣,一張圖片如果只給語言模型看一次,後面所有推理都必須靠記住這張圖的細節;但機器人是可以主動重新去看的,它下一步的動作會改變它接下來能觀測到什麼。這意味著理論上機器人不需要把每一幀的所有細節都塞進歷史裡死記硬背,當某個細節變得重要的時候,它完全可以靠"再看一眼"重新獲取,而不是靠一個越滾越大的記憶包袱。當然論文也坦誠承認,現在這套WorldToken並沒有真正做到主動感知,這只是一個值得探索的方向。
Q&A
Q1:WorldToken是什麼?
A:WorldToken是一種機器人策略架構,核心思路是把每個決策時刻的多種傳感器資訊(攝影機畫面、機器人關節狀態、任務指令)壓縮成一個統一的世界token,再用因果Transformer按時間順序處理這些token,最後用擴散模型生成具體動作。
Q2:WorldToken的性能和大模型比怎麼樣?
A:一個85.3M參數、完全從零訓練的WorldToken策略在RoboCasa任務上達到59.45%的成功率,已經進入了目前公開報道的十億級參數預訓練系統(成功率大致50%到79%)的表現區間。
Q3:機器人策略真的會用到歷史資訊嗎?
A:研究者做了歷史截斷實驗,發現50個訓練好的策略在歷史被砍短後成功率全部下降,證明確實用到了歷史;但單獨訓練短歷史策略後發現,大部分依賴是訓練適配出來的,不是任務本身嚴格需要的。






