本公開涉及一種演算技術(shù),且特別涉及一種深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng)及其演算方法。
背景技術(shù):
1、目前人工智能的深度強(qiáng)化學(xué)習(xí)算法在機(jī)器視覺、工業(yè)機(jī)器手臂的應(yīng)用廣泛。強(qiáng)化學(xué)習(xí)是一種機(jī)器學(xué)習(xí)技術(shù),其特點(diǎn)為能在未知的環(huán)境內(nèi)自主探索,并訓(xùn)練出一個(gè)可完成多步驟決策問題的智能體模型。智能體會(huì)根據(jù)對(duì)目前環(huán)境狀態(tài)的觀察做出動(dòng)作,并獲得獎(jiǎng)勵(lì)的回饋。智能體會(huì)依據(jù)獲得的獎(jiǎng)勵(lì)信息逐漸更新選擇動(dòng)作的策略,以最大化在環(huán)境中所獲得的獎(jiǎng)勵(lì)。
2、其中,強(qiáng)化學(xué)習(xí)牽涉到兩個(gè)不同的步驟:經(jīng)驗(yàn)收集與網(wǎng)絡(luò)更新。在經(jīng)驗(yàn)收集步驟當(dāng)中,需要依據(jù)目前的策略去評(píng)估環(huán)境的輸入信息,以決定在環(huán)境中下一步所要執(zhí)行的動(dòng)作;而在網(wǎng)絡(luò)更新步驟當(dāng)中,則根據(jù)過去在環(huán)境中所收集到的數(shù)據(jù)進(jìn)行運(yùn)算,以更新目前模型的策略。其中經(jīng)驗(yàn)收集步驟需進(jìn)行推論運(yùn)算、網(wǎng)絡(luò)更新步驟需進(jìn)行訓(xùn)練運(yùn)算。
3、目前現(xiàn)有的深度強(qiáng)化學(xué)習(xí)加速器,通常采取同一套運(yùn)算資源支持訓(xùn)練與推論的方法,但同一時(shí)間只能處理訓(xùn)練或推論中的其中一種,這使得深度強(qiáng)化學(xué)習(xí)的兩個(gè)部分又必須輪流進(jìn)行。其中推論階段因?yàn)榕螖?shù)量少、需等待環(huán)境響應(yīng)而面臨硬件利用率低、延遲時(shí)間長(zhǎng)的問題,使現(xiàn)有的架構(gòu)在整體的強(qiáng)化學(xué)習(xí)算法執(zhí)行的時(shí)間較長(zhǎng)。因此,如何解決現(xiàn)有深度強(qiáng)化學(xué)習(xí)加速器只能單獨(dú)處理訓(xùn)練或推論使延遲較長(zhǎng)的問題,將是需要突破的課題。
技術(shù)實(shí)現(xiàn)思路
1、本公開提供一種深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng),包括:內(nèi)存、輸入/輸出接口以及處理器。內(nèi)存用以存儲(chǔ)環(huán)境的之前狀態(tài)、模型的之前策略、推論程序以及訓(xùn)練程序。處理器耦接內(nèi)存以及輸入/輸出接口,用以執(zhí)行通過輸入/輸出接口對(duì)環(huán)境和模型進(jìn)行初始化;自內(nèi)存讀取推論程序以及訓(xùn)練程序,其中推論程序?qū)?yīng)于經(jīng)驗(yàn)收集流程,訓(xùn)練程序?qū)?yīng)于網(wǎng)絡(luò)更新流程;并行執(zhí)行經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程,并判斷經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程是否達(dá)到終止條件;響應(yīng)于經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程均未達(dá)終止條件,持續(xù)并行執(zhí)行經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程;以及響應(yīng)于經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程當(dāng)中的一個(gè)已達(dá)終止條件,結(jié)束執(zhí)行經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程。其中經(jīng)驗(yàn)收集流程包括通過輸入/輸出接口獲取環(huán)境的當(dāng)前狀態(tài),當(dāng)前狀態(tài)包括當(dāng)前獎(jiǎng)勵(lì)數(shù)值以及當(dāng)前觀察數(shù)值;根據(jù)模型的當(dāng)前策略,基于當(dāng)前觀察數(shù)值運(yùn)算以決定當(dāng)前動(dòng)作;以及通過輸入/輸出接口回傳當(dāng)前動(dòng)作至環(huán)境。其中網(wǎng)絡(luò)更新流程包括自內(nèi)存獲取環(huán)境的之前狀態(tài)以及模型的之前策略,之前狀態(tài)包括之前動(dòng)作、之前獎(jiǎng)勵(lì)數(shù)值以及之前觀察數(shù)值;基于之前狀態(tài)運(yùn)算以決定當(dāng)前數(shù)據(jù);以及基于當(dāng)前數(shù)據(jù)將模型的之前策略更新為當(dāng)前策略。
2、在一實(shí)施例中,處理器還包括推論處理模塊以及訓(xùn)練處理模塊。推論處理模塊用以自內(nèi)存讀取推論程序,并執(zhí)行經(jīng)驗(yàn)收集流程;訓(xùn)練處理模塊用以自內(nèi)存讀取訓(xùn)練程序,并執(zhí)行網(wǎng)絡(luò)更新流程。
3、在一實(shí)施例中,當(dāng)處理器執(zhí)行經(jīng)驗(yàn)收集流程時(shí)還用以執(zhí)行:判斷經(jīng)驗(yàn)收集流程的執(zhí)行次數(shù)是否達(dá)到執(zhí)行次數(shù)閾值;以及響應(yīng)于執(zhí)行次數(shù)達(dá)到執(zhí)行次數(shù)閾值,判定經(jīng)驗(yàn)收集流程達(dá)到終止條件。
4、在一實(shí)施例中,當(dāng)處理器執(zhí)行網(wǎng)絡(luò)更新流程時(shí)還用以執(zhí)行:判斷網(wǎng)絡(luò)更新流程的執(zhí)行次數(shù)是否達(dá)到執(zhí)行次數(shù)閾值;以及響應(yīng)于執(zhí)行次數(shù)達(dá)到執(zhí)行次數(shù)閾值,判定網(wǎng)絡(luò)更新流程達(dá)到終止條件。
5、在一實(shí)施例中,當(dāng)處理器執(zhí)行經(jīng)驗(yàn)收集流程時(shí)還用以執(zhí)行:當(dāng)環(huán)境通過該輸入/輸出接口接收當(dāng)前動(dòng)作后,判斷環(huán)境的當(dāng)前狀態(tài)所對(duì)應(yīng)的成功率是否達(dá)到成功率閾值;以及響應(yīng)于成功率達(dá)到成功率閾值,判定經(jīng)驗(yàn)收集流程達(dá)到終止條件。
6、在一實(shí)施例中,當(dāng)處理器執(zhí)行網(wǎng)絡(luò)更新流程時(shí)還用以:根據(jù)模型的當(dāng)前策略,基于之前觀察數(shù)值運(yùn)算以決定當(dāng)前動(dòng)作;當(dāng)環(huán)境通過輸入/輸出接口接收當(dāng)前動(dòng)作后,判斷環(huán)境的當(dāng)前狀態(tài)所對(duì)應(yīng)的成功率是否達(dá)到成功率閾值;以及響應(yīng)于成功率達(dá)到成功率閾值,判定經(jīng)驗(yàn)收集流程達(dá)到終止條件。
7、本公開提供一種深度強(qiáng)化學(xué)習(xí)的演算方法,包括對(duì)環(huán)境和模型進(jìn)行初始化;并行執(zhí)行經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程,并判斷經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程是否達(dá)到終止條件;響應(yīng)于經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程均未達(dá)終止條件,持續(xù)并行執(zhí)行經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程;以及響應(yīng)于經(jīng)驗(yàn)收集流程以及該網(wǎng)絡(luò)更新流程當(dāng)中的一個(gè)已達(dá)終止條件,結(jié)束執(zhí)行經(jīng)驗(yàn)收集流程以及網(wǎng)絡(luò)更新流程。經(jīng)驗(yàn)收集流程包括獲取環(huán)境的當(dāng)前狀態(tài),當(dāng)前狀態(tài)包括當(dāng)前獎(jiǎng)勵(lì)數(shù)值以及當(dāng)前觀察數(shù)值;根據(jù)模型的當(dāng)前策略,基于當(dāng)前觀察數(shù)值運(yùn)算以決定當(dāng)前動(dòng)作;以及回傳當(dāng)前動(dòng)作至環(huán)境。網(wǎng)絡(luò)更新流程包括獲取環(huán)境的之前狀態(tài)以及模型的之前策略,之前狀態(tài)包括之前動(dòng)作、之前獎(jiǎng)勵(lì)數(shù)值以及之前觀察數(shù)值;基于之前狀態(tài)運(yùn)算以決定當(dāng)前數(shù)據(jù);以及基于當(dāng)前數(shù)據(jù)將模型的之前策略更新為當(dāng)前策略。
8、基于上述,本發(fā)明所述的深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng)及其演算方法提供一種訓(xùn)練與推論一體的解決方案,通過并行處理的方式同時(shí)進(jìn)行經(jīng)驗(yàn)收集和網(wǎng)絡(luò)更新,有效提高硬件利用率和減少延遲時(shí)間。
1.一種深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng),包括:
2.根據(jù)權(quán)利要求1所述的深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng),其中該處理器還包括:
3.根據(jù)權(quán)利要求1所述的深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng),其中當(dāng)該處理器執(zhí)行該經(jīng)驗(yàn)收集流程時(shí)還用以執(zhí)行:
4.根據(jù)權(quán)利要求1所述的深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng),其中當(dāng)該處理器執(zhí)行該網(wǎng)絡(luò)更新流程時(shí)還用以執(zhí)行:
5.根據(jù)權(quán)利要求1所述的深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng),其中當(dāng)該處理器執(zhí)行該經(jīng)驗(yàn)收集流程時(shí)還用以執(zhí)行:
6.根據(jù)權(quán)利要求1所述的深度強(qiáng)化學(xué)習(xí)的演算系統(tǒng),其中當(dāng)該處理器執(zhí)行該網(wǎng)絡(luò)更新流程時(shí)還用以:
7.一種深度強(qiáng)化學(xué)習(xí)的演算方法,包括:
8.根據(jù)權(quán)利要求7所述的深度強(qiáng)化學(xué)習(xí)的演算方法,其中所述判斷該經(jīng)驗(yàn)收集流程是否達(dá)到終止條件的步驟還包括:
9.根據(jù)權(quán)利要求7所述的深度強(qiáng)化學(xué)習(xí)的演算方法,其中所述判斷該經(jīng)驗(yàn)收集流程是否達(dá)到終止條件的步驟還包括:
10.根據(jù)權(quán)利要求7所述的深度強(qiáng)化學(xué)習(xí)的演算方法,其中所述判斷該網(wǎng)絡(luò)更新流程是否達(dá)到終止條件的步驟還包括:
11.根據(jù)權(quán)利要求7所述的深度強(qiáng)化學(xué)習(xí)的演算方法,其中所述判斷該網(wǎng)絡(luò)更新流程是否達(dá)到終止條件的步驟還包括: