天天看點

看一遍人類動作就能模仿,能了解語義的谷歌機器人登上無監督學習的新高度

[轉] https://www.leiphone.com/news/201707/0NtpVB06wFtGfWE6.html

機器學習能讓機器人學會複雜的技能,例如抓住把手打開門。然而學習這些技能需要先人工編寫一個獎勵函數,然後才能讓機器人開始優化它。相比之下,人類可以通過觀察别人的做法來了解任務的目标,或者隻是被告知目标是什麼,就可以完成任務。目前,谷歌期望通過教會機器人了解語義概念,以使得機器人能夠從人類的示範中學習動作,以及了解物體的語義概念,完成抓取動作。

以下為雷鋒網 AI 科技評論編譯的這篇谷歌部落格的部分内容。

問題的引入

人類與機器人不同,我們不需要編寫目标函數即可以完成許多複雜的任務。我們可以這樣做,是因為我們利用了自己對世界先驗知識:當我們看到有人切蘋果時,我們明白,目标是切出兩個蘋果片,不管它是什麼類型的蘋果,還是用什麼樣的工具來切蘋果。同樣,如果我們被告知拿起蘋果,我們明白我們要抓住特定的物體“蘋果”,而不是梨或者桃子,因為我們可以在環境中了解“蘋果”這個詞:我們知道這個詞的意思。

這些就是語義概念:例如切兩個蘋果切片為顯著事件,而“蘋果”這樣的詞就表示的物體類别。那麼我們可以教導機器人來了解語義概念,讓它們通過物體類别标簽或使用者提供的示例來實作簡單指令嗎?在這篇文章中,谷歌的研究者讨論了他們最近關于機器人學習的一些工作,它們結合了機器人自主收集的經驗和人工标注的資料,其中機器人的自主收集的資料很豐富,但缺乏人工提供的标注,而人工标注的資料能使機器人更好地了解語義。同時本文也描述了機器人如何使用它們的經驗來了解人工示範中的顯著事件,并且了解諸如“玩具”和“筆”之類的語義類别,以基于使用者指令拾取物體。

通過深度視覺特征了解人類示範

在第一組實驗中,研究者介紹了他們這篇論文中的内容:「Unsupervised Perceptual Rewards for Imitation Learning」。目标是使機器人能夠在隻看到少量未标注的人類示範的情況下,了解一個任務,比如打開一扇門。通過分析這些示範,機器人必須了解執行哪些語義方面顯著的事件能夠使任務成功,然後使用強化學習來執行這些顯著事件。

看一遍人類動作就能模仿,能了解語義的谷歌機器人登上無監督學習的新高度

左圖:人類示範    右圖:相應的機器人模拟

在非常小的資料集上使用無監督學習是機器學習中最具挑戰性的場景之一。為了使該方法可行,研究者使用了從ImageNet上進行圖像識别訓練的大型網絡的深度視覺特征。這種深度視覺特征對于語義概念是敏感的,能夠很好的提取語義概念,同時防止諸如外觀和照明等變量的幹擾。研究者使用這些功能來解釋使用者提供的示範,結果顯示從幾個示範中就可以以無監督的方式學習到獎勵函數,而無需額外訓練。

看一遍人類動作就能模仿,能了解語義的谷歌機器人登上無監督學習的新高度

在從觀察中學習到獎勵函數之後,研究者用它來引導機器人學習開門任務,隻使用圖像來評估獎勵函數。借助初始的動作示範,機器人有10%的時間能夠成功完成開門動作,而在機器人使用學習到的獎勵函數繼續學習之後,準确率則能夠提高到100%。

看一遍人類動作就能模仿,能了解語義的谷歌機器人登上無監督學習的新高度

學習過程

通過自我監督和模仿來模仿人的動作

在「Time-Contrastive Networks: Self-Supervised Learning from Multi-View Observation」這篇論文中,谷歌的研究者提出了一種從觀察中學習世界的新穎方法,并通過自我監督的姿态模拟實驗證明了該方法的可行性。該方法主要依靠的時間和空間的同時性進行監督:通過訓練區分視訊不同時期的幀,該方法學會将現實分解群組織成有用的抽象表示。

在例如姿态模拟的任務中,抽象表示的不同次元可能編碼了人或機器人身體的不同關節。研究者并沒有手動定義人與機器人關節之間的映射(這種映射通常由于人和機器人的生理差異而模糊不清),而是讓機器人以端到端的方式進行模仿學習。當模型同時接受人和機器人觀察的訓練時,即使沒有提供任何人與機器人的對應關系,模型也可以自然地發現兩者之間的對應關系。是以,該方法可以得到一種機器人,無需人與機器人之間的對應關系,即可模仿人的姿勢。

看一遍人類動作就能模仿,能了解語義的谷歌機器人登上無監督學習的新高度

機器人的自監督人類動作模拟

上面展示的多對一和高度非線性關節映射是端到端學習有點的有力證明。在這個例子中,人的上下運動涉及許多關節,而機器人隻需要一個關節。結果顯示機器人并沒有使用任何明确的人類姿态資訊,本身就發現了這種高度複雜的映射

通過物體語義類别進行抓取

上面的實驗展示了人類如何通過示範來制定機器人的目标,在這種情況下,機器人必須解釋任務的語義:顯著事件和姿勢的相關特征。如果不向機器人展示任務來制定目标,而是隻是通過告訴機器人要做什麼來制定目标,這該怎麼辦呢?這就需要機器人了解語義,以便識别世界中哪些物體與使用者指定的語義類别相對應。在End-to-End Learning of Semantic Grasping這篇文章中,谷歌的研究者研究了人類手工标注的資料和機器人自動收集的資料的組合如何用于執行語義抓取的任務,機器人必須從與箱子中拾取使用者指定物體,例如“橡皮擦”或“玩具”。

看一遍人類動作就能模仿,能了解語義的谷歌機器人登上無監督學習的新高度

為了學習如何執行語義抓取,機器人首先通過自主地嘗試拾取各種各樣的物體,收集一個大量的抓取資料集。該資料本身可以使機器人拾取物體,但并不能使機器人了解如何将物體與其語義标簽相關聯。為了能夠了解語義,研究者再次使用了适度的人工監督。每次機器人成功抓住一個物體,機器人會對該物體進行拍照,如下圖所示。

看一遍人類動作就能模仿,能了解語義的谷歌機器人登上無監督學習的新高度

然後,這些圖像的中的一部分由人工進行标注。由于呈現的圖像展示了物體在抓取姿态下的标準外觀,是以很容易通過在标注的圖檔上訓練分類器,将這些标簽傳遞給剩餘的未标注的圖像。然後标注過的表示圖像即可以告訴機器人實際拾取了哪個物體。在此後機器人從箱子拾取物體時,可以将抓取時觀察到的圖像與标簽聯系到一起。

使用這個标記的資料集,谷歌的研究者訓練了一個雙流模型,該模型以目前獲得的圖像和機器人将要采取的動作為條件,預測應該抓取哪個物體。研究者采用的雙流模型靈感來源于人類視覺皮層中觀察到的dorsal-ventral分解,其中ventral流負責推理物體語義類别,而dorsal流負責推理抓取的幾何結構。關鍵的是,ventral流可以包含由物體(不一定來自機器人)的标記圖像組成的輔助資料,而dorsal流可以包含不具有語義标簽的輔助資料,進而允許整個系統更有效地使用更大量的不同類别的标簽資料。以這種方式,可以将有限數量的人工标記與大量自動收集的機器人資料結合在一起,以便根據所需的語義類别來抓取對象,如下面的視訊所示:

https://youtu.be/WR5WUKXUQ8U

未來的工作:

實驗顯示了有限的人工标注語義标簽資料可以與由機器人自動收集和标記的資料相結合,以使機器人能夠了解顯著事件,物體類别以及使用者的示範。将來,機器人系統可以通過使用者标注的資料和不斷增加自主收集的資料集的組合進行訓練,提高機器人能力,并減輕設計自主機器人的工程負擔。此外,随着機器人系統在現實世界中收集越來越多的自動标記的資料,該資料不僅可以用于改進機器人系統,還可以用于改進計算機視覺,語音識别和自然語言處理系統等其他系統,這些系統都可以從這樣大的輔助資料中得到改進。

當然,這并不是研究者們第一次考慮機器人語義學。自然語言了解,機器人感覺,抓取和模仿學習等的廣泛研究工作已經考慮了如何在機器人系統中結合語義和行為,然而,谷歌的研究者在上面讨論的這些實驗可能指向未來在自主機器人系統結合自我監督和人工标注資料進行工作的一個可行方向。

緻謝:本文中的實驗由下列人員進行Pierre Sermanet, Kelvin Xu, Corey Lynch, Jasmine Hsu, Eric Jang, Sudheendra Vijayanarasimhan, Peter Pastor, Julian Ibarz, 以及 Sergey Levine。同時也感謝Mrinal Kalakrishnan, Ali Yahya, and Yevgen Chebotar 在開門任務中開發的學習架構,以及 John-Michael Burke在語義抓取實驗中進行的實驗設計。

想要進一步了解的讀者可以閱讀原文:Google Blog,或者閱讀文中所提到的論文:

Unsupervised Perceptual Rewards for Imitation Learning

Time-Contrastive Networks: Self-supervised Learning from Multi-View Observation

繼續閱讀