聚精會神,緊盯電腦屏幕上的一支機械臂,捧著手機:移動、下降、抓住,抬起!
別誤會,這位小姐姐并不是在遠(yuǎn)程抓娃娃,而是在為機器人創(chuàng)造學(xué)習(xí)資料。
在她和她的同道中人教育下,你將看到會端鍋、會堆積木、會把螺絲螺帽組裝在一起、甚至還會分揀物品的機器人。
從“抓娃娃”,到機器人學(xué)會種種技能,這兩件看起來毫無關(guān)系的事情之間,斯坦福大學(xué)計算機視覺與學(xué)習(xí)實驗室的一個團(tuán)隊正在用兩項研究搭建橋梁。而帶領(lǐng)這個團(tuán)隊的,正是最近從Google回到斯坦福教學(xué)崗位的李飛飛和她的丈夫?Silvio Savarese。
我們先來看第一項研究,也就是這個“抓娃娃”的系統(tǒng)。
前面看到的“抓娃娃”平臺,名叫RoboTurk?,F(xiàn)在,人類已經(jīng)用它已經(jīng)為機器人生產(chǎn)了137.5小時的教學(xué)視頻,演示了3224次抓取、組裝物品的動作。其中,有1071次成功的抓取,1147次成功的組裝。
聽起來很多?其實做起來并不難,生產(chǎn)這么多的教學(xué)資料,總共只用了22小時。
李飛飛團(tuán)隊說,這是因為他們的RoboTurk,本來就是個快速眾包制造大規(guī)模機器人控制數(shù)據(jù)集的利器。
RoboTurk到底怎么用呢?
這個平臺的一端,是要訓(xùn)練機器人的科學(xué)家們。他們根據(jù)自己的研究目的,用物理模擬器來創(chuàng)建任務(wù),部署到云端,就可以在世界各地征集人類、創(chuàng)造數(shù)據(jù)集了。
李飛飛的團(tuán)隊甚至在設(shè)計、測試這個平臺的時候就已經(jīng)幫你親測過了:他們把機器人模擬器放在北京的服務(wù)器上,然后在太平洋對岸的加利福尼亞的實驗室里,通過RoboTurk來控制它們。
平臺的另一端,是為機器人創(chuàng)造教學(xué)資料的人類們。
這些人類,需要一只iPhone(6s及以后的機型)和一臺裝了瀏覽器、能上網(wǎng)的電腦。
打開手機上的RoboTurk App,輸入網(wǎng)頁上顯示的ID,就可以用手機控制云端環(huán)境里相應(yīng)的機器人了,在電腦上的瀏覽器里看到實時反饋的視頻。
這些演示過程,都會存儲在云端,供科學(xué)家們用來訓(xùn)練強化學(xué)習(xí)算法,訓(xùn)練成功后,就可以部署這些算法,讓它們?nèi)タ刂茩C器人了。
這個團(tuán)隊自己,就用MoJoCo模擬器創(chuàng)建了兩個環(huán)境:
一個訓(xùn)練機器人學(xué)分揀(picking),把桌上的物體抓起放到旁邊不同的小盒子里;另一個讓機器人學(xué)組裝(assembly),把螺帽放到正確的螺栓上。
看完這些介紹和例子,可不要對RoboTurk有什么誤會。它并不是只能控制MoJoCo模擬出來的機器人,其他模擬器、環(huán)境,也同樣可以用,甚至……
真正的實體機器人,也完全沒問題。
這些大費周章的抓娃娃式訓(xùn)練,究竟是為了什么呢?當(dāng)然是為了讓機器人更快學(xué)會更多新技能。
想讓機器人學(xué)會抓取、組裝物品,模仿人類是種不錯的方法,這種方法叫“模仿學(xué)習(xí)”(Imitation learning),在最近機器人研究中越來越常見。
但是,這種方法有一種天生的局限:它和AI學(xué)會給圖像分類一樣,也需要很多標(biāo)注好的數(shù)據(jù)。
AI研究的不少子領(lǐng)域都有很充足的數(shù)據(jù):圖像識別領(lǐng)域有ImageNet,目標(biāo)檢測有COCO,機器問答有SQuAD。這幾個領(lǐng)域的發(fā)展,都離不開這些數(shù)據(jù)集的滋潤。
而機器人控制……卻沒有類似的大規(guī)模數(shù)據(jù)集,實驗室要想研究模仿學(xué)習(xí),只能自己零零星星地去收集數(shù)據(jù)。RoboTurk平臺,就是為了讓科學(xué)家們更快收集數(shù)據(jù)而生。
發(fā)布平臺的同時,李飛飛夫婦的團(tuán)隊還發(fā)布了一個RoboTurk數(shù)據(jù)集,就是我們前面提到的137.5小時的教學(xué)視頻。
雖然規(guī)模稍小,但也稱得上機器人界ImageNet的雛形了。
有了“機器人界的ImageNet”之后,想要快速訓(xùn)練出厲害的機器人,算法本身也得學(xué)得快才行。
所以,還是飛飛實驗室,又開源了分布式強化學(xué)習(xí)訓(xùn)練框架SURREAL,用來加速學(xué)習(xí)過程。
訓(xùn)練成果很豐盛,機械臂用兩個手指,就可以執(zhí)行各種操作:
第一,撿起一個方塊,這是最基礎(chǔ)的操作。
動了位置,機械臂也能速速跟過去。
第二,增加一點難度,疊羅漢。
它學(xué)會了,用手里的紅方塊,來調(diào)整底座綠方塊的位置,然后更加穩(wěn)妥地把紅方塊放上去。
第三,把不同質(zhì)地的多個重物,分別放入所屬的格子。
紅色易拉罐,藍(lán)色紙盒,白色利樂包,黃褐色的 (可能是) 面包。對號入座,不會放錯。
下面,是雙手技能的展示時間。
兩只機械臂要各自完成不同的動作,互相配合,并不簡單。
第一項任務(wù),插入,插入 (上圖) 。
第二項任務(wù),按形狀插入。
目前,這還不是雙手技能,但也可以進(jìn)化成雙手技能。
正方形的插孔,對應(yīng)正方形的柱子;圓形插孔對應(yīng)圓柱。
只有物理性質(zhì)匹配,才能獲得更加長久的幸福。
除此之外,生活也少不了柴米油鹽。至少,先把鍋端起來。
熟練的操作,當(dāng)然不是與生俱來。
就像嬰兒學(xué)步,日復(fù)一日,愈發(fā)矯健。
回過頭去,看看訓(xùn)練之初的機器人,雙手幾乎沒有一絲協(xié)調(diào)性。
五個多小時后,插入操作已經(jīng)毫無壓力,孺子可教。
團(tuán)隊還發(fā)現(xiàn),用SURREAL框架搭配上文的RoboTurk數(shù)據(jù)集服用,讓人類教練來“手把手”訓(xùn)練機器人,療效要比不經(jīng)人類調(diào)教的AI好得多:
果然,沒有看過人類演示的AI (左) ,雖然能找到鍋的兩個把手,但還是提不起來。
有了人類教練的指點 (右) ,端起鍋來就不難了。
那么看一下,這個能夠高效訓(xùn)練技能的框架SURREAL,長什么樣子:
SURREAL框架,把一個分布式RL算法,分解成四個部分?(圖中由左向右) :
一是演員 (Actors) ,負(fù)責(zé)生成經(jīng)驗;
二是緩沖池 (Buffer) ,負(fù)責(zé)儲存經(jīng)驗;
三是學(xué)習(xí)者 (Learner) ,根據(jù)經(jīng)驗來更新參數(shù);
四是參數(shù)服務(wù)器 (Parameter Server) ,負(fù)責(zé)儲存參數(shù)。
演員部分,是多個演員是并行?(Parallel) 的,16個,32個,64個……都可以。
這樣一來,AI可用的數(shù)據(jù)量,能夠猛烈增長。
把數(shù)據(jù)生成和學(xué)習(xí)過程分開,不需要全局同步?(Global Synchronization) 了,可擴展性?(Scalability) 也就增強了。
另外,框架支持在線 (On-Policy) 和離線 (Off-Policy) 兩種策略更新方式。
團(tuán)隊說,系統(tǒng)可以直接部署在云端或者PC端 (如谷歌云、AWS、Azure) ,輕而易舉,只需4層:
第一層,從配置器 (Provisioner) 開始,保障各個云平臺的可復(fù)現(xiàn)性。
第二層,編配 (Orchestrator) ,用一個完善的云API來分配CPU/GPU資源,復(fù)制網(wǎng)絡(luò)。
第三層,協(xié)議 (Protocal) 實現(xiàn)了高效的通信指令。
第四層,就是算法,用PyTorch實現(xiàn)的。
這兩項研究背后,都是李飛飛夫婦的計算機視覺與學(xué)習(xí)實驗室(SVL Lab)。眾包平臺RoboTurk,由他們的博士生Ajay Mandlekar主導(dǎo);
而SURREAL項目,共同一作是兩位博士生Linxi Fan和Yuke Zhu。
關(guān)于Ajay同學(xué),網(wǎng)絡(luò)上資料并不多。不過,Linxi Fan和Yuke Zhu兩位同學(xué)就足夠大家學(xué)(mo)習(xí)(bai)了。
他們現(xiàn)在分別已經(jīng)讀到了博士的第三年和第四年,都積累了非常豐富的實習(xí)經(jīng)歷。
我們先來看看Linxi Fan同學(xué):
讀博第三年的他,2017年暑假在Google實習(xí),跟著李飛飛、李佳和研究院Mei Han等人,研究神經(jīng)架構(gòu)和超參數(shù)的元學(xué)習(xí)。
之前,他還在參與過斯坦福NLP組、OpenAI、Yoshua Bengio帶領(lǐng)的MILA、百度AI實驗室、王弢和吳恩達(dá)帶領(lǐng)的斯坦福自動駕駛項目等等。
在他的主頁,你會看到更多勤奮的履歷:
http://jimfan.me/
而Yuke Zhu,2017年暑假在DeepMind實習(xí),之前的實習(xí)路程經(jīng)過了艾倫人工智能研究院(AI2)、Snap、Twitter等等公司。
他們的實驗室,除了上面兩個項目之外,還有訓(xùn)練機器人在人群之中穿梭的JACKRABBOT,想訓(xùn)練AI從視頻中識別人類行為的大規(guī)模數(shù)據(jù)集ACTIVITYNET等等研究。這些研究背后,是這樣一群人類:
最后,量子位當(dāng)然會為愛學(xué)習(xí)的朋友們送上這些研究的傳送門,請收好~
眾包平臺RoboTurk:
主頁?https://crowdncloud.ai/
論文 RoboTurk: A Crowdsourcing Platform for Robotic Skill Learning through Imitation
http://vision.stanford.edu/pdf/mandlekar2018corl.pdf
加速訓(xùn)練的SURREAL:
主頁?https://surreal.stanford.edu/
論文 SURREAL: Open-Source Reinforcement Learning Framework and Robot Manipulation Benchmark
https://surreal.stanford.edu/img/surreal-corl2018.pdf
這兩項研究的論文,都發(fā)表在馬上要在蘇黎世進(jìn)行的CoRL 2018大會上。
這個大會的全稱是機器人學(xué)習(xí)大會(Conference on Robot Learning),由UC Berkrley、Google、微軟、CMU、MIT等頂尖研究機構(gòu)發(fā)起,Google、DeepMind、瑞士科研基金會(SNF)、Facebook、博世等贊助,自誕生起就被學(xué)界寄予厚望,今年是第二屆。
在這里,你可以看到更多有趣的機器人研究項目:
http://www.robot-learning.org/home/program#schedule
Enjoy~
—?完?—