DeepMind異步優化算法PBT解決神經網絡痛點

在圍棋和Atari遊戲、圖像識別與語言翻譯等領域,神經網絡都取得了巨大的成功。但經常被忽視的一點是,神經網絡在這些特定應用中的成功往往取決於研究開始時做出的一系列選擇,包括:使用何種類型的網絡、用於訓練的數據和方法等。目前,這些選擇(又稱爲超參數)是通過經驗,隨機搜索或計算密集型搜索過程來選擇的。如何選擇參數和調參往往成爲訓練神經網絡的關鍵問題。

 

AI科技評論發現,在DeepMind最近一篇名爲《Population Based Training of Neural Network》的論文中,DeepMind提出了一種名爲PBT(Population Based Training)訓練神經網絡的新方法,使得實驗者能夠快速地選擇較佳的超參數集和模型。這一技術可同時訓練和優化一系列網絡,從而可以快速找到較佳的設置。更重要的是,這不會增加額外的計算開銷,可以像傳統技術一樣快速地完成,並且易於集成到現有的機器學習管道中。

 

該技術是超參數優化最常用的兩種方法隨機搜索和手動調試的結合。隨機搜索中會並行訓練神經網絡的羣體,並在訓練結束時選擇較高性能的模型。通常情況下,這意味着只有一小部分羣體會獲得良好的超參數訓練,但更多的羣體培訓效果欠佳,浪費計算機資源。

 

 

隨機搜索超參數意味着同時並行獨立訓練多個超參數,某些超參數會讓模型表現良好,但大多數不會

 

如果我們使用手動調整超參數,研究人員必須猜測較好的超參數,使用它們訓練模型和評估性能,這樣的過程將持續重複,直到研究人員對網絡的性能感到滿意爲止。雖然手動調參可以帶來更好的性能,但是缺點是這需要很長時間,有時需要數週甚至數月才能找到完美的設置。雖然有諸如貝葉斯優化等一些自動化方法,但是仍然需要很長的時間,並且需要很多持續的訓練來找到較好的超參數。

 

手動調參及貝葉斯優化等方法通過一次觀察多個訓練過程來改變超參數,這通常較爲緩慢

 

如同隨機搜索一樣,PBT首先也會並行訓練多個神經網絡與隨機超參,但是每一個網絡不是獨立訓練的,而是使用來自其他羣體的信息來完善超參數,並將計算資源引導到更有優秀的模型。這以算法靈感來自於於遺傳算法,每個羣體成員都被稱爲“工人”,並可以利用其餘羣體成員的信息,如從另一個性能較好的“工人”中複製模型參數,此外,它還可以通過隨機更改當前值來探索新的超參數。

 

隨着對神經網絡羣體訓練的不斷深入,這一開發和探索的過程會定期進行,以確保所有羣體中的“工人”都有一個良好的基礎性能水平,並且在此基礎上在探索新的超參數。這意味着PBT可以快速利用好的超參數,可以爲更有效的模型提供更多的訓練時間,而且可以在整個訓練過程中調整超參數值,從而自動學習較佳配置。

 

PBT從隨機搜索開始,但允許相互利用更有效的結果,並隨着訓練的進行探索新的超參數

 

實驗表明,PBT在整個任務和領域都非常有效。DeepMind在DeepMind Lab,Atari和StarCraft II上使用較先進的方法嚴格測試了一套具有挑戰性的強化學習問題,在所有情況下,PBT穩定的訓練方式均能很快就找到了好的超參數,並得到了超出基線的結果。

 

 

此外,PBT對訓練生成對抗網絡(GAN)同樣有着一定的提升。在DeepMind使用PBT框架來較大化Inception Score(AI科技評論注:Inception Score是衡量視覺保真度的指標之一)的測試中,結果從6.45顯著提升到了6.9。

 

DeepMind也將PBT應用於Google較先進的機器翻譯神經網絡之一。這些神經網絡通常經過精心設計的超參數時間表進行培訓,這往往需要數月時間纔能有改善。使用PBT可以自動找到超參數的時間表,這些時間表可以匹配甚至超過現有的表現,但不需要任何調整,同時通常只需要一次訓練。

 

 

圖爲在CPSAR-10和封閉網絡(FuN)用GANs對“吃豆小姐”(Ms Pacman)遊戲訓練過程中羣體的演化過程。粉紅色的點代表最初的智能體,藍色爲最終的智能體。

 

DeepMind認爲,這項技術仍然存在很大的擴展空間。PBT對訓練引入新超參數的新算法和神經網絡體系結構尤其有效,隨着不斷細化這個過程,PBT有望更好地應用於尋找和開發更復雜和更強大的神經網絡模型。

 

完整論文下載鏈接:https://deepmind.com/documents/135/population_based_training.pdf

發佈了40 篇原創文章 · 獲贊 221 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章