0
本文作者: 岑大師 | 2017-11-28 04:09 |
雷鋒網(wǎng)按:在圍棋和Atari游戲、圖像識(shí)別與語(yǔ)言翻譯等領(lǐng)域,神經(jīng)網(wǎng)絡(luò)都取得了巨大的成功。但經(jīng)常被忽視的一點(diǎn)是,神經(jīng)網(wǎng)絡(luò)在這些特定應(yīng)用中的成功往往取決于研究開(kāi)始時(shí)做出的一系列選擇,包括:使用何種類型的網(wǎng)絡(luò)、用于訓(xùn)練的數(shù)據(jù)和方法等。目前,這些選擇(又稱為超參數(shù))是通過(guò)經(jīng)驗(yàn),隨機(jī)搜索或計(jì)算密集型搜索過(guò)程來(lái)選擇的。如何選擇參數(shù)和調(diào)參往往成為訓(xùn)練神經(jīng)網(wǎng)絡(luò)的關(guān)鍵問(wèn)題。
雷鋒網(wǎng)發(fā)現(xiàn),在Deepmind最近一篇名為《Population Based Training of Neural Network》的論文中,Deepmind提出了一種名為PBT(Population Based Training)訓(xùn)練神經(jīng)網(wǎng)絡(luò)的新方法,使得實(shí)驗(yàn)者能夠快速地選擇最佳的超參數(shù)集和模型。這一技術(shù)可同時(shí)訓(xùn)練和優(yōu)化一系列網(wǎng)絡(luò),從而可以快速找到最佳的設(shè)置。更重要的是,這不會(huì)增加額外的計(jì)算開(kāi)銷,可以像傳統(tǒng)技術(shù)一樣快速地完成,并且易于集成到現(xiàn)有的機(jī)器學(xué)習(xí)管道中。
該技術(shù)是超參數(shù)優(yōu)化最常用的兩種方法隨機(jī)搜索和手動(dòng)調(diào)試的結(jié)合。隨機(jī)搜索中會(huì)并行訓(xùn)練神經(jīng)網(wǎng)絡(luò)的群體,并在訓(xùn)練結(jié)束時(shí)選擇最高性能的模型。通常情況下,這意味著只有一小部分群體會(huì)獲得良好的超參數(shù)訓(xùn)練,但更多的群體培訓(xùn)效果欠佳,浪費(fèi)計(jì)算機(jī)資源。
隨機(jī)搜索超參數(shù)意味著同時(shí)并行獨(dú)立訓(xùn)練多個(gè)超參數(shù),某些超參數(shù)會(huì)讓模型表現(xiàn)良好,但大多數(shù)不會(huì)
如果我們使用手動(dòng)調(diào)整超參數(shù),研究人員必須猜測(cè)最好的超參數(shù),使用它們訓(xùn)練模型和評(píng)估性能,這樣的過(guò)程將持續(xù)重復(fù),直到研究人員對(duì)網(wǎng)絡(luò)的性能感到滿意為止。雖然手動(dòng)調(diào)參可以帶來(lái)更好的性能,但是缺點(diǎn)是這需要很長(zhǎng)時(shí)間,有時(shí)需要數(shù)周甚至數(shù)月才能找到完美的設(shè)置。雖然有諸如貝葉斯優(yōu)化等一些自動(dòng)化方法,但是仍然需要很長(zhǎng)的時(shí)間,并且需要很多持續(xù)的訓(xùn)練來(lái)找到最好的超參數(shù)。
手動(dòng)調(diào)參及貝葉斯優(yōu)化等方法通過(guò)一次觀察多個(gè)訓(xùn)練過(guò)程來(lái)改變超參數(shù),這通常較為緩慢
如同隨機(jī)搜索一樣,PBT首先也會(huì)并行訓(xùn)練多個(gè)神經(jīng)網(wǎng)絡(luò)與隨機(jī)超參,但是每一個(gè)網(wǎng)絡(luò)不是獨(dú)立訓(xùn)練的,而是使用來(lái)自其他群體的信息來(lái)完善超參數(shù),并將計(jì)算資源引導(dǎo)到更有優(yōu)秀的模型。這以算法靈感來(lái)自于于遺傳算法,每個(gè)群體成員都被稱為“工人”,并可以利用其余群體成員的信息,如從另一個(gè)性能較好的“工人”中復(fù)制模型參數(shù),此外,它還可以通過(guò)隨機(jī)更改當(dāng)前值來(lái)探索新的超參數(shù)。
隨著對(duì)神經(jīng)網(wǎng)絡(luò)群體訓(xùn)練的不斷深入,這一開(kāi)發(fā)和探索的過(guò)程會(huì)定期進(jìn)行,以確保所有群體中的“工人”都有一個(gè)良好的基礎(chǔ)性能水平,并且在此基礎(chǔ)上在探索新的超參數(shù)。這意味著PBT可以快速利用好的超參數(shù),可以為更有效的模型提供更多的訓(xùn)練時(shí)間,而且可以在整個(gè)訓(xùn)練過(guò)程中調(diào)整超參數(shù)值,從而自動(dòng)學(xué)習(xí)最佳配置。
PBT從隨機(jī)搜索開(kāi)始,但允許相互利用更有效的結(jié)果,并隨著訓(xùn)練的進(jìn)行探索新的超參數(shù)
實(shí)驗(yàn)表明,PBT在整個(gè)任務(wù)和領(lǐng)域都非常有效。Deepmind在DeepMind Lab,Atari和StarCraft II上使用最先進(jìn)的方法嚴(yán)格測(cè)試了一套具有挑戰(zhàn)性的強(qiáng)化學(xué)習(xí)問(wèn)題,在所有情況下,PBT穩(wěn)定的訓(xùn)練方式均能很快就找到了好的超參數(shù),并得到了超出最新基線的結(jié)果。
此外,PBT對(duì)訓(xùn)練生成對(duì)抗網(wǎng)絡(luò)(GAN)同樣有著一定的提升。在Deepmind使用PBT框架來(lái)最大化Inception Score(雷鋒網(wǎng)注:Inception Score是衡量視覺(jué)保真度的指標(biāo)之一)的測(cè)試中,結(jié)果從6.45顯著提升到了6.9。
Deepmind也將PBT應(yīng)用于Google最先進(jìn)的機(jī)器翻譯神經(jīng)網(wǎng)絡(luò)之一。這些神經(jīng)網(wǎng)絡(luò)通常經(jīng)過(guò)精心設(shè)計(jì)的超參數(shù)時(shí)間表進(jìn)行培訓(xùn),這往往需要數(shù)月時(shí)間才能有改善。使用PBT可以自動(dòng)找到超參數(shù)的時(shí)間表,這些時(shí)間表可以匹配甚至超過(guò)現(xiàn)有的表現(xiàn),但不需要任何調(diào)整,同時(shí)通常只需要一次訓(xùn)練。
圖為在CPSAR-10和封閉網(wǎng)絡(luò)(FuN)用GANs對(duì)“吃豆小姐”(Ms Pacman)游戲訓(xùn)練過(guò)程中群體的演化過(guò)程。粉紅色的點(diǎn)代表最初的智能體,藍(lán)色為最終的智能體。
Deepmind認(rèn)為,這項(xiàng)技術(shù)仍然存在很大的擴(kuò)展空間。PBT對(duì)訓(xùn)練引入新超參數(shù)的新算法和神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)尤其有效,隨著不斷細(xì)化這個(gè)過(guò)程,PBT有望更好地應(yīng)用于尋找和開(kāi)發(fā)更復(fù)雜和更強(qiáng)大的神經(jīng)網(wǎng)絡(luò)模型。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。