0
雷鋒網(wǎng) AI 科技評論按:強化學(xué)習(xí)是學(xué)到一個策略解決智能體與環(huán)境間互動問題的重要學(xué)習(xí)范式。不過以往的強化學(xué)習(xí)過程都常常很低效,在復(fù)雜環(huán)境中往往難以收斂。這一方面由于簡單的策略難以完善、細致地描述各種不同環(huán)境狀態(tài)下的不同行為,另一方面也有由于可能的行為的組合太多所以要探索的空間太大了。
OpenAI的研究人員們這次就開發(fā)了一個層次化的強化學(xué)習(xí)算法,它可以學(xué)習(xí)到高階的行動,用來解決一系列不同的任務(wù),同時也可以快速學(xué)會解決總共需要上千個步驟的任務(wù)。當這個算法用來解決導(dǎo)航問題時,它能夠為不同方向的走或者爬行學(xué)到一系列高級別的動作,這也讓智能體能夠快速掌握新的導(dǎo)航任務(wù)。
雷鋒網(wǎng) AI 科技評論把OpenAI博客的介紹文章編譯如下。
人類應(yīng)對復(fù)雜問題的方法是把它們分解成一系列小的、可控的步驟。比如“做餡餅”就是由一系列高級別的行為組成的,取面粉、打雞蛋、攤在平底鍋內(nèi)、設(shè)定烤箱等等。人類能夠快速學(xué)到新任務(wù),靠的就是把已經(jīng)學(xué)過的步驟組合起來,即便每個步驟都可能需要百萬個低級別的行動組成,像讓不同的肌肉做不同的動作這樣。
然而,當前的強化學(xué)習(xí)算法的運行方式都是在低層次的行動中做暴力搜索,解決新問題的時候需要大量的嘗試。對于那些需要依次執(zhí)行很多個步驟的任務(wù)來說,這種搜索方法的效率就會變得非常低。
OpenAI的研究人員們提出了一種基于層次化強化學(xué)習(xí)的解決方案。這種方法中,智能體用幾個高層次動作組成的序列表征復(fù)雜的行為。這樣一來,智能體就可以解決復(fù)雜得多的任務(wù):整個解決方案中可能需要2000步左右的低層次動作,層次化策略就可以把它們轉(zhuǎn)化成10個高層次動作組成的序列,那么在這個10步動作的序列中進行搜索就比在2000步的序列中進行搜索高效得多。
在最開始的研究中,層次化策略都是顯式地手工編寫的。后來,他們把研究方向轉(zhuǎn)變?yōu)樽屇P驮谂c環(huán)境的互動中自動學(xué)到層次化結(jié)構(gòu)。從元學(xué)習(xí)的角度,研究者們把好的層次結(jié)構(gòu)定義為能夠在以前未見過的任務(wù)中迅速達到高回報的結(jié)構(gòu)。這樣,MLSH算法的目標就變成了學(xué)到能夠在以前未見過的任務(wù)中快速學(xué)習(xí)的子策略。
研究員們在許多不同的任務(wù)中訓(xùn)練算法,其中的子策略是共享的,然后對于每個樣本任務(wù)學(xué)到一個新的主策略。在反復(fù)訓(xùn)練新的主策略的過程中,它也能自動找到與主策略的學(xué)習(xí)表現(xiàn)最符合的子策略。
在訓(xùn)練一整晚后,一個訓(xùn)練用于解決9種不同迷宮的MLSH的智能體就學(xué)到了分別對應(yīng)著向上、向右和向下的動作,然后它就可以用這些動作幫它走出迷宮。
在“螞蟻迷宮”環(huán)境中,一個 Mujoco 螞蟻機器人被放在了9種不同的迷宮中,然后要從開始位置找到出口。OpenAI的新算法僅僅通過與環(huán)境互動就成功找到了一組各有不同的子策略,把它們組成序列后走出迷宮。這些訓(xùn)練得到的子策略之后就可以用來解決更大的任務(wù)。
雷鋒網(wǎng) AI 科技評論編譯。
論文地址:https://arxiv.org/abs/1710.09767
GitHub地址:https://github.com/openai/mlsh (包含訓(xùn)練智能體的代碼和評估算法用到的Mujoco環(huán)境)
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。