自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

把大象裝冰箱總共要幾步?英偉達(dá)發(fā)布ProgPrompt,讓語(yǔ)言模型給機(jī)器人安排計(jì)劃

人工智能 新聞
一條命令,讓機(jī)器人幫你把大象裝冰箱里!

對(duì)于機(jī)器人來(lái)說(shuō),任務(wù)規(guī)劃(Task Planning)是一個(gè)繞不過(guò)去的難題。

想要完成一個(gè)真實(shí)世界的任務(wù),首先你得知道把大象裝冰箱總共要幾步。

即便是比較簡(jiǎn)單的扔蘋果任務(wù)也包含多個(gè)子步驟,機(jī)器人得先觀察蘋果的位置,如果沒(méi)有看到蘋果就要持續(xù)尋找,然后靠近蘋果,把蘋果抓起來(lái),找到并靠近垃圾桶。

如果垃圾桶關(guān)著的,還得先把它打開(kāi),然后再把蘋果扔進(jìn)去,關(guān)上垃圾桶。

但每個(gè)任務(wù)的具體實(shí)施細(xì)節(jié)不可能都由人來(lái)設(shè)計(jì),如何通過(guò)一句命令來(lái)生成動(dòng)作序列就成了難題。

命令生成序列?這不正是語(yǔ)言模型的工作么?

過(guò)去有研究人員使用大型語(yǔ)言模型(LLMs)根據(jù)輸入的任務(wù)指令對(duì)潛在的下一步行動(dòng)空間進(jìn)行評(píng)分,然后生成行動(dòng)序列。指令由自然語(yǔ)言進(jìn)行描述,不包含額外的領(lǐng)域信息。

但這類方法要么需要列舉所有可能的下一步行動(dòng)進(jìn)行評(píng)分,要么生成的文本在形式上沒(méi)有任何限制,其中可能包含在當(dāng)前環(huán)境下特定機(jī)器人不可能采取的行動(dòng)。

最近南加州大學(xué)和英偉達(dá)聯(lián)合推出了一個(gè)新模型ProgPrompt,同樣使用語(yǔ)言模型對(duì)輸入指令進(jìn)行任務(wù)規(guī)劃,其中包含了一個(gè)程序化的提示結(jié)構(gòu),使得生成的計(jì)劃在不同的環(huán)境、具有不同能力的機(jī)器人、不同的任務(wù)中都能發(fā)揮作用。

圖片

在保證任務(wù)的規(guī)范性上,研究人員采用生成python風(fēng)格代碼的形式來(lái)提示語(yǔ)言模型哪些動(dòng)作是可用的、環(huán)境中有哪些物體以及哪些程序是可執(zhí)行的。

比如輸入「扔蘋果」命令就可以生成如下程序。

圖片

ProgPrompt模型在虛擬家庭任務(wù)中達(dá)到了sota性能,研究人員還將該模型部署在一個(gè)用于桌面任務(wù)的物理機(jī)器人手臂上。

妙用語(yǔ)言模型

想要完成日常家庭任務(wù)(everyday household tasks)既需要對(duì)世界具有常識(shí)性理解,也需要當(dāng)前環(huán)境的情景知識(shí)。

為了創(chuàng)建一個(gè)「做晚飯」的任務(wù)計(jì)劃,智能體最起碼需要知道的常識(shí)包括:物體的功能,如爐子和微波爐可以用來(lái)加熱;行動(dòng)的邏輯順序,在添加食物之前必須先預(yù)熱烤箱;以及物體和行動(dòng)的任務(wù)相關(guān)性,例如加熱和尋找食材首先是與「晚飯」相關(guān)的行動(dòng)。

但如果沒(méi)有狀態(tài)反饋(state feedback),這種推理就無(wú)法進(jìn)行。

智能體需要知道當(dāng)前環(huán)境中哪里有食物,例如冰箱里是否有魚,或者冰箱里是否有雞肉。

在大型語(yǔ)料庫(kù)上訓(xùn)練的自回歸大型語(yǔ)言模型可以在輸入提示的條件下生成文本序列,具有顯著的多任務(wù)泛化能力。

比如輸入「做晚飯」,語(yǔ)言模型可以生成后續(xù)序列,如打開(kāi)冰箱、拿起雞肉、拿起蘇打水、關(guān)閉冰箱、打開(kāi)電燈開(kāi)關(guān)等。

生成的文本序列需要映射到智能體的行動(dòng)空間中,比如生成的指令是「伸手拿起一罐泡菜」,對(duì)應(yīng)的可執(zhí)行動(dòng)作可能就是「拿起罐子」,然后模型會(huì)計(jì)算出一個(gè)行動(dòng)的概率評(píng)分值。

但缺少環(huán)境反饋的情況下,如果冰箱里沒(méi)有雞肉,卻仍然選擇「拿起雞肉」行動(dòng),就會(huì)導(dǎo)致任務(wù)失敗,因?yàn)椤缸鐾盹垺共](méi)有包含任何關(guān)于世界狀態(tài)的信息。

ProgPrompt模型在任務(wù)規(guī)劃中巧妙地利用了編程語(yǔ)言結(jié)構(gòu),因?yàn)?span style="color: #ff6827;">現(xiàn)有的大規(guī)模語(yǔ)言模型通常都在編程教程和代碼文檔的語(yǔ)料中進(jìn)行過(guò)預(yù)訓(xùn)練

ProgPrompt為語(yǔ)言模型提供了一個(gè)Pythonic的程序頭部作為提示,導(dǎo)入了可用的動(dòng)作空間、預(yù)期參數(shù)和環(huán)境中可用的物體。

圖片

然后定義了諸如make_dinner, throw_away_banana等函數(shù),其主體是對(duì)物體進(jìn)行操作的動(dòng)作序列,然后通過(guò)斷言計(jì)劃的先決條件,例如在試圖打開(kāi)冰箱之前靠近冰箱,以及用恢復(fù)行動(dòng)來(lái)應(yīng)對(duì)斷言失敗的情況,以此納入環(huán)境的狀態(tài)反饋。

最重要的是,ProgPrompt程序中還包括了自然語(yǔ)言編寫的注釋,用以解釋行動(dòng)的目標(biāo),從而提高了生成的計(jì)劃程序執(zhí)行任務(wù)的成功率。

ProgPrompt

有了完整的想法,ProgPrompt的整體工作流程就清晰了,主要包括三部分Pythonic函數(shù)構(gòu)建、構(gòu)造編程語(yǔ)言提示任務(wù)計(jì)劃的生成和執(zhí)行。

圖片

1、將機(jī)器人計(jì)劃表述為Pythonic函數(shù)

計(jì)劃函數(shù)包括對(duì)動(dòng)作原語(yǔ)(action primitive)的API調(diào)用,總結(jié)動(dòng)作并添加注釋,以及跟蹤執(zhí)行的斷言。

每個(gè)動(dòng)作原語(yǔ)需要一個(gè)物體作為參數(shù),比如「把三文魚放進(jìn)微波爐」任務(wù)中,包括對(duì)find(salmon)的調(diào)用,其中find就是一個(gè)動(dòng)作原語(yǔ)。

圖片

利用代碼中的注釋來(lái)為后續(xù)的動(dòng)作序列提供自然語(yǔ)言的總結(jié),注釋有助于將高層次的任務(wù)分解成合乎邏輯的子任務(wù),即「抓取三文魚」和「把三文魚放進(jìn)微波爐」。

注釋也可以讓語(yǔ)言模型了解當(dāng)前的目標(biāo),減少不連貫、不一致或重復(fù)輸出的可能性,類似于思維鏈(chain of thought)生成中間結(jié)果。

斷言(assertions)提供了一個(gè)環(huán)境反饋機(jī)制,以確保前提條件成立,并在不成立時(shí)實(shí)現(xiàn)錯(cuò)誤恢復(fù),比如在抓取行動(dòng)之前,計(jì)劃斷言智能體已經(jīng)接近了三文魚,否則智能體需要先執(zhí)行find行動(dòng)。

2、構(gòu)造編程語(yǔ)言prompt

prompt需要向語(yǔ)言模型提供關(guān)于環(huán)境和主要行動(dòng)的信息,包括觀察、行動(dòng)原語(yǔ)、例子,并生成了一個(gè)Pythonic提示,供語(yǔ)言模型補(bǔ)全。

圖片

然后,語(yǔ)言模型將<next task>預(yù)測(cè)為一個(gè)可執(zhí)行的函數(shù),即microwave_salmon()

在微波爐三文魚這個(gè)任務(wù)中,LLM可以生成的且合理的第一步是取出三文魚,但負(fù)責(zé)執(zhí)行計(jì)劃的智能體可能沒(méi)有這樣一個(gè)動(dòng)作原語(yǔ)。

為了讓語(yǔ)言模型了解智能體的動(dòng)作原語(yǔ),將其在prompt中通過(guò)import語(yǔ)句導(dǎo)入,也就將輸出限制為在當(dāng)前環(huán)境下可用的函數(shù)上。

要改變智能體的行為空間,只需要更新import的函數(shù)列表即可。

變量objects以一個(gè)字符串列表的形式提供了環(huán)境中的所有可用物體

prompt還包括一些完全可執(zhí)行的程序計(jì)劃作為示例,每個(gè)示例任務(wù)都演示了如何使用給定環(huán)境中的可用動(dòng)作和目標(biāo)來(lái)完成一個(gè)給定的任務(wù),如throw_away_lime

3、任務(wù)計(jì)劃的生成和執(zhí)行

給定任務(wù)之后,計(jì)劃完全是由語(yǔ)言模型根據(jù)ProgPrompt提示推斷出來(lái)的,然后可以將生成的計(jì)劃在虛擬智能體或物理機(jī)器人系統(tǒng)上執(zhí)行,需要用到一個(gè)解釋器,針對(duì)環(huán)境執(zhí)行每個(gè)行動(dòng)命令。

在執(zhí)行過(guò)程中,斷言檢查以閉環(huán)的方式進(jìn)行,并根據(jù)當(dāng)前環(huán)境狀態(tài)提供反饋。

在實(shí)驗(yàn)部分,研究人員在虛擬家庭(VH)仿真平臺(tái)評(píng)估了該方法。

VH的狀態(tài)包括一組物體和相應(yīng)的屬性,比如三文魚在微波爐內(nèi)部(in),或者靠近(agent_close_to)等。

行動(dòng)空間包括抓?。╣rab)、放入(putin)、放回(putback)、行走(walk),尋找(find)、打開(kāi)(open)、關(guān)閉(close)等。

最終實(shí)驗(yàn)了3個(gè)VH環(huán)境,每個(gè)環(huán)境包括115種不同的物體,研究人員創(chuàng)建了一個(gè)包含70個(gè)家務(wù)任務(wù)的數(shù)據(jù)集,抽象程度很高,命令都是「微波三文魚」這類的,并為之創(chuàng)建一個(gè)ground-truth的行動(dòng)序列。

在虛擬家庭上對(duì)生成的程序進(jìn)行評(píng)估后,評(píng)估指標(biāo)包括成功率(SR),目標(biāo)條件召回(GCR)和可執(zhí)行性(Exec),從結(jié)果上可以看到ProgPrompt明顯優(yōu)于基線和LangPrompt,表格中還展示了每個(gè)特征是如何提升性能的。

圖片

研究人員同樣在真實(shí)世界進(jìn)行了實(shí)驗(yàn),使用一個(gè)帶有平行爪子的Franka-Emika熊貓機(jī)器人,并假設(shè)可以獲得一個(gè)拾取和放置(pick-and-place)的策略。

該策略將目標(biāo)物體和目標(biāo)容器的兩個(gè)點(diǎn)云作為輸入,并執(zhí)行拾取和放置操作,將物體放在容器上或里面。

系統(tǒng)實(shí)現(xiàn)引入一個(gè)開(kāi)放詞匯的物體檢測(cè)模型ViLD來(lái)識(shí)別和分割場(chǎng)景中的物體,并構(gòu)建prompt中的可用物體列表。

與在虛擬環(huán)境中不同的是,這里物體列表是每個(gè)計(jì)劃函數(shù)的局部變量,這樣可以更靈活地適應(yīng)新對(duì)象。

語(yǔ)言模型輸出的計(jì)劃中包含形式為grab和putin等函數(shù)調(diào)用。

由于現(xiàn)實(shí)世界的不確定性,實(shí)驗(yàn)設(shè)置中沒(méi)有實(shí)施基于斷言的閉環(huán)選項(xiàng)。

圖片

可以看到,機(jī)器人在分類任務(wù)中,能夠識(shí)別出香蕉和草莓是水果,并生成計(jì)劃步驟,將它們放在盤子里,而將瓶子放在盒子里。

責(zé)任編輯:張燕妮 來(lái)源: 新智元
相關(guān)推薦

2025-03-19 10:05:02

2024-12-30 14:10:00

英偉達(dá)AI機(jī)器人

2023-10-31 19:20:29

語(yǔ)言模型英偉達(dá)芯片

2024-08-22 18:58:27

英偉達(dá)微軟小語(yǔ)言模型

2023-02-27 15:36:37

2024-10-31 14:10:00

機(jī)器人神經(jīng)網(wǎng)絡(luò)

2024-11-25 08:20:00

2024-06-19 13:02:01

2022-04-18 14:29:57

人工智能強(qiáng)化學(xué)習(xí)機(jī)器人

2020-12-31 06:55:37

機(jī)器人自然語(yǔ)言人工智能

2023-02-10 15:12:34

特斯拉電動(dòng)汽車

2023-10-23 13:31:37

GPT-4語(yǔ)言模型

2024-12-19 14:44:22

2025-03-24 08:06:00

2020-09-14 14:32:06

AI機(jī)器人人工智能

2024-11-22 14:24:24

機(jī)器人AI

2023-05-23 09:56:14

機(jī)器人谷歌

2011-08-30 17:33:50

AndroidifyAndroid機(jī)器人游戲

2023-03-08 10:07:20

2020-02-25 16:58:40

機(jī)器人人工智能系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)