您現(xiàn)在的位置是:首頁 >人工智能 > 2021-04-23 16:49:22 來源:
模擬是智能機(jī)器人的關(guān)鍵
我讀了Danny Vena 撰寫的題為“ 游戲掌握人工智能系統(tǒng)教學(xué)的關(guān)鍵”的文章,其中作者指出,像Minecraft,Civilization和Grand Theft Auto這樣的計(jì)算機(jī)游戲已用于培訓(xùn)智能系統(tǒng),以便在視覺學(xué)習(xí)中表現(xiàn)更好,理解語言,與人類合作。作者得出結(jié)論,在不久的將來,游戲?qū)⒊蔀槿斯ぶ悄茴I(lǐng)域的關(guān)鍵因素。他幾乎是對的。
在我看來,這篇文章只是通過談?wù)撚螒騺碛|及人工智能的表面。游戲一直是產(chǎn)生優(yōu)于人類的智能系統(tǒng)的良好起點(diǎn),但是深入了解在人類環(huán)境中有用的機(jī)器人領(lǐng)域?qū)⑿枰扔螒蚋鼜?fù)雜的東西。而我在談?wù)撃M。
使用游戲來引導(dǎo)智能
自人類智能誕生以來,人們在游戲中擊敗人類的想法一直存在。最初,研究人員在Tic Tac Toe和Chess創(chuàng)建了擊敗人類的程序(例如,IBM的 DeepBlue)。然而,這些游戲的智能是由人類頭腦從頭開始編程的。有人在編寫代碼,決定哪一步應(yīng)該是下一步。然而,生成智能的手動方法達(dá)到了極限:智能非常復(fù)雜,我們意識到手動編寫模擬它的程序可能太困難了。
然后,一個(gè)新的想法誕生了:如果我們創(chuàng)建一個(gè)自學(xué)的系統(tǒng)怎么辦?在這種情況下,工程師只需要對學(xué)習(xí)結(jié)構(gòu)進(jìn)行編程并設(shè)置適當(dāng)?shù)沫h(huán)境以允許智能自行引導(dǎo)。
這個(gè)想法的結(jié)果是學(xué)習(xí)比世界上任何人都更好地玩游戲的程序,即使沒有人首先解釋程序如何玩。例如,Google的DeepMind公司創(chuàng)建的 AlphaGo Zero計(jì)劃 使用了這種方法。該計(jì)劃能夠擊敗世界上最優(yōu)秀的Go球員。該公司使用相同的方法來創(chuàng)建學(xué)習(xí)玩Atari游戲的程序,從零知識開始。最近,OpenAI將這種方法用于他們的機(jī)器人程序,該程序擊敗了Dota 2游戲的專業(yè)玩家。順便說一句,如果你想重現(xiàn)Atari游戲的結(jié)果,OpenAI發(fā)布了OpenAI Gym,包含開始使用Atari游戲訓(xùn)練系統(tǒng)的所有代碼,并將性能與其他人進(jìn)行比較。
我從這些結(jié)果中得出的結(jié)論是,制作智能系統(tǒng)本身產(chǎn)生智能的想法是一種很好的方法,用于教學(xué)的算法可以用來讓機(jī)器人了解他們的空間(我不是很樂觀的編碼知識和設(shè)置學(xué)習(xí)環(huán)境和階段的方法,但這是另一個(gè)討論)。
從游戲到模擬
OpenAI想要走得更遠(yuǎn)。他們不是使用游戲來生成可以玩游戲的程序,而是應(yīng)用相同的想法讓機(jī)器人做一些有用的事情:學(xué)會操縱手上的立方體。在這種情況下,他們使用機(jī)器人的模擬而不是使用游戲。模擬用于模擬機(jī)器人及其環(huán)境,就好像它是真實(shí)的一樣。然后,他們允許算法控制模擬機(jī)器人,并使機(jī)器人通過域隨機(jī)化了解要解決的任務(wù)。經(jīng)過多次試驗(yàn),模擬機(jī)器人能夠以預(yù)期的方式操縱該塊。但那還不是全部!在文章的最后,作者成功地將模擬機(jī)器人的學(xué)習(xí)控制程序轉(zhuǎn)移到真實(shí)機(jī)器人,該機(jī)器人以類似于模擬機(jī)器人的方式執(zhí)行。除了它是真實(shí)的。
訓(xùn)練機(jī)器人
然而,在他們的實(shí)驗(yàn)中,OpenAI的工程師發(fā)現(xiàn)機(jī)器人訓(xùn)練比訓(xùn)練游戲算法要復(fù)雜得多。同時(shí),在游戲中,智能系統(tǒng)的動作和感知列表非常有限; 機(jī)器人在領(lǐng)域,行動和感知方面都面臨著巨大而持續(xù)的影響。我們可以說選項(xiàng)是無限的。
選項(xiàng)數(shù)量的增加減少了用于RL的算法的有用性。通常,處理問題的方法是使用一些人工技巧,例如完全丟棄一些信息或人為地離散數(shù)據(jù)值,將選項(xiàng)減少到只有少數(shù)。
OpenAI工程師發(fā)現(xiàn),即使機(jī)器人接受過模擬訓(xùn)練,他們的方法也無法擴(kuò)展到更復(fù)雜的任務(wù)。
大量數(shù)據(jù)與復(fù)雜學(xué)習(xí)算法
正如Andrew Ng指出的那樣,正如OpenAI的工程師根據(jù)他的結(jié)果親自向我指示的那樣,使用簡單學(xué)習(xí)算法的大量數(shù)據(jù)勝過復(fù)雜的算法和少量數(shù)據(jù)。這意味著嘗試專注于獲得更復(fù)雜的學(xué)習(xí)算法并不是一個(gè)好主意。相反,達(dá)到智能機(jī)器人的最佳方法是使用經(jīng)過大量數(shù)據(jù)訓(xùn)練的簡單學(xué)習(xí)算法(如果我們觀察自己的大腦,這是有意義的:多年來訓(xùn)練的大量神經(jīng)網(wǎng)絡(luò))。
谷歌一直都知道這一點(diǎn)。因此,為了獲得大量數(shù)據(jù)來訓(xùn)練他們的機(jī)器人,谷歌創(chuàng)造了一個(gè)真實(shí)的機(jī)器人系統(tǒng),在一個(gè)大空間里整天訓(xùn)練。即使這是一個(gè)聰明的想法,我們都可以看到,這對于任何類型的機(jī)器人和應(yīng)用程序來說都是不切實(shí)際的(破壞機(jī)器人,僅限于實(shí)時(shí)執(zhí)行,有限數(shù)量的機(jī)器人,有限的環(huán)境,等等…)。
這導(dǎo)致我們再次采用相同的解決方案:使用模擬。通過使用模擬,我們可以在任何情況下放置任何機(jī)器人并在那里訓(xùn)練它們。此外,我們幾乎可以無數(shù)次并行訓(xùn)練,并在創(chuàng)紀(jì)錄的時(shí)間內(nèi)生成大量數(shù)據(jù)。
即使這種方法現(xiàn)在看起來非常清楚,但是在三年前我們創(chuàng)建了我們的公司 The Construct,圍繞云中的機(jī)器人模擬。我記得在2015年Innorobo展覽會上展出,經(jīng)過所有其他參展商的廣泛采訪后發(fā)現(xiàn),其中只有兩個(gè)人正在使用模擬工作。此外,機(jī)器人專家認(rèn)為模擬是不惜一切代價(jià)可以避免的事情,因?yàn)闆]有什么能比得上真正的機(jī)器人(請查看我當(dāng)時(shí)寫的關(guān)于它的帖子)。
值得慶幸的是,從那時(shí)起情況發(fā)生了變化?,F(xiàn)在,使用模擬訓(xùn)練真正的機(jī)器人開始成為一種方式。
轉(zhuǎn)移到真正的機(jī)器人
我們都知道,通過模擬獲得解決方案是一回事,而另一個(gè)解決方案是在真實(shí)機(jī)器人上工作。在模擬中由機(jī)器人完成某些事情并不意味著它將在真實(shí)機(jī)器人上以相同的方式工作。這是為什么?
嗯,有一種叫做現(xiàn)實(shí)的差距。我們可以將現(xiàn)實(shí)差距定義為情境模擬與現(xiàn)實(shí)生活情況之間的差異。由于我們不可能完美地模擬某些東西,因此模擬與現(xiàn)實(shí)之間總會存在差異。如果差異足夠大,則可能發(fā)生在模擬器中獲得的結(jié)果完全不相關(guān)。也就是說,你有一個(gè)很大的現(xiàn)實(shí)差距,模擬中適用的東西并不適用于現(xiàn)實(shí)世界。
現(xiàn)實(shí)差距的問題是用于丟棄機(jī)器人模擬器的主要論據(jù)之一。在我看來,要遵循的道路不是放棄模擬器并找到其他東西,而是尋找跨越現(xiàn)實(shí)差距的解決方案。至于解決方案,我相信我們有兩個(gè)選擇:
1. 創(chuàng)建更準(zhǔn)確的模擬器。那是在路上。我們可以看到這方面的努力。一些模擬器專注于更好的物理學(xué)(Mujoco); 其他人仔細(xì)看看現(xiàn)實(shí)(虛幻或基于Unity的模擬器,如Carla或AirSim)。我們可以預(yù)期,隨著計(jì)算機(jī)功率不斷增加,云系統(tǒng)變得更容易接近,模擬的準(zhǔn)確性將在感官,物理和外觀方面不斷增加。
2. 建立更好的方法來跨越現(xiàn)實(shí)差距。在最初的工作中,噪聲和現(xiàn)實(shí)差距,雅可比(確定現(xiàn)實(shí)差距問題的人)指出,首先解決方案之一是使模擬獨(dú)立于現(xiàn)實(shí)差距。他的想法是在那些與任務(wù)無關(guān)的變量中引入噪聲。該噪聲引入的現(xiàn)代版本是域隨機(jī)化的概念,如“ 從模擬向現(xiàn)實(shí)世界轉(zhuǎn)移深度神經(jīng)網(wǎng)絡(luò)的域隨機(jī)化 ”一文中所述 。
域隨機(jī)化基本上包括在模擬環(huán)境中執(zhí)行機(jī)器人的訓(xùn)練,其中不相關(guān)的任務(wù)特征隨機(jī)改變,如元素的顏色,光照條件,與其他元素的相對位置等。 。
目標(biāo)是使訓(xùn)練的算法不受場景中那些不向手頭的任務(wù)提供信息的元素的影響,但可能使其混淆(因?yàn)樗惴ú恢滥男┎糠质侨蝿?wù)的相關(guān)部分)。我可以看到域隨機(jī)化是一種告訴算法在哪里集中注意力的方式,就其接收的大量數(shù)據(jù)流而言。
結(jié)論
讓所有這些深度神經(jīng)網(wǎng)絡(luò)在訓(xùn)練模擬中學(xué)習(xí)是可行的方法,正如我們將來可能看到的那樣,這只是冰山一角。我個(gè)人的觀點(diǎn)是,智能比現(xiàn)有的AI方法更能體現(xiàn):沒有身體,你就無法擁有智慧。因此,我相信模擬實(shí)施例的使用將來會更高。走著瞧。