0
雷鋒網(wǎng) AI科技評(píng)論按:OpenAI最新發(fā)現(xiàn)表明,通過在網(wǎng)絡(luò)的參數(shù)空間中加入噪聲,可以獲得遠(yuǎn)優(yōu)于在網(wǎng)絡(luò)的行為空間中增加噪聲的表現(xiàn)。此外,他們發(fā)布了一系列基準(zhǔn)代碼,覆蓋多個(gè)網(wǎng)絡(luò)。
雷鋒網(wǎng) AI科技評(píng)論編譯如下:
OpenAI實(shí)驗(yàn)室最新發(fā)現(xiàn):頻繁地給增強(qiáng)學(xué)習(xí)算法中的參數(shù)增加自適應(yīng)噪聲后,能得到更好的結(jié)果。這種方法實(shí)現(xiàn)簡(jiǎn)單,基本上不會(huì)導(dǎo)致結(jié)果變差,值得在任何問題上嘗試。
圖1:加入行為空間噪聲訓(xùn)練的模型
圖2:加入?yún)?shù)空間噪聲訓(xùn)練的模型
參數(shù)噪聲可以幫助算法高效地探索出合適的動(dòng)作范圍,在環(huán)境中獲得優(yōu)良表現(xiàn)。如圖1、圖2所示,經(jīng)過216個(gè)episode的訓(xùn)練之后,沒有加入?yún)?shù)噪音的DDPG會(huì)頻繁產(chǎn)生低效的奔跑行為,而加入?yún)?shù)噪聲訓(xùn)練之后產(chǎn)生的奔跑行為得分更高。
增加參數(shù)噪聲后,智能體學(xué)習(xí)任務(wù)的速度變得更快,遠(yuǎn)優(yōu)于其他方法帶來的速度增長(zhǎng)。在半獵豹運(yùn)動(dòng)環(huán)境(圖1、圖2)中經(jīng)過20個(gè)episode的訓(xùn)練之后,這項(xiàng)策略的得分在3000分左右,而采用傳統(tǒng)動(dòng)作噪音訓(xùn)練的策略只能得到1500分左右。
參數(shù)噪聲方法是將自適應(yīng)噪聲加在神經(jīng)網(wǎng)絡(luò)策略的參數(shù)中,而不是加在行為空間。傳統(tǒng)的增強(qiáng)學(xué)習(xí)(RL)利用行為空間噪聲來改變智能體每一刻執(zhí)行的動(dòng)作的可能性。參數(shù)空間噪聲使智能體的參數(shù)直接增加了隨機(jī)性,改變了智能體做出的決策的類型,使它們總是能完全依賴于對(duì)當(dāng)前環(huán)境的感知。這種技術(shù)介于進(jìn)化策略(可以控制智能體的參數(shù),但是當(dāng)它在每一步中探索環(huán)境時(shí),不會(huì)再次影響它的行為)和類似TRPO、DQN、DDPG這樣的深度增強(qiáng)學(xué)習(xí)方法之間 (不能控制參數(shù),但可以在策略的行為空間上增加噪聲)。
圖3:左邊是行為空間噪聲,右邊是參數(shù)空間噪聲
參數(shù)噪聲可以讓算法更高效的探索環(huán)境,得到更高的分?jǐn)?shù)和更優(yōu)雅的動(dòng)作。因?yàn)橛幸獾脑诓呗詤?shù)中增加噪聲,能使智能體在不同時(shí)刻的探索保持一致,而在行為空間中增加噪聲,會(huì)讓探索過程更加難以預(yù)測(cè),這種探索過程也就與智能體的參數(shù)沒有特定的關(guān)聯(lián)性。
人們之前曾嘗試過將參數(shù)噪聲應(yīng)用于策略梯度。在OpenAI的探索之下,這種方法現(xiàn)在可以用在更多地方了,比如用在基于深度神經(jīng)網(wǎng)絡(luò)的策略中,或是用在基于策略和策略無關(guān)的算法中。
圖4:加入行為空間噪聲訓(xùn)練的模型
圖5:加入?yún)?shù)空間噪聲訓(xùn)練的模型
如圖4、圖5所示,增加參數(shù)空間噪聲后可以在賽車游戲中獲得更高的分?jǐn)?shù)。經(jīng)過2個(gè)episode的訓(xùn)練,訓(xùn)練中在參數(shù)空間增加噪聲的DDQN網(wǎng)絡(luò)學(xué)會(huì)了加速和轉(zhuǎn)彎,而訓(xùn)練中在行為空間增加了噪聲的網(wǎng)絡(luò)展現(xiàn)出的動(dòng)作豐富程度就要弱很多。
在進(jìn)行這項(xiàng)研究時(shí)他們遇到了如下三個(gè)問題:
不同層數(shù)的網(wǎng)絡(luò)對(duì)擾動(dòng)的敏感性不同。
在訓(xùn)練過程中,策略權(quán)重的敏感性可能會(huì)隨著時(shí)間改變,這導(dǎo)致預(yù)測(cè)策略的行動(dòng)變得很難。
選取合適的噪聲很困難,因?yàn)楹茈y直觀地理解訓(xùn)練過程中參數(shù)噪音是怎么影響策略的。
第一個(gè)問題可以用層級(jí)歸一化來解決,這可以保證受到了擾動(dòng)的層的輸出(這個(gè)輸出是下一個(gè)層級(jí)的輸入)與未受擾動(dòng)時(shí)的分布保持相似。
可以引入一種自適應(yīng)策略來調(diào)整參數(shù)空間擾動(dòng)的大小,來處理第二和第三個(gè)問題。這一調(diào)整是這樣實(shí)現(xiàn)的:測(cè)量擾動(dòng)對(duì)行為空間的影響和行為空間噪聲與預(yù)定目標(biāo)之間的差異(更大還是更小)。這一技巧把選擇噪聲大小的問題引入行為空間,比參數(shù)空間具有更好的解釋性。
選擇基準(zhǔn),進(jìn)行benchmark
OpenAI發(fā)布了一系列基準(zhǔn)代碼,為DQN、雙DQN(Double DQN)、決斗DQN(Dueling DQN)、雙決斗DQN(Dueling Double DQN)和DDPG整合了這種技術(shù)。
此外,也發(fā)布了DDQN在有無參數(shù)噪聲下玩部分Atari游戲性能的基準(zhǔn)。另外還有DDQN三個(gè)變體在Mujoco模擬器中一系列連續(xù)控制任務(wù)下的性能基準(zhǔn)。
研究過程
在第一次進(jìn)行這項(xiàng)研究時(shí),OpenAI發(fā)現(xiàn)應(yīng)用到DQN的Q函數(shù)中的擾動(dòng)有時(shí)候太極端了,導(dǎo)致算法重復(fù)執(zhí)行相同的動(dòng)作。為了解決這個(gè)問題,他們添加了一個(gè)獨(dú)立的策略表達(dá)流程,能夠像在DDPG中一樣明顯的表示出策略(在普通的DQN網(wǎng)絡(luò)中,Q函數(shù)只能隱含的表示出策略),使設(shè)置與其他的實(shí)驗(yàn)更相似。
然而,在為這次發(fā)布準(zhǔn)備代碼時(shí),他們做了一次實(shí)驗(yàn),在使用參數(shù)空間噪聲時(shí)沒有加獨(dú)立的策略策略表達(dá)流程。
他們發(fā)現(xiàn)實(shí)驗(yàn)的結(jié)果與增加獨(dú)立策略表達(dá)流程之后的結(jié)果很相似,但實(shí)現(xiàn)起來更簡(jiǎn)單。進(jìn)一步的實(shí)驗(yàn)證實(shí)獨(dú)立的策略頭確實(shí)是多余的,因?yàn)樗惴ê芸赡茉谠缙诘膶?shí)驗(yàn)中就得到了改進(jìn)(他們改變了調(diào)節(jié)噪聲的方式)。這種方法更簡(jiǎn)單、更具有可行性,降低了訓(xùn)練算法的成本,并且能得到相似的結(jié)果。
重要的是要記住,AI算法(特別是在增強(qiáng)學(xué)習(xí)中)可能會(huì)出現(xiàn)一些細(xì)微的失敗,這種失敗會(huì)導(dǎo)致人們尋找解決方案的時(shí)候很難對(duì)癥下藥。
雷鋒網(wǎng) AI科技評(píng)論編譯。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。