日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何顯著提升Vision Transformer的訓(xùn)練效率

深度學(xué)習(xí)自然語言處理 ? 來源:GiantPandaCV ? 作者:GiantPandaCV ? 2022-05-24 10:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

近期MetaAI發(fā)布了一篇博客,關(guān)于如何顯著提升Vision Transformer的訓(xùn)練效率。

原文:[Significantly faster Vision Transformer training]

鏈接:https://ai.facebook.com/blog/significantly-faster-vision-transformer-training

What the research is

Vision Transformer模型幾乎火遍計算機(jī)視覺各個領(lǐng)域,其性能隨著參數(shù)增加和更久的訓(xùn)練過程而得到提升。隨著模型越來越大,超過了萬億次浮點(diǎn)運(yùn)算的規(guī)模,該領(lǐng)域達(dá)到了瓶頸:訓(xùn)練一個模型往往要一個月,需要幾百上千個GPU,導(dǎo)致大部分人無法接觸到大規(guī)模ViT模型,并進(jìn)而增加了對加速器的需求。

為了降低門檻,讓更多人能夠應(yīng)用ViT,我們開發(fā)一系列方法來加速整個訓(xùn)練。我們基于MetaAI的圖像分類模型庫PyCls實(shí)現(xiàn)了一系列優(yōu)化,這些優(yōu)化極大的提升了模型訓(xùn)練過程的吞吐量:

d3d58a30-da96-11ec-ba43-dac502259ad0.png

How it works ?

我們首先對代碼庫進(jìn)行分析,以定位訓(xùn)練效率低下的原因,最后關(guān)注點(diǎn)落在計算類型上:大部分模型都是用FP32進(jìn)行訓(xùn)練,如果使用FP16訓(xùn)練的話,可以降低顯存占用,并提高模型訓(xùn)練速度,但這一做法經(jīng)常會導(dǎo)致準(zhǔn)確率下降

所以我們選了一個折中的方法:自動混合精度。在該方法下,我們用half類型進(jìn)行計算,以加快訓(xùn)練,減少顯存使用。并以fp32類型存儲參數(shù),以保證模型準(zhǔn)確率。其中我們沒有手動將網(wǎng)絡(luò)各部分轉(zhuǎn)換成half類型,而是應(yīng)用AMP各種模式(如O1, O2, O3),以尋找一個既能提升速度又不影響精度的平衡點(diǎn)。

FSDP

為了讓訓(xùn)練更加高效,我們應(yīng)用了FSDP訓(xùn)練策略,他能夠?qū)?shù),梯度,優(yōu)化器狀態(tài)分片到各GPU上。在FSDP的幫助下,我們可以用更少的GPU資源構(gòu)建更大的模型。

FSDP策略可以參考 [數(shù)據(jù)并行Deep-dive: 從DP 到 Fully Sharded Data Parallel (FSDP)完全分片數(shù)據(jù)并行] 鏈接:https://zhuanlan.zhihu.com/p/485208899

MTA Optimizer

前向計算完畢后,優(yōu)化器需要對各個參數(shù)進(jìn)行修改。而當(dāng)參數(shù)比較多的情況下,對應(yīng)啟動的Optimizer Kernel就會變得很多,通常這些Kernel都比較小,計算負(fù)擔(dān)不大,啟動Kernel的開銷反而占了大頭。

ContiguousParams中,它將模型參數(shù)放置到一塊連續(xù)的顯存中進(jìn)行計算,這樣就能減少優(yōu)化器這部分的時間。下圖是Resnet50+SGD是否應(yīng)用ContiguousParams的比較,可以看到OptimizerStep這部分時間顯著減少了。

d4089a74-da96-11ec-ba43-dac502259ad0.png

而NVIDIA的Apex庫的做法則是在底層重新實(shí)現(xiàn)了一系列MultiTensorOptimizer,如Adam, Adagrad等等。

Apex這種方法比較硬核,普通用戶如果想要自己自定義優(yōu)化器并應(yīng)用Multi Tensor的優(yōu)化,就必須改動底層CUDA代碼。而最近PyTorch也在計劃提供了一系列foreach接口[Replace optimizers in torch.optim with the ones from torch.optim._multi_tensor] 鏈接:https://github.com/pytorch/pytorch/pull/49039,讓用戶只需要在Python層即可享受到優(yōu)化,對應(yīng)的MultiTensor版Momentum優(yōu)化器代碼如下所示:

torch._foreach_mul_(bufs,momentum)
torch._foreach_add_(bufs,grads,alpha=1-dampening)

Pooled Classifier

原版的ViT是額外加了一個分類token,來輸出最后的分類結(jié)果。而這里采用平均池化 如:https://github.com/facebookresearch/pycls/blob/main/pycls/core/config.py#L205 處理最后的分類

Batch Second Input Tensor Layout

這里的數(shù)據(jù)格式與以往不同,將batch維度放在第二維,并在調(diào)用nn.MultiheadAttention的時候,設(shè)置batch_first=False,以減少不必要的轉(zhuǎn)置

ifself.batch_firstandis_batched:
returnattn_output.transpose(1,0),attn_output_weights
else:
returnattn_output,attn_output_weights

總感覺這個實(shí)現(xiàn)怪怪的

其他優(yōu)化

我們在采取560大小的batchsize下,達(dá)到了1.51倍的加速比,進(jìn)一步的我們將batchsize設(shè)置為384,并將圖片大小增大到256,達(dá)到了1.86倍加速比。在全FP16運(yùn)算下,能夠達(dá)到2.18倍加速比,盡管這偶爾會降低準(zhǔn)確率(在實(shí)驗(yàn)中,準(zhǔn)確率降低不到10%)。

d451532c-da96-11ec-ba43-dac502259ad0.png

使用上述優(yōu)化,我們將Imagenet1K數(shù)據(jù)集每epoch訓(xùn)練時間從0.65小時降低到0.43小時

d4786106-da96-11ec-ba43-dac502259ad0.png

我們還研究了不同GPU配置對訓(xùn)練速度的影響,在不同配置下我們都實(shí)現(xiàn)了比DDP baseline更高的吞吐量。隨著GPU增加,吞吐量會因?yàn)樵O(shè)備之間的通信開銷略微下降。然而即使在64塊GPU下,我們?nèi)匀槐菵DP基線快1.83倍

d4c4af7a-da96-11ec-ba43-dac502259ad0.png

文中鏈接

PyCls :https://github.com/facebookresearch/pycls

ContiguousParams:https://github.com/PhilJd/contiguous_pytorch_params

Adam:https://github.com/NVIDIA/apex/blob/master/csrc/multi_tensor_adam.cu

審核編輯 :李倩



聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 加速器
    +關(guān)注

    關(guān)注

    2

    文章

    841

    瀏覽量

    40269
  • Vision
    +關(guān)注

    關(guān)注

    1

    文章

    205

    瀏覽量

    19502

原文標(biāo)題:如何更快地訓(xùn)練Vision Transformer

文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Transformer如何讓自動駕駛大模型獲得思考能力?

    在談及自動駕駛時,Transformer一直是非常關(guān)鍵的技術(shù),為何Transformer在自動駕駛行業(yè)一直被提及?
    的頭像 發(fā)表于 02-01 09:15 ?4424次閱讀

    AGV機(jī)器人如何提升搬運(yùn)效率?

    AGV智能搬運(yùn)車正顛覆傳統(tǒng)物流模式,24小時精準(zhǔn)作業(yè)、多車協(xié)同、自主避障,將搬運(yùn)效率提升300%以上,成為智能制造的核心引擎。
    的頭像 發(fā)表于 01-15 16:48 ?433次閱讀
    AGV機(jī)器人如何<b class='flag-5'>提升</b>搬運(yùn)<b class='flag-5'>效率</b>?

    信維低損耗MLCC電容,提升電路效率優(yōu)選

    信維低損耗MLCC電容在提升電路效率方面表現(xiàn)優(yōu)異,其核心優(yōu)勢體現(xiàn)在 低損耗特性、高頻響應(yīng)能力、小型化設(shè)計、高可靠性 以及 廣泛的應(yīng)用適配性 ,具體分析如下: 一、低損耗特性直接提升電路效率
    的頭像 發(fā)表于 11-24 16:30 ?1064次閱讀

    函數(shù)發(fā)生器和直流電源結(jié)合如何顯著提升測試效率

    函數(shù)發(fā)生器和直流電源是電子測試領(lǐng)域中不可或缺的兩大工具。但您是否曾想過,將這兩者結(jié)合使用能帶來怎樣的出色效果?今天,我們將深入探討這一強(qiáng)大組合如何顯著提升測試效率,并為工程師帶來前所未有的測試體驗(yàn)。
    的頭像 發(fā)表于 11-13 09:30 ?3392次閱讀
    函數(shù)發(fā)生器和直流電源結(jié)合如何<b class='flag-5'>顯著</b><b class='flag-5'>提升</b>測試<b class='flag-5'>效率</b>

    斑馬技術(shù)助力PouchNATION提升大型活動管理效率

    斑馬技術(shù)公司宣布 PouchNATION 通過采用斑馬技術(shù)的高性能掃描解決方案,顯著提升其大型活動的管理效率。
    的頭像 發(fā)表于 11-04 16:15 ?916次閱讀

    借助NVIDIA Megatron-Core大模型訓(xùn)練框架提高顯存使用效率

    策略;理解這些策略對顯存的影響,才能更好地規(guī)劃訓(xùn)練超參數(shù),在不 OOM (out of memory) 的情況下盡可能提升硬件使用效率。
    的頭像 發(fā)表于 10-21 10:55 ?1431次閱讀
    借助NVIDIA Megatron-Core大模型<b class='flag-5'>訓(xùn)練</b>框架提高顯存使用<b class='flag-5'>效率</b>

    用普源示波器DH1204自動測量功能提升效率的實(shí)用指南

    在現(xiàn)代電子測量中,示波器是工程師不可或缺的工具。普源示波器DH1204憑借其強(qiáng)大的自動測量功能,可顯著提升信號分析效率。本文將結(jié)合操作要點(diǎn)與實(shí)用技巧,為您解析如何高效利用該功能。
    的頭像 發(fā)表于 10-18 09:59 ?1571次閱讀
    用普源示波器DH1204自動測量功能<b class='flag-5'>提升</b><b class='flag-5'>效率</b>的實(shí)用指南

    借助NVIDIA Cosmos模型提升機(jī)器人訓(xùn)練效率

    隨著物理 AI 系統(tǒng)的不斷發(fā)展,對豐富標(biāo)記數(shù)據(jù)集的需求正在急速增長,已經(jīng)超出了在現(xiàn)實(shí)世界中通過人工采集所能滿足的范圍。世界基礎(chǔ)模型(WFMs)是經(jīng)過訓(xùn)練的生成式 AI 模型,能夠根據(jù)現(xiàn)實(shí)世界環(huán)境的動態(tài),對未來的世界狀態(tài)進(jìn)行仿真、預(yù)測和推理,這類模型有望幫助突破這一數(shù)據(jù)難題。
    的頭像 發(fā)表于 09-23 15:30 ?1228次閱讀
    借助NVIDIA Cosmos模型<b class='flag-5'>提升</b>機(jī)器人<b class='flag-5'>訓(xùn)練</b><b class='flag-5'>效率</b>

    【「AI芯片:科技探索與AGI愿景」閱讀體驗(yàn)】+第二章 實(shí)現(xiàn)深度學(xué)習(xí)AI芯片的創(chuàng)新方法與架構(gòu)

    ,顯著提高Transformer 模型的訓(xùn)練速度。 為了優(yōu)化計算和存儲效率,Transformer 引擎使用張量統(tǒng)計得出的擴(kuò)展因子,動態(tài)的將
    發(fā)表于 09-12 17:30

    【「DeepSeek 核心技術(shù)揭秘」閱讀體驗(yàn)】第三章:探索 DeepSeek - V3 技術(shù)架構(gòu)的奧秘

    數(shù)據(jù)中挖掘有價值信息,這也讓我意識到架構(gòu)設(shè)計對模型性能起著根本性作用,是 AI 具備強(qiáng)大能力的 “骨骼” 支撐。 二、流水線并行 書中關(guān)于流水線并行的內(nèi)容,展現(xiàn)了提升計算效率的巧妙思路。簡單流水線并行雖
    發(fā)表于 07-20 15:07

    同步整流MOSFET的設(shè)計要點(diǎn)與效率提升技巧

    在現(xiàn)代高效率電源系統(tǒng)中,同步整流技術(shù)已成為主流選擇,尤其是在DC-DC變換器、USB快充適配器、服務(wù)器電源和車載電源等場景中。同步整流相比傳統(tǒng)的肖特基二極管整流,能夠顯著降低導(dǎo)通損耗,提高轉(zhuǎn)換效率
    的頭像 發(fā)表于 07-03 09:42 ?1316次閱讀
    同步整流MOSFET的設(shè)計要點(diǎn)與<b class='flag-5'>效率</b><b class='flag-5'>提升</b>技巧

    中微愛芯觸摸芯片EMI提升指南

    為助力客戶提升對觸摸相關(guān)方案的開發(fā)效率,優(yōu)化用戶的體驗(yàn)感。中微愛芯基于豐富的項目經(jīng)驗(yàn),針對觸摸芯片EMI無法通過的情況提供了幾種常用的解決方法,顯著提升開發(fā)
    的頭像 發(fā)表于 06-24 10:38 ?6900次閱讀
    中微愛芯觸摸芯片EMI<b class='flag-5'>提升</b>指南

    交流充電樁負(fù)載能效提升技術(shù)

    功率器件與拓?fù)鋬?yōu)化 寬禁帶半導(dǎo)體器件應(yīng)用 傳統(tǒng)硅基IGBT/MOSFET因開關(guān)損耗高,限制了系統(tǒng)效率。采用碳化硅(SiC)或氮化鎵(GaN)器件可顯著降低損耗: SiC MOSFET導(dǎo)通電阻低(僅為硅
    發(fā)表于 05-21 14:38

    快手上線鴻蒙應(yīng)用高性能解決方案:數(shù)據(jù)反序列化性能提升90%

    “class-transformer”的使用代碼即可實(shí)現(xiàn)性能優(yōu)化,既保持了對原有開發(fā)模式的兼容性,又大幅提升了運(yùn)行效率,整體改造過程無侵入、低成本、低風(fēng)險,適用于已有項目的快速集成與上線。 在實(shí)際應(yīng)用中
    發(fā)表于 05-15 10:01

    提升AI訓(xùn)練性能:GPU資源優(yōu)化的12個實(shí)戰(zhàn)技巧

    在人工智能與機(jī)器學(xué)習(xí)技術(shù)迅速發(fā)展的背景下,GPU計算資源的高效利用已成為關(guān)鍵技術(shù)指標(biāo)。優(yōu)化的GPU資源分配不僅能顯著提升模型訓(xùn)練速度,還能實(shí)現(xiàn)計算成本的有效控制。根據(jù)AI基礎(chǔ)設(shè)施聯(lián)盟2024年發(fā)布
    的頭像 發(fā)表于 05-06 11:17 ?1699次閱讀
    <b class='flag-5'>提升</b>AI<b class='flag-5'>訓(xùn)練</b>性能:GPU資源優(yōu)化的12個實(shí)戰(zhàn)技巧
    当阳市| 北流市| 垫江县| 威宁| 肥乡县| 霍林郭勒市| 西宁市| 托克托县| 辽源市| 乐昌市| 滕州市| 江源县| 小金县| 云林县| 陵水| 兴安盟| 吉首市| 岑溪市| 澄迈县| 石屏县| 靖州| 文山县| 贵州省| 益阳市| 广丰县| 慈溪市| 花莲市| 澎湖县| 安顺市| 清远市| 梁山县| 佳木斯市| 河津市| 恩平市| 手游| 陆河县| 景宁| 平谷区| 花莲县| 丽江市| 惠东县|