高效的深度学习:将深度学习模型变得更小、更快、更好的综述
?PaperWeekly 原創(chuàng) · 作者 |?王馨月
學(xué)校 |?四川大學(xué)本科生
研究方向?|?自然語(yǔ)言處理
摘要
深度學(xué)習(xí)徹底改變了計(jì)算機(jī)視覺、自然語(yǔ)言理解、語(yǔ)音識(shí)別、信息檢索等領(lǐng)域。然而,隨著深度學(xué)習(xí)模型的逐步改進(jìn),它們的參數(shù)數(shù)量、延遲、訓(xùn)練所需的資源等都大幅增加。
因此,關(guān)注模型的這些內(nèi)存印跡指標(biāo),而不僅僅是其質(zhì)量,也變得很重要。我們提出并推動(dòng)了深度學(xué)習(xí)中的效率問(wèn)題,然后對(duì)模型效率的五個(gè)核心領(lǐng)域(跨度建模技術(shù)、基礎(chǔ)設(shè)施和硬件)及其開創(chuàng)性工作進(jìn)行了全面綜述。
我們還提供了一個(gè)基于實(shí)驗(yàn)的指南和代碼,供從業(yè)者優(yōu)化他們的模型訓(xùn)練和部署。我們相信這是高效深度學(xué)習(xí)領(lǐng)域的第一次全面綜述,覆蓋從建模技術(shù)到硬件支持的模型效率領(lǐng)域。我們希望這份調(diào)查能夠?yàn)樽x者提供思維模型和對(duì)該領(lǐng)域的必要理解,以應(yīng)用通用效率技術(shù)立即獲得顯著改進(jìn),并為他們提供進(jìn)一步研究和實(shí)驗(yàn)的想法,以獲得額外的收獲。
論文標(biāo)題:
Efficient Deep Learning: A Survey on Making Deep Learning Models Smaller, Faster, and Better
論文作者:
Gaurav Menghani
論文鏈接:
https://arxiv.org/abs/2106.08962
引言
在過(guò)去十年中,使用神經(jīng)網(wǎng)絡(luò)進(jìn)行深度學(xué)習(xí)一直是訓(xùn)練新機(jī)器學(xué)習(xí)模型的主要方法。它的崛起通常歸功于 2012 年的 ImageNet 競(jìng)賽。那一年,多倫多大學(xué)的一個(gè)團(tuán)隊(duì)提交了一個(gè)深度卷積網(wǎng)絡(luò)(AlexNet,以首席開發(fā)者 Alex Krizhevsky 的名字命名),表現(xiàn)優(yōu)于下一個(gè)最好的提交結(jié)果 41%。
作為這項(xiàng)開創(chuàng)性工作的結(jié)果,人們競(jìng)相使用越來(lái)越多的參數(shù)和復(fù)雜性來(lái)創(chuàng)建更深層次的網(wǎng)絡(luò)。VGGNet、Inception、ResNet 等幾個(gè)模型架構(gòu)在隨后幾年的 ImageNet 比賽中相繼打破了之前的記錄,同時(shí)它們的內(nèi)存印跡(模型大小、延遲等)也在不斷增加。
在自然語(yǔ)言理解(NLU)中也有這種影響,其中主要是基于 attention 層的 Transformer 架構(gòu)激發(fā)了 BERT、GPT-3 等通用語(yǔ)言編碼器的開發(fā)。BERT 在發(fā)布時(shí)就擊敗了 11 個(gè) NLU 基準(zhǔn)測(cè)試。GPT-3 也已通過(guò)其 API 在行業(yè)的多個(gè)地方使用。這些領(lǐng)域的共同點(diǎn)是模型占用空間的快速增長(zhǎng)以及與訓(xùn)練和部署它們相關(guān)的成本(如圖)。
由于深度學(xué)習(xí)研究一直專注于改進(jìn)現(xiàn)有技術(shù),因此圖像分類、文本分類等基準(zhǔn)的逐步改進(jìn)與網(wǎng)絡(luò)復(fù)雜度、參數(shù)數(shù)量和所需的訓(xùn)練網(wǎng)絡(luò)所需資源量以及預(yù)測(cè)的延遲的增加相關(guān)。例如,GPT-3 包含 1750 億個(gè)參數(shù),僅訓(xùn)練一次迭代就需要花費(fèi)數(shù)百萬(wàn)美元。這不包括實(shí)驗(yàn)/嘗試不同超參數(shù)組合的成本,這在計(jì)算上也很昂貴。
雖然這些模型在訓(xùn)練它們的任務(wù)上表現(xiàn)良好,但它們不一定足夠有效,無(wú)法在實(shí)際生活中直接部署。深度學(xué)習(xí)從業(yè)者在訓(xùn)練或部署模型時(shí)可能會(huì)面臨以下挑戰(zhàn)。
可持續(xù)的服務(wù)器端擴(kuò)展:訓(xùn)練和部署大型深度學(xué)習(xí)模型的成本很高。雖然訓(xùn)練可能是一次性成本(或者如果使用預(yù)先訓(xùn)練的模型可能是免費(fèi)的),部署并讓推斷運(yùn)行很長(zhǎng)一段時(shí)間仍然可能會(huì)在服務(wù)器消耗方面變得昂貴,考慮到服務(wù)器端的 RAM、CPU 等。即使對(duì)于像谷歌、Facebook、亞馬遜等每年在其數(shù)據(jù)中心上花費(fèi)數(shù)十億美元的組織來(lái)說(shuō),數(shù)據(jù)中心的碳空間印跡也是一個(gè)非常現(xiàn)實(shí)的問(wèn)題。
啟用設(shè)備上部署:出于多種原因(隱私、連接性、響應(yīng)性),某些深度學(xué)習(xí)應(yīng)用程序需要在 IoT 和智能設(shè)備(模型推斷直接在設(shè)備上進(jìn)行)上實(shí)時(shí)運(yùn)行。因此,優(yōu)化目標(biāo)設(shè)備的模型變得勢(shì)在必行。
隱私和數(shù)據(jù)敏感性:當(dāng)用戶數(shù)據(jù)可能敏感時(shí),能夠使用盡可能少的數(shù)據(jù)進(jìn)行訓(xùn)練至關(guān)重要。因此,有效地訓(xùn)練模型數(shù)據(jù)意味著需要較少的數(shù)據(jù)收集。
新應(yīng)用程序:某些新應(yīng)用程序提供了現(xiàn)有現(xiàn)成模型可能無(wú)法解決的新約束(圍繞模型質(zhì)量或占用空間)。
模型爆炸:雖然單一模型可能運(yùn)行良好,但在同一基礎(chǔ)架構(gòu)(托管)上為不同應(yīng)用程序訓(xùn)練和/或部署多個(gè)模型可能會(huì)最終耗盡可用資源。
高效深度學(xué)習(xí)
圍繞上述挑戰(zhàn)的共同主題是效率。我們可以進(jìn)一步分解如下:
推斷效率:這主要處理部署推斷模型(計(jì)算給定輸入的模型輸出)的人會(huì)提出的問(wèn)題。模型小嗎?速度快嗎?更具體地說(shuō),模型有多少參數(shù),磁盤大小是多少,推斷過(guò)程中的 RAM 消耗,推理延遲等。
訓(xùn)練效率:這涉及訓(xùn)練模型的人會(huì)問(wèn)的問(wèn)題,例如模型訓(xùn)練需要多長(zhǎng)時(shí)間?有多少設(shè)備?該模型可以放入內(nèi)存中嗎?它還可能包括諸如模型需要多少數(shù)據(jù)才能在給定任務(wù)上實(shí)現(xiàn)所需性能的問(wèn)題。
如果要給我們兩個(gè)模型,在給定的任務(wù)上表現(xiàn)同樣出色,我們可能希望選擇一個(gè)在上述任一方面或理想情況下在上述兩個(gè)方面都表現(xiàn)更好的模型。如果要在推斷受限的設(shè)備(例如移動(dòng)和嵌入式設(shè)備)或昂貴的設(shè)備(云服務(wù)器)上部署模型,則可能更值得關(guān)注推斷效率。同樣,如果要使用有限或昂貴的訓(xùn)練資源從頭開始訓(xùn)練大型模型,開發(fā)專為提高訓(xùn)練效率而設(shè)計(jì)的模型會(huì)有所幫助。
無(wú)論優(yōu)化目標(biāo)是什么,我們都希望實(shí)現(xiàn)帕累托最優(yōu)。這意味著我們選擇的任何模型都是我們關(guān)心的權(quán)衡的最佳選擇。如圖,綠點(diǎn)代表帕累托最優(yōu)模型,其中其他模型(紅點(diǎn))在相同的推理延遲下均無(wú)法獲得更好的準(zhǔn)確性,反之亦然。帕累托最優(yōu)模型(綠點(diǎn))共同構(gòu)成了我們的帕累托前沿(pareto-frontier)。根據(jù)定義,帕累托前沿中的模型比其他模型更有效,因?yàn)樗鼈冊(cè)诮o定的權(quán)衡下表現(xiàn)最好。因此,當(dāng)我們尋求效率時(shí),我們應(yīng)該考慮在帕累托前沿上發(fā)現(xiàn)和改進(jìn)。
為了實(shí)現(xiàn)這一目標(biāo),我們建議轉(zhuǎn)向一組算法、技術(shù)、工具和基礎(chǔ)設(shè)施的組合,它們可以協(xié)同工作,以允許用戶訓(xùn)練和部署關(guān)于模型質(zhì)量及其內(nèi)存印跡的帕累托最優(yōu)模型。
總結(jié)
在本文中,我們首先展示了深度學(xué)習(xí)模型的快速增長(zhǎng),并說(shuō)明了當(dāng)今訓(xùn)練和部署模型的人必須對(duì)效率做出隱式或顯式?jīng)Q策的事實(shí)。然而,模型效率的前景是廣闊的。
為了解決這個(gè)問(wèn)題,我們?yōu)樽x者設(shè)計(jì)了一個(gè)心智模型,讓他們圍繞模型效率和優(yōu)化的多個(gè)重點(diǎn)領(lǐng)域進(jìn)行思考。核心模型優(yōu)化技術(shù)的綜述使讀者有機(jī)會(huì)了解最新技術(shù)、在建模過(guò)程中應(yīng)用這些技術(shù),和/或?qū)⑺鼈冇米魈剿鞯钠瘘c(diǎn)。基礎(chǔ)設(shè)施部分還列出了使高效模型的訓(xùn)練和推理成為可能的軟件庫(kù)和硬件。
最后,我們展示了一部分明確且可操作的見解并輔以代碼,供從業(yè)者用作該領(lǐng)域的指南。本節(jié)有望提供具體且可操作的要點(diǎn),以及在優(yōu)化用于訓(xùn)練和部署的模型時(shí)要考慮的權(quán)衡。總而言之,我們認(rèn)為通過(guò)本篇綜述,我們讓讀者具備了必要的理解能力,可以分解從次優(yōu)模型到滿足他們對(duì)質(zhì)量和內(nèi)存印跡的模型所需的步驟。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達(dá)讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢?答案就是:你不認(rèn)識(shí)的人。
總有一些你不認(rèn)識(shí)的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學(xué)者和學(xué)術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵(lì)高校實(shí)驗(yàn)室或個(gè)人,在我們的平臺(tái)上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學(xué)術(shù)熱點(diǎn)剖析、科研心得或競(jìng)賽經(jīng)驗(yàn)講解等。我們的目的只有一個(gè),讓知識(shí)真正流動(dòng)起來(lái)。
?????稿件基本要求:
? 文章確系個(gè)人原創(chuàng)作品,未曾在公開渠道發(fā)表,如為其他平臺(tái)已發(fā)表或待發(fā)表的文章,請(qǐng)明確標(biāo)注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發(fā)送,要求圖片清晰,無(wú)版權(quán)問(wèn)題
? PaperWeekly 尊重原作者署名權(quán),并將為每篇被采納的原創(chuàng)首發(fā)稿件,提供業(yè)內(nèi)具有競(jìng)爭(zhēng)力稿酬,具體依據(jù)文章閱讀量和文章質(zhì)量階梯制結(jié)算
?????投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來(lái)稿請(qǐng)備注即時(shí)聯(lián)系方式(微信),以便我們?cè)诟寮x用的第一時(shí)間聯(lián)系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長(zhǎng)按添加PaperWeekly小編
????
現(xiàn)在,在「知乎」也能找到我們了
進(jìn)入知乎首頁(yè)搜索「PaperWeekly」
點(diǎn)擊「關(guān)注」訂閱我們的專欄吧
關(guān)于PaperWeekly
PaperWeekly 是一個(gè)推薦、解讀、討論、報(bào)道人工智能前沿論文成果的學(xué)術(shù)平臺(tái)。如果你研究或從事 AI 領(lǐng)域,歡迎在公眾號(hào)后臺(tái)點(diǎn)擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
總結(jié)
以上是生活随笔為你收集整理的高效的深度学习:将深度学习模型变得更小、更快、更好的综述的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 借呗会不会影响购房贷款 申请时还要满足
- 下一篇: 想买车得等大半年 很多车型都是一车难求