下一站,EmbodiedAI


MLNLP 

機器學習演算法與自然語言處理 

)社群是國內外知名自然語言處理社群,受眾覆蓋國內外NLP碩博生、高校老師以及企業研究人員。


社群的願景 是促進國內外自然語言處理,機器學習學術界、產業界和廣大愛好者之間的交流,特別是初學者同學們的進步。

轉載自 | 李rumor
作者 | rumor
卷友們好,我是rumor。
不知大家有沒有注意到(也可能是我敏感了),最近一些大機構不約而同地開始挖新坑了,兩個風向標DeepMind和OpenAI,先後釋出了Gato和VPT,期望除了影像和文字之外,預訓練模型也能夠與環境互動。
這個方向,叫Embodied AI(具象AI)。
與具象AI對立的詞是Internet AI[1],指透過網際網路上的資料進行學習,比如我們一直在做的CV、NLP。而Embodied AI是指從與環境的互動中學習。
NLP+CV+RL,這個組合大機率是通向終極目標的必經之路,但我沒想到這麼快就要來了。而且隨著預訓練的顛覆,這個坑變成了:
如何透過網際網路上豐富的多模態資料,訓練一個通用模型,可以根據指令在環境中執行各種任務。
上述是我自己給出的問題定義,其中有以下兩個難點:
  1. 如何提升學習效率:正如LeCun說的,透過與環境互動學習有很大風險,效率也低(正向獎勵太少),而透過觀察(observation),利用現有資料學習效率才更高,這樣也可以延續預訓練-精調/Prompt的正規化,把更多的知識遷移到下游
  2. 複雜的輸入輸出和環境:在最複雜的情況下,模型的輸入是多模態指令,輸出是可以在真實環境執行的動作。其實針對Embodied AI的評估有多種任務,比如Navigation、Manipulation、Instruction following,但指令是可以描述所有任務的,需要更高維的理解。同時,輸出的動作空間大小、環境是模擬的還是真實的,都會帶來不同的挑戰
以這兩個難點為軸,上半年一些機構的進展如下:
下面就從右下到左上的順序介紹一下這些工作。
P.S. 這些工作大部分都是我近幾個月在資訊流看到的,如有遺漏請留言我。
1
『SayCan、LM-Nav』
在今年4月份,Google Robotics團隊釋出了一篇SayCan的工作[2],輸入自然語言指令,讓機器人在真實的環境中執行任務。
Robotics的團隊還是比較偏RL的,作者的方法是搭建了一個Pipeline:
  1. 把指令變成Prompt,利用LM把指令分解成skill,這些skill都是提前用RL訓練好的(比如機械手拿起眼前的物體就是一個skill)
  2. 透過訓練好的價值函式,聯合LM給出skill的機率分佈,執行機率最大的
  3. 執行完第一個skill之後,再拼接成新的prompt生成第二個skill
作者雖然能夠在真實環境中執行任務,但在學習效率上還有待提高,每個skill都是單獨訓練的,只利用了訓練好的語言模型來減少學習成本。
隨後在7月初,這個團隊又推出了一篇LM-Nav的工作[3],更加fancy,給小車一個指令,告訴它往哪走,在哪兒拐,小車就能自己開過去。
不過作者拆解得也更加複雜,總共用了三個模型:
執行的流程是:
  1. VNM對環境進行建模
  2. LLM對命令進行拆解
  3. VLM對環境進行解析
  4. 把1和3結合起來,搜尋最佳路徑
  5. 用VNM執行
做Robotics的團隊還是很強的,做完了就真的能直接在現實裡跑起來,不過解決方案的效率離終極目標還有些距離。下面介紹的工作基本都是在虛擬環境中嘗試了。
2
『WebShop』
WebShop[4]是7月份普林斯頓剛出的工作,作者做了一個簡化版的電商APP,學習如何根據使用者需求去下單商品。真正放到亞馬遜上使用後成功率有27%,跟測試的28%很接近,不夠本事就都是「虛擬環境」,比起上篇工作的複雜度還是弱一些。
作者也是透過Pipeline方案實現的:
  1. 對於輸入的指令,用seq2seq模型生成搜尋query
  2. 因為動作空間比較有限,作者訓練了一個選擇模型,分別給每個動作進行打分得到S(o,a),從而取樣出下一步動作,如下圖
這份工作也是很好的嘗試,除了真實環境之外,與手機、電腦的互動佔據了我們生活中大部分時間,提效的第三方個性化工具也是有些發展前景的。
3
『Gato』
Gato[5]是DeepMind在5月份發表的工作,當時還是蠻刷屏的,如果說上面兩個工作都仍舊把Embodied AI拆解成多模態理解+RL模型執行,那Gato則是證明了一個模型就可以做所有事情。
作者讓一個自迴歸模型承擔所有,包括打遊戲(RL)、影像說明、聊天
不過在學習打遊戲時,是利用其他SOTA的強化模型直接生成的監督資料。
雖然在資料利用上沒有延續預訓練的正規化,但終於完成了由Pipeline到End2End的突破。
4
『VPT』
VPT[6]是OpenAI在6月底提出的工作,就是那個在「我的世界」裡玩的賊6的agent。
OpenAI延續了以往的風格,自迴歸 is all you need。
最粗暴的想法,就是輸入影像,預測下一幀,但下一幀影像怎麼對映成動作呢?
於是作者先訓練了一個反向模型IDM(inverse dynamics model),輸入雙向上下文影片,預測當前幀對應的鍵盤和滑鼠動作。訓練完了之後給8年長的影片進行標註,這樣監督資料就都有了。
於是延續老方法,自迴歸一把梭,訓出了一個LM,根據輸入的幀序列,預測未來的動作,就把遊戲給玩6了。
這個工作也把影像理解和動作預測結合到了一起,但輸入沒有指令,複雜程度還差一些。也可能是釋出的比較倉促,因為就在這篇工作的前6天,英偉達釋出了同樣以「我的世界」為基礎的MINEDOJO。
5
『MINEDOJO』
英偉達在6月中釋出的MINEDOJO[7]是我目前個人最喜歡的一篇工作,比起VPT它有兩個優點:
  1. 無監督,學習效率更高
  2. 指令作為輸入,更加複雜
英偉達更多的還是從RL的角度來思考解決方案,RL最重要的就是獎勵函式,它作為監督訊號,會影響模型的動作,從而決定是否能取樣到有效資料。
於是作者提出了MINECLIP模型,利用CLIP的思路進行預訓練,計算影片和文字指令的相似度,作為RL的獎勵值,有種生成器-判別器的感覺。
同時,相比起OpenAI整理的8年影片資料,英偉達收集了MineCraft相關的33年的影片、6k+維基百科、百萬級別的reddit討論,全部都開源出來了,真是太良心。
6
『總結』
最近業餘時間主要關注了一些Embodied AI的工作,同時也給了我其他啟發:如果說資料是演算法的天花板,那現在的瓶頸,比如推理、常識學習,原因可能在於現有資料的多樣性?
視覺、聽覺、觸覺都是我們認識世界的途徑之一,他們之間的聯絡也會讓我們加深理解,把模態疊加起來,讓模型不斷接近我們的現實世界,或許是突破單模態任務瓶頸的方法。
另外,這個方向也催生了另外一門生意,還記得靠模型和資料起家估值20億的HuggingFace嗎?到了Embodied AI時代,虛擬環境就是必需品了,OpenAI、英偉達、AllenAI都發布了他們的虛擬環境,能否滋生一個新的生態,未來可期。

參考資料

[1] A Survey of Embodied AI: From Simulators to Research Tasks: https://arxiv.org/abs/2103.04918v5
[2] Do As I Can, Not As I Say: Grounding Language in Robotic Affordances : https://arxiv.org/abs/2204.01691
[3] LM-Nav: Robotic Navigation with Large Pre-Trained Models of Language, Vision, and Action: https://arxiv.org/abs/2207.04429
[4] WebShop: Towards Scalable Real-World Web Interaction with Grounded Language Agents: https://arxiv.org/abs/2207.01206v1
[5] A Generalist Agent: https://arxiv.org/abs/2205.06175
[6] Video PreTraining (VPT): Learning to Act by Watching Unlabeled Online Videos: https://arxiv.org/abs/2206.11795
[7] MINEDOJO: Building Open-Ended Embodied Agents with Internet-Scale Knowledge: https://arxiv.org/abs/2206.08853v1
技術交流群邀請函
△長按新增小助手
掃描二維碼新增小助手微信
請備註:姓名-學校/公司-研究方向
(如:小張-哈工大-對話系統)
即可申請加入自然語言處理/Pytorch等技術交流群

關於我們

MLNLP社群  機器學習演算法與自然語言處理 ) 是由國內外自然語言處理學者聯合構建的民間學術社群,目前已經發展為國內外知名自然語言處理社群,旗下包括  萬人頂會交流群、AI臻選匯、AI英才匯  以及  AI學術匯  等知名品牌,旨在促進機器學習,自然語言處理學術界、產業界和廣大愛好者之間的進步。
社群可以為相關從業者的深造、就業及研究等方面提供開放交流平臺。歡迎大家關注和加入我們。

相關文章