Uber提出有创造力的POET:自行开发更困难环境和解决方案
Uber AI 實驗室注重開放性(open-endedness),開放性為機器學(xué)習(xí)自行開發(fā)多樣化和不斷增加的「課程」提供可能。擁有海量數(shù)據(jù)通常能夠助力機器學(xué)習(xí)取得成功,因此 Uber 正在努力設(shè)計能夠無限量生成自己所需訓(xùn)練數(shù)據(jù)的算法。
在普通的機器學(xué)習(xí)實踐中,研究人員確定一個特定問題(例如像 ImageNet 這樣的分類問題或者像《蒙特祖瑪?shù)膹?fù)仇》這樣的電子游戲),然后重點尋找或設(shè)計一個可實現(xiàn)最佳性能的算法。然而,有時我們不僅僅想解決已知問題,未知問題也十分重要。這些可能是對暴露(和解決)問題至關(guān)重要的邊緣案例(如安全應(yīng)用),但也可能是重要的基石,其解決方案可能有助于在更具挑戰(zhàn)性的問題上取得進展。因此,Uber 正在探索不斷提出越來越復(fù)雜和多樣化的問題及解決方案的算法。
要生成問題和解決方案的一個重要原因是,這是解決一系列極其困難的挑戰(zhàn)的唯一現(xiàn)實方法。要了解其中原因,請類比課程在教育中的重要作用。為什么要設(shè)置課程呢?因為如果沒有事先掌握基礎(chǔ)技能,就很難學(xué)習(xí)高級技能或概念。這個原則不僅適用于課堂上的學(xué)生,也適用于學(xué)習(xí)算法:正如這個項目的結(jié)果所示(不久后會公開),如果將難以或不可能直接學(xué)習(xí)的任務(wù)分解成一個個「墊腳石」任務(wù),那事情就變得簡單多了,實際上這就是課程的作用。
然而,雖然原則上課程對某些任務(wù)來說必不可少,但在實踐中我們面臨的問題是,我們不知道適合給定任務(wù)的課程是什么,而且我們也不知道能夠?qū)W習(xí)的任務(wù)范圍,要是它們會在正確的時間和順序受到攻擊就好了。事實上,我們很快會發(fā)現(xiàn),最好的課程往往是反直覺的,甚至是逆向的(即學(xué)習(xí)難的任務(wù)會為簡單的任務(wù)找到更好的解決方案)。因此,雖然課程通常是手動設(shè)計的,但只有讓在學(xué)習(xí)者學(xué)習(xí)課程的同時設(shè)計課程,才能揭示所有可能的課程內(nèi)容。
開放性展示了自生成課程和許多其它課程的好處:在最好的情況下,它可以無限地生成新任務(wù),智能體也能夠解決日益多樣化和復(fù)雜的挑戰(zhàn)。
自然進化是研究開放性的最初靈感來源之一,其復(fù)雜性近乎永恒。進化實際上是一個無限的過程,它在這條不斷向前的路上創(chuàng)造了地球上所有形式的生命,這個過程仍在繼續(xù)。值得注意的是,人類智能的產(chǎn)生也來自這個過程。雖然進化計算領(lǐng)域受開放性的啟發(fā),但沒有任何進化算法接近自然,它們更像收斂到全局最優(yōu)的傳統(tǒng)機器學(xué)習(xí)算法,而不是生成一個能遍歷所有可能生命形式的生命之樹(或者更抽象地說,是一系列挑戰(zhàn)(比如夠著高高樹上的葉子)和解決方案(比如長頸鹿和毛毛蟲))。
雖然關(guān)于開放性的以往研究主要集中在創(chuàng)造人工世界(通常與人造生命領(lǐng)域相關(guān)),例如 Tierra、Avida、Evosphere 和 Chromaria,但深度神經(jīng)進化的最新進展使開放性變得實用,并可以與機器學(xué)習(xí)相結(jié)合。與傳統(tǒng)的進化算法(如遺傳算法、進化策略等)相比,這可以歸類為黑箱優(yōu)化,受開放性概念啟發(fā)的現(xiàn)代神經(jīng)進化算法更側(cè)重于發(fā)散(divergence)和發(fā)現(xiàn)「踏腳石」,例如查新(novelty search)、局部競爭查新、MAP-Elites、最小標(biāo)準(zhǔn)協(xié)同進化(MCC)、創(chuàng)新引擎(Innovation Engines)和 CMOEA。有趣的是,Uber AI 實驗室最近取得了一項名為 Go-Explore 的突破,它在《蒙特祖瑪?shù)膹?fù)仇》和 Pitfall 中取得了破紀(jì)錄的表現(xiàn),這項突破也受到了這些想法的啟發(fā)。最小標(biāo)準(zhǔn)協(xié)同進化(MCC)算法尤其值得注意,它突出了在協(xié)同進化動態(tài)中創(chuàng)建新環(huán)境的潛力,盡管它沒有采取在其環(huán)境中明確優(yōu)化解決方案的步驟。此外,創(chuàng)新引擎引入了在不同任務(wù)間切換目標(biāo)的想法,即將智能體從一個環(huán)境遷移到另一個更優(yōu)的環(huán)境,從而利用一組不斷擴展的「踏腳石」來促進發(fā)展。
POET 概要
Uber 發(fā)布了 Paired Open-Ended Trailblazer (POET),它結(jié)合了這些想法,明確地將這一系列研究推向生成新的任務(wù)、優(yōu)化解決方案,以及在任務(wù)間遷移智能體,以實現(xiàn)其它方案無法取得的進展。為了證明這一方法,Uber 研究人員將 POET 用于創(chuàng)建和解決兩足步行環(huán)境(改編自 OpenAI Gym 中的 BipedalWalker 環(huán)境),其中每個環(huán)境 E_i 與一個神經(jīng)網(wǎng)絡(luò)控制的智能體 A_i 配對,該智能體 Ai 嘗試學(xué)習(xí)如何在該環(huán)境行走。下圖展示了示例環(huán)境和智能體:
圖 1:兩足步行環(huán)境示例。
圖 2:POET 概覽。
如圖 2 所示,POET 開始于一個與隨機初始化的智能體 A_0 配對的簡易環(huán)境 E_0,然后不斷增長,不過環(huán)境和智能體一直是一對一配對的。在整個過程中,POET 旨在實現(xiàn)兩個目標(biāo):(1) 將環(huán)境向多樣性和復(fù)雜性演化;(2) 優(yōu)化智能體以求解其配對環(huán)境。在單次運行期間,POET 會產(chǎn)生一系列復(fù)雜的環(huán)境及其解決方案。下圖展示了 POET 發(fā)現(xiàn)的一個有趣的環(huán)境和解決方案:
圖 3:POET 發(fā)現(xiàn)的有趣環(huán)境和解決方案示例。
為了進化環(huán)境,POET 首先決定當(dāng)前有哪些環(huán)境適合復(fù)現(xiàn),判定標(biāo)準(zhǔn)是配對智能體必須滿足的分數(shù)閾值。此要求可避免將計算資源浪費在當(dāng)前過于困難的問題上。接下來,適當(dāng)?shù)沫h(huán)境突變(復(fù)制并稍微更改)以生成候選子環(huán)境,其配對智能體初始化為與母環(huán)境中相同的智能體。最后,POET 評估候選子環(huán)境,按最小標(biāo)準(zhǔn)篩選,根據(jù)新穎性排名,最后納入排名最高的候選環(huán)境。在這項工作中,最小標(biāo)準(zhǔn)是配對智能體適應(yīng)度分數(shù)的下限和上限,它過濾掉對于當(dāng)前智能體群體而言過于簡單或過于復(fù)雜的環(huán)境。新穎性為創(chuàng)造更多樣化的環(huán)境(挑戰(zhàn))帶來壓力——這是對候選環(huán)境與先前環(huán)境異同的定量測量。鑒于計算資源受限,一旦環(huán)境數(shù)量達到上限,在接納新環(huán)境前,POET 將刪除最舊的環(huán)境。
在這些實驗中,研究者使用最新的進化策略(ES)變體來優(yōu)化智能體以獲得最大的環(huán)境回報,但任何強化學(xué)習(xí)或黑箱優(yōu)化算法都可以實現(xiàn)。大多數(shù)情況下,智能體都經(jīng)過了優(yōu)化,可以在與其配對的環(huán)境中進行改進。重要的是,POET 還會定期進行遷移實驗,以驗證在一個環(huán)境中優(yōu)化的智能體是否可以作為在另一環(huán)境中獲得更好性能的「跳板」。這樣,通過遷移測試,POET 可以充分利用其多個智能體—環(huán)境對的多樣性,即不會錯過任何利用現(xiàn)有「跳板」的機會。存在兩種類型的遷移(圖 4):直接遷移,來自源環(huán)境的智能體在目標(biāo)環(huán)境中直接進行評估,以及提議遷移(proposal transfer),智能體在目標(biāo)環(huán)境中執(zhí)行一個 ES 優(yōu)化步驟(以防將有用的技能從源環(huán)境遷移到目標(biāo)環(huán)境時需要一些優(yōu)化)。如果遷移后的結(jié)果更好,則替換目標(biāo)環(huán)境中的現(xiàn)有配對智能體。
圖 4:POET 有兩種類型的遷移:直接遷移和提議遷移。只有遷移在目標(biāo)環(huán)境上的性能優(yōu)于當(dāng)前配對智能體時,遷移才會發(fā)生(由虛線表示)。
觀察開放式發(fā)現(xiàn)
遷移可以產(chǎn)生意想不到的效果,這些效果都是產(chǎn)生重要進化的「跳板」。在一個示例中,原始環(huán)境是平坦的地面,其配對的智能體學(xué)習(xí)在沒有完全站立的情況下向前移動。該步態(tài)表示局部最優(yōu),因為如果智能體直立,可以實現(xiàn)更有效的步態(tài)。在迭代 400 次后,該環(huán)境生成帶有路障的子環(huán)境。最初的子智能體從母環(huán)境中繼承了低膝行走步態(tài),這樣可以實現(xiàn)在惡劣的環(huán)境中移動,但是它經(jīng)常會因為以前沒有遇到過的障礙而出錯。最終,子環(huán)境中的智能體學(xué)會站起來并跳過障礙。
然后,在一個證明遷移潛力的演示中,該技能在 1175 次迭代時被遷移回母環(huán)境?,F(xiàn)在,原始平坦環(huán)境中的智能體是直立的智能體,這樣搜索過程就脫離了低膝局部最優(yōu)。這個新的直立策略專注于新的平坦環(huán)境,能產(chǎn)生更快的步態(tài)。在不允許遷移的情況下,我們在平坦環(huán)境中對原始的低膝步態(tài)進行了長時間的優(yōu)化,從而確認了如果沒有遷移就不會發(fā)現(xiàn)這種更有效的直立步態(tài)(即,搜索陷入局部最優(yōu))。
上面一部分形象地展示在原文圖5中,讀者可查閱原文。
通過改變舊環(huán)境創(chuàng)建新環(huán)境,POET 實際上是構(gòu)建多個重疊的課程。從目前的「踏腳石」中合理地解決環(huán)境的最低標(biāo)準(zhǔn)意味著課程正逐漸建立,新穎性激發(fā)了各種挑戰(zhàn),而這些挑戰(zhàn)都發(fā)生在同一個階段。在一次運行中不斷產(chǎn)生此類解決方案的能力本身就很有趣,但是如果所獲得的技能不能直接從頭開始學(xué)習(xí),那么這種能力的重要性就凸顯出來了。更有趣的是,這些高級技能的對應(yīng)課程本身并不容易被人類事先構(gòu)想出來。換句話說,如果我們逐步引導(dǎo)學(xué)習(xí)者完成針對最終目標(biāo)環(huán)境的一系列人為設(shè)計的難度升級任務(wù),仍然無法達到 POET 掌握的技能,該怎么辦?這個假設(shè)意味著 POET 需要找到解決方案和引導(dǎo)它們的課程。
Uber 研究人員通過收集由 POET 生成和解決的困難環(huán)境來驗證這一假設(shè),然后設(shè)計簡單的增量課程,以便從頭開始重新實現(xiàn)相同端點。每個簡單的課程都反映了這樣一個事實:逐漸增加課程難度——無解!實際上,如圖 6 所示,對 POET 以這種方式發(fā)現(xiàn)的在更具挑戰(zhàn)性的環(huán)境中的行為進行的復(fù)現(xiàn)嘗試都沒有實現(xiàn)。
圖 6 中的每個玫瑰圖是一組實驗,其中紅色五邊形表示 POET 創(chuàng)建和解決的環(huán)境。每個五邊形的五個頂點表示粗糙度、間隙和障礙寬度的上下限。以紅色五邊形為目標(biāo),五個藍色五邊形表示五種獨立運行的直接路徑課程控制算法(使用相同的 ES 優(yōu)化算法)能夠解決的最接近目標(biāo)的環(huán)境。課程從簡單、平坦的環(huán)境開始,每當(dāng)問題充分解決時(根據(jù) POET 中的相同標(biāo)準(zhǔn)),環(huán)境會稍微改變,使其更接近目標(biāo)環(huán)境(與 POST 相同的環(huán)境變化數(shù)量)。顯然,控制算法不僅無法解決 POET 創(chuàng)建和解決的環(huán)境,而且可解決的環(huán)境范圍比起 POET 的范圍窄得多(這意味著 POET 智能體可以處理更廣泛的多樣性),這兩者都證明了 POET 優(yōu)于直接建立課程。
圖 6:基于課程的學(xué)習(xí)(藍色)無法在 POET 發(fā)明的各種挑戰(zhàn)性環(huán)境中復(fù)盤 POET 的表現(xiàn)(紅色)。請注意,每個藍色五邊形都是基于直接路徑課程的控制的運行,始終未能達到紅色目標(biāo)的水平。
結(jié)論和未來的工作
由于其發(fā)散和對「墊腳石」的充分利用,POET 實現(xiàn)了廣泛的技術(shù)應(yīng)用,這可能是任何傳統(tǒng)方式都無法實現(xiàn)的。此外,POET 能夠自己創(chuàng)造挑戰(zhàn),而不是依賴人類創(chuàng)造。許多挑戰(zhàn)和解決它們的技能集都是在一次運行中發(fā)現(xiàn)的,而不是依賴于不同運行的隨機初始化和特性來產(chǎn)生興趣多樣性。原則上,通過對環(huán)境空間進行更復(fù)雜的編碼,POET 可以長期持續(xù)甚至無限地創(chuàng)建新的挑戰(zhàn)及其解決方案。開放性之所以吸引人,不僅因其在提供困難問題解決方案和所需技能方面有實際價值,還因為它令我們吃驚的創(chuàng)造力。由于有這種驚喜存在,POET 的輸出通常很有趣,POET 也不依賴用于優(yōu)化的學(xué)習(xí)算法,因此它可以與任何 RL(或其他)方法結(jié)合。
最終,Uber 設(shè)想將 POET 從這一概念初步證明中的 2D 障礙課程擴展到廣泛的相關(guān)領(lǐng)域,以實現(xiàn)更多開放式發(fā)現(xiàn)。例如,雖然 parkour 已經(jīng)在人類設(shè)計的障礙課程中進行 3D 探索,但 POET 可以同時為他們發(fā)明全新課程和解決方案。POET 同樣可以生產(chǎn)吸引人的新型軟體機器人,以應(yīng)對只有軟體機器人才能解決的獨特挑戰(zhàn)。在更實際的層面上,它可以生成自動駕駛的模擬測試課程,既可以展示邊緣案例,也可以展示解決方案。甚至更奇特的應(yīng)用,例如發(fā)明新的蛋白質(zhì)或化學(xué)過程,以解決各種應(yīng)用領(lǐng)域中的問題。任何問題空間都有可能產(chǎn)生不同的變化,POET 可以為它們開辟道路。
該研究的相關(guān)論文已發(fā)布,介紹了更多技術(shù)細節(jié),源代碼稍后也會發(fā)布。
總結(jié)
以上是生活随笔為你收集整理的Uber提出有创造力的POET:自行开发更困难环境和解决方案的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 20220209-CTF MISC -n
- 下一篇: 20220211-CTF CRYPTO-