• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    深度神經(jīng)網(wǎng)絡(luò)動態(tài)分層梯度稀疏化及梯度合并優(yōu)化方法

    2024-09-15 00:00:00巨濤康賀廷劉帥火久元
    西安交通大學(xué)學(xué)報 2024年9期
    關(guān)鍵詞:深度神經(jīng)網(wǎng)絡(luò)

    摘要:針對數(shù)據(jù)并行方法加速大規(guī)模深度神經(jīng)網(wǎng)絡(luò)時易出現(xiàn)的通信開銷大、訓(xùn)練耗時長、資源利用率不高的問題,提出了一種深度神經(jīng)網(wǎng)絡(luò)動態(tài)分層梯度稀疏化及梯度合并優(yōu)化方法。首先,將梯度稀疏化壓縮與流水線并行技術(shù)相結(jié)合,提出動態(tài)分層梯度稀疏優(yōu)化方法,為每層神經(jīng)網(wǎng)絡(luò)匹配一個合適的閾值,通過在后續(xù)迭代時動態(tài)調(diào)整該閾值,實現(xiàn)對每層網(wǎng)絡(luò)傳輸梯度的自適應(yīng)壓縮。然后,提出了層梯度合并方法,利用動態(tài)規(guī)劃算法對層梯度合并時的通信開銷、稀疏化及層梯度計算時間進行權(quán)衡優(yōu)化,求解出最佳的層梯度合并組合,并將多層小尺度梯度張量合并為一層通信,以降低分層梯度決策時引入的過高通信延遲開銷。最后,將求解出的最佳層梯度合并組合應(yīng)用于具體的訓(xùn)練迭代過程。實驗結(jié)果表明:與已有方法相比,所提方法可在保證模型訓(xùn)練精度的同時大大降低通信開銷,提升模型的訓(xùn)練速度;與未壓縮方法相比,訓(xùn)練速度最大可提升1.99倍。

    關(guān)鍵詞:深度神經(jīng)網(wǎng)絡(luò);分布式訓(xùn)練;同步數(shù)據(jù)并行;梯度壓縮;層梯度合并

    中圖分類號:TP311 文獻標志碼:A

    DOI:10.7652/xjtuxb202409011 文章編號:0253-987X(2024)09-0105-12

    A Dynamic Layer-Wise Gradient Sparsity and Gradient Merging Optimization Method for Deep Neural Networks

    JU Tao, KANG Heting, LIU Shuai, HUO Jiuyuan

    (School of Electronic and Information Engineering, Lanzhou Jiaotong University, Lanzhou 730070, China)

    Abstract:A dynamic layer-wise gradient sparsity and gradient aggregation optimization strategy for deep neural networks is proposed to address the challenges posed by substantial communication overhead, prolonged training duration, and suboptimal resource utilization associated with the acceleration of large-scale deep neural networks through data parallelism. Initially, a dynamic layer-wise gradient sparsity optimization method is proposed by combining gradient sparsity compression with pipeline parallelism. Each neural network layer is assigned an appropriate threshold, which is adjusted dynamically in subsequent iterations to achieve adaptive compression of gradient transmission for each layer. Subsequently, a layer-wise gradient merging method is introduced. Leveraging dynamic programming, this method optimizes communication overhead, sparsity, and layer gradient computation time during layer-wise gradient merging, determining the optimal combination for merging multiple layers of small-scale gradient tensors into a single communication layer. This aims to reduce the high communication latency introduced during layer-wise gradient decision-making. Finally, the determined optimal layer-wise gradient merging combination is applied to the specific training iteration process. Experimental results demonstrate that the proposed method, compared to existing methods, significantly reduces communication overhead and enhances model training speed while ensuring model training accuracy. It achieves a maximum training speed up of 1.99 times compared to the uncompressed method.

    Keywords:deep neural network; distributed training; synchronous data parallelism; gradient compression; layer gradient merging

    近年來,隨著深度學(xué)習(xí)在各應(yīng)用領(lǐng)域的快速發(fā)展,加之復(fù)雜模型架構(gòu)的不斷更迭和數(shù)據(jù)量的不斷增加,訓(xùn)練大規(guī)模深度神經(jīng)網(wǎng)絡(luò)需要更多的算力資源支撐。由于單個加速設(shè)備的計算能力和存儲容量已不能滿足訓(xùn)練大規(guī)模模型的需求,因此采用分布式思想對模型進行并行化訓(xùn)練已成為現(xiàn)行的一種有效方式[1-2]。較為常見的并行化訓(xùn)練是基于參數(shù)服務(wù)器架構(gòu)的同步數(shù)據(jù)并行方法,即各個計算節(jié)點通過維護模型參數(shù)副本的一致性,在每次訓(xùn)練中使用不同的小批量樣本計算梯度并進行模型參數(shù)的迭代更新。具體執(zhí)行思想為:每個節(jié)點在完成對本地局部梯度的計算后,將局部梯度發(fā)送給服務(wù)器節(jié)點;隨后,服務(wù)器節(jié)點將來自所有計算節(jié)點的局部梯度進行聚合平均得到全局梯度,并將全局梯度用于更新模型參數(shù)[3];之后,各個計算節(jié)點從服務(wù)器節(jié)點獲取最新的模型參數(shù)進行下一輪迭代,直至收斂[4-5]。其中,同步隨機梯度下降算法因具有良好的收斂性,現(xiàn)已成為分布式深度學(xué)習(xí)訓(xùn)練常用的一種優(yōu)化方法[6]。

    然而,由于計算節(jié)點在完成反向傳播后,需要將本地局部梯度發(fā)送給服務(wù)器節(jié)點并從服務(wù)器節(jié)點獲取最新的模型參數(shù),因此節(jié)點之間會產(chǎn)生頻繁的梯度傳輸操作,這將使得額外的通信開銷超過計算開銷,逐漸成為加速深度神經(jīng)網(wǎng)絡(luò)分布式訓(xùn)練的主要制約因素[7]。因此,如何在不影響模型訓(xùn)練精度的前提下實現(xiàn)計算節(jié)點間的高效通信,是基于參數(shù)服務(wù)器架構(gòu)的同步數(shù)據(jù)并行訓(xùn)練中亟待解決的問題。

    1 相關(guān)工作

    1.1 梯度壓縮

    目前,在深度神經(jīng)網(wǎng)絡(luò)分布式訓(xùn)練通信優(yōu)化方面已有大量的研究。梯度壓縮是常采用的一種有損壓縮優(yōu)化技術(shù),通過減少深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練時傳輸?shù)奶荻攘縼韮?yōu)化通信,主要分為量化[8-9]和稀疏化[10]兩類方法。量化采用低精度的數(shù)據(jù)表示方法,通過減少每個梯度值的比特數(shù)來壓縮通信量。然而,由于量化后至少需要一個比特來維持原本的梯度信息,理論上只能將梯度張量最多壓縮32倍,無法更進一步實現(xiàn)高效的通信效率提升[11]。稀疏化采用更激進的通信壓縮方式,通過降低無更新操作梯度的傳輸頻率,并選擇重要梯度進行傳輸,可以在確保模型收斂的前提下顯著減少通信量。文獻[12]提出了一種基于固定閾值的梯度稀疏方法,當梯度值大于設(shè)定閾值時進行傳輸操作,但該方法對每層梯度使用統(tǒng)一的均勻壓縮,忽略了模型不同層之間的異構(gòu)性,且難以對各類深度神經(jīng)網(wǎng)絡(luò)設(shè)置合理的閾值,缺少良好的泛化性。針對該問題,文獻[13-14]提出了局部選擇和動態(tài)閾值調(diào)整方法,該方法通過局部梯度選擇和動態(tài)閾值調(diào)整,選擇一定比例的梯度值進行訓(xùn)練時的通信傳輸操作。然而,在高壓縮率的情況下,容易造成模型訓(xùn)練精度的損失。稀疏化的一種變體是更新重要梯度(Top-K)方法[15-17],主要通過將所有梯度進行Top-K操作后,篩選對模型更新影響率較大的梯度值進行傳輸;但在進行大規(guī)模深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練時,由于梯度張量非常龐大,Top-K操作往往會造成很大的時間開銷。為此,文獻[18]通過隨機選擇一定比例的梯度值進行Top-K操作后得到稀疏閾值,最終在全部梯度上使用此閾值進行梯度篩選;但該方法對閾值計算不夠準確,在原始梯度向量的子集上需要進行兩次Top-K采樣,會造成較高的額外計算開銷。Top-K方法雖然可以顯著減少通信量,但忽視了深度神經(jīng)網(wǎng)絡(luò)的分層結(jié)構(gòu)特性,并且稀疏化操作通常在所有層梯度計算結(jié)束后進行,使得計算和通信無法達到良好的并行效果。為此,文獻[19]提出了分層自適應(yīng)梯度稀疏方法(LAGS),即在每層中通過執(zhí)行Top-K操作選擇梯度,并證明了該方法的收斂性。該方法可在梯度計算和梯度通信盡可能并行執(zhí)行的前提下,壓縮傳輸過程中的通信量,但該方法對梯度的選擇不夠高效,導(dǎo)致稀疏化時間占比較大,不能有效減少模型訓(xùn)練時間。

    1.2 梯度分布

    為實現(xiàn)梯度張量的高效壓縮,減少稀疏化時間開銷,許多研究通過探索深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中的梯度分布情況來估計壓縮閾值。文獻[20-21]通過理論分析與實驗驗證指出,訓(xùn)練過程中梯度大多位于0附近并遵循高斯分布,并提出了一種高效的梯度選擇算法Gassian K,大幅度降低了稀疏化的時間開銷,但隨著訓(xùn)練的進行,梯度值越來越接近于0。該方法根據(jù)高斯分布預(yù)測的閾值較大,導(dǎo)致模型在相同訓(xùn)練時間內(nèi)往往難以收斂。為更準確地模擬梯度分布特征,文獻[22]將訓(xùn)練過程中梯度分布建模為雙指數(shù)分布、雙伽馬分布和雙廣義帕累托分布3種分布,并提出了一種基于稀疏分布的壓縮方法,通過多段式的估計方法計算閾值,但當壓縮比變大時,對真實梯度分布的擬合會出現(xiàn)較大的偏差,影響模型的收斂性。文獻[23]利用對數(shù)正態(tài)分布較高斯分布更準確的特點,結(jié)合梯度量化方法提出了一種基于對數(shù)正態(tài)分布的壓縮方法,達到了80%的稀疏度,大幅度減少了通信量,但該方法仍存在對訓(xùn)練過程中閾值預(yù)測不夠準確的問題,影響了訓(xùn)練精度。

    1.3 計算與通信重疊

    在深度神經(jīng)網(wǎng)絡(luò)的反向傳播過程中,梯度從后往前依次進行計算,即前一層網(wǎng)絡(luò)的梯度計算獨立于后一層的通信,后一層的參數(shù)更新也與前一層無關(guān)。因此,可以通過將通信任務(wù)與計算任務(wù)重疊來隱藏部分通信開銷[24]。然而,計算任務(wù)與通信任務(wù)重疊本質(zhì)上并沒有真正減少通信時間,只是盡可能將計算和通信并行執(zhí)行,從而提高模型的整體訓(xùn)練效率。文獻[25]提出了一種無等待反向傳播(WFBP)算法,實現(xiàn)了層間梯度通信和計算的流水線并行,但由于不同層之間計算和通信時間的差異性,在高延遲或低帶寬的網(wǎng)絡(luò)環(huán)境中難以隱藏額外的通信開銷。文獻[26]在WFBP算法的基礎(chǔ)上進行擴展,提出了基于優(yōu)先級傳輸?shù)姆椒?,通過將每一層梯度張量按照預(yù)設(shè)的閾值進行切分,并利用任務(wù)間的優(yōu)先級實現(xiàn)調(diào)度傳輸,達到計算和通信重疊的效果;但由于處理不同運行環(huán)境時需要頻繁的超參數(shù)調(diào)整操作,使得該方法難以適應(yīng)軟硬件資源動態(tài)變化的適行環(huán)境。由于一些大張量的通信可能會阻塞較高優(yōu)先級張量的執(zhí)行,因此文獻[27]提出了優(yōu)先級調(diào)度中的張量分區(qū),將大張量切分成若干小張量執(zhí)行,以實現(xiàn)更大程度的計算與通信重疊;但每個切分后的小張量需要插入推送操作,切分過多的小張量會帶來更長的總啟動時間,導(dǎo)致帶寬利用率較差。

    綜上,在深度神經(jīng)網(wǎng)絡(luò)模型的分布式訓(xùn)練中,需要結(jié)合具體的計算資源進行動態(tài)分析,通過梯度分布規(guī)律設(shè)計梯度壓縮方式,將計算與通信進行重疊調(diào)度執(zhí)行,可進一步優(yōu)化通信傳輸開銷,提高訓(xùn)練效率。

    針對以上分布式數(shù)據(jù)并行訓(xùn)練大規(guī)模深度神經(jīng)網(wǎng)絡(luò)過程中存在的問題,本文提出一種深度神經(jīng)網(wǎng)絡(luò)動態(tài)分層梯度稀疏化及分層梯度合并優(yōu)化方法DLGS。首先,將全局Top-K稀疏化與流水線并行技術(shù)相結(jié)合,提出動態(tài)分層梯度稀疏決策,為每層神經(jīng)網(wǎng)絡(luò)計算一個合適的閾值,并通過在后續(xù)迭代時動態(tài)調(diào)整該閾值,實現(xiàn)對每層傳輸梯度的自適應(yīng)壓縮。其次,為了進一步降低通信延遲,加速模型訓(xùn)練,提出了層梯度合并方法,利用動態(tài)規(guī)劃算法對層梯度合并時的通信耗時、稀疏化計算及層梯度計算時間進行權(quán)衡優(yōu)化,求解出最優(yōu)的層合并組合,將多層小尺度梯度張量合并為一層進行通信。然后,將最優(yōu)的層合并組合應(yīng)用于具體的訓(xùn)練迭代過程。最后,通過實驗測試,驗證了本文方法的有效性。

    2 動態(tài)分層梯度稀疏化

    首先,通過對已有全局Top-K梯度稀疏方法的局限性分析,引入分層Top-K梯度稀疏化方法,為每層計算一個合適的壓縮閾值,使得稀疏化不需要等待反向傳播的完成,將部分梯度通信開銷隱藏于梯度計算過程中;之后,為了減少梯度稀疏化的時間開銷,設(shè)計了閾值重用,實現(xiàn)對梯度高效壓縮,進一步提高神經(jīng)網(wǎng)絡(luò)訓(xùn)練速度。

    2.1 全局Top-K梯度稀疏化局限性分析

    基于Top-K稀疏化具有較大絕對值的梯度對模型收斂影響更大的特點,在梯度更新過程中,每個計算節(jié)點只傳遞小部分絕對值最大的梯度值,剩余未選擇的梯度值累積為本地梯度殘差,添加到下一次迭代計算的梯度中。全局Top-K方法依賴于所有層梯度,如圖1所示Top-K稀疏化執(zhí)行過程,當反向計算完所有層梯度后,才開始對所有層梯度執(zhí)行稀疏化和梯度通信等操作,由于不會使得反向傳播過程中梯度計算和通信操作重疊,因此會導(dǎo)致訓(xùn)練效率較低。

    2.2 動態(tài)分層梯度稀疏化方法

    為了使梯度計算和通信在盡可能并行執(zhí)行的前提下減少梯度傳輸?shù)耐ㄐ帕?,本文在每一層上?yīng)用Top-K梯度稀疏化和殘差累積,具體執(zhí)行時不是從所有層選擇K個梯度值,而是從每層l中選擇K個梯度值,當層l計算完成梯度后,立即對該層計算得到的梯度進行稀疏化操作,這樣不僅利用稀疏化方法減少了傳輸過程中的通信量,而且還利用深度神經(jīng)網(wǎng)絡(luò)的分層結(jié)構(gòu)使得梯度計算和通信重疊。具體層閾值計算與動態(tài)更新過程為:初始迭代時,對每層l計算得到的梯度應(yīng)用Top-K方法,將每層中通過Top-K方法選擇的第K個梯度值作為層l的閾值,表示為Hl,用閾值列表V=[H1,H2,…,Hl]存儲每層的閾值。通過比較多次迭代后每層的閾值變化,發(fā)現(xiàn)閾值只有輕微的差異,因此不需要在每次迭代過程中對層l計算得到的梯度執(zhí)行Top-K操作計算閾值,而是每隔s次迭代,使用Top-K操作計算每層的準確閾值,并使用所計算的準確閾值來動態(tài)更新層閾值列表V。然后,在接下來的(s-1)次迭代過程中重用該閾值。通過閾值重用,可以減少在層l執(zhí)行Top-K的時間,從而進一步降低稀疏化的時間開銷。

    整個動態(tài)分層梯度壓縮執(zhí)行過程如圖2所示。首先層l計算出第i次訓(xùn)練的梯度gn,li(n為計算節(jié)點),將層l計算的梯度gn,li與該層中的梯度殘差en,li-1相加,梯度殘差是計算節(jié)點中層l局部累積的所有先前未傳輸梯度的總和;然后對該層梯度執(zhí)行Top-K操作,得到該層梯度壓縮閾值Hl,通過該閾值對層l的梯度gn,li壓縮;最后將壓縮后的梯度C(gn,li)發(fā)送給參數(shù)服務(wù)器,并累積本次迭代的梯度殘差en,li,用于之后迭代計算得到的梯度中。

    2.3 動態(tài)分層梯度壓縮算法

    在對每層梯度計算合適的壓縮閾值基礎(chǔ)上,利用每層計算的閾值,實現(xiàn)分層梯度壓縮。假設(shè)在計算節(jié)點n上給定一個具有L層的深度神經(jīng)網(wǎng)絡(luò)M,在第i次訓(xùn)練時將壓縮后的梯度C(gn,li)發(fā)送給參數(shù)服務(wù)器,當參數(shù)服務(wù)器收到各個計算節(jié)點計算的梯度后,對所有梯度求平均值并更新模型參數(shù)。具體的參數(shù)更新公式為

    wli+1=wli-αi1N∑Nn=1C(gn,li)(1)

    式中:wli表示第i次迭代層l模型參數(shù);αi是學(xué)習(xí)率;N為計算節(jié)點數(shù);gn,li表示計算節(jié)點n在第i次迭代中計算的無偏隨機梯度與層l的本地梯度殘差的累加和;C(gn,li)表示對層l計算的梯度gn,li進行壓縮。動態(tài)分層梯度壓縮算法迭代訓(xùn)練的具體過程見算法1。

    算法1 動態(tài)分層梯度壓縮算法

    輸入:數(shù)據(jù)集D,每層初始權(quán)重wl,層壓縮率K,學(xué)習(xí)率α,迭代次數(shù)T,節(jié)點數(shù)量N

    輸出:模型參數(shù)wT

    1 初始化V=[H1,…,HL]=0

    2 初始化E=[en,1i,…,en,Li]=0

    3 for i=1 to T do

    4" 從數(shù)據(jù)集D中采樣小批量數(shù)據(jù)Dni

    5" 前向計算;

    6" for l=L to 1 do

    7"" gn,li=en,li-1+ΔLoss(wt, Dn,li);

    8"" M=|gn,li|gt;Hl;

    9"" C(gn,li)=gn,l⊙M;

    10" en,li=gn,li⊙M;

    11" gn,lgolobal=AVG(Reduce(C(gn,li));

    12 end for

    13 if i mod s == 0 then

    14"" update V

    end if

    15 wli+1=wli-αign,lglobal

    16end for

    算法主要執(zhí)行步驟如下。

    步驟1 每個計算節(jié)點加載訓(xùn)練模型和部分訓(xùn)練數(shù)據(jù)集,初始化每層梯度閾值列表V,初始化每層梯度壓縮殘差矩陣E。

    步驟2 迭代訓(xùn)練,共迭代訓(xùn)練T次,每次迭代從數(shù)據(jù)集D中采樣小批量數(shù)據(jù)Dni,前向計算損失。

    步驟3 從最后一層L逐層往前計算梯度gn,li,將層l梯度值同該層梯度殘差en,li-1相加得到gn,li=gn,li+en,li-1,之后根據(jù)該層中的閾值Hl對該層梯度進行壓縮,將壓縮后的梯度C(gn,li)發(fā)送給參數(shù)服務(wù)器更新模型參數(shù),并將小于閾值的梯度在本地累積為梯度殘差,用于之后的迭代訓(xùn)練。

    步驟4 參數(shù)服務(wù)器收到所有計算節(jié)點計算的梯度后,對梯度求平均值,并用式(1)更新模型參數(shù)。

    步驟5 參數(shù)服務(wù)器將最新的模型參數(shù)廣播給計算節(jié)點,更新計算節(jié)點的模型參數(shù),并開始下一輪的迭代訓(xùn)練。

    3 層梯度合并

    分層梯度稀疏化通過減少通信量可以有效降低通信開銷,加速模型訓(xùn)練過程,但在分層壓縮后的梯度通信過程中,對于不同類型的層,要通信的梯度張量大小存在較大差異,傳輸過多層的小張量不僅會導(dǎo)致帶寬利用不足,還會增加通信延遲[28]。為此,本文提出多層梯度合并方法,將多個層的梯度張量合并一起發(fā)送,以降低通信延遲開銷,加速模型訓(xùn)練過程。

    3.1 層梯度合并策略

    層梯度合并的目標是在訓(xùn)練過程中盡可能多地將多個稀疏后的梯度張量合并到一起通信,在實現(xiàn)梯度計算和梯度通信最佳重疊的同時,最小化通信延遲開銷。在合并多個層梯度張量過程中,如將整個模型的梯度張量合并成一個單一張量,雖然通信操作只調(diào)用一次,通信延遲最小,但通信過程必須等待反向傳播結(jié)束,沒有使梯度計算與通信重疊,從而影響訓(xùn)練效率。為了獲得最佳的層梯度合并結(jié)果,應(yīng)同時考慮梯度計算時間、梯度壓縮時間和梯度通信時間對整個訓(xùn)練效率的影響。本文首先將層梯度合并問題轉(zhuǎn)化為使得一次迭代最小的優(yōu)化問題,優(yōu)化目標是通過層梯度合并來降低通信延遲開銷,從而最小化迭代時間;然后,對訓(xùn)練過程中梯度計算時間、梯度壓縮時間和梯度通信時間進行分析,判斷層梯度合并的前提條件;最后,利用動態(tài)規(guī)劃算法求解最佳的層梯度合并組合,并用于之后的迭代訓(xùn)練過程。

    3.1.1 訓(xùn)練過程分析

    本文提出的動態(tài)分層梯度稀疏化方法,一次迭代訓(xùn)練時間titer由前向計算損失時間、反向逐層計算梯度時間、層梯度壓縮時間和壓縮后梯度通信時間4部分組成,表示如下

    titer=tf+∑Ll=1tlb+∑Ll=1tls+tnoc(2)

    式中:titer表示一次迭代總時間;tf表示前向計算時間;tlb表示層l的反向計算時間;tls表示層l的稀疏化時間;tnoc表示沒有重疊的通信時間。τlb、τls、τlc計算公式分別為

    τlb=tf, l=L

    τl+1s+tl+1s, 1≤llt;L(3)

    τls=τlb+tlb(4)

    τlc=τls+tls, l=L

    max{τls+tls, τl+1c+tl+1c}, 1lt;l≤L(5)

    式中:τlb表示層l開始計算梯度的時刻,取值為前向計算結(jié)束的時刻或者其前一層(l+1)稀疏化結(jié)束時刻;式(4)表示層l的開始稀疏化的時刻τls,取值為層l的梯度計算結(jié)束時刻;式(5)中,τlc表示層l開始通信的時刻,它由層l的稀疏化結(jié)束時刻和其前一層(l+1)的通信結(jié)束時刻決定。

    3.1.2 合并過程分析

    層梯度合并過程中,將多個層梯度張量合并到一起通信,雖然會緩解通信延遲開銷,但是會推遲前一層或者幾層梯度開始稀疏化和通信的時刻,如圖3a中,層L計算完梯度并壓縮后會在時刻1開始該層梯度通信,圖3b中將層L和層(L-1)合并一起通信,會將層L開始梯度通信的時刻延遲到時刻2。如果將所有層梯度合并到一起發(fā)送,則通信延遲開銷最低,從而使得通信成本最低,但這種通信方式需要計算完所有層梯度才開始通信,不能實現(xiàn)梯度計算和通信并行執(zhí)行。因此,層梯度合并的目標是在訓(xùn)練過程中盡可能將層梯度張量合并的同時,實現(xiàn)梯度通信和計算的最佳重疊。

    將合并層定義為:如果在時刻τ處,將層l的梯度合并到層(l-1),并不壓縮和通信層l的梯度,則層l為合并層,表示為l(l-1)。用符號lm表示合并層,用符號ln表示普通層,則

    l=lm

    s.t. lmgt;1

    tlc=tls=0

    dl-1=dl+dl-1

    τl-1b=τlb+tlb(6)

    式中:lmgt;1表明第1層不能為合并層,因為沒有前

    一層要合并;tlc=tls=0表明lm這一層梯度計算完成后沒有壓縮和通信;dl-1=dl+dl-1表明lm這一層的梯度張量dl將會累積到前一層張量dl-1中;τl-1b=τlb+tlb表示層(l-1)的梯度計算可以在層l梯度計算完成后立即開始。

    對于一個具有L層的深度神經(jīng)網(wǎng)絡(luò)模型,若某層l屬于普通層或者合并層,則所有的層梯度合并可能的組合O有2L-1種。在對梯度分層通信過程中,由于反向計算梯度是從后往前逐層進行的,因此一次迭代結(jié)束時間titer為第1層梯度通信結(jié)束時刻,可寫為

    titer=τ1c+t1c(7)

    式中:τ1c是第1層開始通信的時刻;t1c是第1層通信的時間。式(7)表示一次迭代結(jié)束時刻titer等價于第1層梯度通信結(jié)束時刻。同時由式(5)可知,第1層的通信開始時刻由第1層的梯度稀疏化結(jié)束時刻和第2層通信結(jié)束時刻決定,第2層中的通信開始時刻由第2層中的梯度稀疏化結(jié)束時刻和第3層通信結(jié)束時刻決定,如此類推,直到第L層開始計算梯度為止。

    3.2 優(yōu)化目標

    給定一個具有L層的深度神經(jīng)網(wǎng)絡(luò)模型M,優(yōu)化目標是從所有的層梯度可能的組合O中找到一種組合m∈O,使得一次迭代時間titer最小,在最小化通信延遲開銷的同時達到最佳的梯度計算與梯度通信的重疊,用公式表示為

    min titer=tf+∑Li=1(τlc+tlc)

    s.t. m∈O(8)

    式中:τlc表示層l開始通信的時刻;tlc表示層l通信的時間;τlc+tlc表示計算層l通信結(jié)束的時刻。層l開始通信的時刻τlc,由層(l+1)的通信時間或?qū)觢的稀疏化時間決定,即τlc=max{τl+1c+tl+1c,τls+tls}。式(8)的目標是找到一個最優(yōu)的組合m最小化迭代時間titer。

    3.3 層梯度合并算法

    在對優(yōu)化目標迭代求解過程中,關(guān)鍵是確定合并一個層是否能減少迭代時間titer,如果可以減少迭代時間,則將該層設(shè)為合并層,否則,將該層保持為普通層。對于任意層l,若將其梯度合并后總的迭代時間變?yōu)閠′iter,如果使得t′iterlt;titer,則將層l的梯度合并,否則不合并。圖4描述了具體迭代規(guī)劃合并過程。

    假設(shè)已經(jīng)將層L、L-1、L-2進行了合并,形成層梯度組合m1=[L,L-1,L-2],則在該組合中,當層L和層(L-1)的梯度計算完成后,沒有立即壓縮和通信,而是將層L和層(L-1)的梯度張量累積到層(L-2)中,即dL-2=dL-2+dL-1+dL。接著,從層(L-3)開始,對剩余部分層繼續(xù)進行迭代規(guī)劃,形成下一個層梯度組合mj(1≤j≤x)。當所有層都遍歷完之后,所有層被劃分構(gòu)成一個層梯度組合m={m1,m2,…,mx}。在之后的訓(xùn)練過程中,將每個組合mj中所包含的若干層進行一次通信即可。

    具體合并過程實現(xiàn)如算法2所示,其中函數(shù)CommTime( )表示返回層l的通信時間,函數(shù)TopKTime( )表示返回層l稀疏化的時間,函數(shù)CommStartTime( )和CompStartTime( )是預(yù)先設(shè)置用于計算層l梯度開始通信時刻τc和梯度計算的起始時刻τb;函數(shù)Merge( )執(zhí)行梯度合并操作,將預(yù)定義的普通層更改為合并層。

    算法2 最優(yōu)層梯度合并算法

    1 初始化m[1,…,L]={ln}

    2 for l=L to 2 do

    3"" μ=τb[l]+tb[l]+tb[l-1]

    4"" if t′iterlt;titer do

    5""" Merge(tb,ts,tc,d[l])

    6""" τb2,τs2,ts2=CompStartTime (tb[1,…,L],d[1,…,L],τb[l]+tb[l]);

    7""" τb[1,…,L]=τb2,τs[1,…,L]=τs2;

    8""" τc,tc=CommStartTime(ts,τc,d[l]);

    9""" m[l]=lm;

    10"" end if

    11 end for

    12 return m;

    13 Procedure Merge(tb,ts,tc,l)

    14"" tb[l-1]=tb[l-1]+tb[l];

    15"" d[l-1]=d[l-1]+d[l];

    16"" tc[l-1]=CommTime(d[l-1]);

    17"" ts[l-1]=Top K Time(d[l-1]);

    整個合并算法主要執(zhí)行步驟如下。

    步驟1 初始化神經(jīng)網(wǎng)絡(luò)所有層為普通層,通過函數(shù)CommStartTime()和CompStartTime()記錄層l梯度開始通信和計算的起始時刻。

    步驟2 從最后一層L開始向前逐層遍歷,對于遍歷到的每一層l,判斷合并該層到前一層(l-1)與不合并該層是否可以減少迭代時間。

    步驟3 如果可以減少迭代時間,則調(diào)用Merge()函數(shù)將預(yù)定義的普通層更改為合并層,將該層l的梯度張量累積到前一層梯度張量中,然后將層號推入層梯度組合mj中。

    步驟4 如果不能減少迭代時間,則將該層梯度與其前一層不合并,并從前一層開始創(chuàng)建一個新的層梯度組合mj+1,繼續(xù)往前逐層判斷。

    步驟5 當所有層遍歷結(jié)束后,求得最優(yōu)的組合方式m。

    算法從第L層開始逐層往前掃描直到第2層為止,需要O(L)步,對于每次掃描,如果層l是可以合并的層,則需要計算該層梯度計算和通信開始時間,復(fù)雜度為O(L),因此整個算法的復(fù)雜度為O(L2)。

    3.4 層合并后訓(xùn)練執(zhí)行流程

    通過對層梯度合并的分析和求解,得到最優(yōu)的層梯度組合方式m=[m1,m2,…,mx],將求得的最優(yōu)層梯度合并方式組合m應(yīng)用于迭代訓(xùn)練過程中。層合并后訓(xùn)練執(zhí)行流程如下所示。

    步驟1 每個計算節(jié)點初始化共享同步隊列Q,存儲每層的層號,計算每層的參數(shù)大小等相關(guān)變量;

    步驟2 在服務(wù)器節(jié)點(Rank 0)調(diào)用算法2求最優(yōu)層梯度合并方式m,并向所有計算節(jié)點廣播m;

    步驟3 每個計算節(jié)點得到層梯度組合m,初始化相關(guān)變量,迭代的讀取小批量數(shù)據(jù)進行前向傳播并求損失;

    步驟4 根據(jù)損失進行反向傳播計算得到當前層隨機梯度gn,li,然后根據(jù)合并后的層梯度組合mj判斷是否立即壓縮和通信該層梯度。

    步驟5 將層梯度組合mj中的層號推入共享隊列,并將mj中包含的多個層壓縮后的梯度C(gn,li)一起發(fā)送給參數(shù)服務(wù)器。

    步驟6 參數(shù)服務(wù)器收到所有計算節(jié)點發(fā)送的層梯度組合mj的多個層梯度,求和取平均值后,更新服務(wù)器節(jié)點的模型參數(shù)。

    步驟7 計算節(jié)點從服務(wù)器節(jié)點拉取更新后的模型參數(shù),更新本地模型,進入下一輪迭代訓(xùn)練。

    4 實 驗

    4.1 實驗設(shè)置

    (1)硬件環(huán)境。實驗使用北京超算中心的N40分區(qū),采用4個節(jié)點,其中1個為參數(shù)服務(wù)器節(jié)點,另外3個為計算節(jié)點。服務(wù)器節(jié)點和計算節(jié)點之間通過RoCE 2×25Gb/s(RDMA協(xié)議)建立連接。每個節(jié)點各配備1塊CPU和GPU卡,硬件配置相關(guān)參數(shù)為:CPU為AMD EPYC 7402 (48C)@2.8GHz,內(nèi)存512GB,顯卡為NVIDIAGeForceRTX 4090,顯存24GB。

    (2)軟件環(huán)境。并行訓(xùn)練使用Horovod分布式深度學(xué)習(xí)框架,進行上層分布式梯度計算和通信等封裝,底層采用PyTorch深度學(xué)習(xí)框架。操作系統(tǒng)為Red Hat 4.8.5,Horovod版本為0.28.1,PyTorch版本為2.0.1,CUDA版本為11.8,Python版本為3.8,NCCL版本為2.18.1。

    (3)網(wǎng)絡(luò)模型及數(shù)據(jù)集。分別用ResNet-20和VGG16兩種網(wǎng)絡(luò)模型在CIFAR-10數(shù)據(jù)集、用ResNet-50網(wǎng)絡(luò)模型在ImageNet數(shù)據(jù)集子集上進行驗證。其中,CIFAR-10數(shù)據(jù)集由10個類別的60000張32×32像素的彩色圖片組成,其中包含50000張訓(xùn)練圖片和10000張測試圖片。ImageNet數(shù)據(jù)子集由截取的100個類的135000張圖片組成,并裁剪為224×224像素,其中一個訓(xùn)練類包含1300張圖片,一個測試類包含50張圖片。

    (4)實驗參數(shù)設(shè)置。在同步數(shù)據(jù)并行框架下,使用分布式隨機梯度下降優(yōu)化算法,在CIFAR-10數(shù)據(jù)集共迭代訓(xùn)練140輪(Epoch)。學(xué)習(xí)率采用階梯式設(shè)置,前80輪設(shè)置為0.1,80~120輪設(shè)置為0.01,120~140輪設(shè)置為0.001,批量大小設(shè)置為32。在ImageNet數(shù)據(jù)集共迭代訓(xùn)練80輪,前30輪學(xué)習(xí)率設(shè)置為0.1,30~60輪設(shè)置為0.01,60~80輪設(shè)置為0.001,批量大小設(shè)置為64。

    4.2 實驗結(jié)果與分析

    4.2.1 并行訓(xùn)練精度與損失對比

    為了驗證本文方法(DLGS)在提升模型訓(xùn)練精度和降低訓(xùn)練損失方面的有效性,在0.1壓縮率下分別使用ResNet-20、VGG16和ResNet-50模型測試不同壓縮方法的訓(xùn)練精度和訓(xùn)練損失。ResNet-20模型的訓(xùn)練精度和訓(xùn)練損失分別如圖5和圖6所示,VGG16模型的訓(xùn)練精度和訓(xùn)練損失分別如圖7和圖8所示,ResNet-50模型的訓(xùn)練精度和訓(xùn)練損失分別如圖9和圖10所示。不同壓縮方法的最終訓(xùn)練精度和訓(xùn)練損失對比如表1所示。

    從圖5和圖7可以看出,與Top-K、LAGS、未壓縮等方法相比,本文DLGS方法在訓(xùn)練開始時與其他各壓縮方法訓(xùn)練精度差異較小,隨著迭代次數(shù)的增加,本文方法訓(xùn)練精度提升效果僅次于未壓縮方法,在第40輪時訓(xùn)練精度趨于穩(wěn)定,在第80輪時,各壓縮方法精度都有顯著的提升,主要是因為在第80輪后學(xué)習(xí)率衰減為0.01。從圖6和圖8的訓(xùn)練損失曲線可以看出,各壓縮方法在訓(xùn)練過程中訓(xùn)練損失迅速降低,之后趨于穩(wěn)定,在第80輪后損失又有了明顯的下降,主要是因為80輪后學(xué)習(xí)率衰減為原來的1/10。圖9和圖10表明,本文方法在ResNet-50模型上的訓(xùn)練精度和訓(xùn)練損失同其他兩種模型上的類似。從表1可以看出,本文方法在3種網(wǎng)絡(luò)模型上的訓(xùn)練精度和訓(xùn)練損失方面差距不大,十分接近于未壓縮方法,表明本文方法可以在減少訓(xùn)練時間的同時保證模型精度。

    4.2.2 訓(xùn)練耗時對比

    為評估在提升訓(xùn)練速度上的有效性,在0.1和0.01兩種壓縮率下,對模型ResNet-20、VGG16和ResNet-50的訓(xùn)練耗時進行對比,不同壓縮方法訓(xùn)練耗時如表2所示。從表2可知,本文DLGS方法在兩種壓縮率下的訓(xùn)練耗時均少于其他壓縮方法,主要原因是本文方法通過閾值重用以及梯度稀疏化對多個層梯度進行了合并通信,減少了模型訓(xùn)練過程中的壓縮開銷和通信開銷,從而加速了模型整體訓(xùn)練過程。本文DLGS方法在0.01的壓縮率下訓(xùn)練時間和非壓縮方法相比,最大加速比達到了1.99倍;在VGG16模型上DLGS同其他壓縮方法相比,加速比提高不明顯,主要是因為VGG16輸入分辨率較小,梯度計算時間較小而參數(shù)量較大。本文方法更傾向于合并多個層的梯度,導(dǎo)致梯度計算和梯度通信重疊程度相對較低。

    4.2.3 壓縮性能分析

    為了驗證本文方法在提升模型訓(xùn)練速度方面的有效性,將一次迭代的訓(xùn)練時間分解為計算時間、稀疏化時間和非重疊的通信時間,并在0.1和0.01兩種壓縮率下,比較不同壓縮方法一次迭代的各部分訓(xùn)練時間,結(jié)果如圖11~圖13所示。

    從圖11~圖13可以看出,在3種訓(xùn)練模型上,由于未壓縮方法的通信量很大,通信時間遠大于計算時間,導(dǎo)致一次迭代的訓(xùn)練總時間比其他方法的總時間長;在0.1和0.01兩種壓縮率下,由于Top-K方法減少了通信量進而減少了通信時間,因此比未壓縮方法的訓(xùn)練時間短;LAGS方法在兩種壓縮率下稀疏化時間比Top-K方法多,主要原因是每層調(diào)用Top-K函數(shù)導(dǎo)致稀疏化開銷增加,但該方法重疊了計算和通信,故在整體訓(xùn)練時間上少于Top-K方法。本文DLGS方法在兩種壓縮率下耗時均最短,一方面是因為本文方法減少了通信量從而減少了通信時間,且在這個過程中計算和通信重疊,將部分通信開銷隱藏在計算中;另一方面是因為本文方法通過閾值重用減少了稀疏化的時間開銷,并通過層梯度合并方法降低了通信延遲開銷,從而進一步降低了整個訓(xùn)練迭代的時間。

    5 結(jié) 論

    本文提出了一種動態(tài)分層梯度稀疏化及梯度合并優(yōu)化方法,用于解決基于參數(shù)服務(wù)器的數(shù)據(jù)并行優(yōu)化方法加速大規(guī)模深度神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練過程中存在的通信開銷大、訓(xùn)練耗時長等問題。首先,通過在迭代過程中動態(tài)調(diào)整每一層的壓縮閾值,有效減少了通信量,使得層梯度壓縮及梯度計算與通信可以流水線并行執(zhí)行,重疊了部分通信時間。其次,利用動態(tài)規(guī)劃對層梯度合并時的通信耗時、稀疏化計算及層梯度計算時間進行權(quán)衡優(yōu)化,求解出最優(yōu)的層合并組合,將多層小尺度梯度張量合并為一層進行通信。最后,將最優(yōu)的層合并組合應(yīng)用于具體的訓(xùn)練迭代過程。實驗結(jié)果表明,本文所提方法在并行訓(xùn)練精度、訓(xùn)練耗時、壓縮效果方面和已有方法相比都有明顯的優(yōu)勢,可以在保證訓(xùn)練精度的情況下,進一步減少通信量,最大化計算和通信的重疊,最終降低深度神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練耗時,提高模型的訓(xùn)練速度。

    參考文獻:

    [1]朱泓睿, 元國軍, 姚成吉, 等. 分布式深度學(xué)習(xí)訓(xùn)練網(wǎng)絡(luò)綜述 [J]. 計算機研究與發(fā)展, 2021, 58(1): 98-115.

    ZHU Hongrui, YUAN Guojun, YAO Chengji, et al. Survey on network of distributed deep learning training [J]. Journal of Computer Research and Development, 2021, 58(1): 98-115.

    [2]王帥, 李丹. 分布式機器學(xué)習(xí)系統(tǒng)網(wǎng)絡(luò)性能優(yōu)化研究進展 [J]. 計算機學(xué)報, 2022, 45(7): 1384-1411.

    WANG Shuai, LI Dan. Research progress on network performance optimization of distributed machine learning system [J]. Chinese Journal of Computers, 2022, 45(7): 1384-1411.

    [3]巨濤, 趙宇陽, 劉帥, 等. 面向圖片識別的深度學(xué)習(xí)模型并行優(yōu)化方法 [J]. 西安交通大學(xué)學(xué)報, 2023, 57(1): 141-151.

    JU Tao, ZHAO Yuyang, LIU Shuai, et al. A parallel optimization method of deep learning model for image recognition [J]. Journal of Xi’an Jiaotong University, 2023, 57(1): 141-151.

    [4]LI Mu, ANDERSEN D G, PARK J W, et al. Scaling distributed machine learning with the parameter server [C]//Proceedings of the 11th USENIX Conference on Operating Systems Design and Implementation. Berkeley, CA, USA: USENIX Association, 2014: 583-598.

    [5]朱虎明, 李佩, 焦李成, 等. 深度神經(jīng)網(wǎng)絡(luò)并行化研究綜述 [J]. 計算機學(xué)報, 2018, 41(8): 1861-1881.

    ZHU Huming, LI Pei, JIAO Licheng, et al. Review of parallel deep neural network [J]. Chinese Journal of Computers, 2018, 41(8): 1861-1881.

    [6]BOTTOU L, CURTIS F E, NOCEDAL J, et al. Optimization methods for large-scale machine learning [J]. SIAM Review, 2018, 60(2): 223-311.

    [7]高赫然, 吳恒, 許源佳, 等. 面向深度學(xué)習(xí)訓(xùn)練的內(nèi)存交換機制綜述 [J]. 軟件學(xué)報, 2023, 34(12): 5862-5886.

    GAO Heran, WU Heng, XU Yuanjia, et al. Survey on memory swapping mechanism for deep learning training [J]. Journal of Software, 2023, 34(12): 5862-5886.

    [8]巨濤, 劉帥, 王志強, 等. 深度神經(jīng)網(wǎng)絡(luò)模型任務(wù)切分及并行優(yōu)化方法 [J/OL]. 北京航空航天大學(xué)學(xué)報: 1-18[2024-04-13]. https://doi.org/10.13700/j.bh.1001-5965.2022.0731.

    JU Tao, LIU Shuai, WANG Zhiqiang, et al. Task segmentation and parallel optimization of DNN model [J/OL]. Journal of Beijing University of Aeronautics and Astronautics: 1-18[2024-04-13]. https://doi.org/10.13700/j.bh.1001-5965.2022.0731.

    [9]YAN Guangfeng, LI Tan, WU Kui, et al. Killing two birds with one stone: quantization achieves privacy in distributed learning [J]. Digital Signal Processing, 2024, 146: 104353.

    [10]陳世達, 劉強, 韓亮. 降低分布式訓(xùn)練通信的梯度稀疏壓縮方法 [J]. 浙江大學(xué)學(xué)報(工學(xué)版), 2021, 55(2): 386-394.

    CHEN Shida, LIU Qiang, HAN Liang. Gradient sparsification compression approach to reducing communication in distributed training [J]. Journal of Zhejiang University(Engineering Science), 2021, 55(2): 386-394.

    [11]王恩東, 閆瑞棟, 郭振華, 等. 分布式訓(xùn)練系統(tǒng)及其優(yōu)化算法綜述 [J]. 計算機學(xué)報, 2024, 47(1): 1-28.

    WANG Endong, YAN Ruidong, GUO Zhenhua, et al. A survey of distributed training system and its optimization algorithms [J]. Chinese Journal of Computers, 2024, 47(1): 1-28.

    [12]STROM N. Scalable distributed DNN training using commodity GPU cloud computing [C]//Proceedings of the Interspeech 2015. Paris, France: International Speech Communication Association, 2015: 1488-1492.

    [13]DRYDEN N, MOON T, JACOBS S A, et al. Communication quantization for data-parallel training of deep neural networks [C]//2016 2nd Workshop on Machine Learning in HPC Environments (MLHPC). Piscataway, NJ, USA: IEEE, 2016: 1-8.

    [14]CHEN C Y, CHOI J, BRAND D, et al. AdaComp: adaptive residual gradient compression for data-parallel distributed training [C]//Proceedings of the Thirty-Second AAAI Conference on Artificial Intelligence and Thirtieth Innovative Applications of Artificial Intelligence Conference and Eighth AAAI Symposium on Educational Advances in Artificial Intelligence. Palo Alto, CA, USA: AAAI Press, 2018: 2827-2835.

    [15]RENGGLI C, ASHKBOOS S, AGHAGOLZADEH M, et al. SparCML: high-performance sparse communication for machine learning [C]//Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis. New York, USA: Association for Computing Machinery, 2019: 11.

    [16]SATTLER F, WIEDEMANN S, MLLER K R, et al. Sparse binary compression: towards distributed deep learning with minimal communication [C]//2019 International Joint Conference on Neural Networks (IJCNN). Piscataway, NJ, USA: IEEE, 2019: 1-8.

    [17]SHI Shaohuai, WANG Qiang, ZHAO Kaiyong, et al. A distributed synchronous SGD algorithm with global top-k sparsification for low bandwidth networks [C]//2019 IEEE 39th International Conference on Distributed Computing Systems (ICDCS). Piscataway, NJ, USA: IEEE, 2019: 2238-2247.

    [18]LIN Yujun, HAN Song, MAO Huizi, et al. Deep gradient compression: reducing the communication bandwidth for distributed training [EB/OL]. (2020-06-23)[2024-01-01]. https://arxiv.org/abs/1712.01887.

    [19]SHI Shaohuai, TANG Zhenheng, WANG Qiang, et al. Layer-wise adaptive gradient sparsification for distributed deep learning with convergence guarantees [M]//Frontiers in Artificial Intelligence and Applications. Amsterdam, Netherlands: IOS Press, 2020: 1467-1474.

    [20]SHI Shaohuai, CHU Xiaowen, CHEUNG K C, et al. Understanding top-K sparsification in distributed deep learning [EB/OL]. (2019-11-20)[2024-01-01]. https://arxiv.org/abs/1911.08772.

    [21]GUO Bingjun, LIU Yazhi, ZHANG Chunyang. A partition based gradient compression algorithm for distributed training in AIoT [J]. Sensors, 2021, 21(6): 1943.

    [22]ABDELMONIEM A M, AHMED A, ALOUINI M S, et al. An efficient statistical-based gradient compression technique for distributed training systems [J]. Proceedings of Machine Learning and Systems, 2021, 3: 297-322.

    [23]CHMIEL B, BEN-URI L, SHKOLNIK M, et al. Neural gradients are near-lognormal: improved quantized and sparse training [EB/OL]. (2020-10-12)[2024-01-01]. https://arxiv.org/abs/2006.08173.

    [24]SONG Yingjie, AI Yongbao, XIAO Xiong, et al. HCEC: an efficient geo-distributed deep learning training strategy based on wait-free back-propagation [J]. Journal of Systems Architecture, 2024, 148: 103070.

    [25]ZHANG Hao, ZHENG Zeyu, XU Shizhen, et al. Poseidon: an efficient communication architecture for distributed deep learning on GPU clusters [C]//Proceedings of the 2017 USENIX Conference on Usenix Annual Technical Conference. Berkeley, CA, USA: USENIX Association, 2017: 181-193.

    [26]JAYARAJAN A, WEI Jinliang, GIBSON G, et al. Priority-based parameter propagation for distributed DNN training [J]. Proceedings of Machine Learning and Systems, 2019, 1: 132-145.

    [27]PENG Yanghua, ZHU Yibo, CHEN Yangrui, et al. A generic communication scheduler for distributed DNN training acceleration [C]//Proceedings of the 27th ACM Symposium on Operating Systems Principles. New York, USA: Association for Computing Machinery, 2019: 16-29.

    [28]吳艷霞, 梁楷, 劉穎, 等. 深度學(xué)習(xí)FPGA加速器的進展與趨勢 [J]. 計算機學(xué)報, 2019, 42(11): 2461-2480.

    WU Yanxia, LIANG Kai, LIU Ying, et al. The progress and trends of FPGA-based accelerators in deep learning [J]. Chinese Journal of Computers, 2019, 42(11): 2461-2480.

    (編輯 亢列梅)

    猜你喜歡
    深度神經(jīng)網(wǎng)絡(luò)
    基于多注意力多尺度特征融合的圖像描述生成算法
    基于深度卷積神經(jīng)網(wǎng)絡(luò)的交通流量預(yù)測數(shù)學(xué)模型設(shè)計
    基于改進SIFT特征和神經(jīng)網(wǎng)絡(luò)結(jié)合的場景識別
    軟件工程(2019年5期)2019-07-03 02:31:14
    基于Kaldi的語音識別算法
    深度神經(jīng)網(wǎng)絡(luò)在船舶自動舵中的應(yīng)用
    基于深度神經(jīng)網(wǎng)絡(luò)的低延遲聲源分離方法
    基于大數(shù)據(jù)網(wǎng)絡(luò)的運動損傷評估模型研究
    試論基于深度神經(jīng)網(wǎng)絡(luò)的汽車車型識別問題
    深度神經(jīng)網(wǎng)絡(luò)的發(fā)展現(xiàn)狀
    基于深度神經(jīng)網(wǎng)絡(luò)的身份識別研究
    在线观看人妻少妇| 少妇的逼好多水| 国产免费福利视频在线观看| 美女中出高潮动态图| a级毛色黄片| 亚洲欧美日韩卡通动漫| 美女国产视频在线观看| 免费人妻精品一区二区三区视频| www.av在线官网国产| 丝瓜视频免费看黄片| 色婷婷久久久亚洲欧美| 在线观看美女被高潮喷水网站| 日本vs欧美在线观看视频 | 久久久久视频综合| 美女大奶头黄色视频| 国产成人一区二区在线| 精品亚洲成国产av| 国产视频内射| 精品一区二区三区视频在线| 国产精品一二三区在线看| 乱人伦中国视频| 我要看黄色一级片免费的| 免费av中文字幕在线| 日韩中字成人| 亚洲美女黄色视频免费看| 大陆偷拍与自拍| 久久久久久久久久成人| 在线精品无人区一区二区三| 一级av片app| 国产av国产精品国产| 亚洲av成人精品一二三区| av福利片在线观看| 国产一区有黄有色的免费视频| 乱码一卡2卡4卡精品| 99久国产av精品国产电影| 国国产精品蜜臀av免费| 国产精品一区二区性色av| 久久国产精品男人的天堂亚洲 | 久久这里有精品视频免费| 黄色视频在线播放观看不卡| 有码 亚洲区| 国产精品国产三级专区第一集| 中文资源天堂在线| 91精品国产九色| 中文字幕精品免费在线观看视频 | 一个人看视频在线观看www免费| 日本欧美视频一区| 国产精品蜜桃在线观看| 国产精品99久久99久久久不卡 | 精华霜和精华液先用哪个| 伊人亚洲综合成人网| 国产av精品麻豆| 99国产精品免费福利视频| 久久婷婷青草| 91成人精品电影| 在线亚洲精品国产二区图片欧美 | 亚洲人与动物交配视频| 午夜福利视频精品| av天堂久久9| 亚洲精品乱久久久久久| 亚洲熟女精品中文字幕| 国产成人精品无人区| 老司机影院毛片| 国产av一区二区精品久久| 中文字幕久久专区| 国产黄色视频一区二区在线观看| 99久久综合免费| 天堂8中文在线网| 久久久精品94久久精品| 亚洲精品乱久久久久久| 日韩制服骚丝袜av| 亚洲精品久久久久久婷婷小说| 久久99一区二区三区| 欧美日韩综合久久久久久| 伊人久久精品亚洲午夜| 午夜免费男女啪啪视频观看| 精品久久久噜噜| 新久久久久国产一级毛片| 亚洲av不卡在线观看| 国产69精品久久久久777片| 欧美精品亚洲一区二区| 高清欧美精品videossex| 最后的刺客免费高清国语| 亚洲成人手机| 美女福利国产在线| 久久99热这里只频精品6学生| 国产精品一区二区在线不卡| 国产亚洲欧美精品永久| 色吧在线观看| 日本wwww免费看| 亚洲欧美一区二区三区黑人 | 91精品国产九色| 免费看av在线观看网站| 水蜜桃什么品种好| 亚洲精品日本国产第一区| 日韩免费高清中文字幕av| 日韩欧美精品免费久久| 久久韩国三级中文字幕| 久久青草综合色| 午夜免费鲁丝| 18禁在线播放成人免费| 国产视频首页在线观看| √禁漫天堂资源中文www| 亚洲av福利一区| 各种免费的搞黄视频| 18禁裸乳无遮挡动漫免费视频| 十分钟在线观看高清视频www | 精品卡一卡二卡四卡免费| 亚洲欧美日韩卡通动漫| 久久6这里有精品| av国产精品久久久久影院| 一区二区三区四区激情视频| 一级毛片久久久久久久久女| 我要看日韩黄色一级片| 成人漫画全彩无遮挡| 亚洲情色 制服丝袜| 美女xxoo啪啪120秒动态图| 成人影院久久| 久久久久人妻精品一区果冻| 亚洲精品国产成人久久av| 伦理电影免费视频| 夫妻午夜视频| 国产精品欧美亚洲77777| 欧美另类一区| 激情五月婷婷亚洲| a级毛片免费高清观看在线播放| 国产亚洲午夜精品一区二区久久| 国产男人的电影天堂91| 黑人高潮一二区| 久久久久视频综合| 啦啦啦在线观看免费高清www| 国产亚洲欧美精品永久| 精品久久国产蜜桃| 色哟哟·www| 久久久精品94久久精品| 青春草亚洲视频在线观看| 青春草亚洲视频在线观看| 天美传媒精品一区二区| 久久精品久久精品一区二区三区| 久久99热这里只频精品6学生| 日日摸夜夜添夜夜爱| av国产久精品久网站免费入址| 99九九在线精品视频 | 三级经典国产精品| 国产精品一区二区在线观看99| 国产男女超爽视频在线观看| 免费观看在线日韩| 我的老师免费观看完整版| 日韩av在线免费看完整版不卡| 亚洲av中文av极速乱| 蜜臀久久99精品久久宅男| 日本午夜av视频| 搡女人真爽免费视频火全软件| 极品人妻少妇av视频| 18禁裸乳无遮挡动漫免费视频| 日韩av免费高清视频| 中国国产av一级| 日本av手机在线免费观看| 国产免费视频播放在线视频| 最后的刺客免费高清国语| 久久久久网色| 18+在线观看网站| 色5月婷婷丁香| 日韩,欧美,国产一区二区三区| 女人久久www免费人成看片| 色网站视频免费| 男的添女的下面高潮视频| 亚洲精品,欧美精品| 亚洲精品日韩av片在线观看| 99热国产这里只有精品6| 桃花免费在线播放| 一级片'在线观看视频| 伦理电影免费视频| av在线播放精品| 我要看黄色一级片免费的| 国产成人aa在线观看| 欧美 日韩 精品 国产| 国产毛片在线视频| av免费观看日本| 国产真实伦视频高清在线观看| 亚洲美女黄色视频免费看| 亚洲美女黄色视频免费看| 一区在线观看完整版| 日韩伦理黄色片| 色婷婷av一区二区三区视频| 国产成人91sexporn| av免费观看日本| 久久国产乱子免费精品| 久久久亚洲精品成人影院| 欧美日韩综合久久久久久| 在线天堂最新版资源| 91aial.com中文字幕在线观看| 亚洲精品亚洲一区二区| 国内少妇人妻偷人精品xxx网站| 亚洲经典国产精华液单| 日本黄色日本黄色录像| 中文资源天堂在线| 免费看不卡的av| 久久久久久久亚洲中文字幕| 黑人巨大精品欧美一区二区蜜桃 | 国产高清不卡午夜福利| 成年人免费黄色播放视频 | 亚洲精品视频女| 午夜av观看不卡| 国产伦精品一区二区三区视频9| 丰满人妻一区二区三区视频av| 午夜激情久久久久久久| 一级二级三级毛片免费看| 少妇猛男粗大的猛烈进出视频| 人妻人人澡人人爽人人| 国产美女午夜福利| 国产一级毛片在线| 久久精品国产亚洲av天美| 精品久久久噜噜| 日日摸夜夜添夜夜添av毛片| 日本黄色日本黄色录像| 成人亚洲精品一区在线观看| av.在线天堂| 日产精品乱码卡一卡2卡三| 国产一区二区在线观看日韩| 丰满人妻一区二区三区视频av| 欧美国产精品一级二级三级 | 一个人看视频在线观看www免费| 99视频精品全部免费 在线| 日韩av在线免费看完整版不卡| 免费观看a级毛片全部| 极品人妻少妇av视频| 欧美少妇被猛烈插入视频| 国产高清有码在线观看视频| 久久午夜福利片| 麻豆成人午夜福利视频| 免费看av在线观看网站| 国产日韩欧美亚洲二区| 另类亚洲欧美激情| 少妇高潮的动态图| 国产永久视频网站| 美女主播在线视频| 日本vs欧美在线观看视频 | 亚洲三级黄色毛片| 久久精品国产亚洲av涩爱| 老司机影院毛片| 亚洲精品亚洲一区二区| 最新中文字幕久久久久| 日韩av免费高清视频| 久久精品久久精品一区二区三区| 日韩亚洲欧美综合| 天堂俺去俺来也www色官网| 黑人巨大精品欧美一区二区蜜桃 | 91久久精品国产一区二区三区| 国产免费视频播放在线视频| av女优亚洲男人天堂| 免费黄网站久久成人精品| 80岁老熟妇乱子伦牲交| 九草在线视频观看| 成人毛片a级毛片在线播放| 日本午夜av视频| 高清av免费在线| 日本av手机在线免费观看| 国产片特级美女逼逼视频| 欧美日韩亚洲高清精品| 男人添女人高潮全过程视频| 亚洲欧美日韩东京热| 国产免费一级a男人的天堂| 国产精品久久久久久av不卡| 观看美女的网站| av不卡在线播放| 香蕉精品网在线| 国产成人精品一,二区| 久久精品国产亚洲av涩爱| 寂寞人妻少妇视频99o| 精华霜和精华液先用哪个| 一级片'在线观看视频| 免费观看无遮挡的男女| 人妻少妇偷人精品九色| 在线亚洲精品国产二区图片欧美 | 成人综合一区亚洲| 亚洲久久久国产精品| 在线看a的网站| 国产欧美日韩综合在线一区二区 | 欧美精品亚洲一区二区| 久久精品国产鲁丝片午夜精品| 97超碰精品成人国产| 亚洲av日韩在线播放| 日本午夜av视频| √禁漫天堂资源中文www| 日韩欧美精品免费久久| 另类精品久久| 免费少妇av软件| 国产精品.久久久| a级毛片在线看网站| 一区二区av电影网| 搡老乐熟女国产| 在现免费观看毛片| 18禁动态无遮挡网站| 少妇的逼水好多| 国产av码专区亚洲av| av免费观看日本| 有码 亚洲区| 久久精品久久久久久久性| 另类亚洲欧美激情| 寂寞人妻少妇视频99o| 中国国产av一级| 成年av动漫网址| 久久久久国产网址| 99久久精品热视频| 黑人猛操日本美女一级片| 欧美国产精品一级二级三级 | 亚洲成色77777| freevideosex欧美| 久久精品国产自在天天线| a级毛片免费高清观看在线播放| 国产视频内射| av专区在线播放| 一区二区三区精品91| 亚洲国产精品一区三区| 啦啦啦啦在线视频资源| 国产一区二区三区综合在线观看 | 精品熟女少妇av免费看| 国产亚洲最大av| 国产深夜福利视频在线观看| 亚洲精品久久久久久婷婷小说| 国模一区二区三区四区视频| 免费看不卡的av| 一本—道久久a久久精品蜜桃钙片| 成人二区视频| 国产精品久久久久久久电影| 一级毛片久久久久久久久女| 日韩视频在线欧美| 最黄视频免费看| 国产精品嫩草影院av在线观看| 国产精品一区二区三区四区免费观看| 亚洲一级一片aⅴ在线观看| 一本一本综合久久| 国产av一区二区精品久久| 2022亚洲国产成人精品| 高清欧美精品videossex| 青春草视频在线免费观看| 一区在线观看完整版| 狂野欧美激情性xxxx在线观看| 又爽又黄a免费视频| 午夜福利网站1000一区二区三区| 久久午夜综合久久蜜桃| 亚洲图色成人| 亚洲精品乱码久久久久久按摩| 在线观看国产h片| 亚洲美女搞黄在线观看| 夜夜看夜夜爽夜夜摸| 亚洲av电影在线观看一区二区三区| av在线app专区| 亚洲精品久久久久久婷婷小说| 偷拍熟女少妇极品色| 亚洲精品国产av蜜桃| 国产有黄有色有爽视频| 精品久久国产蜜桃| 免费在线观看成人毛片| 亚洲性久久影院| 国产成人91sexporn| 一本久久精品| 国产精品国产av在线观看| 国产一区二区在线观看日韩| 国产黄片视频在线免费观看| 久热久热在线精品观看| 亚洲国产日韩一区二区| av福利片在线| 亚洲色图综合在线观看| 极品教师在线视频| 国产精品99久久久久久久久| 蜜臀久久99精品久久宅男| √禁漫天堂资源中文www| 亚洲国产精品成人久久小说| 精品人妻一区二区三区麻豆| 久久国产精品男人的天堂亚洲 | 久久国内精品自在自线图片| 免费黄网站久久成人精品| 成人免费观看视频高清| 日韩不卡一区二区三区视频在线| 久久精品久久精品一区二区三区| 特大巨黑吊av在线直播| 伦精品一区二区三区| 国内少妇人妻偷人精品xxx网站| 日韩av免费高清视频| 国语对白做爰xxxⅹ性视频网站| 99热全是精品| 欧美高清成人免费视频www| 久久久午夜欧美精品| 一级毛片久久久久久久久女| 妹子高潮喷水视频| 大香蕉久久网| 99热国产这里只有精品6| 国精品久久久久久国模美| 欧美激情极品国产一区二区三区 | 亚洲精品成人av观看孕妇| av视频免费观看在线观看| 久久久亚洲精品成人影院| 亚洲欧洲精品一区二区精品久久久 | 欧美另类一区| 久久人人爽人人片av| 日韩成人伦理影院| 午夜av观看不卡| 久久 成人 亚洲| 国产乱人偷精品视频| 寂寞人妻少妇视频99o| 精品久久久久久久久av| 少妇人妻精品综合一区二区| 尾随美女入室| 国产真实伦视频高清在线观看| av在线播放精品| 精品亚洲成a人片在线观看| 免费观看av网站的网址| 亚洲自偷自拍三级| 黄色视频在线播放观看不卡| 一级毛片aaaaaa免费看小| 亚洲精品日韩在线中文字幕| av天堂久久9| 晚上一个人看的免费电影| av有码第一页| 国产一区二区在线观看av| 我要看黄色一级片免费的| 亚洲丝袜综合中文字幕| 在线观看免费日韩欧美大片 | 综合色丁香网| 国产91av在线免费观看| 亚洲激情五月婷婷啪啪| 国产男人的电影天堂91| 国产69精品久久久久777片| 亚洲国产精品一区二区三区在线| 免费观看性生交大片5| a级一级毛片免费在线观看| 美女国产视频在线观看| 婷婷色av中文字幕| 久久热精品热| 亚洲va在线va天堂va国产| 伊人久久精品亚洲午夜| 免费播放大片免费观看视频在线观看| 99九九在线精品视频 | 亚洲欧洲国产日韩| 一区二区三区免费毛片| 99久久人妻综合| 日本免费在线观看一区| 国产高清国产精品国产三级| 久久久久久久大尺度免费视频| 色网站视频免费| 菩萨蛮人人尽说江南好唐韦庄| 在线观看免费高清a一片| 欧美成人午夜免费资源| 人体艺术视频欧美日本| 精品午夜福利在线看| 午夜激情福利司机影院| 两个人免费观看高清视频 | 乱系列少妇在线播放| 久久久久国产网址| 日韩av免费高清视频| 99热这里只有是精品在线观看| 看免费成人av毛片| 欧美日韩视频精品一区| 久久人人爽av亚洲精品天堂| 丝袜在线中文字幕| 岛国毛片在线播放| 免费播放大片免费观看视频在线观看| 777米奇影视久久| 人妻人人澡人人爽人人| 在线观看免费视频网站a站| 国产真实伦视频高清在线观看| 精品久久久精品久久久| av视频免费观看在线观看| 看非洲黑人一级黄片| 五月天丁香电影| 国产精品99久久久久久久久| 日日撸夜夜添| 亚洲精品第二区| 波野结衣二区三区在线| 国产精品三级大全| 亚洲精品456在线播放app| 全区人妻精品视频| 成人18禁高潮啪啪吃奶动态图 | 久久97久久精品| 欧美精品高潮呻吟av久久| 亚洲欧美精品专区久久| 亚洲综合精品二区| 日韩成人伦理影院| 亚洲av.av天堂| 狂野欧美激情性bbbbbb| 性高湖久久久久久久久免费观看| 国产男女内射视频| 狠狠精品人妻久久久久久综合| 纵有疾风起免费观看全集完整版| 嫩草影院新地址| 中文字幕久久专区| 国内揄拍国产精品人妻在线| 亚洲精品日本国产第一区| 日韩,欧美,国产一区二区三区| 亚洲av福利一区| 久久久久久久大尺度免费视频| 纵有疾风起免费观看全集完整版| 91精品伊人久久大香线蕉| 午夜视频国产福利| 国产一区二区在线观看av| 最近2019中文字幕mv第一页| 波野结衣二区三区在线| 搡老乐熟女国产| 国产高清三级在线| 亚洲天堂av无毛| 欧美日韩av久久| 看十八女毛片水多多多| a级毛片免费高清观看在线播放| 久久精品国产a三级三级三级| 国产黄色免费在线视频| 亚洲va在线va天堂va国产| 91精品一卡2卡3卡4卡| 日日撸夜夜添| 乱人伦中国视频| 日日啪夜夜撸| 免费观看的影片在线观看| 麻豆成人av视频| 午夜激情久久久久久久| 免费黄网站久久成人精品| 男人舔奶头视频| 亚洲欧美清纯卡通| 伦理电影大哥的女人| 我要看日韩黄色一级片| 一级爰片在线观看| 看非洲黑人一级黄片| 人妻少妇偷人精品九色| 色网站视频免费| 嫩草影院新地址| 赤兔流量卡办理| 99久久中文字幕三级久久日本| 亚洲精品456在线播放app| 亚洲精品视频女| 高清欧美精品videossex| 岛国毛片在线播放| av天堂久久9| 亚洲三级黄色毛片| 国产成人91sexporn| 国产69精品久久久久777片| 精品人妻偷拍中文字幕| 夜夜骑夜夜射夜夜干| 国产精品一区二区三区四区免费观看| 亚洲精品国产成人久久av| 亚洲第一av免费看| 少妇人妻久久综合中文| 国产精品久久久久久久久免| 一级,二级,三级黄色视频| 国产精品久久久久成人av| 国产白丝娇喘喷水9色精品| 久久久久人妻精品一区果冻| 国产欧美日韩精品一区二区| 七月丁香在线播放| 国产爽快片一区二区三区| 国产精品偷伦视频观看了| 亚洲四区av| 欧美区成人在线视频| 卡戴珊不雅视频在线播放| 国产精品99久久久久久久久| 丰满乱子伦码专区| 精品久久久噜噜| 七月丁香在线播放| 黑人巨大精品欧美一区二区蜜桃 | 欧美丝袜亚洲另类| 22中文网久久字幕| 日本欧美国产在线视频| 免费av不卡在线播放| 亚洲色图综合在线观看| 亚洲国产精品999| 精品一区在线观看国产| 成年女人在线观看亚洲视频| 亚州av有码| 少妇精品久久久久久久| 少妇人妻久久综合中文| 国产爽快片一区二区三区| 国产一区二区三区av在线| 狂野欧美激情性bbbbbb| 交换朋友夫妻互换小说| 国产精品熟女久久久久浪| 全区人妻精品视频| 亚洲精品国产av成人精品| 看十八女毛片水多多多| 啦啦啦中文免费视频观看日本| 国产毛片在线视频| 搡老乐熟女国产| 久久毛片免费看一区二区三区| 啦啦啦在线观看免费高清www| 少妇精品久久久久久久| 女人精品久久久久毛片| 九九爱精品视频在线观看| 26uuu在线亚洲综合色| 另类精品久久| 街头女战士在线观看网站| 51国产日韩欧美| 这个男人来自地球电影免费观看 | 国产精品福利在线免费观看| 亚洲精品成人av观看孕妇| 男女边摸边吃奶| 国产片特级美女逼逼视频| 亚洲国产精品一区二区三区在线| 国语对白做爰xxxⅹ性视频网站| 亚洲成人av在线免费| 男男h啪啪无遮挡| 成人亚洲精品一区在线观看| 美女福利国产在线| 三级经典国产精品| 亚洲成人手机| 成人免费观看视频高清| 在线观看免费高清a一片| 岛国毛片在线播放| 国产免费视频播放在线视频| 国产成人精品福利久久| 久久国产亚洲av麻豆专区| 成人免费观看视频高清| 亚洲成人手机| 大陆偷拍与自拍| 精品卡一卡二卡四卡免费| 国产高清不卡午夜福利| 一区二区三区乱码不卡18| 欧美日韩综合久久久久久|