精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

新聞 深度學習
隨著超大規模深度學習模型逐漸成為 AI 的趨勢,如何在有限的 GPU 內存下訓練這些模型成為了一個難題。

 [[410937]]

本文將介紹來自加州伯克利大學的 ActNN,一個基于 PyTorch 的激活壓縮訓練框架。在同樣的內存限制下,ActNN 通過使用 2 bit 激活壓縮,可以將 batch size 擴大 6-14 倍,將模型尺寸或者輸入圖片擴大 6-10 倍。ActNN 相關論文已被 ICML 2021 接收為 Long Talk,代碼開源于 github。

論文 https://arxiv.org/abs/2104.14129

代碼 https://github.com/ucbrise/actnn

AI 訓練撞上「內存墻」

從 AlexNet,ResNet 到 GPT-3,深度學習性能的突破都離不開模型規模的瘋狂增長。大模型有更好的性能已經成為業界的共識。過去幾年,不僅訓練一個最先進模型需要的算力在指數增長,訓練一個最先進模型需要的內存也在指數增長。如下圖所示,大型 Transformer 模型的參數量以每兩年翻 240 倍的速度指數增長。但是,單個 GPU 的內存卻只以每兩年翻 2 倍的速度在緩慢增長。另外,在訓練模型時,不光要存儲模型參數,還要存儲中間結果激活值和優化器狀態,所需要的內存更多。如何在有限的 GPU 內存下訓練這些大規模模型成為了挑戰。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

source:Gholami A, Yao Z, Kim S, Mahoney MW, Keutzer K. AI and Memory Wall. RiseLab Medium Blog Post, University of California Berkeley

節省訓練內存的方法

目前,節省訓練內存的方法主要有三類:1. 重計算(Gradient checkpointing/Rematerialization) 2. 使用 CPU 內存進行交換 (swapping) 和 3. 使用分布式訓練將 Tensor 分散存儲在多個 GPU 上。這三類方法互相不沖突,可以結合使用。大部分機器學習框架對這些方法都提供了一些支持,也有不少相關的論文。但是,想要高效、自動化地實現這些策略并不容易。與已有方法不同,我們提出了 ActNN,一個新的基于壓縮的內存節省框架。在提供理論證明的同時,我們基于 PyTorch 提供了一個高效易用的實現。Table.1 比較了 ActNN 和已有的一些內存節省系統。ActNN 支持 PyTorch 的動態圖執行模式,并且不需要預先進行復雜的策略搜索。ActNN 作為一個獨立的 Python 庫,使用時 import 即可,不需要修改或重新編譯 PyTorch。與已有的工作相比,ActNN 靈活且易于使用。同時,ActNN 在理論上也可以和已有的技術相互疊加。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

ActNN:2 bit 激活壓縮訓練

在訓練一個多層神經網絡時,在前向傳播中,每一層的中間結果都要被存下來用于計算反向傳播的梯度。這些中間結果,又被叫做「激活值」(activation),實際上占據了大部分的內存消耗,尤其是在 batch size 較大或者輸入圖片較大的時候。ActNN 的原理是就是壓縮這些激活值來節省內存。如下圖所示,左圖表示的是普通的前向傳播和反向傳播,前向傳播時會存下所有層的 fp32 激活值用于反向傳播,內存使用在計算 loss 的時候達到峰值。右圖表示的是 ActNN 的訓練方法:在前向傳播時,通過一個壓縮操作 Q 將激活值壓縮后再存儲;反向傳播時,通過解壓縮操作 Q^-1 將激活值解壓再計算梯度。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

如果只是為了節省內存,這里可以使用各種壓縮算法,但是大部分現有的壓縮算法并不能高效地運行在 GPU 上,會引入較大的開銷。ActNN 選擇了使用 2-bit 量化作為這里的壓縮算法。量化操作的代價較小,而且有一些好的數學性質允許我們使用有損壓縮達到較大的壓縮比。

把 fp32 浮點數量化為 2-bit 整數是一個有損壓縮,會引入一些誤差。論文從理論上分析了量化引入的誤差是如何影響訓練的收斂性的。

第一,存在一個隨機化的量化策略,使得使用有損量化壓縮后,估計出的有損梯度是原梯度的一個無偏估計。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

在這一條件下,我們套用已有的隨機梯度下降收斂性定理,得出最后收斂時的誤差會被梯度的方差所限制。

第二,我們推導出了使用量化壓縮之后,隨機梯度下降計算出的梯度的方差。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

等號右邊的第一項是隨機梯度下降在 minibatch 采樣時產生的方差,等號右邊的第二項是有損壓縮額外引入的方差。這條公式顯示地刻畫了有損壓縮帶來的影響。注意到,當有損量化壓縮帶來的方差遠小于原來隨機梯度下降自帶的方差時,ActNN 引入的有損壓縮就不會影響訓練的收斂性。更多關于公式的推導和可視化參見文末的論文鏈接。論文對不同的算子(conv2d,batch norm,linear等)都提供了詳細的分析。

由上述公式啟發,我們提出了一些新的量化技巧用于降低有損壓縮引入的額外方差。我們引入了新的量化技巧 ( Per-group Quantization,Fine-Grained Mixed-Precision,Runtime Adaptation) 來利用梯度在不同樣本,不同緯度,不同層之間的異構特性。最后的壓縮算法會分配更多的 bit 給更重要的激活值。平均每個浮點數分配到 2 bit。

在具體實現壓縮算法時,還有很多可以調節的參數。這里產生了一個內存節省和訓練速度的取舍。一般來說,使用更復雜的壓縮算法可以節省更多的內存,但是也會引入更多額外的開銷,使訓練速度變慢。為了給用戶較大的靈活性,ActNN 提供了 5 個優化等級 L1-L5 供用戶選擇。低的優化等級節省的內存較少,但是運行速度快。高的優化等級節省的內存多,但是運行也更慢。在最高優化等級 L5 下,ActNN 會結合一個簡單的內存交換策略,將壓縮后的激活值移到 CPU 內存上,進一步節省內存。

實現

要在 PyTorch 實現 ActNN 算法非常簡單。對于一個 PyTorch nn Module,我們只需要在其 forward 函數里加入量化壓縮,在其 backward 函數里加入解壓縮操作。所有的計算還是在 fp32 下進行,與原來一樣,偽代碼如下圖所示。

ActNN 為大部分常用的 PyTorch nn.Module 實現了使用量化壓縮的版本。用戶只需將模型里的所有 PyTorch nn.Module 替換成 ActNN 對應的 Module (如把 nn.Conv2d 替換成 actnn.Conv2d),即可節省內存,不需要更改其他代碼。ActNN 同時也提供了一個 wrapper 實現一行代碼自動替換。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

實驗結果

因為 ActNN 進行的是有損壓縮,所以最重要的一點是先驗證 ActNN 是否會影響模型的精度。下圖是使用 ActNN 在 ImageNet 上訓練 ResNet-50 的結果。FP 代表普通的 fp32 訓練, BLPA 是來自 NeurIPS 2019 的一個相關工作。可以看到,在 ActNN 的 2-bit 壓縮模式下,模型幾乎沒有損失精度。在更極限的 1.25 bit 的情況下,ActNN 也能收斂,只不過會損失一些精度。而之前的工作 BLPA 在小于 4 bit 的情況就下無法收斂。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

我們還在圖像分割,物體檢測,以及自監督學習等多個任務上進行了實驗。ActNN 都能在 2-bit 壓縮模式下達到和普通 fp32 幾乎一樣的結果。在部分任務上,因為 ActNN 可以使用更大的 batch size,甚至可以取得更好的測試結果。詳細的實驗結果和訓練記錄參見文末的論文與 github 鏈接。

之后,我們對比了 ActNN 與普通 fp32 訓練的實際內存使用情況。如下表所示,ActNN 可以將激活值占用的內存壓縮 12 倍,將訓練使用的總內存壓縮 4 - 7 倍。這一實際內存壓縮效果符合理論推導。為什么激活值壓縮倍率是 12 而不是 32 bit / 2 bit = 16?主要是因為 ActNN 不能使用 inplace 的 ReLU,以及需要存儲少量額外的 min 和 scale 用于解壓縮。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

最后,我們測試了 ActNN 的訓練速度。因為 ActNN 在訓練過程中進行了壓縮,這些壓縮在節省內存的同時也會引入額外的計算開銷。一般來說,省得內存越多,進入的額外開銷就越多,訓練也就越慢。我們在 NVIDIA T4 (16 GB 內存) 上對比了 ActNN 和已有內存節省系統的訓練速度。如下圖所示,DTR (ICLR 2020),BLPA (NeurIPS 2019)和 swap 分別是基于重計算,壓縮和內存交換的三種方法,紅叉代表 Out-of-memory。y 軸是訓練吞吐量 (images per second),越高越好。綠色的曲線是綜合 ActNN 在不同優化等級下的最優結果。可以看到,ActNN 不僅能開到最大的 batch size(即最省內存),同時在所有 batch size 下都比 baseline 的訓練速度更快。

節省顯存新思路,在 PyTorch 里使用 2 bit 激活壓縮訓練神經網絡

我們還對更多的網絡進行了測試。在同樣的內存限制下,ActNN 可以將 batch size 擴大 6-14 倍,將模型尺寸或者輸入圖片擴大 6-10 倍。詳細的實驗設置和結果參見文末的論文鏈接。

兩行代碼即可在 PyTorch 中使用

  1. import actnn 
  2. model = actnn.QModule(model) 

ActNN 提供了一個自動模型轉換封裝。只需在訓練腳本里插入兩行代碼,即可將普通的 PyTorch 模型轉換為使用 ActNN 的模型。同時,ActNN 也提供了更高級的 API 支持定制化的使用場景。

更多的例子參見 github 鏈接。我們提供了在圖像識別、圖像分割、物體檢測,以及自監督學習等多個任務上使用 actnn 的完整例子和訓練記錄,歡迎試用!

 

責任編輯:張燕妮 來源: 機器之心Pro
相關推薦

2017-10-09 11:21:46

神經網絡OpenAI非線性

2022-04-02 15:56:43

神經網絡人工智能技術

2021-12-28 08:48:54

PyTorch神經網絡人工智能

2017-08-28 21:31:37

TensorFlow深度學習神經網絡

2017-01-10 14:28:01

數據管理大數據SAP

2022-09-26 00:00:00

神經網絡激活函數sigmoid

2017-12-22 08:47:41

神經網絡AND運算

2017-09-28 16:15:12

神經網絡訓練多層

2019-08-19 00:31:16

Pytorch神經網絡深度學習

2017-08-29 13:50:03

TensorFlow深度學習神經網絡

2017-03-27 16:18:30

神經網絡TensorFlow人工智能

2017-04-26 08:31:10

神經網絡自然語言PyTorch

2023-04-18 15:15:06

神經網絡激活函數開發

2018-12-14 08:02:55

神經網絡機器學習二值模型

2009-01-11 10:27:00

小型辦公室網絡組建

2021-01-10 08:46:43

神經網絡激活函數人工神經網絡

2024-07-24 08:04:24

神經網絡激活函數

2024-11-07 08:26:31

神經網絡激活函數信號

2018-07-03 16:10:04

神經網絡生物神經網絡人工神經網絡

2025-02-19 15:12:17

神經網絡PyTorch大模型
點贊
收藏

51CTO技術棧公眾號

亚洲精品在线电影| 日产精品久久久久| av老司机免费在线| 久久一区二区视频| 国产在线观看一区二区三区| 国产高潮流白浆| 美女主播精品视频一二三四| 欧美视频一区二区在线观看| 996这里只有精品| 日本黄在线观看| 国产伦精品一区二区三区免费迷 | 91精品国产91热久久久做人人 | 成人在线观看高清| 色爱av综合网| 精品久久国产97色综合| 网站一区二区三区| 国产不卡人人| 樱花草国产18久久久久| 色爱区成人综合网| 午夜影院免费体验区| 精品一二三四区| 国产成人中文字幕| 日韩欧美一级视频| 国产主播精品| 久久视频这里只有精品| jizz中文字幕| 九九久久电影| 亚洲精品久久久一区二区三区| 亚洲一区二区三区观看| 色成人免费网站| 婷婷久久综合九色综合绿巨人| 亚洲自拍偷拍综合| 91国自产精品中文字幕亚洲| 男女做暖暖视频| 欧美肥老太太性生活| 一本色道久久88亚洲综合88| 特级西西人体wwwww| 伊色综合久久之综合久久| 7777精品伊人久久久大香线蕉超级流畅| 少妇性l交大片| 亚洲人免费短视频| 色一情一伦一子一伦一区| 人妻少妇精品久久| 狠狠躁少妇一区二区三区| 亚洲综合网站在线观看| 国产一区二区片| 亚洲综合伊人久久大杳蕉| 亚洲视频一区二区在线| 中文字幕久久综合| 成人高清免费在线| 亚洲美女少妇撒尿| 日本成人在线不卡| 草美女在线观看| 午夜免费久久看| 青青青国产在线观看| 三级在线观看视频| 色欧美乱欧美15图片| 国产成人久久777777| 日韩欧美一区二区三区在线观看 | 国产一区二区三区四区视频| 蜜桃精品在线观看| 91免费国产网站| 成人黄色在线观看视频| www.欧美精品一二区| 久久国产精品-国产精品| 欧美成熟毛茸茸| 中文字幕欧美国产| 亚洲国产精品女人| 国产极品人妖在线观看| 精品久久久中文| 日韩爱爱小视频| 国产一区二区三区| 亚洲精品福利资源站| 日韩av在线看免费观看| 99热国内精品| 国产69精品久久久久9999| 久久中文字幕免费| 久久99国产精品麻豆| 91精品婷婷国产综合久久蝌蚪| 免费av网站在线播放| 国产日韩在线不卡| 欧美交换配乱吟粗大25p| 日本免费一区二区六区| 欧美日韩在线亚洲一区蜜芽| 久久av一区二区三| 视频国产一区| 欧美成人三级视频网站| 成人毛片18女人毛片| 免费高清成人在线| 国产美女精品久久久| 国产系列在线观看| 亚洲影院理伦片| 热久久精品免费视频| 久久亚洲精精品中文字幕| 精品亚洲夜色av98在线观看| 999精品视频在线观看播放| 91久久视频| 国产日韩在线一区| 青春草在线观看| 亚洲精品国产无天堂网2021 | 中文字幕精品一区日韩| 中文字幕21页在线看| 91精品国产欧美一区二区成人| 美女又爽又黄视频毛茸茸| 亚洲电影影音先锋| 国产成人avxxxxx在线看| www.色亚洲| 国产精品丝袜在线| 精品少妇一区二区三区在线| 精品国产亚洲日本| 在线亚洲国产精品网| jizz国产免费| 国产精品亚洲一区二区三区妖精 | 最新黄网在线观看| 欧美日韩国产一二三| 日韩aaaaa| 欧美精品三区| 成人午夜在线视频一区| 国产尤物视频在线| 欧美日韩国产色视频| 激情小说欧美色图| 亚洲一区 二区 三区| 国产精品色午夜在线观看| 女人天堂在线| 精品久久久视频| 国产精品久久AV无码| 欧美88av| 97超级碰碰| 欧美xxxx性xxxxx高清| 欧美精品久久一区二区三区| 日韩一级片在线免费观看| 久久精品亚洲| 欧美日韩视频在线一区二区观看视频| 日本在线高清| 日韩精品视频中文在线观看| 久久精品国产亚洲av高清色欲| 国产一二精品视频| 强开小嫩苞一区二区三区网站| 久久人人视频| 精品国产欧美成人夜夜嗨| 中文字幕视频二区| 亚洲欧洲一区二区三区| 午夜一区二区视频| 国产精品99在线观看| 成人激情春色网| 久久99精品久久| 91麻豆精品国产自产在线观看一区| 男人天堂资源网| 激情综合五月天| 欧美黄色三级| 亚欧美中日韩视频| 国产精品区一区二区三在线播放 | 四虎影视精品成人| 亚洲午夜精品17c| 久久亚洲欧美日韩精品专区| 日韩视频在线免费看| 人人精品亚洲| 日本精品视频网站| 国产在线观看网站| 欧美日韩激情一区二区| caoporn91| 高清av一区二区| 国产免费成人在线| 青青草成人影院| 91久久国产综合久久蜜月精品| 麻豆福利在线观看| 国产偷国产偷亚洲清高网站| 中文字幕人妻色偷偷久久| 1区2区3区国产精品| 在线a免费观看| 9色国产精品| 亚洲欧美国产不卡| 一区中文字幕电影| 欧美一级片在线播放| 91伦理视频在线观看| 欧美一卡二卡三卡四卡| 国产又色又爽又黄的| 欧美国产丝袜视频| gogo亚洲国模私拍人体| 先锋影音国产一区| 在线国产精品网| 国产一区二区三区亚洲| 国产精品扒开腿做爽爽爽男男| 乱人伦中文视频在线| 亚洲国产日韩一区| 亚洲天堂中文在线| 五月天网站亚洲| 亚洲AV成人无码网站天堂久久| 床上的激情91.| 日韩一级理论片| 激情五月***国产精品| 无遮挡亚洲一区| 国产调教精品| 亚洲a成v人在线观看| 性国裸体高清亚洲| 欧美尺度大的性做爰视频| 嫩草在线播放| 精品国产伦一区二区三区观看体验| 男人天堂视频在线| 亚洲成人资源在线| 久久久久久久久久97| 91麻豆国产福利精品| 人妻少妇偷人精品久久久任期| 久久亚洲电影| 欧美视频在线观看网站| 婷婷综合视频| 日韩av一区二区三区在线| 哺乳挤奶一区二区三区免费看| 国产精品亚洲美女av网站| 日韩激情电影免费看| 欧美肥婆姓交大片| 黄色免费网站在线观看| 亚洲天堂av综合网| 天天操天天干天天操| 欧美一级二级在线观看| 中文字幕日本人妻久久久免费 | 欧美激情一区在线| 中文字幕日韩三级片| 成人性视频免费网站| 99九九精品视频| 免费高清成人在线| 国产精品乱码久久久久| 亚洲综合国产| 国自产拍偷拍精品啪啪一区二区| 午夜日韩电影| 国产香蕉一区二区三区| 久久伦理在线| 亚洲韩国在线| 欧美限制电影| 午夜精品美女久久久久av福利| 亚洲国产欧美日韩在线观看第一区 | japanese色系久久精品| 91中文字幕在线观看| 天堂综合在线播放| 成人激情综合网| 欧美三级电影网址| 国产主播欧美精品| 四虎国产精品免费久久| 国产精品欧美日韩| 国产香蕉久久| 91久久久久久久久| 亚洲狼人综合| 亚洲va国产va天堂va久久| 国产精一区二区| 亚洲综合在线播放| 精品一区视频| 成人免费91在线看| 97人人澡人人爽91综合色| 7777精品久久久大香线蕉小说| 精品中文字幕一区二区三区| 91精品久久香蕉国产线看观看| 日韩黄色av| 国产欧美日韩综合一区在线观看 | av图片在线观看| 在线观看日韩毛片| 中文字幕日韩经典| 欧美一级黄色片| 日本黄色免费视频| 国产视频一区在线| 日本成人在线播放| 九九热精品视频| 97蜜桃久久| 国产成人高清激情视频在线观看| 91成人在线| 亚洲一区二区三区成人在线视频精品 | 免费中文字幕日韩| 亚洲福利一二三区| 久久久久久久久久成人| 欧美久久高跟鞋激| 日韩一级免费毛片| 在线观看久久av| 99视频免费在线观看| 性欧美暴力猛交69hd| 国产精品极品美女在线观看| 国产在线精品成人一区二区三区| 亚洲一区二区三区中文字幕在线观看| 精品一区二区三区日本| 欧美日韩水蜜桃| 国产日本欧美在线| 国产精品试看| 激情久久综合网| 成人v精品蜜桃久久一区| 国产jjizz一区二区三区视频| 亚洲丝袜美腿综合| 天堂网免费视频| 欧美一级生活片| 四虎影视2018在线播放alocalhost| 综合欧美国产视频二区| 色a资源在线| 国产精品久久网| 欧美理论电影在线精品| 99亚洲精品视频| 久久亚洲二区| 国产 xxxx| 亚洲视频狠狠干| 91在线视频免费播放| 日韩精品资源二区在线| 欧美美女色图| 欧美精品videossex性护士| 久久久人成影片一区二区三区在哪下载| 91九色极品视频| 天天综合一区| 老熟妇仑乱视频一区二区| 国产高清一区日本| 国产探花在线视频| 色婷婷精品大在线视频| 黄色三级网站在线观看| 久久精品电影网站| 欧美日韩激情电影| 蜜桃999成人看片在线观看| 欧美视频成人| 天天干天天色天天干| 欧美经典三级视频一区二区三区| 免费一级特黄特色大片| 欧美一区二区在线看| 999在线视频| 国产精品国产三级国产aⅴ浪潮 | 久久久国产午夜精品| 日本免费在线播放| 日韩一区二区在线看片| 在线观看免费版| 国产成人精品一区二区| 亚洲8888| 日韩欧美国产免费| 91在线小视频| 国产精品自拍99| 亚洲国产精品高清久久久| 男女视频在线| av日韩中文字幕| 欧美涩涩视频| 国产人妻黑人一区二区三区| 一区二区三区在线免费观看| 国产精品伦理一区| 久久午夜a级毛片| 国产乱码精品一区二区三区亚洲人 | 国产精品男人的天堂| 精品久久91| 91看片在线免费观看| 国产欧美日本一区二区三区| 香蕉污视频在线观看| 亚洲天堂第一页| jizz亚洲女人高潮大叫| 亚洲看片网站| 激情久久五月天| 日日骚一区二区三区| 欧美一区二区三区白人| 性直播体位视频在线观看| 懂色一区二区三区av片| 悠悠资源网久久精品| 人体私拍套图hdxxxx| 疯狂做受xxxx欧美肥白少妇 | 久久精品精品电影网| 久久中文字幕一区二区| 免费极品av一视觉盛宴| 99热这里都是精品| 日韩 国产 欧美| 日韩网站在线观看| 国产区一区二| 日韩日韩日韩日韩日韩| 久久久精品天堂| 一本到在线视频| 久久久久久美女| 伊人成综合网yiren22| 欧美三级午夜理伦三级富婆| 综合亚洲深深色噜噜狠狠网站| 99在线精品视频免费观看软件| 久久人91精品久久久久久不卡| 亚洲精品动态| 午夜久久福利视频| 午夜视频一区在线观看| 福利在线观看| 99国产在线| 日韩中文字幕麻豆| 深夜福利影院在线观看| 国产丝袜精品第一页| 噜噜噜91成人网| 在线观看欧美激情| 欧美日韩性视频在线| 国产第一页在线播放| 亚洲国内精品在线| 最新欧美电影| 成人手机在线播放| 97国产一区二区| 一区二区www| 国产午夜一区二区三区| 日本黄色一级视频| 久久精品电影网站| 日韩成人动漫在线观看| 午夜免费看毛片| 欧美日韩亚洲高清| 免费人成在线观看播放视频| 国产日本一区二区三区| 天堂久久久久va久久久久| 久久免费看少妇高潮v片特黄| 日韩精品在线免费观看视频| aa亚洲一区一区三区| 免费在线激情视频| 亚洲精品视频一区| 高清av在线| 日韩亚洲国产中文字幕欧美|