谷歌大腦最新研究:AutoML方式自動學習Dropout模式
本文經AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯系出處。
深度神經網絡往往存在過擬合的問題,需要Dropout、權重衰減這樣的正則化方法的加持。
而最近的研究表明,如果對Dropout“剪掉”的神經元的結構進行利用,就能實現比隨機替換更好的效果。
問題是,實際應用中,針對不同的問題,利用結構的方法需要人工設計,對Dropout的模式進行調整,泛化能力不足。
那么,是否能設計一種針對CNN、Transformer這樣的深度神經網絡,自動學習Dropout模式的方法?
現在,谷歌大神Quoc V. Le的團隊,就提出了一種名為AutoDropout的方法。

相關論文已經入選AAAI 2021。
將設計Dropout模式的過程自動化
AutoDropout的主要目的,就是將設計針對專門場景的Dropout模式這件事自動化。
研究人員為此設計了一個新的結構化Dropout模式的搜索空間。這個搜索空間囊括了許多現有的Dropout模式。
不妨先以CNN為例,來看一下該方法是如何實現的。
CNN中的Dropout模式搜索空間
在CNN中,搜索空間的基本模式是一個連續的矩形,矩形經過平鋪,就會產生一個Dropout模式。
定義矩形的超參數,是高度和寬度;而定義平鋪的超參數,是步幅和重復次數。

除了對矩形進行平鋪之外,還需要將兩個幾何變換引入搜索空間:圍繞空間中心旋轉,沿著每個空間維度進行剪切。
在得到dropout模式之后,研究人員將其應用于批量歸一化層的輸出——根據研究人員的經驗,在網絡的其他地方進行應用,往往會導致搜索過程中訓練的不穩定。
如果CNN中存在殘差連接,控制器則會進一步判斷,是否把dropout模式應用到殘差分支中。

控制器模型和搜索算法
AutoDropout的控制器是通過強化學習來訓練的。

控制器實際上是一個Transformer網絡。該網絡生成token以描述Dropout模式的配置。
如下圖所示,對于CNN中的每一層,都需要8個token來創建Dropout模式。

不過,這樣搜索算法可能需要花費大量的時間進行訓練,為此,研究人員也進行了并行性方面的改善工作。

Transformer中的Dropout模式搜索空間
這樣的方法同樣適用于Transformer。

與CNN中最大的不同在于,搜索空間中的dropout模式可以靈活地應用于Transformer層的多個子層,比如query、key、value、softmax、輸出投影和殘差等。
因此,研究人員針對每一個子層,各自應用了獨立的dropout模式。

實驗結果
為了驗證AutoDropout的效果,研究人員分別在CNN和Transformer模型中應用了AutoDropout。
對于CNN,主要應用在有監督圖像分類任務和半監督圖像分類任務。
對于Transformer,主要考慮語言模型和機器翻譯。


可以看到,在CIFAR-10和ImageNet上,AutoDropout都有效改善了SOTA模型的結果,并且優于DropBlock等需要人工介入的方法。
而與使用Variational Dropout方法訓練的Transformer-XL模型相比,AutoDropout同樣帶來了更好的表現。

不過,研究人員也提到,AutoDropout的缺點是搜索成本很高。
有關作者
本文有兩位作者。
Hieu Pham,谷歌大腦和卡內基梅隆大學共同培養的博士生,本科畢業于斯坦福大學。
另一位作者是Quoc V. Le大佬。他是吳恩達的學生,Google Brain的創立者之一,也是谷歌AutoML項目的幕后英雄之一。
傳送門
論文地址:
https://arxiv.org/abs/2101.01761