大批次訓練的一個經驗模型

An Empirical Model of Large-Batch Training

摘要

在越來越多的領域中,已經證明深度學習模型可以用相對較大的批次大小 (batch size) 訓練,而不犧牲資料效率 (data efficiency)。然而這種大規模資料平行化 (data parallelism) 的極限似乎因領域而異,從 ImageNet 的數萬批次到玩 Dota 2 遊戲的 RL 代理的數百萬批次都有。就我們所知,關於「為什麼這些批次大小極限不同、或我們在新領域中該如何選擇正確的批次大小」,概念上的理解相當有限。在本文中,我們證明一個簡單、易量測、稱為梯度雜訊尺度 (gradient noise scale) 的統計量,能跨許多領域與應用預測最大的有用批次大小,包括若干監督式學習資料集(MNIST、SVHN、CIFAR-10、ImageNet、Billion Word)、強化學習領域(Atari 與 Dota)、甚至生成模型訓練(SVHN 上的自編碼器)。我們發現雜訊尺度會隨著訓練過程中損失下降而增大,且主要透過「模型效能改善」這個管道依賴於模型大小。我們這個由經驗驅動的理論也描述了計算效率與時間效率之間的權衡,並提供了一個關於「自適應批次大小訓練」好處的粗略模型。 圖 1: 把一個模型訓練到給定效能水準所花的時間與計算資源之間的權衡,呈現為一條 Pareto 前緣 (Pareto frontier)(左)。訓練時間與計算成本分別主要由「最佳化步數」與「處理過的訓練樣本數」決定。我們能以「使用更多計算資源」為代價更快地訓練模型。右邊是一個具體例子:把一個模型訓練到不同效能水準去解 Atari Breakout 遊戲所得到的 Pareto 前緣。成本與訓練時間取決於運算架構,此處為近似值。

此論文授權為 arXiv License

非 Creative Commons 授權的論文需登入後方可閱讀翻譯全文

Google 登入後閱讀

原文連結:arXiv