歡迎來到Robot Foundation Model(RFM)系列第一期,RFM的名字和之前採訪的Covariant釋出的具身大模型有同樣的簡稱,幾個月前我也做了一個關於RFM-1的採訪解密機器人大模型RFM-1:Covariant創始人陳曦專訪。隨著國外Pi釋出π0,國內清華髮布RDT,我最近也考慮做一個機器人基礎模型相關係列報道。
近半年,隨著Pi和Skild這類聚焦在具身大模型的北美公司逐步有成果出來,國內很多擁有類似能力的公司融資估值也快速拔高。Pi和Skild給國內的投資人展示了具身大模型的正規化和空間,有了參考,回過頭來看國內有哪些公司有這個能力,大家一目瞭然。這篇文章我肝了好幾個週末和夜晚,聽了Sergey在CoRL上的兩個talk,每個talk都至少重複了兩遍,整理出來以上的文字。我希望這些文字可以給行業帶來一些更清晰的梳理,具身大模型公司是幹什麼的?目前典型的具身大模型結構是什麼樣的?Pi和 π0到底是啥?
這篇文章是Sergey Levine 在CoRL 2024的兩個WorkShop上所作報告的筆記。兩個Talk分別是在 Mastering Robot Manipulation in a World of Abundant Data這個workshop上題為 “Generalist Robot Policies” 的報告和the 1st Workshop on X-Embodiment Robot Learning workshop上題為"How Real-World Cross-Embodiment Data Will Lead to Robotic Foundation Models" 的報告。
這兩個報告介紹了什麼是機器人基礎模型,以及如何構建這種模型。Sergey Levine 特別強調了資料型別對於機器人基礎模型的重要性,並提出真實世界資料在推動這些模型發展中的關鍵作用。他還提到了π0模型的構建,包括預訓練和後訓練階段。
我覺得這些Sergey報告背後的思考非常重要,所以整理成文字我沒有做太多歸納,儘量保留原汁原味。內容比較長,但非常非常非常推薦細讀。 這一篇文章可以讓你瞭解什麼是目前主流的具身大模型框架,以及π0和Pi到底在幹啥。以下萬字長文,希望你有所收穫!
-
機器人學習領域面臨的機會與挑戰
-
關於機器人資料集OXE(Open X-Embodiment)
-
什麼是機器人基礎模型?
-
為什麼需要機器人基礎模型?
-
如何獲取機器人基礎模型所需大規模資料?
資料選擇的關鍵問題
為什麼不是模擬資料?
為什麼不是影片資料?
為什麼是真實資料?
6. π0
π0的模型結構
π0的訓練方法
π0的預訓練(Pre-training)
π0的後訓練(Post-training)
π0的效果
7. 關於機器人基礎模型的預訓練
8. 機器人基礎模型的監督微調與強化學習的微調
9. 強化學習(RL)+真機
10. Sergey talk總結
11. 一些問題
1. 機器人學習領域面臨的機會與挑戰
人工智慧系統以前是如何工作的?如果回到10到15年前,解決某個特定問題(如影像分割、分類或視覺問答)需要為該問題專門設定一個大型資料集。然後,我們會為這個特定任務訓練一個專門的模型,希望能夠取得良好的效能。然而,這種方法非常耗費人力,因為它需要大量資料——這些資料必須由專家為特定任務進行精確標註。
如今,情況發生了變化。我們不再為每個任務建立專門的資料集和模型,而是從網路上收集大量資料。這些資料通常沒有強標註——可能只是原始文字或影像-文字的關聯資料。然後,我們應用大規模自監督演算法,比如下一詞預測,來訓練所謂的基礎模型。這是一種通用模型,能夠解決各種現實世界的任務。隨後可以透過微調來解決具體的下游問題,甚至可以透過零樣本提示(zero-shot prompting)直接執行這些任務。這種方法革新了人工智慧,因為它消除了每個領域都需要大量手動標註資料集的需求,使我們能夠在不同應用中共享單一的通用模型。
現在,我想說的是:在機器人領域,我們正在看到類似的轉變。幾年前,關於機器人學習的主流觀點是,對於每個任務——無論是製作煎餅、拾取一個箱子還是其他任務——你需要為特定任務、機器人和應用單獨訓練一個模型。通常,這種訓練是在受控的實驗室環境中進行的,需要大量的資料,這成為部署機器人學習系統的一大障礙。
未來,機器人學習可能會完全不同。我們可以彙集來自許多不同機器人來源的資料,提供我們所需的大量資料。然後,這些資料可以用來訓練一個大型的自監督或動作監督的基礎模型。這種模型隨後可以為具體的下游任務進行微調或提示。從宏觀層面來看,這種方法非常吸引人,因為它解決了部署機器人學習系統的最大障礙之一:任務特定的資料收集和訓練需求。
話雖如此,要實現這一願景,我們仍需要解決一些重大挑戰。例如,我們如何設計這些基礎模型?資料從何而來?我們如何將來自不同來源的資料結合起來?我們如何有效地擴充套件這一過程?最後,我們如何調整和專門化這些模型以適應具體的下游任務?這些問題需要我們回答才能取得進展。
2. 關於機器人資料集OXE(Open X-Embodiment)
我想談談其中一個拼圖的部分,那就是我們如何從許多不同的機器人收集資料來訓練機器人基礎模型。這一點非常關鍵,目前還沒有一個“機器人資料的網際網路”。對於任何給定的機器人來說,可能都沒有大量的資料集。然而,透過彙集各種來源的資料,我們可以創造出類似於機器人網際網路的東西。
我們在一個名為RTX的專案中探索了這一想法,該專案大約始於一年前。該專案不僅從網路上抓取資料,還積極聯絡了33個學術研究實驗室,以及Google DeepMind,以收集他們的機器人操作資料。這一合作產生了一個多樣性顯著的資料集,包括各種機器人任務、相機視點和機器人本身。儘管所有的機器人都是單臂系統,配有平行抓取器,但任務和視點的多樣性非常豐富。
這些豐富的資料也帶來了挑戰——它是高度異質的。為了解決這個問題,我們需要能夠跨不同機體工作並適應各種機器人系統的學習方法。然而,潛在的好處是巨大的。例如,我們用這些彙總的資料訓練了一個模型,然後將其傳送回貢獻資料的實驗室。每個實驗室在他們自己的任務上測試了這一跨機體模型,並將其與他們的專用模型進行了比較。
結果令人振奮:在大多數情況下,跨機體模型的表現優於專用模型,平均成功率提高了50%。這與我們在語言模型中看到的現象相似,基於多樣化資料集訓練的通用模型往往在特定任務上勝過專用模型。
除了從多個機器人彙集資料之外,另一種利用豐富資料的方法是使用網路上的影像-語言資料。例如,我們可以採用大型語言模型,微調它們以處理影像觀測,並將其轉變為視覺-語言模型。這些模型在諸如影像描述或視覺問答等任務上進行訓練,然後進一步微調以適應機器人任務。例如,如果機器人被問到“你應該如何拿起那個蘇打罐?”答案會被編碼為機器人應該採取的具體動作,基於它在影像中的觀察。
這一概念在Google DeepMind開發的早期原型如PolyX和PALM-E中得到了測試。透過在多樣化的跨機體資料集上微調這些視覺-語言模型(VLM),我們取得了令人印象深刻的結果。例如,即使訓練資料中沒有明確包含此類指令,該模型也能遵循像“將蘋果放到罐子和橙子之間”這樣的空間命令。這種能力源於模型在不同任務中學習到的模式,並能夠有效地進行泛化。
有趣的是,跨機體模型的效能比僅在資料集中最多代表性的機器人上訓練的基線模型高出三倍。這一結果突顯了從多樣化來源聚合資料以訓練通用模型的強大潛力。然而,這些實驗中的任務相對簡單——更偏向學術測試,旨在評估語義理解能力,而非複雜的操作技能。
展望未來,還有很多工作要做。我們需要了解這些視覺-語言-動作模型(VLA)如何處理更復雜的任務。具體來說,我們必須設計專門針對機器人控制的架構,而不是依賴為語言輸出設計的現成視覺-語言模型。此外,我們還需要調整這些模型以處理不同形態和動作空間的機器人,因為目前的大多數實驗都集中在具有對齊動作空間的單臂系統上。
從整體來看,這項工作只是更大拼圖的一部分。關於如何設計、擴充套件和調整機器人基礎模型以充分發揮其潛力,還有許多懸而未決的問題。
3. 什麼是機器人基礎模型?
機器人基礎模型是一種旨在執行多種機器人任務的模型,通常適用於多種不同的機器人。Octo 是早期機器人基礎模型的實驗之一。這個實驗透過網路進行,模型託管在 Google DeepMind,而機器人則在加州大學伯克利分校執行。實驗使用的模型是 RT-2 X-Embodied VLA模型,使用的模型訓練資料集是OXE(Open X-Embodiment)
這個實驗非常令人興奮。它的重要意義在於,據我所知,這是首次透過網路 API 呼叫來實現機器人基礎模型。這種VLA模型不僅可以處理文字,還可以接收視覺輸入。模型的訓練從語言模型開始,然後擴充套件到理解和解釋視覺資料。這種訓練通常利用網路規模的資料完成,例如問答和影像描述任務。之後,模型被微調以基於語言和視覺輸入生成動作。
在這個實驗中,模型進一步訓練來回答類似“機器人應該如何完成這項任務?”的問題。模型的輸出不是描述或答案,而是機器人應執行的動作,編碼為Token。這些視覺-語言模型非常強大,因為它們從網際網路規模的預訓練中繼承了語義理解能力。然而,它們的真正優勢在於透過多樣化和通用性的資料集訓練出來的能力。
4. 為什麼需要機器人基礎模型?
那麼,為什麼我們需要機器人基礎模型呢?有許多理由,但對我來說,最具說服力的是這些模型解決了機器人學習的最大限制。機器人學習是讓機器人執行難以手工程式設計的任務的有效方法,但它有一個關鍵缺點:需要大量特定任務的資料。對此有幾種解決方案。
一種方法是使用小型、高質量的資料集。一些研究重點使用小型領域特定的資料集展示方法。然而,對於實際應用而言,小型資料集的侷限性很大。現實世界的範圍廣闊,一個覆蓋小範圍的資料集可能在特定領域表現出色,但無法讓模型適應整個世界。
另一種選擇是使用可能質量較低的大型資料集。例如,模擬環境中的大規模資料更易於收集,但它經常引入與真實環境的分佈差異。模擬環境資料集可能很大,但測試分佈,即機器人實際操作的環境,可能非常不同。這兩種方法都有侷限性。
機器人基礎模型彌合了這一差距。透過在大規模多樣化資料集上預訓練,模型可以獲得通用知識。然後,可以用更窄的資料集對模型進行微調,使其更高效。預訓練階段確保了模型能夠理解各種真實場景中的操作。
5. 如何獲取機器人基礎模型的所需的大規模資料?
這又引出了一個問題:我們如何獲取預訓練階段所需的大規模高質量資料集?這仍然是一個關鍵挑戰。雖然機器人基礎模型在預訓練階段不需要高度專業化的資料,但仍需收集大量資料。網際網路並不充斥著機器人資料,各界對資料來源也有不同看法。
一種方法是使用模擬來生成合成資料。另一種方法是使用網際網路影片作為真實機器人資料的替代品,涵蓋多種場景,為機器人特定資料的預訓練提供基礎。我所倡導的,也是我認為最有希望的方法,是使用真實世界資料。
首先,使用真實資料在過去表現良好。儘管模擬在訓練感知系統等任務中發揮了重要作用,但實際中最有效的模型始終基於真實資料訓練。這種方式使訓練過程更能匹配真實世界的測試條件。但我認為還有一個更重要的原因:從長遠來看,真實世界資料可能成為最簡單、最便宜的選擇。當機器人開始執行有用的任務時,它們存在於現實世界中的動力會很強。當機器人完成實際任務時,它們的數量可能會非常龐大,從而生成大量的資料。一旦我們克服了初期的啟動難題,真實世界資料很可能成為最經濟且最優的選擇。
資料選擇的關鍵問題
回到報告開頭提出的核心問題:我們應該使用哪種資料?我的結論是,真實世界資料對於推動機器人基礎模型至關重要。這並不意味著模擬或影片資料完全無用,但我相信從長遠來看,真實世界資料更有前景——並非因為我們無法構建模擬器或彌合影片與真實資料之間的差距,而是因為真實世界資料蘊含了大量的實用資訊。
為什麼不是模擬資料?
模擬資料之所以吸引人,是因為你可以幾乎免費生成它,主要的成本是計算資源。這種方式的吸引力在於你可以將計算能力直接轉化為能力。例如,如果你想設計一枚火箭,可以寫下運動方程,實施一個模擬器,然後使用強化學習演算法有效地“逆向”模擬器,得出一條控制軌跡,指導火箭沿著期望的軌道飛行。然而,這種方法與機器學習的傳統思路截然不同。事實上,這更像是經典控制理論,即透過方程建模系統,然後用代數推匯出控制規律。
這種經典方法在系統可以完全表徵時非常有效,通常使用封閉形式的運動方程。但在機器學習領域,我們放寬了這些要求。我們不一定需要封閉形式的方程,可以使用程式碼片段來模擬系統的動態。然而,本質上,這種“模擬到現實”的方法仍然是逆向已知的動態系統,儘管這可能涉及複雜的模擬或渲染演算法。這種觀點幫助我們理解了使用模擬資料的優劣。
某種程度上,模擬可以看作是傳統基於模型的機器人智慧方法的重新包裝。然而,機器人領域的挑戰不僅僅是逆向已知系統,而是學習人類難以精確形式化或編碼到計算系統中的內容。例如,雖然你可能能推匯出機器人摺疊 T 恤的運動方程,但要寫出機器人如何在酒店與客戶互動的方程就很困難。人類行為非常複雜,難以模擬,而這是試圖用模擬建模真實世界場景的一個基本問題。最終,無論模擬多麼先進,都會與試圖建模的真實現象產生偏差。
為什麼不是影片資料?
影片資料提供了一種更直接且潛在實用的方法。你可以從網路中獲取真實世界影片,省去了對機器人或模擬器的需求。這也是機器人領域以外的基礎模型領域取得進展的地方,比如自然語言處理領域大量依賴網路規模的資料。但這也有缺點。依賴影片資料可能有點像“沙發土豆”的解決方案——坐在那兒看影片,希望透過被動地獲取資料能夠掌握運動技能。從這個角度看,這可能既是兩者優點的結合,也是兩者缺點的結合。
我的觀點是,儘管影片資料可能非常有用,但過度依賴它可能是最差的解決方案。它和模擬一樣存在分佈偏移的問題,同時缺乏模擬器可以提供的高任務特定質量。此外,影片資料可能無法針對你要解決的特定機器人任務提供足夠的專門性。
還有一種擔憂,即影片資料的價值可能已被現有視覺預訓練方法基本挖掘殆盡。計算機視覺領域已經非常擅長利用大規模影片和影像資料集進行訓練。如果該領域繼續改進其視覺預訓練方法,很可能我們已經從網路規模的影片資料中榨取了大部分收益。在某種程度上,影片資料和視覺預訓練之間的界限可能會模糊,但這也引發了一個問題:僅僅看影片是否能讓人精通某項技能,比如網球?觀看像 Roger Federer 這樣的職業選手可能會教會你一些東西,但不會讓你成為專業選手。這表明影片資料有用,但可能不足以單獨實現機器人任務的效能和泛化。影片資料確實可能非常有用,但前提是它與大量的物理互動相結合——就像人類學習一樣。
為什麼是真實資料?
在我看來,真實世界資料實際上是預訓練和微調模型的一種非常實際的方法。儘管乍看起來似乎成本很高,但如果僅依賴於單個機器人的資料,它才會顯得不切實際。這讓我們回到此次研討會的主題:一旦有許多機器人在真實世界中執行任務,資料收集會變得更加容易。每個機器人都會生成大量的資料,如果能從多個機器人中聚合資料,就不必擔心某個機器人有限的部署範圍。
跨形態訓練是關鍵,因為它使我們能夠從多種機器人中收集和使用資料。這與計算機視覺領域的大規模資料聚合和網路抓取的做法相似,在這些領域中,來自不同來源的資料被整合,用於構建強大的模型。在機器人領域,這種方法可能會產生類似的變革性效果。對於基礎研究來說,重要的是解決具有長期潛力的問題,而不是專注於短期成本。如果我們對機器人的未來持樂觀態度,可以預見到數百萬甚至數十億的機器人將被部署到全球各地。到那時,收集真實世界資料將變得既便宜又容易。
預訓練階段並不要求你的資料是完美的——只需多樣化,涵蓋多種情境即可。微調階段則需要更專業、更高質量的資料,與機器人需要掌握的特定任務匹配。幸運的是,對於機器人基礎模型來說,微調所需的資料遠不及預訓練那麼多。後訓練可能只需數十小時的資料,其中一些可以在幾天內收集完畢。未來,甚至可能完全透過強化學習方法自動收集資料。
總的來說,使用真實世界資料,尤其是來自多機器人來源的資料,是改進預訓練和微調過程的關鍵。隨著跨形態訓練的進步以及全球範圍內更多機器人的部署,真實世界資料將成為推動機器人技術發展的高效且實際的資源。
6. π0
π0是我們開發的另一個機器人基礎模型,專為高度靈活、複雜且需要長時間規劃的任務設計。
π0在多種形態上訓練,特別是設計用於執行如洗衣服等任務——從烘乾機取出衣物,摺疊每件物品等。
該模型在從各種機器人平臺收集的多樣化資料集上訓練,包括RT-X資料集和其他公開可用的資料。與傳統資料集不同,這個資料集包含了具有廣泛配置的機器人——雙臂系統、具有六或七自由度的機器人,以及具有不同動作空間的移動機器人。π0被設計用於處理這些多樣性並執行更靈巧的任務,要求大約50赫茲的高頻控制。
系統設計包括多個階段。首先是預訓練階段(Pre-training),我們從資料集中所有的機器人收集資料。我們還使用了基於網際網路規模的視覺-語言模型(VLM)預訓練,並結合了整個跨機體RT-X資料集,這一過程訓練了一個專門的基於流匹配的視覺-語言-動作模型(VLA)。接下來,該模型可以進行零樣本(zero-shot)控制,接受文字命令完成未明確訓練的任務。最後,在後訓練階段(Post-training),該模型可以透過微調進行最佳化,類似於語言模型的微調,以對齊人類的偏好。這使得它能夠執行諸如疊衣服或處理未包含在原始資料集中的全新任務等複雜任務。
我想強調的是,這不僅僅關乎模型架構。整個系統的各個方面都很重要——我們如何收集和結構化資料、如何預訓練模型,以及如何微調它們。這些要素通常比模型架構的具體細節更為關鍵。
π0的模型結構
接下來,我將談談模型架構,因為我認為它非常有趣。該模型的設計採用了一種基於流匹配(flow matching)的方法,這是一種擴散(diffusion)的變體,用於生成動作。這種方法非常出色,因為它允許我們輸出連續的動作,而無需對其進行離散化或標記化(discretize or tokenize)。它還能很好地處理複雜的多模態分佈以及動作塊(action chunks)。對於高頻控制,輸出動作塊——在這種情況下,大約是一秒鐘的動作序列——非常重要。此外,這種方法能夠有效地處理多模態分佈。
以下是該模型的工作原理:它包括一個編碼器,初始化自PolyX,一個開源的視覺-語言模型(VLM)。編碼器接收1到3張影像,具體數量取決於機器人的形態。有些機器人只有一個基礎相機,而另一些機器人可能有多達三個相機——兩個手腕相機和一個基礎相機。模型還處理一個語言命令,該命令以標準方式進行標記化(Tokenize)。
動作由我們稱為動作專家(action expert)的元件生成。可以將動作專家視為視覺-語言模型(VLM)的擴充套件,它輸出動作而不是語言標記。為了實現這一點,我們對對應於動作維度的標記應用了一種不同的損失函式。本質上,這就創造了一個基於擴散的初級視覺-語言模型。
動作專家的獨特之處在於,它對負責生成動作的網路部分使用了單獨的權重引數,同時保持了模型的其他部分的層數一致。動作專家的每一層都與視覺-語言模型的所有層進行注意力互動。這種架構並不是傳統的編碼器-解碼器設定,而實際上是一個單解碼器模型,注意力從視覺-語言模型流向動作專家。儘管兩者的權重不同,但它們協同工作得非常流暢。
你可以粗略地將其理解為一種專家混合(mixture-of-experts)模型,一個專家負責生成動作,另一個負責處理影像和語言。該設計使得模型能夠在保持高效性的同時處理複雜任務並具有良好的適應性。
關節角度直接輸入到動作專家中,可以將動作專家理解為專門處理連續性內容的元件。與之相對,模型的另一部分則專注於處理與影像和文字相關的內容。模型生成的動作塊跨度大約50個時間步,每個時間步的維度最多可達24,具體取決於機器人。生成過程本身使用的是基於流匹配的方法,這種方法可以粗略地理解為擴散的變體。
π0的訓練方法
接下來,我們談談訓練方法。我們從一個預訓練資料集開始,其中包含了所有內容——總計約10,000小時的資料。據我們所知,這可能是除自動駕駛領域以外,任何人用於訓練機器人模型的最大資料集。利用這些資料,我們可以訓練一個透過提示完成任務的模型。然而,我們也可以為具體的下游任務專門化這一模型,這通常需要1到20小時的後期訓練資料,具體取決於任務的複雜性。
對於複雜任務,比如疊衣服或組裝一個盒子,後期訓練可能需要大約20小時的資料。而對於簡單任務,只需1到5小時的資料就可以達到良好的效能。這些資料量是可控的——你可以在一兩天內實際收集到。例如,對於疊衣服任務,預訓練階段已經包含了大量的資料,因此20小時的後期訓練資料只是添加了高質量、任務特定的例子。另一方面,對於諸如組裝盒子這類任務,由於沒有預訓練資料,所有相關訓練資料都來自後期訓練階段。
預訓練(Pre-training)和後訓練(Post-training)的區別在於它們的關注點:
-
預訓練資料更廣泛,但質量較低,幫助模型學習多種策略並從錯誤中恢復。
-
後期訓練資料更集中,但質量更高,教會模型如何透過一致的策略完成任務。
如果只使用高質量的後期訓練資料,機器人可能無法學會如何處理意外情況或從錯誤中恢復。然而,當將其與預訓練結合時,你可以獲得兩全其美的結果:預訓練階段的廣泛知識和後期訓練階段的任務特定專業技能。這類似於語言模型,在預訓練階段捕獲通用知識,而在後期訓練階段使模型針對特定應用進行專門化。
將完整的π0模型(預訓練和後期訓練)與僅使用後期訓練資料訓練的模型進行比較,突顯了預訓練的重要性。雖然僅靠後期訓練對於簡單任務(如裝雞蛋)有效,但在更復雜的任務上效果不佳。預訓練為從錯誤中恢復提供了策略,大大改善了複雜任務的表現。
π0的預訓練(Pre-training)
預訓練這種方法的一個令人興奮的成果是其處理高度複雜和靈活任務的能力。例如,在 Physical Intelligence,我們開發了π0模型,它採用類似的預訓練和後訓練方法以實現高效能。該模型在包括雙臂和移動操作器在內的多種機器人平臺上進行了預訓練。它可以執行相當複雜的任務,比如從烘乾機中取出衣物、將其放入籃子、將籃子移到桌上並摺疊衣物。雖然機器人並非完全無誤,有時會犯錯,但其多樣化的預訓練使其能夠以令人印象深刻的效率處理各種任務。
我們還從實驗中獲得了有關完成這些任務所需資料量的有用見解。例如,π0模型可以應對摺疊箱子這一極具挑戰性的任務——任務要求機器人在摺疊箱子時固定住部分箱子。通過後訓練,機器人學會如何解決這一難題。預訓練階段為其提供了物理知識的基礎,而後訓練階段則專注於執行任務所需的特定策略。
在實驗中,機器人透過首先將箱子頂在桌子上進行穩定,然後有條不紊地摺疊每個邊。這種細緻的操作表明預訓練階段賦予了機器人廣泛的物理原則理解,而後訓練階段則細化了其處理更復雜任務的能力。
π0的後訓練(Post-training)
機器人在執行諸如摺疊箱子或組裝汽車儀表盤等複雜任務方面的能力,展示了結合真實世界資料的預訓練和後訓練的強大潛力。π0模型透過一般性預訓練能夠處理相對簡單的任務,而後訓練階段則進一步提升其技能,使其能夠應對更復雜、精細的挑戰。例如,當摺疊箱子時,如果一個邊滑出,機器人會重新嘗試並糾正自己。在足夠多的嘗試後,機器人能夠顯著提高其可靠性和精度。
這一過程的效率尤其令人關注——只需幾十小時的資料,比預訓練階段所需的資料少得多,就足以對機器人的特定任務效能進行微調。這使得即使是小眾應用領域的資料收集也變得實際可行。透過類似於 Paul Z. 和他的團隊展示的自動化後訓練方法,機器人可以自主收集資料,並在新環境中實現專精。例如,利用視覺模型(VM)提出任務和目標影像,機器人可以自主生成有用的資料,從而在收集資料的領域中實現 2 倍的效能提升。
π0的效果
讓我們看一個例子,疊衣服,這是一項複雜且精細的任務。衣服從籃子裡拿出來時皺成各種形狀,機器人必須處理它們遇到的每一種形狀。它將每件衣服鋪平,整齊地摺疊,並將摺疊好的衣物堆放在桌子的右上角。這個過程適用於各種衣物、不同的初始配置,甚至是移動機器人。偶爾,機器人會失敗,但它會堅持重試直到成功。
我們還測試了另一個與衣物相關的任務:從乾衣機中取出衣服。在這個任務中,機器人走近乾衣機,開啟門,並取出所有衣物。這個任務展示了預訓練的重要性。雖然後期訓練使用不到20小時的高質量資料,但預訓練包括了大量質量較低的衣物操作嘗試。這樣的廣泛預訓練有助於機器人從錯誤中恢復,因為衣物可能以不可預測的方式堆放。
為了評估機器人的恢復能力,我們故意引入干擾。例如,Michael在任務中途向桌子上扔了一件襯衫以干擾機器人。儘管機器人最初有些困惑,但很快決定將襯衫移到一邊,然後繼續正常摺疊。即使Michael多次干預,機器人仍能成功適應並回到任務中。這些示例突顯了機器人適應和恢復的能力,展示了預訓練在構建通用策略中的關鍵作用以及後期訓練在掌握特定任務中的重要性。
7. 關於機器人基礎模型的預訓練
現在,讓我們深入探討預訓練。許多人可能對類似 RT-x 專案中展示的預訓練概念很熟悉,該專案展示瞭如何使用來自多個機器人來源的資料進行預訓練。資料集的多樣性至關重要,因為它表明即使資料中存在相當大的變異性,也可以訓練出表現良好的模型。事實上,令人興奮的部分是,基於多樣化資料訓練出的通用模型可能比每個領域的專用模型表現更好。然而,早期工作的任務相對簡單,例如將胡蘿蔔放進鍋中或開啟抽屜,且研究中使用的機器人相對類似,通常是單臂機器人或配有末端執行器的平行夾持器。
我們正在探索如何透過結合更多樣化的資料來源來擴充套件這一方法,例如將移動機器人、移動操作器和機械臂的資料結合起來。這裡的關鍵問題是,當你組合這些多樣化的資料來源時,是否能實現正遷移。斯坦福大學的 Jonathan Yang 與加州大學伯克利分校的 K. Glossop 和 Archon Boar 合作的一項研究探討了導航資料是否能夠幫助操作任務。
實驗涉及不同型別的動作表示,包括用於 3D 運動跟蹤的腕部攝像頭。研究中,我們對不同資料組合的訓練資料集進行了比較。一種資料集僅使用操作資料,另一種將操作資料與多機器人的人行道導航資料(G&M 資料集)結合,還有一種加入了自動駕駛資料。結果表明,在不同的操作任務中,來自多個領域的資料組合提供了顯著的優勢。這表明來自移動機器人和自動駕駛汽車等多樣化資料來源可以顯著促進訓練更穩健和強大的機器人模型。
導航資料的加入(包括 G&M 資料集)以及進一步的駕駛資料改進尤其值得關注。你可能不會預期導航資料對操作任務有重大提升,但事實證明它確實有幫助。原因在於導航資料可以幫助機器人理解基本的幾何和物理原則,例如距離和物體大小之間的關係。例如,當靠近一個物體(比如草莓)時,物體看起來更大且更近,而這對於機器人試圖拾取物體時非常關鍵。這種跨形態學習使機器人能夠繼承基本的空間推理能力,這些能力適用於不同的機器人系統,即使機器人本身在物理結構上差異很大。
最近,我們進一步推動了這一想法,開發了可以處理更廣泛形態的模型。這些模型在諸如導航、操作甚至四足機器人腿部控制等多種任務上進行訓練。一個名為 CrossForer 的模型,由 Ria 和她的團隊開發,利用了一個大型 Transformer 網路,併為每種型別的機器人設計了獨立的輸出頭。這種方法使模型能夠從各種機器人型別的資料中學習,從移動操作器到四足機器人。結果令人印象深刻:CrossForer 的效能優於單一形態訓練的模型,並超越了早期方法。
8. 關於機器人基礎模型的監督微調與強化學習的微調
對於監督微調,你可能只需要數十小時的資料,而強化學習可能需要的時間更少。這是一個我們期待未來研究能夠進一步提升的領域,類似於語言模型在後訓練階段的快速進步。隨著社群對最佳化這一過程的關注,我們可能會在未來幾年看到機器人基礎模型的諸多突破。
微調資料量最小化的重要性在需要高魯棒性和效率的任務中尤為突出,例如 SERL 專案。透過強化學習(RL),該專案展示瞭如何透過真實世界訓練獲得高度精確且魯棒的行為,即使在複雜環境中,例如電子裝配。系統在短時間內取得顯著進步——僅需 30 分鐘的 RL 訓練即可在任務(例如將電纜插入卡扣中)中實現高成功率,而進一步的資料收集可將時間延長至兩小時,結果顯著優於模仿學習,即使兩者使用相同量的資料。
這些研究表明,結合真實世界預訓練和後訓練的機器人能夠高效地學習並微調複雜行為。這種自主資料收集和持續改進的方法不僅提高了效能,還使得部署機器人以較少的人類干預執行日益複雜的任務成為可能。隨著技術的不斷發展,這些方法將使機器人學習更具實用性和可擴充套件性,適用於廣泛的真實世界應用場景。
9. 強化學習(RL)+真機
我這裡想特別提到的一個話題是如何透過真實環境中的強化學習(RL)來改進機器人策略。目前,這一階段尚未引入視覺-語言-動作(VLA)模型,而是使用較小的模型進行訓練。然而,我相信在未來,將RL與VLA模型結合起來會釋放更快、更高效的策略的潛力。
HI-SERL主要由UC伯克利的Jianlan Luo和Charles Xu開發,集中於諸如電子裝配的任務。我們大約在一年前開始這一研究,開發了一種從少量演示(通常為15到30次)開始的高樣本效率的RL演算法,以最佳化真實環境中的訓練。這種方法使機器人能夠在短至30分鐘到兩小時的時間內學習諸如電子裝配的任務。對於簡單任務,僅需30分鐘就能實現非常成功的策略。事實上,僅用15分鐘,機器人就可以開始穩定地插入部件,例如晶片,而不會損壞像引腳這樣的精密部件。(關於真機+強化,可以參考對話羅劍嵐:強化學習+真機操作可以很Work)
影片顯示了完整的訓練過程
我們評估了多項任務,包括插入微晶片、佈線電纜和重新定位物體。為了比較,我們為模仿學習(IL)基線提供了與RL相同數量的資料——通常是30分鐘到兩小時,具體取決於任務。在某些情況下,我們甚至為IL提供了更多的演示以公平競爭。然而,RL始終取得了顯著更好的結果。這主要是因為這些任務需要高度精確的操作,而RL策略的迴圈時間也顯著更短,比IL快了兩到三倍。
現在,想象一下將這些RL方法與大型機器人基礎模型結合。這種整合可能會帶來更有效和更強大的解決方案。對於更復雜的任務,例如雙臂操作,我們將強化學習(RL)擴充套件到像組裝汽車儀表板這樣的挑戰。這項任務需要精確對齊和插入塑膠銷。訓練過程大約耗時兩小時,最終成功率達到100%。在訓練完成後,機器人能夠可靠地執行這項任務。
我們還探索了其他任務,包括使用鞭子移除積木(雖然實用性較低,但操作精巧)、組裝傳動帶(涉及可變形物體)、翻雞蛋以及組裝宜家傢俱。儘管機器人目前還無法使用螺絲刀,但它成功對齊了所有銷釘和元件。
強化學習策略的魯棒性也值得一提。例如,在組裝傳動帶的過程中,Charles故意干擾傳動帶,但機器人成功恢復。這些恢復能力並非源自預訓練,而是來自於RL策略本身,在訓練過程中經歷了多樣化的場景。如果未來將RL與預訓練結合,可能會產生更為強大的系統。
一個特別有趣的例子是主機板裝配任務,其中涉及多個電子元件的組裝。每個元件——例如RAM條、SATA驅動器和USB插頭——都是單獨訓練的策略,但這些策略被結合在一起,實現了無縫執行。我要求學生證明RL過程不會損壞電腦。裝配完成後,他們啟動了電腦,結果顯示它成功啟動,證明了該過程的可靠性。
10. Sergey talk總結
總的來說,我們看到機器人基礎模型的訓練方法正在向大型語言模型(LLM)的訓練方法靠攏。在LLM領域,有一個成熟的結構:透過大規模多樣化資料集的預訓練階段,使用靈活的架構處理這些資料,然後透過高質量的微調或強化學習進行後期訓練,使模型與人類偏好對齊。對於機器人,我們正在開發類似的訓練方法,包括多樣化的預訓練資料、專門設計的架構以處理這些多樣性,以及微調流程以專門化模型以適應具體任務。
目前的方法旨在將預訓練階段的所有知識濃縮到模型中,隨後進行後期訓練。這通常透過監督微調實現,但也可以採用例如鏈式思維推理的指令微調。展望未來,後期訓練可能還會利用強化學習。
有趣的是,我們正在形成一種用於機器人基礎模型的訓練配方,這與大型語言模型的訓練方式非常相似。然而,具體的組成部分——如資料、架構和微調方法——都針對機器人的獨特需求量身定製。
11. 一些問題
Q:是否可以將視覺-語言元件的預訓練和後訓練並行進行,而不是先完成視覺-語言的訓練再進行機器人任務的訓練?
A:從實際角度來看,我們在 Pi Zero 模型上沒有實施這一點,因為我們使用的是已經預訓練好的現成模型。然而,我懷疑並行進行兩種訓練會更有效。這可能幫助我們避免一些視覺-語言模型中可能出現的遺忘問題,同時還可以讓我們嘗試更適合機器人任務的後訓練方法。因此,我確實認為這是一個值得嘗試的好想法,儘管設定起來可能會更復雜,但總體而言絕對值得一試。
A:從實際角度來看,我們在 Pi Zero 模型上沒有實施這一點,因為我們使用的是已經預訓練好的現成模型。然而,我懷疑並行進行兩種訓練會更有效。這可能幫助我們避免一些視覺-語言模型中可能出現的遺忘問題,同時還可以讓我們嘗試更適合機器人任務的後訓練方法。因此,我確實認為這是一個值得嘗試的好想法,儘管設定起來可能會更復雜,但總體而言絕對值得一試。
Q:您提到資料過濾和清理是重要的。這種方法如何應用於機器人模型?
A:這是一個尚未完全解決的開放性問題。儘管研究方法和演算法是重要的討論主題,但實際上讓模型正常工作的關鍵挑戰通常集中在資料管理上。在這裡,我可以分享我們的方法。對於這個案例,預訓練階段的資料篩選比後訓練階段的要寬鬆得多。
A:這是一個尚未完全解決的開放性問題。儘管研究方法和演算法是重要的討論主題,但實際上讓模型正常工作的關鍵挑戰通常集中在資料管理上。在這裡,我可以分享我們的方法。對於這個案例,預訓練階段的資料篩選比後訓練階段的要寬鬆得多。
對於後訓練,你希望資料中操作員完成任務時表現良好——策略一致、有效率且沒有大的延遲或停頓。你需要選擇能很好展示任務的正確完成方式的資料。
而對於預訓練,重點不在於“完美”資料,而是廣覆蓋的資料集。事實上,包括一些錯誤資料可能會有所幫助——並不是為了教會機器人犯錯,而是為了讓它學習如何從錯誤中恢復。這種更廣泛的覆蓋可以幫助機器人學會如何處理多種狀態並從次優情境中恢復。
Q:是否可以透過強化規劃進一步加速後訓練過程,例如在訓練期間引入即時的人類反饋?
A:這是一個很好的想法。即時人類反饋能夠為強化學習過程提供重要的指導。在短時間內執行這些方法非常實際,因此讓人類監督訓練過程是可行的。這種監督可能顯著加速學習程序。雖然我們在研究中已經嘗試引入人類干預,但仍有改進演算法的空間,以更高效地利用這種方法。
A:這是一個很好的想法。即時人類反饋能夠為強化學習過程提供重要的指導。在短時間內執行這些方法非常實際,因此讓人類監督訓練過程是可行的。這種監督可能顯著加速學習程序。雖然我們在研究中已經嘗試引入人類干預,但仍有改進演算法的空間,以更高效地利用這種方法。
Q:您提到真實世界資料是最便宜的選擇。為什麼您認為它比例如精心策劃的資料集更便宜?同時,為什麼不直接用模擬資料完成預訓練階段?
A:在整體層面上,真實世界資料可以被認為是便宜的,儘管需要考慮隱私等實際問題。一旦這些問題得到解決,真實世界資料就像網路中的資料一樣,可以免費獲取。
這並不意味著我們應該完全放棄模擬資料。我猜測,在機器人領域,我們會面臨類似於計算機視覺領域的情況。儘管模擬資料有用,但真實世界資料的豐富性和可獲取性將使其成為主要焦點。
然而,在某些特定領域中,模擬資料可能是更好的選擇。例如,對於像火箭飛行這樣的任務,生成真實世界資料既困難又昂貴,因此模擬可能是首選。但對於模擬不是最自然或最高效的選項的領域,真實世界資料可能是更實際的解決方案。
12. 一些想法
最近也會有人問我,作為一個投資人,做這種前沿技術科普的目的是啥?更直白的,你採訪了一堆人,這波頭部的也沒投中哪個。雖然直接,但我覺得是很好的問題。最初我只是自己在學習這些東西,希望梳理出來,記錄形成習慣。但回過頭來看,我還堅持在做這件事情,並且有意放大的核心目的是:首先,我自己好奇,看不懂paper,需要導讀,內容本身可以形成閉環,我自己懂了,寫出來可以讓更多人懂,對這些前沿工作也是一種宣傳,對行業的發展有那麼一丟丟的微不足道的貢獻;其次,自媒體,其實也是某種程度的創業,創業的魅力在於你去推進一些事情的時候,未知的緣分會自動找上門來。有些事情的堅持,並不著眼於短期ROI。最近看了20VC,也更加鼓舞我堅持下去。
References:
the 1st Workshop on X-Embodiment Robot Learning workshop, CoRL 2024.
https://www.youtube.com/live/ELUMFpJCUS0?t=16866s
CoRL 2024 Workshop on Mastering Robot Manipulation in a World of Abundant Data.
https://www.youtube.com/live/GhwCIjEEBBs
原創不易,歡迎“點贊”“打賞”“在看”三連!
也歡迎加我微信交流!
