首頁  >  文章  >  科技週邊  >  與生成模型相比,為何機器人研究還在用幾年前的舊方法?

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

WBOY
WBOY轉載
2023-04-12 19:04:22838瀏覽

目前机器人领域取得了显著进展,这些进展预示着未来机器人可以做更多事情。但是也有让人困扰的事情,因为与生成模型相比,机器人的进展还是有点逊色,尤其是 GPT-3 等模型的出现,这一差距更加突出。

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

生成模型产生的结果好到令人震惊。如上图左侧是谷歌推出的 Imagen 的输出结果。你可以提供一段文字给它,如「一只仓鼠戴着橙色的小帽,手里拿着我爱 JAX 的纸片」,根据给定的文字,Imagen 会渲染出合理的图像。此外,谷歌还训练了一个大型语言模型 PaLM,可以用来解释为什么笑话很有趣等。他们用 TPUv4 等先进硬件训练模型,并且在计算机视觉领域,研究人员正在开发一些非常复杂的架构,如 Vision Transformers 等。

生成模型发展如此迅猛,与机器人技术相比,两者之间有什么联系呢?

本文中,来自挪威机器人公司「Halodi Robotics」的 AI 副总裁 Eric Jang 介绍了《我们如何让机器人更像生成模型?》。以下为文章主要内容。

作为一名机器人领域专家,生成模型领域的进展让人有点羡慕。因为在机器人领域中,大多数研究者可能仍在使用 ResNet18,这个已有 7 年历史的深度学习架构。我们当然不会像生成模型那样在巨大的数据集上训练模型,所以很少有机器人方面的研究工作成为「耀眼」的头条新闻。

我们知道莫拉维克悖论:相较于认知型任务,灵活的操纵机器人很困难,从直觉上看,让机器人拿起并运送物体这些操作,似乎没有把文字变成图像或解释笑话那么令人印象深刻。​

首先我们给生成模型下一个定义。生成模型不仅仅是渲染與生成模型相比,為何機器人研究還在用幾年前的舊方法?或生成大量的文本。它还是一个框架,我们可以用它来理解所有的概率机器学习。生成模型有两个核心问题:

1、你要建模的数据类别有多少 bits?

2、你能把模型建的多好?

2012 年 AlexNet 取得突破,它可以对 1000 个类别进行预测,Log2(1000 classes)大约是 10 class bit。你可以把 AlexNet 想象成基于图像的生成模型,包含 10bits 信息。如果你把建模任务的难度升级到 MS-CoCo 字幕任务,这时模型包含大约 100bits信息。如果你正在进行图像生成,例如使用 DALLE 或 Imagen 从文本到图像生成,大约包含 1000bits信息。​

通常对越多的类别进行建模,就需要越多的算力来计算其中蕴含的条件概率,这就是为什么随着类别的增多模型会变的庞大。当我们训练越来越大的模型时,就有可能利用数据中的特征,从而可以学习更丰富的结构。这就是为什么生成模型和自监督学习已经成为流行的方法,可以在不需要大量人工标签的情况下对大量的输入进行深度学习。​

Rich Sutton 在其文章《The Bitter Lesson》中指出:人工智能的大部分进展似乎都是在这股计算热潮中取得的,而其他方面几乎没有发展。Vision 算法、NLP 和 Yann LeCun 的 LeCake 等都受益于这股计算热潮。

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

这种趋势给我们什么启示?如果你有过渡参数化的模型,其能够处理更多数据,并且模型能够掌握网络中的所有特征,加上很强的算力和训练目标,深度学习几乎总是可行的。​

下面讓 DALL-E 2 產生一副圖像:一頭踏在巨浪上的騾子,這張圖展示了生成模型是如何借助計算熱潮取得不凡的成績。你手持強大的算力(transformer、Resnet 等),並且可以選擇 VQVAE、Diffusion、GAN、Autoregressive 等演算法來建模。目前每種演算法細節很重要,但未來一旦電腦的算力夠強大,這些細節可能就不重要了。但從長遠來看,模型規模和良好的架構是所有這些進步的基礎。

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

相較之下,下圖展示的是機器人領域中泛化研究的現況。目前很多機器人研究人員仍在進行的是小模型訓練,還沒用過 Vision Transformer! 與生成模型相比,為何機器人研究還在用幾年前的舊方法?

對於從事機器人研究的人來說,他們都希望機器人能更廣泛的應用在現實世界中,並且發揮更大的作用。在生成模型領域,研究者面臨的問題相對較少,而在機器人研究領域,經常遇到機器人部署困難、噪音數據等問題,這些從事生成模型的研究者都不會遇到。

接下來我們從三個不同的維度比較產生模型和機器人技術,這三個面向包括最佳化、評估和表達能力。

優化

首先讓我們來看一個簡單的生成模型:PixelRNN。 與生成模型相比,為何機器人研究還在用幾年前的舊方法?

從第一個像素的紅色通道開始(紅色通道的先驗機率是已知的),模型告訴 canvas(頂行)它要繪製的像素。 canvas 將完全按照指令繪製,因此它將像素值複製到 canvas 上,然後將 canvas 讀回模型中,以預測下一個通道即綠色通道。然後將 R、G canvas 上的值回饋給 RNN,依此類推,最終產生 RGBRGBRGB… 序列。

在實際的映像生成任務中,可以使用 diffusion 或 transformer。但為了簡單起見,我們只使用前向執行的 RNN。

現在讓我們將一般控制問題轉換為 PixelRNN。與生成影像不同的是,我們要產生 MDP(馬可夫決策過程):狀態、動作和獎勵的序列。我們希望產生 MDP,這個 MDP 對應於完成某些任務的智能體(如機器人)。這裡我們也是從先驗知識開始,模型對強化學習 (RL) 環境的初始狀態進行取樣。這是模型的第一個輸入,RNN 對第一個像素 (A) 進行取樣,canvas 完全按照指令的要求產生 A。但是,與生成圖像不同的是,canvas 總是將先前的RNN 輸出返回,現在的操作是接下來的兩個像素(R,S)由當前環境決定:即它接受動作和所有先前的狀態,並以某種方式計算R,S。

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

我們可以把RL 環境視為繪製物件(painter object),它執行RNN 動作,而不是直接在canvas 上繪製想要的內容,它會使用任意複雜的函數繪製像素。

如果我們將其與前面繪製影像的PixelRNN 進行對比,這個任務顯然更具挑戰,因為當你嘗試對想要的影像進行取樣,會有一個黑盒,這個黑盒子會對要繪製內容造成困難。

繪製過程中會碰到一個典型的問題:如果環境繪製了一個非預期內的狀態,就會有問題,即如何發出修正指令,以便可以回到我們嘗試繪製的圖像。此外,與影像生成不同,我們實際上必須按順序生成 MDP 影像,並且不能回溯進行編輯,這也帶來了最佳化挑戰。

如果想理解PPO 這樣的RL 方法是如何泛化的,我們應該在非控制環境下對其進行基準測試,將其應用於圖像生成技術,並將其與現代生成模型進行比較。 Hinton 和 Nair 在 2006 年的工作中,他們使用 springs 系統對 MNIST 數位合成進行建模。 DeepMind 使用 RL 方法複現這種影像合成的部分工作。

影像生成是研究最佳化和控制的很好的基準,因為它真正強調了在成千上萬個不同場景中進行泛化的必要性。

近期如 Decision Transformer、Trajectory Transformer 以及 Multi-Game Decision Transformer 表明,upside-down RL 技術在泛化方面做得很好。那麼 upside-down RL 技術與線上(PPO)或離線 RL 演算法(CQL)相比如何?其實要進行評估也很簡便,我們可以評估密度(專家完全觀察的似然模型)並驗證給定的 RL 演算法選擇是否可以在測量測試似然度時泛化到大量影像。

評估

如果想估量機器人在某些任務上的成功率,我們可以使用二項分佈。

二項分佈的變異數為 p(1−p)/N,p 為樣本平均值(估計的成功率); N 為試驗次數。在最壞的情況下,如果 p=50%(最大變異數),那麼需要 3000 個樣本才能使標準差小於 1%!

如果我們從電腦視覺的角度來看,0.1-1% 範圍內的提升是前進的重要驅動力。 ImageNet 目標識別問題,自 2012 年以來取得了很大進步,2012 到 2014 年的錯誤率降低了 3%,然後每年大約降低 1%,有很多人在研究如何使這項工作發揮作用。也許今年 (2022 年) 在基準提升上已經達到瓶頸,但在 2012-2018 年的這 7 年間,研究人員取得了許多進展和成果。

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

在生成建模的其他領域,研究人員一直在降低語言模型的複雜性,以及生成模型在圖像上的每維bit數(bits-per-dimension)。

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

#下面大致比較一下通用基準的評估速度。 2012 年 ImageNet 目標辨識測試集中有 150000 個影像。假設每個影像的推理速度為 10ms,並且每次是連續評估每個影像,這樣評估每個測試範例大約需要 25 分鐘(實際上評估速度要快得多,因為可以進行批次處理)。但這裡假設我們只有單一機器人進行評估操作,並且必須連續處理影像。

因為有海量影像,所以我們可以得到標準誤差估計在 0.1% 以內。事實上我們不需要 0.1% 的標準誤差才能在該領域取得進展,可能 1% 就夠了。

在評估複雜度方面,端到端的效能也是重要的一塊。下面我們來看看怎麼進行神經網路在模擬任務中的端到端效能評估。 Habitat Sim 是目前速度最快的模擬器之一,其設計目的是最大限度地減少神經網路推理和環境步進之間的開銷。模擬器可以每秒 10000 step,但由於神經網路的正向傳遞約為 10ms,該瓶頸導致每個 episode 的評估時間為 2 秒(假設典型的 navigation episode 為 200 step)。這比運行真正的機器人快得多,但比評估單一電腦視覺樣本慢得多。

如果要評估端到端的機器人系統,其多樣性程度與我們使用 ImageNet 所做的相似,普通的評估需要 1 週時間來處理數十萬個評估場景。這並不完全是合理的比較,因為每個 episode 實際上有 200 個左右的推理過程,但我們不能將單個 episode 內的圖像視為獨立的驗證集。如果沒有任何其它 episode 度量,我們只知道任務是否成功,因此 episode 內的所有推理只對二項式估計的單一樣本有貢獻。我們必須根據數萬個 episode 而不是圖片來估計成功率。當然,我們可以嘗試使用其他策略評估方法,但這些演算法還不夠可靠,無法開箱即用。

接下來階段,我們對真實機器人進行現場評估。在現實世界中每個 episode 大約需要 30 秒的時間進行評估,如果一個由 10 名操作員組成的團隊進行評估,每個操作員每天可以完成 300 個 episode,那麼每天可以進行大約 3000 次評估。

如果評估模型需要一整天的時間,這會對工作效率造成很大的限制,因為這樣每天只能嘗試一種想法。所以我們不能再研究那些將性能逐步提高 0.1% 的小想法,或是非常極端的想法。我們必須想辦法在效能上實現大飛躍。雖然這看起來不錯,但在實踐中很難做到。

當考慮機器人學習迭代過程時,很容易讓評估試驗的數量遠遠超過你的訓練資料!幾個月的不間斷評估產生了約數萬個 episode,這已經超過了大多數機器人深度學習演示資料集。

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

幾年前,研究人員仍在解決類似讓機械手臂開門的問題,但這些策略不能進行很好的泛化。研究人員通常按照 10 個 episode 左右的順序進行評估。但 10-50 次試驗其實不足以保證統計穩健性。為了取得良好的效果,實際可能要進行超過 1000 次試驗以進行最終評估。

但當進一步擴展試驗時會發生什麼事?假如我們最終需要訓練具有 O(100,000)種行為、極為通用的機器人系統,我們需要多少次試驗來評估這樣的通用系統?這裡的評估成本變得極為高昂。

這裡再強調一次:資料是足夠的,評估存在瓶頸!

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

如何加速評估?

以下介紹如何加快通用機器人系統評估的想法。

方法之一是分別對泛化問題和機器人進行研究。其實深度學習社群已經做到了這一點。大多數電腦視覺和生成建模研究人員不會直接在實際機器人上測試他們的想法,而是期盼一旦他們的模型獲得強大的泛化能力,那麼它將快速地遷移到機器人上。在電腦視覺領域開發的 ResNets 極大地簡化了許多機器人視覺運動建模選擇。想像一下,如果研究人員每次想嘗試不同的神經網路架構時都必須在真實的機器人上測試他們的想法!另一個成功案例是 CLIPort,它將圖像 - 文字模型強大的多模式泛化能力與用於抓取規劃的基本幾何推理解耦。

我們可以進一步將 R​​L 的技術堆疊分為「模擬玩具環境」、「模擬機器人」和「真實機器人」三層(按評估難度的增加順序排列)。

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

在金字塔的底層,是一般的基準,例如 Kaggle 競賽的基準。往上走,是一組「玩具控制問題」,以「裸機」的方式研究問題,只有模擬器和神經網路運行,所有與真實世界機器人相關的程式碼,如電池管理等都不存在。沿著金字塔再往上走,就來到更特定領域,與你試圖解決的問題更相關。例如“模擬機器人”和“真實機器人”可能用於相同的任務,並重複使用相同的底層機器人程式碼。模擬玩具環境可用於研究一般演算法,但與最終機器人領域重疊的較少。在「評估金字塔」的頂部,是我們試圖解決的真實機器人任務。直接迭代這個過程非常緩慢,因此我們都希望在這裡花費盡可能少的時間。我們希望,在較低層次上訓練和評估的基礎模型能夠幫助了解哪些想法有效,而不必在頂層進行每一次評估。

同樣,該領域已經以這種解藕的方式運作。大多數有興趣為機器人做出貢獻的人不一定會操控機器人。他們可能會訓練最終可能對機器人有用的視覺表示和架構。當然,去耦合的缺點是感知基準的改進並不總是對應於機器人能力的改進。例如正在改進語義分割或視訊分類準確性的 mAP 指標,甚至是無損壓縮基準(理論上最終應該有所貢獻),我們不知道表示目標的改進在實際上如何與下游任務的改進產生映射。所以最終必須在端到端系統上進行測試,以了解真正的瓶頸在哪裡。

Google 曾發表過一篇很酷的論文《Challenging Common Assumptions in Unsupervised Learning of Disentangled Representations》,他們證明了許多完全無監督的表示學習方法不會在下游任務中帶來顯著的效能改進,除非我們正在執行評估和選擇模型使用的是自己關心的最終下游標準。 與生成模型相比,為何機器人研究還在用幾年前的舊方法?

論文網址:https://arxiv.org/pdf/1811.12359.pdf

另一種降低評估成本的方法是確保資料收集和評估過程一致。我們可以同時收集評估數據和專家操作數據。我們可以透過一定的介入來收集 HG-dagger 數據,這樣就可以收集有用的訓練數據。同時,每個 episode 的平均幹預次數大致可以告訴我們策略是否夠好。我們也可以觀察標量指標,而不是二項式指標,因為這些指標的每個 episode 產生的資訊比單次成功 / 失敗更多。

使用RL 演算法進行自主資料收集是將評估和資料收集相結合的另一種方法,但該方法需要我們對episode 進行人工評分,或使用精心設計的獎勵函數。所有這些方法都需要在現實世界中部署大量機器人,這仍然會陷入在現實世界中不斷迭代的泥淖。

讓評估演算法更快的方法是改進 sim-to-real 的遷移演算法。我們可以並行模擬許多機器人,這樣就不會再受約束。 Mohi Khansari、Daniel Ho 和Yuqing Du 等人開發了一種被稱為“任務一致性損失(Task Consistency Loss)”的技術,該技術將來自sim 和real 的表示正則化為不變量,因此策略在sim和real 下的行為應該是類似的。當我們將 sim 中評估的策略遷移到 real 時,我們希望確保 sim 中的較高效能指標也確實對應於 real 中的較高效能指標。 sim2real 差距越小,就越可信任模擬實驗中的指標。

表達式

讓我們看看現代生成模型可以輸出多少位元。每通道 8 位元的 64x64x3 RGB 影像為 36864bits。語言模型可以產生任意數量的 tokens,但如果我們將輸出視窗固定為 2048 個 tokens,每個 token 有 17bits,總共 36793bits。因此,圖像和文字生成模型都可以合成大約 37kbits。隨著模型的表現力越來越強,人們對這些模型的感知會發生質的飛躍。甚至有人開始認為語言模型是部分有意識的,因為它們的表達能力太強大! 與生成模型相比,為何機器人研究還在用幾年前的舊方法?

#

相較之下,當下機器人的表達性如何?這裡我們設計一個簡化現實世界的環境,桌上有 6 個物品,機器人的任務是必須將一個物品移動到另一個物品的頂部或運送某幾個物品,總共 100 個任務。 log2(100)大約是 7 個 bits,也就是說「給定世界的狀態,機器人能夠將原子移動到 N 個狀態中的一個,其中 N 可以用 7bits 來描述」。 Google的 SayCan 演算法可以用一個神經網路完成大約 550 個操作任務,這在目前的機器人深度學習標準中是相當令人印象深刻的,總共只有大約 10 個 bits。

這種比較並不是完美合理的,因為資訊的定義在兩者之間是不同的,這裡只是提供一個粗略的直覺,當人們衡量一組任務與另一組任務的相對複雜性時,需要弄清楚什麼是重要的。

我們遇到的挑戰之一是機器人的功能仍然有限。如果你看一下 Ego4D 資料集,很多任務都需要雙手操作,但現在大多數機器人仍然使用帶有輪底座、單臂的移動機械手。他們無法移動不能去任何地方,顯然我們擁有的只是「機械手臂」,這排除了許多有趣的任務。 與生成模型相比,為何機器人研究還在用幾年前的舊方法?

我們需要研究更具表達性的機器人,但是機器人學習演算法的表現力是受硬體限制的。以下是機器人開門、打包行李箱、拉上拉鍊、給植物澆水、翻轉水瓶瓶蓋的畫面。隨著機器人硬體越來越接近真實的人類,在以人類為中心的世界裡,你可以做的事情的數量呈指數級增長。 與生成模型相比,為何機器人研究還在用幾年前的舊方法?

隨著機器人變得更具表達性,我們不僅需要網路規模的訓練數據,還需要網路規模的評估過程。如果你看一下大型語言模型 (LLMs) 的進展,現在有很多論文研究調優以及現有模型可以做什麼和不能做什麼。

例如,BigBench 的基準編譯了一系列任務,並詢問我們可以從這些模型中得到什麼。 OpenAI 會為網路使用者評估他們的 DALLE-2 和 GPT-3 模型。他們的工程和產品團隊可以從使用者參與的人工智慧試驗中學習,因為任何研究人員都很難掌握 LLMs 模型的細節。

最後向讀者提出問題,機器人領域中與 GPT-3 或 DALLE-2 API 等價的技術是什麼?透過這個等價技術,網路社群的研究人員可以對機器人研究進行質疑、並了解它到底可以做些什麼嗎?

最後用表格總結最佳化、評估和表達性之間的比較:

與生成模型相比,為何機器人研究還在用幾年前的舊方法?

以上是與生成模型相比,為何機器人研究還在用幾年前的舊方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除