1.一種機(jī)器學(xué)習(xí)方法,其特征在于,應(yīng)用于機(jī)器學(xué)習(xí)系統(tǒng),所述機(jī)器學(xué)習(xí)系統(tǒng)包括分布式共享內(nèi)存的參數(shù)服務(wù)器、主節(jié)點(diǎn)和多個(gè)從節(jié)點(diǎn);所述參數(shù)服務(wù)器用于存儲(chǔ)全局模型參數(shù)和全局訓(xùn)練數(shù)據(jù);所述主節(jié)點(diǎn)用于根據(jù)全局?jǐn)?shù)據(jù)處理任務(wù),確定每個(gè)從節(jié)點(diǎn)的數(shù)據(jù)處理任務(wù),所述方法包括:
從節(jié)點(diǎn)從所述參數(shù)服務(wù)器中獲取所述從節(jié)點(diǎn)的數(shù)據(jù)處理任務(wù)對(duì)應(yīng)的第一訓(xùn)練數(shù)據(jù)塊,并按照所述從節(jié)點(diǎn)的數(shù)據(jù)處理任務(wù)對(duì)所述第一訓(xùn)練數(shù)據(jù)塊進(jìn)行處理,得到第一處理數(shù)據(jù)塊;
所述從節(jié)點(diǎn)獲取當(dāng)前訓(xùn)練任務(wù)對(duì)應(yīng)的模型參數(shù);
所述從節(jié)點(diǎn)根據(jù)所述第一處理數(shù)據(jù)塊、所述模型參數(shù)和所述當(dāng)前訓(xùn)練任務(wù)訓(xùn)練模型。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述從節(jié)點(diǎn)獲取當(dāng)前訓(xùn)練任務(wù)對(duì)應(yīng)的模型參數(shù),具體包括:
所述從節(jié)點(diǎn)判斷本地緩存中是否存在所述當(dāng)前訓(xùn)練任務(wù)對(duì)應(yīng)的模型參數(shù);其中,所述模型參數(shù)攜帶的迭代倫次值為所述從節(jié)點(diǎn)從所述參數(shù)服務(wù)器獲取到所述模型參數(shù)時(shí)所述機(jī)器學(xué)習(xí)系統(tǒng)的迭代倫次值;所述機(jī)器學(xué)習(xí)系統(tǒng)的迭代倫次值為同一時(shí)刻下所有從節(jié)點(diǎn)的迭代輪次值的最小值;所述從節(jié)點(diǎn)的迭代輪次值為同一時(shí)刻下所述從節(jié)點(diǎn)上所有的訓(xùn)練任務(wù)的迭代輪次值的最小值;
若存在所述當(dāng)前訓(xùn)練任務(wù)對(duì)應(yīng)的模型參數(shù),則所述從節(jié)點(diǎn)判斷所述當(dāng)前訓(xùn)練任務(wù)的迭代輪次值與所述模型參數(shù)攜帶的迭代輪次值的差值是否小于或者等于預(yù)設(shè)閾值;
若所述當(dāng)前訓(xùn)練任務(wù)的迭代輪次值與所述模型參數(shù)攜帶的迭代輪次值的差值小于或者等于所述預(yù)設(shè)閾值,則所述從節(jié)點(diǎn)從所述本地緩存中獲取所述當(dāng)前訓(xùn)練任務(wù)對(duì)應(yīng)的模型參數(shù);
若所述當(dāng)前訓(xùn)練任務(wù)的迭代輪次值與所述模型參數(shù)攜帶的迭代輪次值的差值大于所述預(yù)設(shè)閾值,則所述從節(jié)點(diǎn)從所述參數(shù)服務(wù)器中獲取所述當(dāng)前訓(xùn)練任務(wù)對(duì)應(yīng)的新的模型參數(shù),所述新的模型參數(shù)的標(biāo)識(shí)信息與所述模型參數(shù)的標(biāo)識(shí)信息相同。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述從節(jié)點(diǎn)從所述參數(shù)服務(wù)器中獲取新的模型參數(shù),具體包括:
所述從節(jié)點(diǎn)根據(jù)所述新的模型參數(shù)的標(biāo)識(shí)信息、不同的模型參數(shù)的標(biāo)識(shí)信息和不同的子服務(wù)器的對(duì)應(yīng)關(guān)系,確定存儲(chǔ)所述新的模型參數(shù)的第一子服務(wù)器;
所述從節(jié)點(diǎn)向所述第一子服務(wù)器發(fā)送參數(shù)獲取請(qǐng)求,所述參數(shù)獲取請(qǐng)求用于指示所述第一子服務(wù)器根據(jù)所述新的模型參數(shù)的標(biāo)識(shí)信息獲取所述新的模型參數(shù);其中,所述新的模型參數(shù)攜帶的迭代倫次值與所述當(dāng)前訓(xùn)練任務(wù)的迭代輪次值的差值的絕對(duì)值小于或者等于所述預(yù)設(shè)閾值;
所述從節(jié)點(diǎn)接收所述第一子服務(wù)器發(fā)送的所述新的模型參數(shù)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述從節(jié)點(diǎn)接收所述第一子服務(wù)器發(fā)送的所述新的模型參數(shù)之后,所述方法還包括:
所述從節(jié)點(diǎn)將所述本地緩存中存儲(chǔ)的所述模型參數(shù)更新為所述新的模型參數(shù)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述新的模型參數(shù)中還攜帶所述第一子服務(wù)器中存儲(chǔ)的所述從節(jié)點(diǎn)的第一版本號(hào),所述從節(jié)點(diǎn)將本地緩存中存儲(chǔ)的所述模型參數(shù)更新為所述新的模型參數(shù)之后,所述方法還包括:
所述從節(jié)點(diǎn)判斷所述本地緩存中是否存儲(chǔ)有所述新的模型參數(shù)的增量信息;
若是,則所述從節(jié)點(diǎn)判斷所述增量信息攜帶的所述從節(jié)點(diǎn)的第二版本號(hào)是否大于所述第一版本號(hào);
若所述從節(jié)點(diǎn)判斷所述第二版本號(hào)大于所述第一版本號(hào),則所述從節(jié)點(diǎn)根據(jù)所述增量信息更新所述新的模型參數(shù),得到第一模型參數(shù)。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述方法還包括:
在所述從節(jié)點(diǎn)根據(jù)所述第一模型參數(shù)執(zhí)行當(dāng)前訓(xùn)練任務(wù)的過(guò)程中,將所得到的第二模型參數(shù)的更新值存儲(chǔ)至所述本地緩存中,并將所述第二模型參數(shù)的增量信息以及所述從節(jié)點(diǎn)的當(dāng)前版本號(hào)存儲(chǔ)到所述本地緩存中;
所述從節(jié)點(diǎn)將所述第二模型參數(shù)的增量信息上報(bào)給所述參數(shù)服務(wù)器;
所述從節(jié)點(diǎn)更新所述從節(jié)點(diǎn)的版本號(hào)。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述從節(jié)點(diǎn)獲取當(dāng)前訓(xùn)練任務(wù)對(duì)應(yīng)的模型參數(shù)之前,所述方法還包括:
所述從節(jié)點(diǎn)將所述第一處理數(shù)據(jù)塊上報(bào)給所述參數(shù)服務(wù)器。
8.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述從節(jié)點(diǎn)從所述參數(shù)服務(wù)器中獲取所述從節(jié)點(diǎn)的數(shù)據(jù)處理任務(wù)對(duì)應(yīng)的第一訓(xùn)練數(shù)據(jù)塊,具體包括:
所述從節(jié)點(diǎn)根據(jù)所述第一訓(xùn)練數(shù)據(jù)塊的標(biāo)識(shí)信息、不同的訓(xùn)練數(shù)據(jù)塊的標(biāo)識(shí)信息與不同的子服務(wù)器的對(duì)應(yīng)關(guān)系,確定存儲(chǔ)所述第一訓(xùn)練數(shù)據(jù)塊的第二子服務(wù)器;
所述從節(jié)點(diǎn)向所述第二子服務(wù)器發(fā)送數(shù)據(jù)獲取請(qǐng)求,所述數(shù)據(jù)獲取請(qǐng)求攜帶所述第一訓(xùn)練數(shù)據(jù)塊的標(biāo)識(shí)信息;
所述從節(jié)點(diǎn)接收所述第二服務(wù)器發(fā)送的所述第一訓(xùn)練數(shù)據(jù)塊。
9.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
判斷所述當(dāng)前訓(xùn)練任務(wù)是否進(jìn)入等待狀態(tài);
若是,則執(zhí)行第二訓(xùn)練任務(wù);其中,第二訓(xùn)練任務(wù)是與所述當(dāng)前訓(xùn)練任務(wù)不同的訓(xùn)練任務(wù)。
10.一種從節(jié)點(diǎn),應(yīng)用于機(jī)器學(xué)習(xí)系統(tǒng),所述機(jī)器學(xué)習(xí)系統(tǒng)包括分布式共享內(nèi)存的參數(shù)服務(wù)器、主節(jié)點(diǎn)和多個(gè)所述從節(jié)點(diǎn);所述參數(shù)服務(wù)器用于存儲(chǔ)全局模型參數(shù)和全局訓(xùn)練數(shù)據(jù);所述主節(jié)點(diǎn)用于根據(jù)全局?jǐn)?shù)據(jù)處理任務(wù),確定每個(gè)從節(jié)點(diǎn)的數(shù)據(jù)處理任務(wù),所述從節(jié)點(diǎn)包括:獲取模塊和處理模塊,其中,
所述獲取模塊,用于從所述參數(shù)服務(wù)器中獲取所述從節(jié)點(diǎn)的數(shù)據(jù)處理任務(wù)對(duì)應(yīng)的第一訓(xùn)練數(shù)據(jù)塊;
所述處理模塊,用于按照所述從節(jié)點(diǎn)的數(shù)據(jù)處理任務(wù)對(duì)所述第一訓(xùn)練數(shù)據(jù)塊進(jìn)行處理,得到第一處理數(shù)據(jù)塊;
所述獲取模塊,還用于獲取當(dāng)前訓(xùn)練任務(wù)對(duì)應(yīng)的模型參數(shù);
所述處理模塊,還用于根據(jù)所述第一處理數(shù)據(jù)塊、所述模型參數(shù)和所述當(dāng)前訓(xùn)練任務(wù)訓(xùn)練模型。