[發(fā)明專利]一種面向深度學(xué)習(xí)訓(xùn)練任務(wù)的分布式加速方法及系統(tǒng)有效
| 申請(qǐng)?zhí)枺?/td> | 201910035752.4 | 申請(qǐng)日: | 2019-01-15 |
| 公開(公告)號(hào): | CN109902818B | 公開(公告)日: | 2021-05-25 |
| 發(fā)明(設(shè)計(jì))人: | 劉萬(wàn)濤;郭錦榮;虎嵩林;韓冀中 | 申請(qǐng)(專利權(quán))人: | 中國(guó)科學(xué)院信息工程研究所 |
| 主分類號(hào): | G06N3/063 | 分類號(hào): | G06N3/063;G06N3/08;G06T1/20 |
| 代理公司: | 北京君尚知識(shí)產(chǎn)權(quán)代理有限公司 11200 | 代理人: | 邱曉鋒 |
| 地址: | 100093 *** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 面向 深度 學(xué)習(xí) 訓(xùn)練 任務(wù) 分布式 加速 方法 系統(tǒng) | ||
1.一種面向深度學(xué)習(xí)訓(xùn)練任務(wù)的分布式加速方法,其特征在于,包括以下步驟:
(1)搭建分布式GPU訓(xùn)練集群;
(2)采用換入換出策略,調(diào)節(jié)分布式GPU訓(xùn)練集群中單個(gè)GPU工作節(jié)點(diǎn)上的minibatchsize;采用換入換出策略后,訓(xùn)練過(guò)程所需的GPU內(nèi)存從網(wǎng)絡(luò)級(jí)減小為層級(jí),通過(guò)遍歷求出當(dāng)前訓(xùn)練網(wǎng)絡(luò)所有層中需內(nèi)存空間最大的層,然后用GPU內(nèi)存大小除以該需內(nèi)存空間最大的層中的數(shù)據(jù)大小,得出可訓(xùn)練的最大minibatch size;
(3)根據(jù)步驟2)確定的minibatch size調(diào)整學(xué)習(xí)率;
(4)采用步驟(2)和(3)確定的超參數(shù)minibatch size和學(xué)習(xí)率進(jìn)行深度學(xué)習(xí)訓(xùn)練。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟(1)包括:
(1-1)構(gòu)建參數(shù)服務(wù)器,用于保存和更新模型參數(shù);
(1-2)構(gòu)建工作節(jié)點(diǎn),用于執(zhí)行運(yùn)算操作;
(1-3)確定參數(shù)服務(wù)器和工作節(jié)點(diǎn)的通信框架。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟(1-1)中所有服務(wù)器的CPU端集體構(gòu)成參數(shù)服務(wù)器,所有模型參數(shù)均勻地分片存儲(chǔ)在各個(gè)CPU端內(nèi)存中,參數(shù)更新由CPU完成,對(duì)外暴露推送和拉取兩種操作以供工作節(jié)點(diǎn)調(diào)用。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟(1-2)中多節(jié)點(diǎn)間采用數(shù)據(jù)并行模式,每個(gè)GPU節(jié)點(diǎn)上均保留完整的模型,不同節(jié)點(diǎn)同一時(shí)間處理不同的訓(xùn)練數(shù)據(jù),一個(gè)迭代計(jì)算結(jié)束后,所有節(jié)點(diǎn)同時(shí)向參數(shù)服務(wù)器調(diào)用推送接口發(fā)送參數(shù),待參數(shù)服務(wù)器更新參數(shù)后,再調(diào)用拉取接口將最新的參數(shù)拉取到本地替換舊參數(shù)。
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟(1-3)所述通信框架為:同一服務(wù)器上掛載的多個(gè)GPU卡與本機(jī)CPU端構(gòu)成星型拓?fù)溥M(jìn)行局部通信,多服務(wù)器之間采用點(diǎn)對(duì)點(diǎn)socket全局通信;發(fā)送梯度時(shí),各服務(wù)器上的多GPU工作節(jié)點(diǎn)將各自的梯度通過(guò)PCIe總線傳輸匯總至CPU端,CPU端隨后將本機(jī)匯總的梯度值通過(guò)查找對(duì)應(yīng)參數(shù)分片位置發(fā)送至對(duì)應(yīng)的服務(wù)器,GPU工作節(jié)點(diǎn)接收新參數(shù)時(shí)數(shù)據(jù)按照與發(fā)送相反的方向傳輸。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟(2)所述換入換出策略將訓(xùn)練過(guò)程中的所有不參與當(dāng)前GPU計(jì)算的數(shù)據(jù)全部換出到CPU內(nèi)存中存儲(chǔ),當(dāng)再次需要被GPU計(jì)算訪問(wèn)時(shí),再換回到GPU內(nèi)存,換入換出操作由PCIe總線通信完成。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟(3)中,學(xué)習(xí)率隨著minibatch size自適應(yīng)地按比例調(diào)整,一個(gè)迭代的整體minibatch size等于單個(gè)GPU工作節(jié)點(diǎn)的minibatchsize乘以集群中所有GPU的個(gè)數(shù),分布式集群訓(xùn)練的最佳學(xué)習(xí)率設(shè)定為單機(jī)模式的學(xué)習(xí)率乘以集群中的GPU個(gè)數(shù),整體minibatch size增加多少倍,學(xué)習(xí)率同樣增加相同的倍數(shù)。
8.一種采用權(quán)利要求1~7中任一權(quán)利要求所述方法的面向深度學(xué)習(xí)訓(xùn)練任務(wù)的分布式加速系統(tǒng),其特征在于,包括:
分布式GPU訓(xùn)練集群,包括用于保存和更新模型參數(shù)的參數(shù)服務(wù)器,以及用于執(zhí)行運(yùn)算操作的工作節(jié)點(diǎn);
minibatch size調(diào)節(jié)模塊,負(fù)責(zé)采用換入換出策略,調(diào)節(jié)分布式GPU訓(xùn)練集群中單個(gè)GPU工作節(jié)點(diǎn)上的minibatch size;
學(xué)習(xí)率調(diào)整模塊,負(fù)責(zé)根據(jù)所述minibatch size調(diào)節(jié)模塊確定的minibatch size調(diào)整學(xué)習(xí)率;
訓(xùn)練模塊,負(fù)責(zé)采用所述minibatch size調(diào)節(jié)模塊和所述學(xué)習(xí)率調(diào)整模塊確定的超參數(shù)minibatch size和學(xué)習(xí)率進(jìn)行深度學(xué)習(xí)訓(xùn)練。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述分布式GPU訓(xùn)練集群中,所有服務(wù)器的CPU端集體構(gòu)成參數(shù)服務(wù)器,所有模型參數(shù)均勻地分片存儲(chǔ)在各個(gè)CPU端內(nèi)存中,參數(shù)更新由CPU完成,對(duì)外暴露推送和拉取兩種操作以供工作節(jié)點(diǎn)調(diào)用;多節(jié)點(diǎn)間采用數(shù)據(jù)并行模式,每個(gè)GPU節(jié)點(diǎn)上均保留完整的模型,不同節(jié)點(diǎn)同一時(shí)間處理不同的訓(xùn)練數(shù)據(jù),一個(gè)迭代計(jì)算結(jié)束后,所有節(jié)點(diǎn)同時(shí)向參數(shù)服務(wù)器調(diào)用推送接口發(fā)送參數(shù),待參數(shù)服務(wù)器更新參數(shù)后,再調(diào)用拉取接口將最新的參數(shù)拉取到本地替換舊參數(shù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國(guó)科學(xué)院信息工程研究所,未經(jīng)中國(guó)科學(xué)院信息工程研究所許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910035752.4/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 根據(jù)用戶學(xué)習(xí)效果動(dòng)態(tài)變化下載學(xué)習(xí)數(shù)據(jù)的系統(tǒng)及方法
- 用于智能個(gè)人化學(xué)習(xí)服務(wù)的方法
- 漸進(jìn)式學(xué)習(xí)管理方法及漸進(jìn)式學(xué)習(xí)系統(tǒng)
- 輔助學(xué)習(xí)的方法及裝置
- 基于人工智能的課程推薦方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 基于強(qiáng)化學(xué)習(xí)的自適應(yīng)移動(dòng)學(xué)習(xí)路徑生成方法
- 一種線上視頻學(xué)習(xí)系統(tǒng)
- 一種基于校園大數(shù)據(jù)的自適應(yīng)學(xué)習(xí)方法、裝置及設(shè)備
- 一種學(xué)習(xí)方案推薦方法、裝置、設(shè)備和存儲(chǔ)介質(zhì)
- 游戲?qū)W習(xí)效果評(píng)測(cè)方法及系統(tǒng)
- 等級(jí)精細(xì)視力訓(xùn)練表
- 視覺(jué)盲點(diǎn)演示與旁中心注視訓(xùn)練儀
- 一種訓(xùn)練室
- 視覺(jué)盲點(diǎn)演示與旁中心注視訓(xùn)練儀
- 一種訓(xùn)練室
- 康復(fù)訓(xùn)練器及其定量訓(xùn)練方法和定量訓(xùn)練裝置
- 一種分布式訓(xùn)練中梯度同步方法及裝置
- 訓(xùn)練模型的訓(xùn)練時(shí)長(zhǎng)預(yù)測(cè)方法及裝置
- 一種模型訓(xùn)練方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 一種計(jì)算機(jī)輔助的自閉癥兒童情感社交康復(fù)訓(xùn)練系統(tǒng)





