System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實現(xiàn)步驟摘要】
本申請涉及通信,特別涉及一種浮點數(shù)指數(shù)壓縮方法、裝置、發(fā)送端、接收端及介質(zhì)。
技術(shù)介紹
1、隨著機器學(xué)習(xí)模型規(guī)模的增大和應(yīng)用場景的增加,分布式訓(xùn)練成為了重要的模型訓(xùn)練手段。數(shù)據(jù)并行是最典型也是應(yīng)用最廣泛的分布式訓(xùn)練范式。在數(shù)據(jù)并行的分布式訓(xùn)練架構(gòu)中,各訓(xùn)練節(jié)點均在本地存儲完整的模型,而享有獨立的訓(xùn)練數(shù)據(jù)。訓(xùn)練的目的是通過各訓(xùn)練節(jié)點的協(xié)同,使用不同的訓(xùn)練數(shù)據(jù)對模型參數(shù)的更新做出貢獻,完成整體模型的訓(xùn)練。使用數(shù)據(jù)并行的分布式訓(xùn)練范式可以充分利用多機算力,極大地提高機器學(xué)習(xí)訓(xùn)練的效率。
2、在相關(guān)技術(shù)中,為了完成模型參數(shù)的更新,各訓(xùn)練節(jié)點產(chǎn)生的梯度數(shù)據(jù)通常需要通過網(wǎng)絡(luò)進行傳遞和綜合。然而,隨著分布式訓(xùn)練規(guī)模的增大,需要通過網(wǎng)絡(luò)傳遞的梯度數(shù)量也愈發(fā)增加,節(jié)點間的網(wǎng)絡(luò)通信逐漸成為了訓(xùn)練的瓶頸。例如在數(shù)據(jù)中心專有的訓(xùn)練集群上,隨著參與訓(xùn)練gpu(graphics?processing?unit,圖形處理器)數(shù)量的增多,通信的高代價使集群的加速效果不能成比例上升。再例如在部分聯(lián)邦學(xué)習(xí)場景下,參與訓(xùn)練的邊緣設(shè)備網(wǎng)絡(luò)條件較差,難以上傳大量的梯度數(shù)據(jù),從而降低了數(shù)據(jù)并行分布式訓(xùn)練的效率。
技術(shù)實現(xiàn)思路
1、本申請?zhí)峁┮环N浮點數(shù)指數(shù)壓縮方法、裝置、發(fā)送端、接收端及介質(zhì),以解決相關(guān)技術(shù)中由于梯度數(shù)據(jù)量過大導(dǎo)致機間無法及時傳輸通信數(shù)據(jù),從而降低數(shù)據(jù)并行分布式訓(xùn)練的效率等問題。
2、本申請第一方面實施例提供一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,方法應(yīng)用于發(fā)送端,其中
3、可選地,在本申請一個實施例中,對浮點數(shù)指數(shù)進行編碼得到壓縮數(shù)據(jù),包括:獲取霍夫曼編碼表;以浮點數(shù)指數(shù)為索引,查詢霍夫曼編碼表得到浮點數(shù)指數(shù)的編碼,根據(jù)浮點數(shù)指數(shù)的編碼生成壓縮數(shù)據(jù)。
4、可選地,在本申請一個實施例中,根據(jù)符號位、尾數(shù)部分和壓縮數(shù)據(jù)生成通信數(shù)據(jù),包括:將目標(biāo)緩沖區(qū)劃分為量化第一區(qū)段和量化第二區(qū)段;將壓縮數(shù)據(jù)填充至量化第一區(qū)段、將符號位和尾數(shù)部分填充至量化第二區(qū)段,得到通信數(shù)據(jù)。
5、本申請第二方面實施例提供一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,方法應(yīng)用于接收端,其中,方法包括以下步驟:獲取發(fā)送端發(fā)送的通信數(shù)據(jù),其中,發(fā)送端對目標(biāo)梯度數(shù)據(jù)的浮點數(shù)指數(shù)進行編碼得到壓縮數(shù)據(jù),根據(jù)符號位、尾數(shù)部分和壓縮數(shù)據(jù)生成通信數(shù)據(jù);對通信數(shù)據(jù)進行解壓縮得到目標(biāo)梯度數(shù)據(jù)。
6、可選地,在本申請一個實施例中,通信數(shù)據(jù)存儲于目標(biāo)緩沖區(qū),目標(biāo)緩沖區(qū)劃分為量化第一區(qū)段和量化第二區(qū)段;對通信數(shù)據(jù)進行解壓縮得到目標(biāo)梯度數(shù)據(jù),包括:分別讀取量化第一區(qū)段和量化第二區(qū)段得到壓縮數(shù)據(jù)、符號位和尾數(shù)部分;識別壓縮數(shù)據(jù)中浮點數(shù)指數(shù)的編碼,并獲取查找表;以浮點數(shù)指數(shù)的編碼為索引,查詢查找表得到浮點數(shù)指數(shù);根據(jù)浮點數(shù)指數(shù)、符號位和尾數(shù)部分組裝成目標(biāo)梯度數(shù)據(jù)。
7、本申請第三方面實施例提供一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮裝置,裝置應(yīng)用于發(fā)送端,包括:第一獲取模塊,用于獲取數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練過程中待發(fā)送的目標(biāo)梯度數(shù)據(jù);處理模塊,用于識別目標(biāo)梯度數(shù)據(jù)中各個梯度浮點數(shù),從各個梯度浮點數(shù)分離出符號位、尾數(shù)部分和浮點數(shù)指數(shù),對浮點數(shù)指數(shù)進行編碼得到壓縮數(shù)據(jù);壓縮模塊,用于根據(jù)符號位、尾數(shù)部分和壓縮數(shù)據(jù)生成通信數(shù)據(jù),發(fā)送通信數(shù)據(jù)至接收端。
8、可選地,在本申請一個實施例中,處理模塊用于,獲取霍夫曼編碼表;以浮點數(shù)指數(shù)為索引,查詢霍夫曼編碼表得到浮點數(shù)指數(shù)的編碼,根據(jù)浮點數(shù)指數(shù)的編碼生成壓縮數(shù)據(jù)。
9、可選地,在本申請一個實施例中,壓縮模塊還用于,根據(jù)符號位、尾數(shù)部分和壓縮數(shù)據(jù)生成通信數(shù)據(jù),包括:將目標(biāo)緩沖區(qū)劃分為量化第一區(qū)段和量化第二區(qū)段;將壓縮數(shù)據(jù)填充至量化第一區(qū)段、將符號位和尾數(shù)部分填充至量化第二區(qū)段,得到通信數(shù)據(jù)。
10、本申請第四方面實施例提供一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮裝置,裝置應(yīng)用于接收端,包括:第二獲取模塊,用于獲取發(fā)送端發(fā)送的通信數(shù)據(jù),其中,發(fā)送端對目標(biāo)梯度數(shù)據(jù)的浮點數(shù)指數(shù)進行編碼得到壓縮數(shù)據(jù),根據(jù)符號位、尾數(shù)部分和壓縮數(shù)據(jù)生成通信數(shù)據(jù);解壓縮模塊,用于對通信數(shù)據(jù)進行解壓縮得到目標(biāo)梯度數(shù)據(jù)。
11、可選地,在本申請一個實施例中,通信數(shù)據(jù)存儲于目標(biāo)緩沖區(qū),目標(biāo)緩沖區(qū)劃分為量化第一區(qū)段和量化第二區(qū)段;解壓縮模塊還用于,分別讀取量化第一區(qū)段和量化第二區(qū)段得到壓縮數(shù)據(jù)、符號位和尾數(shù)部分;識別壓縮數(shù)據(jù)中浮點數(shù)指數(shù)的編碼,并獲取查找表;以浮點數(shù)指數(shù)的編碼為索引,查詢查找表得到浮點數(shù)指數(shù);根據(jù)浮點數(shù)指數(shù)、符號位和尾數(shù)部分組裝成目標(biāo)梯度數(shù)據(jù)。
12、本申請第五方面實施例提供一種發(fā)送端,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,處理器執(zhí)行程序,以實現(xiàn)上述實施例的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法。
13、本申請第六方面實施例提供一種接收端,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,處理器執(zhí)行程序,以實現(xiàn)上述實施例的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法。
14、本申請第七方面實施例提供一種計算機可讀存儲介質(zhì),其上存儲有計算機程序或指令,計算機程序或指令被執(zhí)行時,以實現(xiàn)上述實施例的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法。
15、本申請第八方面實施例提供一種計算機程序產(chǎn)品,其上存儲有計算機程序或指令,計算機程序或指令被執(zhí)行時,以實現(xiàn)上述實施例的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法。
16、由此,本申請包括如下有益效果:
17、本申請實施例通過獲取待發(fā)送的目標(biāo)梯度數(shù)據(jù),從梯度數(shù)據(jù)的原始梯度浮點數(shù)中分離出尾數(shù)部分、符號位以及指數(shù)部分,基于梯度浮點數(shù)分布特性,對浮點數(shù)的指數(shù)部分使用基于熵的編碼,利用不均勻的頻率分布對指數(shù)進行壓縮,從而縮短了梯度數(shù)據(jù)段的整體體積,能夠根據(jù)訓(xùn)練過程中梯度的特性,實現(xiàn)對傳輸數(shù)據(jù)量的壓縮,從而降低通信成本,提高訓(xùn)練效率。由此解決了相關(guān)技術(shù)中由于梯度數(shù)據(jù)量過大導(dǎo)致機間無法及時傳輸通信數(shù)據(jù),從而降低數(shù)據(jù)并行分布式訓(xùn)練的效率等問題。
18、本申請附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本申請的實踐了解到。
本文檔來自技高網(wǎng)...【技術(shù)保護點】
1.一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述方法應(yīng)用于發(fā)送端,其中,所述方法包括以下步驟:
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述對所述浮點數(shù)指數(shù)進行編碼得到壓縮數(shù)據(jù),包括:
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述根據(jù)所述符號位、所述尾數(shù)部分和所述壓縮數(shù)據(jù)生成通信數(shù)據(jù),包括:
4.一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述方法應(yīng)用于接收端,其中,所述方法包括以下步驟:
5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述通信數(shù)據(jù)存儲于目標(biāo)緩沖區(qū),所述目標(biāo)緩沖區(qū)劃分為量化第一區(qū)段和量化第二區(qū)段;
6.一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮裝置,其特征在于,所述裝置應(yīng)用于發(fā)送端,其中,所述裝置包括:
7.一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮裝置,其特征在于,所述裝置應(yīng)
8.一種發(fā)送端,其特征在于,包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述程序,以實現(xiàn)權(quán)利要求1-3任一項所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法。
9.一種接收端,其特征在于,包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述程序,以實現(xiàn)權(quán)利要求4或5任一項所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法。
10.一種計算機可讀存儲介質(zhì),其上存儲有計算機程序或指令,其特征在于,所述計算機程序或指令被執(zhí)行時,以實現(xiàn)權(quán)利要求1-5任一項所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法。
11.一種計算機程序產(chǎn)品,其上存儲有計算機程序或指令,其特征在于,所述計算機程序或指令被執(zhí)行時,以實現(xiàn)權(quán)利要求1-5任一項所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法。
...【技術(shù)特征摘要】
1.一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述方法應(yīng)用于發(fā)送端,其中,所述方法包括以下步驟:
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述對所述浮點數(shù)指數(shù)進行編碼得到壓縮數(shù)據(jù),包括:
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述根據(jù)所述符號位、所述尾數(shù)部分和所述壓縮數(shù)據(jù)生成通信數(shù)據(jù),包括:
4.一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述方法應(yīng)用于接收端,其中,所述方法包括以下步驟:
5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮方法,其特征在于,所述通信數(shù)據(jù)存儲于目標(biāo)緩沖區(qū),所述目標(biāo)緩沖區(qū)劃分為量化第一區(qū)段和量化第二區(qū)段;
6.一種數(shù)據(jù)并行分布式機器學(xué)習(xí)訓(xùn)練通信中的浮點數(shù)指數(shù)壓縮裝置,其特征在于,所述裝置應(yīng)用于發(fā)送端,其中,所述裝置包括:
7.一種數(shù)據(jù)并行分布式機器學(xué)習(xí)...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:徐明偉,郭誠,錢坤,操佳敏,翟恩南,
申請(專利權(quán))人:清華大學(xué),
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。