欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種模型訓(xùn)練方法、裝置、設(shè)備、系統(tǒng)和存儲介質(zhì)與流程

文檔序號:40545915發(fā)布日期:2025-01-03 11:05閱讀:10來源:國知局
一種模型訓(xùn)練方法、裝置、設(shè)備、系統(tǒng)和存儲介質(zhì)與流程

本技術(shù)涉及機器學(xué)習(xí),尤其涉及一種模型訓(xùn)練方法、裝置、設(shè)備、系統(tǒng)和存儲介質(zhì)。


背景技術(shù):

1、神經(jīng)網(wǎng)絡(luò)(neural?network)模型(下文簡稱為“模型”)廣泛應(yīng)用于計算機視覺(computer?vision,cv)、語音識別、自然語言處理(natural?language?processing,nlp)等領(lǐng)域。為提高模型的訓(xùn)練效率,常采用分布式數(shù)據(jù)并行訓(xùn)練方式對模型進行訓(xùn)練。該訓(xùn)練方式下,分布式訓(xùn)練系統(tǒng)包括管理設(shè)備和多個計算設(shè)備,每個計算設(shè)備維護相同的模型參數(shù)和相同的計算任務(wù),也即每個計算設(shè)備部署相同的待訓(xùn)練的模型,但不同的計算設(shè)備處理不同的訓(xùn)練數(shù)據(jù)。每個計算設(shè)備完成各自的數(shù)據(jù)計算過程后,獲取模型在反向傳播過程中確定的梯度,并將該梯度發(fā)送到用于執(zhí)行模型的梯度規(guī)約的設(shè)備,如管理設(shè)備或其他計算設(shè)備。以管理設(shè)備執(zhí)行梯度規(guī)約為例,該管理設(shè)備對所有的梯度進行處理后得到更新信息,并根據(jù)該更新信息對模型進行更新獲取目標(biāo)模型。

2、在模型的訓(xùn)練過程中,梯度的通信占用了大量的時間。為減少梯度的傳輸時長,管理設(shè)備采用固定容量的梯度融合方法:計算設(shè)備將模型中的多個任務(wù)產(chǎn)生的梯度打包后進行傳輸,打包后的梯度量小于或等于該預(yù)設(shè)的固定容量。然而,固定容量過小會使管理設(shè)備和計算設(shè)備之間的通信開銷增大且?guī)捓寐瘦^低;固定容量過大會使計算設(shè)備中最后傳輸?shù)奶荻攘枯^大,導(dǎo)致分布式訓(xùn)練系統(tǒng)中存在較大的通信拖尾時長。從而,導(dǎo)致模型的訓(xùn)練時間增加,模型訓(xùn)練的效率受到影響。


技術(shù)實現(xiàn)思路

1、本技術(shù)提供了一種模型訓(xùn)練方法、裝置、設(shè)備、系統(tǒng)和存儲介質(zhì),解決了計算設(shè)備按照固定容量對梯度進行融合傳輸產(chǎn)生的帶寬利用率低和通信拖尾時長大的問題。

2、第一方面,本技術(shù)提供了一種模型訓(xùn)練方法。該模型訓(xùn)練方法應(yīng)用于分布式訓(xùn)練系統(tǒng),該分布式訓(xùn)練系統(tǒng)包括管理設(shè)備和多個計算設(shè)備,每個計算設(shè)備部署有待訓(xùn)練的模型,且該模型包括多個算子。該模型訓(xùn)練方法包括:管理設(shè)備獲取模型的執(zhí)行信息以及多個計算設(shè)備的數(shù)據(jù)傳輸性能。該執(zhí)行信息包括:多個算子的執(zhí)行順序、執(zhí)行時長和多個梯度的數(shù)據(jù)量,一個梯度對應(yīng)一個算子。以及,管理設(shè)備根據(jù)執(zhí)行信息以及多個計算設(shè)備的數(shù)據(jù)傳輸性能,確定模型的梯度傳輸策略,并將梯度傳輸策略應(yīng)用于模型的訓(xùn)練。其中的梯度傳輸策略用于指示在訓(xùn)練模型時各計算設(shè)備進行梯度融合傳輸?shù)姆绞健?/p>

3、在本實施例中,管理設(shè)備可根據(jù)模型的執(zhí)行信息獲取到適配于多個計算設(shè)備的數(shù)據(jù)傳輸性能的梯度傳輸策略,在該梯度傳輸策略應(yīng)用到模型的訓(xùn)練過程的情況下,每個計算設(shè)備每次傳輸?shù)奶荻鹊臄?shù)據(jù)量都能與計算設(shè)備的數(shù)據(jù)傳輸性能相匹配。從而,計算設(shè)備的數(shù)據(jù)傳輸性能不會因為每次傳輸?shù)奶荻葦?shù)據(jù)量較小導(dǎo)致通信開銷增大的問題。以及,在計算設(shè)備的數(shù)據(jù)傳輸性能較優(yōu)的情況下,梯度傳輸策略可使每次傳輸?shù)奶荻葦?shù)據(jù)量增大,以提高分布式訓(xùn)練系統(tǒng)對數(shù)據(jù)傳輸性能的利用能力。而且,由于梯度傳輸策略有效地利用了計算設(shè)備的數(shù)據(jù)傳輸性能,使得每個計算設(shè)備所要傳輸?shù)淖詈笠唤M數(shù)據(jù)也能與該計算設(shè)備的數(shù)據(jù)傳輸性能相適應(yīng),有利于降低計算設(shè)備和管理設(shè)備每次通信的梯度拖尾時延,從而減少模型的訓(xùn)練時間,提高模型的訓(xùn)練效率。

4、示例性的,該梯度傳輸策略使任一計算設(shè)備中的梯度進行至少一次通信算子融合,且任一計算設(shè)備中產(chǎn)生順序在后的k個梯度的融合數(shù)據(jù)的傳輸時長最短,k為正整數(shù)。

5、在一種可選的實現(xiàn)方式中,管理設(shè)備根據(jù)執(zhí)行信息以及多個計算設(shè)備的數(shù)據(jù)傳輸性能,確定模型的梯度傳輸策略,可以包括:管理設(shè)備根據(jù)執(zhí)行信息和多個計算設(shè)備的數(shù)據(jù)傳輸性能,預(yù)測符合第一尋優(yōu)條件的一個或多個候選梯度傳輸策略。以及,管理設(shè)備從一個或多個候選梯度傳輸策略中確定符合第二尋優(yōu)條件的梯度傳輸策略。其中的第一尋優(yōu)條件用于指示計算設(shè)備中產(chǎn)生順序在后的k個梯度的融合數(shù)據(jù)的傳輸時長最短,k為正整數(shù);第二尋優(yōu)條件用于指示分布式訓(xùn)練系統(tǒng)的梯度的傳輸次數(shù)最少。

6、在管理設(shè)備將梯度傳輸策略應(yīng)用到模型訓(xùn)練過程中的情況下,每個計算設(shè)備中最后傳輸?shù)奶荻葦?shù)據(jù)的數(shù)據(jù)傳輸時長最短,即梯度拖尾時長最小,有利于減少模型的訓(xùn)練時間,提升模型的訓(xùn)練效率。

7、在一種可選的實現(xiàn)方式中,管理設(shè)備根據(jù)執(zhí)行信息和多個計算設(shè)備的數(shù)據(jù)傳輸性能,預(yù)測符合第一尋優(yōu)條件的一個或多個候選梯度傳輸策略,包括:管理設(shè)備根據(jù)執(zhí)行信息和多個計算設(shè)備的數(shù)據(jù)傳輸性能構(gòu)建目標(biāo)函數(shù),并按照第一尋優(yōu)條件求解目標(biāo)函數(shù),獲取一個或多個候選梯度傳輸策略。

8、示例性的,該目標(biāo)函數(shù)包括:第一函數(shù)、第二函數(shù)、第三函數(shù)、第四函數(shù)和第五函數(shù)。第一函數(shù)用于:最小化每個梯度的產(chǎn)生時間和傳輸時長之和。第二函數(shù)用于:選擇第一梯度的傳輸結(jié)束時間和第二梯度的產(chǎn)生時間中的最大值;第一梯度的產(chǎn)生順序和第二梯度的產(chǎn)生順序相鄰,且第一梯度的產(chǎn)生順序在第二梯度的產(chǎn)生順序之前。第三函數(shù)用于:根據(jù)每個梯度的數(shù)據(jù)量以及每個梯度所在的計算設(shè)備的數(shù)據(jù)傳輸性能確定每個梯度的傳輸時長。第四函數(shù)用于:確定第一梯度的產(chǎn)生時間和通信時間之和為第一梯度的傳輸結(jié)束時間。第五函數(shù)用于:確定多次通信的數(shù)據(jù)量之和為模型的所有梯度的數(shù)據(jù)量。

9、在本實施例中,前述的梯度傳輸策略中使得梯度的產(chǎn)生順序在后(即算子的執(zhí)行順序在前)的k個算子的數(shù)據(jù)傳輸時長最短,因此,在管理設(shè)備將梯度傳輸策略應(yīng)用到模型訓(xùn)練過程中的情況下,每個計算設(shè)備中最后傳輸?shù)奶荻葦?shù)據(jù)的數(shù)據(jù)傳輸時長最短,即梯度拖尾時長最小,有利于減少模型的訓(xùn)練時間,提升模型的訓(xùn)練效率。

10、值得注意的是,不同計算設(shè)備之間的數(shù)據(jù)通信過程都不可避免的存在梯度拖尾時長,本實施例中管理設(shè)備采用的尋優(yōu)條件可用于減少訓(xùn)練策略指示的數(shù)據(jù)傳輸次數(shù)。在每次通信的梯度拖尾時長不變或者差異不大的情況下,數(shù)據(jù)傳輸次數(shù)越少,模型訓(xùn)練所需的總梯度拖尾時長越小,減少了不同計算設(shè)備之間的梯度傳輸時長,從而減少模型的訓(xùn)練時間,提高模型的訓(xùn)練效率。

11、在一種可選的實現(xiàn)方式中,管理設(shè)備獲取多個計算設(shè)備的數(shù)據(jù)傳輸性能,包括:管理設(shè)備對多個計算設(shè)備進行通信處理,獲取多個計算設(shè)備的通信畫像,并根據(jù)多個計算設(shè)備的通信畫像,獲取多個計算設(shè)備的數(shù)據(jù)傳輸性能。其中的通信處理包括通信建?;蛲ㄐ欧抡嬷兄辽僖环N,該通信畫像用于指示每個計算設(shè)備傳輸不同通信量的數(shù)據(jù)的通信時延。

12、在本實施例中,管理設(shè)備可將獲取的數(shù)據(jù)傳輸性能用于對模型的梯度傳輸過程進行優(yōu)化,以獲取使數(shù)據(jù)傳輸性能的利用率盡可能的大且梯度拖尾時長盡可能短的梯度傳輸策略,使模型的訓(xùn)練效率提高。

13、在一種可選的實現(xiàn)方式中,管理設(shè)備獲取模型的執(zhí)行信息,包括:管理設(shè)備指示多個計算設(shè)備對模型進行至少一輪訓(xùn)練,獲取模型的中間表示(intermediaterepresentation,ir)圖和性能數(shù)據(jù);該性能數(shù)據(jù)用于指示多個算子的執(zhí)行順序和執(zhí)行時長。以及,管理設(shè)備根據(jù)ir圖獲取模型中每個梯度的數(shù)據(jù)量以及產(chǎn)生順序,并根據(jù)性能數(shù)據(jù)和模型中每個梯度的數(shù)據(jù)量以及產(chǎn)生順序,獲取前述的執(zhí)行信息。

14、相較于該模型在單獨的計算設(shè)備上進行訓(xùn)練,管理設(shè)備將待訓(xùn)練的模型的多個算子分配到不同的計算設(shè)備上,有利于提高模型的訓(xùn)練效率。

15、而且,管理設(shè)備獲取該模型在至少一輪訓(xùn)練后得到的信息(算子的梯度和執(zhí)行順序等),并基于該信息來獲取優(yōu)化策略所需的執(zhí)行信息,有利于管理設(shè)備根據(jù)模型在多個計算設(shè)備的實際運行情況進行訓(xùn)練優(yōu)化,從而提高模型訓(xùn)練的精度和訓(xùn)練效果。

16、在一種可選的實現(xiàn)方式中,以上的梯度傳輸策略包括:在模型的訓(xùn)練過程中,任一計算設(shè)備中待融合的一組或多組梯度,該一組梯度包括產(chǎn)生順序相鄰的至少兩個梯度,該至少兩個梯度對應(yīng)于多個算子中相鄰的至少兩個算子。以及,該一組梯度在一次通信過程中傳輸,且一組梯度的傳輸結(jié)束時間小于或等于第二梯度的傳輸結(jié)束時間,該第二梯度為在至少兩個梯度進行通行算子融合之前最后一個產(chǎn)生的梯度。

17、示例性的,管理設(shè)備將梯度傳輸策略應(yīng)用于模型的訓(xùn)練,包括:管理設(shè)備將梯度傳輸策略同步至多個計算設(shè)備后,接收多個計算設(shè)備運行模型后發(fā)送的所有梯度,該所有梯度包括根據(jù)梯度傳輸策略進行通信算子融合后的梯度。以及,管理設(shè)備對所有梯度進行處理,獲取模型的參數(shù)更新信息,并根據(jù)參數(shù)更新信息對模型的參數(shù)進行更新。梯度的處理過程包括加權(quán)或平均中至少一種。

18、在本實施例中,管理設(shè)備利用多個計算設(shè)備反饋的梯度,對模型的參數(shù)進行更新,使每個計算設(shè)備都可以參與模型的訓(xùn)練過程,避免部分計算設(shè)備不參與模型訓(xùn)練導(dǎo)致模型的精度降低的問題,有利于提高模型訓(xùn)練的精度。

19、在一種可選的實現(xiàn)方式中,在管理設(shè)備將梯度傳輸策略應(yīng)用于模型的訓(xùn)練之后,本實施例提供的模型訓(xùn)練方法還包括:管理設(shè)備獲取訓(xùn)練后的模型,并在訓(xùn)練后的模型符合預(yù)設(shè)的模型收斂條件的情況下,管理設(shè)備輸出該訓(xùn)練后的模型。

20、一種示例中,模型的輸出方式可以為:管理設(shè)備將模型部署到用戶端(或終端)。

21、另一種示例中,模型的輸出方式可以為:管理設(shè)備將模型的相關(guān)信息(如模型參數(shù)和部署方式等)存儲到指定的存儲設(shè)備,該存儲設(shè)備提供有用戶接口,用戶端(或終端)可通過該用戶接口調(diào)用存儲設(shè)備存儲的該訓(xùn)練后的模型,以實現(xiàn)模型相應(yīng)的功能。

22、第二方面,本技術(shù)提供了一種模型訓(xùn)練裝置。該裝置應(yīng)用于分布式訓(xùn)練系統(tǒng)的管理設(shè)備,該分布式訓(xùn)練系統(tǒng)還包括多個計算設(shè)備,每個計算設(shè)備部署有待訓(xùn)練的模型,模型包括多個算子。示例性的,該模型訓(xùn)練裝置包括:獲取模塊、梯度傳輸尋優(yōu)模塊和訓(xùn)練模塊。獲取模塊,用于獲取模型的執(zhí)行信息以及多個計算設(shè)備的數(shù)據(jù)傳輸性能;該執(zhí)行信息包括:多個算子的執(zhí)行順序、執(zhí)行時長和多個梯度的數(shù)據(jù)量,一個梯度對應(yīng)一個算子。梯度傳輸尋優(yōu)模塊,用于根據(jù)執(zhí)行信息以及多個計算設(shè)備的數(shù)據(jù)傳輸性能,確定模型的梯度傳輸策略,梯度傳輸策略用于指示在訓(xùn)練模型時各計算設(shè)備進行梯度融合傳輸?shù)姆绞健S?xùn)練模塊,用于將梯度傳輸策略應(yīng)用于模型的訓(xùn)練。

23、在一種可選的實現(xiàn)方式中,梯度傳輸尋優(yōu)模塊,具體用于:根據(jù)執(zhí)行信息和多個計算設(shè)備的數(shù)據(jù)傳輸性能,預(yù)測符合第一尋優(yōu)條件的一個或多個候選梯度傳輸策略。以及,從一個或多個候選梯度傳輸策略中確定符合第二尋優(yōu)條件的梯度傳輸策略。其中,第一尋優(yōu)條件用于指示計算設(shè)備中產(chǎn)生順序在后的k個梯度的融合數(shù)據(jù)的傳輸時長最短,k為正整數(shù)。第二尋優(yōu)條件用于指示分布式訓(xùn)練系統(tǒng)的梯度的傳輸次數(shù)最少。

24、在一種可選的實現(xiàn)方式中,梯度傳輸尋優(yōu)模塊,具體用于:根據(jù)執(zhí)行信息和多個計算設(shè)備的數(shù)據(jù)傳輸性能構(gòu)建目標(biāo)函數(shù)。并按照第一尋優(yōu)條件求解目標(biāo)函數(shù),獲取一個或多個候選梯度傳輸策略。

25、在一種可選的實現(xiàn)方式中,目標(biāo)函數(shù)包括:第一函數(shù)、第二函數(shù)、第三函數(shù)、第四函數(shù)和第五函數(shù)。第一函數(shù)用于:最小化每個梯度的產(chǎn)生時間和傳輸時長之和。第二函數(shù)用于:選擇第一梯度的傳輸結(jié)束時間和第二梯度的產(chǎn)生時間中的最大值;第一梯度的產(chǎn)生順序和第二梯度的產(chǎn)生順序相鄰,且第一梯度的產(chǎn)生順序在第二梯度的產(chǎn)生順序之前。第三函數(shù)用于:根據(jù)每個梯度的數(shù)據(jù)量以及每個梯度所在的計算設(shè)備的數(shù)據(jù)傳輸性能確定每個梯度的傳輸時長。第四函數(shù)用于:確定第一梯度的產(chǎn)生時間和通信時間之和為第一梯度的傳輸結(jié)束時間。第五函數(shù)用于:確定多次通信的數(shù)據(jù)量之和為模型的所有梯度的數(shù)據(jù)量。

26、在一種可選的實現(xiàn)方式中,獲取模塊,具體用于:對多個計算設(shè)備進行通信處理,獲取多個計算設(shè)備的通信畫像。以及,根據(jù)多個計算設(shè)備的通信畫像,獲取多個計算設(shè)備的數(shù)據(jù)傳輸性能。通信處理包括通信建?;蛲ㄐ欧抡嬷兄辽僖环N,通信畫像用于指示每個計算設(shè)備傳輸不同通信量的數(shù)據(jù)的通信時延。

27、在一種可選的實現(xiàn)方式中,獲取模塊,具體用于:指示多個計算設(shè)備對模型進行至少一輪訓(xùn)練,獲取模型的ir圖和性能數(shù)據(jù)。性能數(shù)據(jù)用于指示多個算子的執(zhí)行順序和執(zhí)行時長。獲取模塊,還具體用于:根據(jù)ir圖獲取模型中每個梯度的數(shù)據(jù)量以及產(chǎn)生順序。以及,根據(jù)性能數(shù)據(jù)和模型中每個梯度的數(shù)據(jù)量以及產(chǎn)生順序,獲取執(zhí)行信息。

28、在一種可選的實現(xiàn)方式中,梯度傳輸策略包括:在模型的訓(xùn)練過程中,任一計算設(shè)備中待融合的一組或多組梯度,一組梯度包括產(chǎn)生順序相鄰的至少兩個梯度,至少兩個梯度對應(yīng)于多個算子中相鄰的至少兩個算子。以及,一組梯度在一次通信過程中傳輸,且一組梯度的傳輸結(jié)束時間小于或等于第二梯度的傳輸結(jié)束時間,第二梯度為在至少兩個梯度進行通行算子融合之前最后一個產(chǎn)生的梯度。

29、在一種可選的實現(xiàn)方式中,訓(xùn)練模塊,具體用于:將梯度傳輸策略同步至多個計算設(shè)備。并接收多個計算設(shè)備運行模型后發(fā)送的所有梯度,所有梯度包括根據(jù)梯度傳輸策略進行通信算子融合后的梯度。訓(xùn)練模塊,還具體用于:對所有梯度進行處理,獲取模型的參數(shù)更新信息。以及,根據(jù)參數(shù)更新信息對模型的參數(shù)進行更新。處理的過程包括加權(quán)或平均中至少一種。

30、第三方面,本技術(shù)提供了一種電子設(shè)備。該電子設(shè)備包括:存儲器和處理器。存儲器用于存儲一組計算機指令;處理器用于調(diào)用一組計算機指令,實現(xiàn)第一方面或第一方面中任一種實現(xiàn)方式的方法。

31、示例性的,該電子設(shè)備可以是指第一方面中的管理設(shè)備,或者用于實現(xiàn)第一方面中管理設(shè)備的功能的其他設(shè)備。

32、第四方面,本技術(shù)提供了一種分布式訓(xùn)練系統(tǒng)。該分布式訓(xùn)練系統(tǒng)包括:管理設(shè)備和多個計算設(shè)備,每個計算設(shè)備部署有待訓(xùn)練的模型,模型包括多個算子。管理設(shè)備獲取模型的執(zhí)行信息以及多個計算設(shè)備的數(shù)據(jù)傳輸性能;該執(zhí)行信息包括:多個算子的執(zhí)行順序、執(zhí)行時長和多個梯度的數(shù)據(jù)量,一個梯度對應(yīng)一個算子。以及,管理設(shè)備根據(jù)執(zhí)行信息以及多個計算設(shè)備的數(shù)據(jù)傳輸性能,確定模型的梯度傳輸策略,該梯度傳輸策略用于指示在訓(xùn)練模型時各計算設(shè)備進行梯度融合傳輸?shù)姆绞健V?,管理設(shè)備將梯度傳輸策略同步至多個計算設(shè)備。多個計算設(shè)備根據(jù)梯度傳輸策略對模型進行訓(xùn)練,獲取模型的所有梯度,該所有梯度包括根據(jù)梯度傳輸策略進行梯度融合并傳輸?shù)奶荻?。從而,管理設(shè)備對所有梯度進行處理,獲取模型的參數(shù)更新信息,并根據(jù)參數(shù)更新信息對模型的參數(shù)進行更新。梯度的處理過程包括加權(quán)或平均中至少一種。

33、第五方面,本技術(shù)提供了一種計算機可讀存儲介質(zhì)。該計算機可讀存儲介質(zhì)包括:計算機軟件指令。當(dāng)計算機軟件指令被計算機調(diào)用時,實現(xiàn)第一方面或第一方面中任一種實現(xiàn)方式的方法。

34、第六方面,本技術(shù)提供了一種計算機程序產(chǎn)品。當(dāng)計算機程序產(chǎn)品在計算機上運行時,計算機執(zhí)行第一方面或第一方面中任一種實現(xiàn)方式的方法。

35、關(guān)于第二方面至第六方面的有益效果可參照第一方面中任一實現(xiàn)方式的描述,在此不予贅述。本技術(shù)在上述各方面提供的實現(xiàn)方式的基礎(chǔ)上,還可以進行進一步組合以提供更多實現(xiàn)方式。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
同德县| 杨浦区| 罗山县| 灵璧县| 江陵县| 高陵县| 北安市| 富川| 陈巴尔虎旗| 同心县| 寻甸| 西乌珠穆沁旗| 南安市| 松阳县| 涟水县| 林甸县| 长岭县| 岗巴县| 广饶县| 武功县| 临城县| 三门峡市| 卓资县| 莱阳市| 平陆县| 胶州市| 罗平县| 库伦旗| 白银市| 堆龙德庆县| 康保县| 内黄县| 安龙县| 于都县| 太保市| 肥西县| 榆林市| 洛阳市| 阳高县| 潮安县| 密山市|