本發(fā)明涉及人工智能,尤其涉及模型分布式并行加速訓(xùn)練策略生成方法、裝置及設(shè)備。
背景技術(shù):
1、大模型指具有非常高的參數(shù)量和計(jì)算能力的人工智能模型,大模型的分布式并行加速訓(xùn)練是自研大模型中的一個(gè)重要環(huán)節(jié),大模型的分布式并行加速訓(xùn)練簡單來說就是完成兩個(gè)目標(biāo),一是指定模型能在多張gpu的協(xié)同作用下完成訓(xùn)練任務(wù),而是通過加速策略提高模型訓(xùn)練的效率。
2、隨著并行加速策略越來越多樣化,手動(dòng)針對(duì)指定模型、指定硬件環(huán)境為這些策略設(shè)置超參數(shù),無法保證并行加速策略的超參數(shù)能夠?qū)崿F(xiàn)好的訓(xùn)練效率。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明提供模型分布式并行加速訓(xùn)練策略生成方法、裝置及設(shè)備,用以解決現(xiàn)有技術(shù)中需要手動(dòng)設(shè)置并行加速策略的超參數(shù),無法保證訓(xùn)練效率的缺陷,實(shí)現(xiàn)提高并行加速訓(xùn)練效率。
2、本發(fā)明提供一種模型分布式并行加速訓(xùn)練策略生成方法,包括:
3、獲取并行環(huán)境信息和用戶配置文件,基于所述用戶配置文件確定超參搜索空間,基于所述并行環(huán)境信息和所述超參搜索空間確定至少一個(gè)加速訓(xùn)練超參集,每個(gè)所述加速訓(xùn)練超參集中包括張量并行維度、流水線并行維度、梯度累積次數(shù)、微批數(shù)據(jù)大小以及處理數(shù)據(jù)并行維度中的至少一種;
4、基于所述加速訓(xùn)練超參集確定候選加速訓(xùn)練策略;
5、基于所述候選加速訓(xùn)練策略進(jìn)行分布式并行加速訓(xùn)練測試,得到各個(gè)所述候選加速訓(xùn)練策略的訓(xùn)練效率評(píng)估結(jié)果;
6、基于各個(gè)所述候選加速訓(xùn)練策略的訓(xùn)練效率評(píng)估結(jié)果確定目標(biāo)加速訓(xùn)練策略。
7、根據(jù)本發(fā)明提供的一種模型分布式并行加速訓(xùn)練策略生成方法,所述超參搜索空間包括超參數(shù)類型以及超參數(shù)取值范圍;所述基于所述用戶配置文件確定超參搜索空間,包括:
8、對(duì)所述用戶配置文件進(jìn)行解析,得到用戶自定義超參數(shù)類型以及每類超參數(shù)類型對(duì)應(yīng)的取值范圍;
9、所述基于所述并行環(huán)境信息和所述超參搜索空間確定至少一個(gè)加速訓(xùn)練超參集,包括:
10、基于所述用戶配置文件確定目標(biāo)加速策略類型;
11、當(dāng)所述目標(biāo)加速策略類型為第一加速策略類型且所述用戶自定義超參數(shù)類型包括所述張量并行維度、所述流水線并行維度、所述梯度累積次數(shù)以及所述處理數(shù)據(jù)并行維度時(shí):
12、基于一臺(tái)機(jī)器內(nèi)配置的gpu數(shù)量確定所述張量并行維度;
13、基于模型結(jié)構(gòu)確定所述流水線并行維度;
14、基于所述流水線并行維度確定所述梯度累積次數(shù);
15、基于所述張量并行維度、所述流水線并行維度以及gpu總數(shù),確定所述處理數(shù)據(jù)并行維度。
16、根據(jù)本發(fā)明提供的一種模型分布式并行加速訓(xùn)練策略生成方法,所述基于所述加速訓(xùn)練超參集確定候選加速訓(xùn)練策略,包括:
17、基于gpu間通信信息生成gpu部署策略;
18、基于一個(gè)所述加速訓(xùn)練超參集、一條內(nèi)存優(yōu)化策略以及一條所述gpu部署策略確定所述候選加速訓(xùn)練策略;
19、其中,所述內(nèi)存優(yōu)化策略用于指定是否開啟零冗余優(yōu)化器以及零冗余優(yōu)化器的參數(shù),所述gpu部署策略用于指定被切分的模型被部署至的gpu。
20、根據(jù)本發(fā)明提供的一種模型分布式并行加速訓(xùn)練策略生成方法,所述基于一個(gè)所述加速訓(xùn)練超參集、一條內(nèi)存優(yōu)化策略以及一條所述gpu部署策略確定所述候選加速訓(xùn)練策略,包括:
21、基于一個(gè)所述加速訓(xùn)練超參集、一條所述內(nèi)存優(yōu)化策略、一條所述gpu部署策略以及后向重計(jì)算策略確定所述候選加速訓(xùn)練策略;
22、其中,所述后向重計(jì)算策略用于確定在分布式加速訓(xùn)練時(shí)是否開啟后向重計(jì)算。
23、根據(jù)本發(fā)明提供的一種模型分布式并行加速訓(xùn)練策略生成方法,所述gpu部署策略包括第一gpu部署策略和第二gpu部署策略;所述基于gpu間通信信息生成gpu部署策略,包括:
24、將各機(jī)器節(jié)點(diǎn)按照跨機(jī)通信能力從強(qiáng)到弱的順序進(jìn)行排序,得到排序結(jié)果;
25、確定流水線并行涉及的各個(gè)第一通信組中的機(jī)器節(jié)點(diǎn)數(shù)量,所述第一通信組中的各個(gè)機(jī)器節(jié)點(diǎn)為流水線并行時(shí)需要進(jìn)行跨機(jī)通信的機(jī)器節(jié)點(diǎn);
26、確定數(shù)據(jù)并行涉及的各個(gè)第二通信組中的機(jī)器節(jié)點(diǎn)數(shù)量,所述第二通信組中的各個(gè)機(jī)器節(jié)點(diǎn)為數(shù)據(jù)并行時(shí)需要進(jìn)行跨機(jī)通信的機(jī)器節(jié)點(diǎn);
27、基于第一優(yōu)先原則生成所述第一gpu部署策略,所述第一優(yōu)先原則為優(yōu)先將各個(gè)所述第一通信組中的機(jī)器節(jié)點(diǎn)設(shè)置為在所述排序結(jié)果中互相接近的機(jī)器節(jié)點(diǎn);
28、基于第二優(yōu)先原則生成所述第二gpu部署策略,所述第二優(yōu)先原則為優(yōu)先將各個(gè)所述第二通信組中的機(jī)器節(jié)點(diǎn)設(shè)置為在所述排序結(jié)果中互相接近的機(jī)器節(jié)點(diǎn)。
29、根據(jù)本發(fā)明提供的一種模型分布式并行加速訓(xùn)練策略生成方法,所述基于各個(gè)所述候選加速訓(xùn)練策略進(jìn)行分布式并行加速訓(xùn)練測試,得到各個(gè)所述候選加速訓(xùn)練策略的訓(xùn)練效率評(píng)估結(jié)果,包括:
30、解析用戶配置文件,得到評(píng)估函數(shù);
31、基于所述候選加速訓(xùn)練策略進(jìn)行分布式并行加速訓(xùn)練測試,基于所述評(píng)估函數(shù)得到所述候選加速訓(xùn)練策略的訓(xùn)練效率評(píng)估結(jié)果。
32、本發(fā)明還提供一種模型分布式并行加速訓(xùn)練策略生成裝置,包括:
33、超參模塊,用于獲取并行環(huán)境信息,基于所述并行環(huán)境信息確定至少一個(gè)加速訓(xùn)練超參集,每個(gè)所述加速訓(xùn)練超參集中包括張量并行維度、流水線并行維度、梯度累積次數(shù)、微批數(shù)據(jù)大小以及處理數(shù)據(jù)并行維度中的至少一種;
34、候選策略模塊,用于基于所述加速訓(xùn)練超參集確定候選加速訓(xùn)練策略;
35、評(píng)估模塊,用于基于所述候選加速訓(xùn)練策略進(jìn)行分布式并行加速訓(xùn)練測試,得到各個(gè)所述候選加速訓(xùn)練策略的訓(xùn)練效率評(píng)估結(jié)果;
36、目標(biāo)輸出模塊,用于基于各個(gè)所述候選加速訓(xùn)練策略的訓(xùn)練效率評(píng)估結(jié)果確定目標(biāo)加速訓(xùn)練策略。
37、本發(fā)明還提供一種電子設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)如上述任一種所述模型分布式并行加速訓(xùn)練策略生成方法。
38、本發(fā)明還提供一種非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上述任一種所述模型分布式并行加速訓(xùn)練策略生成方法。
39、本發(fā)明還提供一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上述任一種所述模型分布式并行加速訓(xùn)練策略生成方法。
40、本發(fā)明提供的模型分布式并行加速訓(xùn)練策略生成方法,通過基于用戶配置文件確定超參搜索空間,基于所述并行環(huán)境信息和超參搜索空間生成至少一個(gè)加速訓(xùn)練超參集,基于加速訓(xùn)練超參集生成至少一個(gè)候選加速訓(xùn)練策略,根據(jù)各個(gè)候選加速訓(xùn)練策略分別進(jìn)行分布式并行加速訓(xùn)練測試,得到各個(gè)候選加速訓(xùn)練策略的訓(xùn)練效率評(píng)估結(jié)果,進(jìn)而確定目標(biāo)加速訓(xùn)練策略,本發(fā)明提供的方法中,遍歷了基于并行環(huán)境信息生成的多個(gè)加速訓(xùn)練超參集,并分別進(jìn)行測試,得到訓(xùn)練效率評(píng)估結(jié)果,可以在多個(gè)候選加速訓(xùn)練策略中確定訓(xùn)練效率更好的加速訓(xùn)練策略,提高模型分布式并行加速訓(xùn)練的訓(xùn)練效率。