由于硬件資源有限,訓練深度學習模型的目標通常是在訓練和推理的時間和記憶約束下使準確性最大化。在這種情況下,我們研究了模型大小的影響,重點研究了受計算限制的NLP任務的Transformer模型:自我監督的預訓練和高資源機器翻譯。我們首先表明,盡管較小的Transformer模型在每次迭代中執行得更快,但是更廣泛和更深入的模型在更少的步驟中收斂。此外,這種收斂速度通常超過使用大型模型的額外計算開銷。因此,最具計算效率的訓練策略是反直覺地訓練非常大的模型,但是在少量的迭代之后停止。
這導致大型Transformer 模型的訓練效率與小型Transformer 模型的推理效率之間存在明顯的權衡。然而,我們證明大型模型比小型模型對量化和剪枝等壓縮技術有更強的魯棒性。因此,我們可以同時利用兩個方面的優勢:高度壓縮的大型模型比輕度壓縮的小型模型獲得更高的精度。
Go Wide, Then Narrow: Efficient Training of Deep Thin Networks
為了將深度學習模型部署到生產中,它需要準確和緊湊,以滿足延遲和內存的限制。這通常會導致網絡的深度(以確保性能)和瘦(以提高計算效率)。本文提出了一種在理論保證下訓練深薄網絡的有效方法。我們的方法是由模型壓縮驅動的。它由三個階段組成。在第一階段,我們充分拓寬深薄網絡,并訓練它直到收斂。在第二階段,我們使用這個訓練良好的深寬網絡來預熱(或初始化)原始的深薄網絡。這是通過讓瘦網絡從層到層模擬寬網絡的直接輸出來實現的。在最后一個階段,我們進一步優化這個初始化良好的深薄網絡。通過平均場分析,建立了理論保證,表明了分層模擬比傳統的反向傳播從頭開始訓練深薄網絡的優越性。我們還進行了大規模的實證實驗來驗證我們的方法。通過使用我們的方法進行訓練,ResNet50可以超過ResNet101, BERTBASE可以與BERTLARGE相媲美,后者的模型都是通過文獻中的標準訓練程序進行訓練的。
由于硬件資源有限,深度學習模型的訓練目標通常是在訓練和推理的時間和內存限制下最大化準確性。在這種情況下,我們研究了模型大小的影響,關注于計算受限的NLP任務的Transformer模型:自監督的預訓練和高資源機器翻譯。我們首先展示了,盡管較小的Transformer模型在每次迭代中執行得更快,但更廣、更深入的模型在顯著更少的步驟中收斂。此外,這種收斂速度通常超過了使用更大模型的額外計算開銷。因此,計算效率最高的訓練策略是反直覺地訓練非常大的模型,但在少量迭代后停止。
這導致了大型Transformer 模型的訓練效率和小型Transformer 模型的推理效率之間的明顯權衡。然而,我們表明大模型比小模型在壓縮技術(如量化和剪枝)方面更健壯。因此,一個人可以得到最好的兩個好處: 重壓縮,大模型比輕壓縮,小模型獲得更高的準確度。
//www.zhuanzhi.ai/paper/4d7bcea8653fcc448137766511ec7d8a
概述:
在當前的深度學習范式中,使用更多的計算(例如,增加模型大小、數據集大小或訓練步驟)通常會導致更高的模型準確度(brock2018large;raffel2019exploring)。最近自監督預訓練的成功進一步論證了這種趨勢經模型。因此,計算資源日益成為提高模型準確度的關鍵制約因素。這個約束導致模型訓練的(通常是隱含的)目標是最大化計算效率:如何在固定的硬件和訓練時間下達到最高的模型準確度。
最大化計算效率需要重新考慮關于模型訓練的常見假設。特別是,有一個典型的隱式假設,即模型必須經過訓練直到收斂,這使得較大的模型在有限的計算預算下顯得不太可行。我們通過展示以收斂為代價來增加模型大小的機會來挑戰這一假設。具體地說,我們表明,訓練Transformer 模型的最快方法(vaswani2017attention)是大幅度增加模型大小,但很早停止訓練。
在我們的實驗中,我們改變了Transformer模型的寬度和深度,并在自監督的預訓練(RoBERTa (liu2019roberta)在Wikipedia和BookCorpus上訓練)和機器翻譯(WMT14英語→法語)上評估了它們的訓練時間和準確性。對于這些任務,我們首先展示了更大的模型比更小的模型在更少的梯度更新中收斂到更低的驗證錯誤(第3節)。此外,這種收斂速度的增加超過了使用更大模型所帶來的額外計算開銷——計算效率最高的模型是非常大的,并且遠遠不能收斂(例如,圖2,左)。我們還表明,收斂的加速主要是參數計數的函數,只有模型寬度、深度和批大小的微弱影響。
雖然較大的模型訓練速度更快,但它們也增加了推理的計算和內存需求。這種增加的成本在現實應用中尤其成問題,推理成本占訓練成本的主要比例(jouppi2017datacenter;crankshaw2017clipper;metz2017tpu)。然而,對于RoBERTa來說,這種明顯的權衡可以與壓縮相協調:與小型模型相比,大型模型在壓縮方面更加健壯(第4節)。因此,使用可比較的推理成本,大型重壓縮的模型優于小型輕壓縮的模型(例如,圖2,右)。
自然語言處理(NLP)中神經網絡模型的標準歸一化方法是層歸一化(LN)。這不同于計算機視覺中廣泛采用的批量歸一化(BN)。LN在NLP中的優先使用主要是由于經驗觀察,使用BN會導致NLP任務的性能顯著下降;然而,對其根本原因的透徹理解并不總是顯而易見的。在本文中,我們對NLP transformers 模型進行了系統的研究,以了解為什么BN與LN相比性能較差。我們發現,整個批處理維度的NLP數據統計在整個訓練過程中呈現出較大的波動。這導致不穩定,如果BN是天真地執行。為了解決這個問題,我們提出Power 歸一化(PN),一種新的歸一化方案, 解決這個問題(i)放松零均值歸一化的BN, (ii) 將運行二次平均,而不是每批統計數據穩定的波動,和(iii)使用一個近似反向傳播。在溫和的假設下,我們從理論上證明了PN相對于BN會導致更小的Lipschitz常數的損失。此外,我們證明了近似的反向傳播方案會導致有界梯度。我們在一系列NLP任務中對Transformer的PN進行了廣泛的測試,結果表明它的性能顯著優于LN和BN。特別是,PN在IWSLT14/WMT14上的表現比LN好0.4/0.6個BLEU,在PTB/WikiText-103上的表現比LN好5.6/3.0個PPL。
基于語言模型的預訓練模型,如BERT,在不同的NLP任務中提供了顯著的收益。在本文中,我們研究了不同類型的基于自回歸模型(GPT-2)、自編碼器模型(BERT)和seq2seq模型(BART)等用于條件數據增強的預訓練transformer 模型。我們表明,將類標簽前置到文本序列提供了一種簡單而有效的方法來設置預訓練模型的條件,以便進行數據擴充。在三個分類基準上,預先訓練的Seq2Seq模型優于其他模型。此外,我們還探討了不同的基于預訓練模型的數據擴充在數據多樣性方面是如何不同的,以及這些方法如何很好地保存類標簽信息。