在開發機器人學習方法時,如果能整合大型多樣化資料集,再組合使用強大的富有表現力的模型(如Transformer),那麼就有望開發出具備泛化能力且廣泛適用的策略,從而讓機器人能學會很好地處理各種不同的任務。比方說,這些策略讓機器人遵從自然語言指令,執行多階段行為,適應各種不同環境和目標,甚至適用於不同的機器人型態。
但是,近期在機器人學習領域出現的強大模型都是使用監督學習方法訓練得到的。因此,所得策略的性能表現受限於人類演示者提供高品質演示數據的程度。這種限制的原因有二。
從原理上看,強化學習能同時提供這兩種能力。
近期出現了一些具有潛力的進展,顯示大規模機器人強化學習在多種應用場景中能夠取得成功,例如機器人的抓取和堆疊能力、學習具有人類指定獎勵的不同任務、學習多任務策略、學習基於目標的策略以及機器人導航。然而,研究表明,如果使用強化學習來訓練Transformer等強大的模型,則更難有效地進行大規模實例化
Google DeepMind 最近提出了Q-Transformer,旨在將基於多樣化真實世界資料集的大規模機器人學習與基於強大Transformer 的現代策略架構結合起來
#儘管從原理來看,直接使用Transformer來取代現有的架構(如ResNets或更小的捲積神經網路)在概念上很簡單,但設計一個能有效利用這種架構的方案卻非常困難。只有在能夠使用大規模多樣化的資料集時,大型模型才能發揮其效力-小規模、範圍狹窄的模型並不需要這種能力,也無法從中獲益
儘管之前有研究透過模擬資料來創建這樣的資料集,但最具代表性的資料還是來自真實世界。
因此,DeepMind 表示,該研究的重點是透過離線強化學習利用Transformer 並整合先前收集的大型資料集
##離線強化學習方法是利用先前已有的資料進行訓練,其目標是根據給定的資料集推導出最有效的可能策略。當然,也可以利用額外自動收集的資料來增強這個資料集,但訓練過程與資料收集過程是分開的,這為大規模機器人應用提供了一個額外的工作流程
在使用Transformer 模型來實現強化學習方面,另一個主要問題是設計一個可以有效訓練這種模型的強化學習系統。有效的離線強化學習方法通常是透過時間差更新來進行 Q 函數估計。由於 Transformer 建模的是離散的 token 序列,所以可以將 Q 函數估計問題轉換成離散 token 序列建模問題,並為序列中的每個 token 設計一個合適的損失函數。
DeepMind 所採用的方法是依維度離散化方案,這是為了避免動作基數呈指數爆炸。具體而言,動作空間的每個維度都被視為強化學習中的獨立時間步驟。離散化中的不同 bin 對應於不同的動作。這個以維度離散化的方案使得我們可以使用具有一個保守的正則化器的簡單離散動作Q 學習方法來處理分佈轉變情況
DeepMind 提出了一種專門的正則化器,其旨在最小化未被使用動作的值。研究表明,這種方法可以有效地學習範圍狹窄的類似演示的數據,並且也可以學習具有探索噪聲的範圍更廣的數據
最後,他們也採用了一種混合更新機制,將蒙特卡羅和 n 步驟返回與時間差備份(temporal difference backups)組合到了一起。結果顯示這種做法能提升基於 Transformer 的離線強化學習方法在大規模機器人學習問題上的表現。
這項研究的主要貢獻是Q-Transformer,它是一種基於Transformer架構的機器人離線強化學習的方法。 Q-Transformer對Q值進行了按維度的token化,並且已經成功應用於大規模多樣化的機器人資料集,包括真實世界資料。圖1展示了Q-Transformer的元件
#DeepMind 進行了實驗評估,包括模擬實驗和大規模真實世界實驗,旨在嚴格比較和實際驗證。其中,我們採用了大規模的基於文字的多任務策略進行學習,並驗證了Q-Transformer 的有效性
在真實世界實驗中,他們使用的資料集包含3.8 萬個成功演示和2 萬個失敗的自動收集的場景,這些數據是透過13 台機器人在700 多個任務上收集的。 Q-Transformer 的表現優於先前提出的大規模機器人強化學習的架構,以及先前提出的 Decision Transformer 等基於 Transformer 的模型。
為了使用Transformer進行Q學習,DeepMind採取的方法是將動作空間離散化與自迴歸處理
要學習一個使用TD學習的Q函數,經典方法是基於貝爾曼更新規則
研究者對貝爾曼更新進行了修改,使其能為每個動作維度執行,做法是將問題的原始MDP 轉換成每個動作維度都被視為Q 學習的一個步驟的MDP。
具體而言,對於給定的動作維度d_A,新的貝爾曼更新規則可以表述為:
這意味著對於每個中間動作維度,要在給定相同狀態的情況下最大化下一個動作維度,而對於最後一個動作維度,使用下一狀態的第一個動作維度。這種分解能確保貝爾曼更新中的最大化仍然易於處理,同時也能確保原始 MDP 問題仍可解決。
為了兼顧離線學習過程中的分佈變化情況,DeepMind 也引進了一種簡單的正規化技術,其是將未曾見過的動作的值降到最低。
為了加快學習速度,他們也採用了蒙特卡羅返回方法。這種方法不僅使用了對於給定事件片段(episode)的返回即用(return-to-go),還使用了可跳過按維度最大化的n 步返回(n-step returns)
在實驗中,DeepMind對Q-Transformer進行了評估,涵蓋了一系列真實世界任務。同時,他們也將每個任務的資料限制在只包含100個人類別演示的範圍內
在演示中,除了演示之外,他們還添加了自動收集的失敗事件片段,以建立一個資料集。這個資料集包含了來自示範的3.8萬個正例和2萬個自動收集的負例
相比于 RT-1、IQL 和 Decision Transformer (DT) 等基准方法,Q-Transformer 可以有效地利用自动事件片段来显著提升其使用技能的能力,这些技能包括从抽屉里取放物品、将物体移动到目标附近、开关抽屉。
研究者还在一个高难度的模拟取物任务上对新提出的方法进行了测试 —— 在该任务中,仅有约 8% 的数据是正例,其余的都是充满噪声的负例。
在这个任务中,Q-学习方法如QT-Opt、IQL、AW-Opt和Q-Transformer通常表现更好,因为它们能够利用动态规划来学习策略,并利用负例进行优化
基于这个取物任务,研究者进行了消融实验,结果发现保守的正则化器和 MC 返回都对保持性能很重要。如果切换成 Softmax 正则化器,性能表现显著更差,因为这会将策略过于限制在数据分布中。这说明 DeepMind 这里选择的正则化器能更好地应对这个任务。
他们对于n步返回的消融实验发现,尽管这可能会引入偏差,但这种方法可以在显著更少的梯度步骤内实现同等的高性能,有效地处理许多问题
研究人员还尝试在更大规模的数据集上运行Q-Transformer。他们将正例数量扩大到11.5万,负例数量增至18.5万,从而得到一个包含30万个事件片段的数据集。使用这个大型数据集,Q-Transformer仍然能够学习,并且甚至比RT-1 BC基准表现更好
最后,他们将Q-Transformer训练的Q函数作为可供性模型(affordance model)与语言规划器组合在一起,类似于SayCan
Q-Transformer 可供性估计的效果由于之前的使用 QT-Opt 训练的 Q 函数;如果再将未被采样的任务重新标注为训练期间当前任务的负例,效果还能更好。由于 Q-Transformer 不需要 QT-Opt 训练使用的模拟到真实(sim-to-real)训练,因此如果缺乏合适的模拟,那么使用 Q-Transformer 会更容易。
为了测试完整的「规划 执行」系统,他们实验了使用 Q-Transformer 同时进行可供性估计和实际策略执行,结果表明它优于之前的 QT-Opt 和 RT-1 组合。
从给定图像的任务可供性值示例中可以观察到,Q-Transformer 在下游的「规划 执行」框架中能够提供高质量的可供性值
请阅读原文以获取更多详细内容
以上是GoogleDeepMind:將大模型與強化學習結合,打造機器人感知世界的智慧大腦的詳細內容。更多資訊請關注PHP中文網其他相關文章!