首頁 > 新聞 > 智能 > 正文

懶人福音!谷歌讓機器訓練機器,用大語言模型定制專屬于你的家務機器人

2023-05-22 13:25:12來源:ZAKER科技  

能根據你的喜好定制的家務機器人,來了!

想把深色衣服和淺色衣服分開洗?沒問題,機器人分分鐘就能幫你分好類:


(資料圖)

被垃圾分類的問題搞得焦頭爛額?沒關系,也交給機器人來做:總之,分類識別、定向放置……一切都憑你的習慣。

更關鍵的是,利用大語言模型,不需要大量數據,也無需場景化學習,幾句話就能輕松調教。

這款整理機器人名為 TidyBot,由谷歌與美國多所高校聯合打造,通訊作者來自普林斯頓大學。

讓機器訓練機器

對于物品整理機器人的定制,最難的一環就是用戶偏好的分析。

傳統上,這類信息需要通過海量的數據分析才能得到。

而 TidyBot 是使用 LLM 分析用戶喜好信息的。

用戶給出的具體實例,比如依據顏色將不同服飾分別放入衣柜和抽屜,會被轉換成 Python 風格的 LLM 提示信息。

objects = [ "yellow shirt", "dark purple shirt", "white socks", "black shirt" ]

receptacles = [ "drawer", "closet" ]

pick and place ( "yellow shirt", "drawer" )

pick and place ( "dark purple shirt", "closet" )

pick and place ( "white socks", "drawer" )

pick and place ( "black shirt", "closet" )

# Summary:

最后的概述是由 LLM 反饋的,具體到這個例子當中,LLM 生成了如下結論:

# Summary: Put light-colored clothes in the drawer and dark-colored clothes in the closet.

該結論在接下來的環節中會被用于判定未知物品應該被放到哪里,前一步的輸出結果在這里作為提示的開頭。

# Summary: Put light-colored clothes in the drawer and dark-colored clothes in the closet.

objects = [ "black socks", "white shirt", "navy socks", "beige shirt" ]

receptacles = [ "drawer", "closet" ]

pick and place ( "black socks",

然后,LLM 會輸出幾個新顏色襯衫和襪子的放置位置。

pick and place ( "black socks", "closet" )

pick and place ( "white shirt", "drawer" )

pick and place ( "navy socks", "closet" )

pick and place ( "beige shirt", "drawer" )

除了放置的位置,LLM 也能分析其他操作信息,比如是需要 " 放 " 還是 " 扔 "(下方 Summary 中的內容由 LLM 生成)。

objects = [ "yellow shirt", "dark purple shirt", "white socks", "black shirt" ]

pick and place ( "yellow shirt" )

pick and place ( "dark purple shirt" )

pick and toss ( "white socks" )

pick and place ( "black shirt" )

# Summary: Pick and place shirts, pick and toss socks.

同樣的,使用 LLM 總結出的信息可以判斷應對未知物體執行何種操作。

# Summary: Pick and place shirts, pick and toss socks.

objects = [ "black socks", "white shirt", "navy socks", "beige shirt" ]

# 以下為 LLM 輸出結果:

pick and toss ( "black socks" )

pick and place ( "white shirt" )

pick and toss ( "navy socks" )

pick and place ( "beige shirt" )

其他動作信息原理也都相同。

有了 LLM 給出的信息,接下來就要應用到實際工作中了。

TidyBot 的系統中預置了很多物品的分類標簽,LLM 指令的執行方式也已經由程序設定。

TidyBot 首先讓圖像識別模塊判斷出物品的基本信息,然后傳給 LLM 生成指令,并交付執行。

TidyBot 工作流程示意圖

由于只有極少量的數據需要進行區分,TidyBot 具有很強的魯棒性。

同時,它能對來自任意用戶的任何物品進行分類,又有很強的靈活性。

基準測試成績亮眼

除了 TidyBot 本身,測試基準數據集也是該團隊的另一重要貢獻。

該數據集包含了 96 組以文本形式描述的任務場景,具體包括已知和未知操作方式的物品和相應的容器。

在每個場景中,容器的數量為 2-5 個,已知操作方式的物品數量為 4-10 個,未知物品數量與已知相同。

這 96 個場景涵蓋了客廳、臥室、廚房和儲藏室四種房間類型,每個類型 24 組。

測試數據集節選,完整版可從 GitHub 中獲取

實際環境中,由于對物品分類的方式多種多樣,團隊分別從不同分類角度對 TidyBot 的表現進行了測試,具體包括:

物品大類,如 " 服裝 " 和 " 玩具 "

物品屬性,如 " 金屬材質 " 和 " 塑料材質 "

物品功能,如 " 夏裝 " 和 " 冬裝 "

物品子類,如 " 襯衫 " 和 " 其他服裝 "

復合類型,如 " 圖書和玩具 "

整體上,TidyBot 的準確率達到了 91.2%,超過了 WordNet、RoBERTa 等其他方式。

具體分類角度上的結果也是如此。上述數據只是在理論層面對 TidyBot 的分類能力進行測試。

在實際應用中,TidyBot 的表現同樣不俗。

團隊一共搭建了 8 個真實場景。

測試使用的真實場景

每個場景各包括 10 件物品、2-5 個容器和 4-10 條已知信息。

測試中使用的容器和未知物品

每個場景都進行了重復測試,最終各測試了 3 次,即一共 10*8*3=240 次操作。

在這 240 次操作中,TidyBot 的正確率達到了 85%。

最后,讓我們實際看一下 TidyBot 在測試中的表現吧。

位置及放置方式偏好:服裝→沙發,放;木塊→抽屜,放;易拉罐→垃圾桶,扔;水果→黑色箱子,扔;零食→塑料箱,扔

論文地址:

https://arxiv.org/abs/2305.05658

項目主頁:

https://tidybot.cs.princeton.edu/

GitHub 頁面:

https://github.com/jimmyyhwu/tidybot/

關鍵詞:

責任編輯:hnmd003

相關閱讀

相關閱讀

推薦閱讀