本發(fā)明涉及人工智能,具體涉及一種用于人工智能計算的方法及計算設(shè)備。
背景技術(shù):
1、隨著人工智能技術(shù)不斷發(fā)展,機(jī)器學(xué)習(xí)和深度學(xué)習(xí)技術(shù)不斷成熟,各種各樣的專用于深度學(xué)習(xí)計算的ai芯片被設(shè)計出來。它們可以應(yīng)用我們的各種生產(chǎn)、生活場景下,從醫(yī)療保健到自動駕駛,從智慧生活到智慧城市,ai芯片都在其中扮演著重要角色。
2、市面上ai芯片的種類很多,每一個芯片廠商都會推出自己的運(yùn)行時用于模型推理,同時不同芯片擁有不同的特性,對于ai算法應(yīng)用開發(fā)工程師,如果要開發(fā)一個性能足夠好的ai算法,必須要熟悉芯片特性和不同運(yùn)行時的使用方式,對于算法工程師的要求非常高,同時如果需要對接到不同ai芯片,需要非常大的人力投入,且一個算法應(yīng)用需要多個模型來完成,不同算法底層可能調(diào)用的是相同的模型。
3、為此,需要一種技術(shù)方案,能夠屏蔽底層軟硬件的差異,降低重復(fù)開發(fā)工作。實(shí)現(xiàn)資源復(fù)用,規(guī)范算法代碼寫法,保證ai推理的極致性能。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明旨在提供用于人工智能計算的方法及計算設(shè)備,能夠屏蔽底層軟硬件的差異,降低重復(fù)開發(fā)工作。實(shí)現(xiàn)資源復(fù)用,規(guī)范算法代碼寫法,保證ai推理的極致性能。
2、根據(jù)本發(fā)明的一方面,提供一種用于人工智能計算的方法,所述方法包括:
3、獲取用于人工智能應(yīng)用的算法任務(wù)集,所述算法任務(wù)集包括多個算法任務(wù),每個算法任務(wù)包括多個模型計算和與所述多個模型計算相關(guān)的多個業(yè)務(wù)計算;
4、將所述算法任務(wù)集重構(gòu)為融合任務(wù),在所述融合任務(wù)中至少一個模型計算被第一算法任務(wù)組共享且至少一個業(yè)務(wù)計算被第二算法任務(wù)組共享,所述第一算法任務(wù)組和所述第二算法任務(wù)組分別包括至少兩個算法任務(wù),所述第一算法任務(wù)組和所述第二算法任務(wù)組相同或不同;
5、根據(jù)所述融合任務(wù)調(diào)度計算資源執(zhí)行計算任務(wù),所述計算資源包括中央處理器、內(nèi)存、人工智能算力。
6、根據(jù)一些實(shí)施例,所述多個業(yè)務(wù)計算利用預(yù)定框架提供的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),所述數(shù)據(jù)結(jié)構(gòu)包括輸入數(shù)據(jù)結(jié)構(gòu)和輸出數(shù)據(jù)結(jié)構(gòu)。
7、根據(jù)一些實(shí)施例,所述輸入數(shù)據(jù)結(jié)構(gòu)包括結(jié)果閾值、圖片關(guān)注區(qū)域和/或輸入源,所述輸出數(shù)據(jù)結(jié)構(gòu)包括報警標(biāo)識、分析類別和/或檢測框。
8、根據(jù)一些實(shí)施例,將所述算法任務(wù)集重構(gòu)為融合任務(wù),包括:
9、將所述多個模型計算構(gòu)造為節(jié)點(diǎn),將所述多個業(yè)務(wù)計算構(gòu)造為邊,將所述節(jié)點(diǎn)和邊組成有向無環(huán)圖,所述算法任務(wù)集中相同的模型計算在所述有向無環(huán)圖中對應(yīng)同一個節(jié)點(diǎn),所述算法任務(wù)集中相同的業(yè)務(wù)計算在所述有向無環(huán)圖中對應(yīng)同一條邊。
10、根據(jù)一些實(shí)施例,將所述算法任務(wù)集重構(gòu)為融合任務(wù),還包括:
11、對所述有向無環(huán)圖進(jìn)行圖優(yōu)化。
12、根據(jù)一些實(shí)施例,根據(jù)所述融合任務(wù)調(diào)度計算資源執(zhí)行計算任務(wù),包括:
13、調(diào)用底層平臺提供的數(shù)據(jù)結(jié)構(gòu)用于執(zhí)行模型計算,所述底層平臺提供的數(shù)據(jù)結(jié)構(gòu)對開發(fā)者透明。
14、根據(jù)一些實(shí)施例,根據(jù)所述融合任務(wù)調(diào)度計算資源執(zhí)行計算任務(wù),包括:
15、基于所述預(yù)定框架使用統(tǒng)一的線程池調(diào)度cpu資源來執(zhí)行所述多個業(yè)務(wù)計算。
16、根據(jù)一些實(shí)施例,根據(jù)所述融合任務(wù)調(diào)度計算資源執(zhí)行計算任務(wù),還包括:
17、根據(jù)計算優(yōu)先級配置,將計算資源優(yōu)先分配給優(yōu)先級高的模型計算和業(yè)務(wù)計算。
18、根據(jù)本發(fā)明的另一方面,提供一種計算機(jī)程序產(chǎn)品,包括計算機(jī)程序,所述計算機(jī)程序被處理器執(zhí)行時實(shí)現(xiàn)如上任一項(xiàng)所述的方法。
19、根據(jù)本發(fā)明的另一方面,提供一種計算設(shè)備,包括:
20、處理器;以及
21、存儲器,存儲有計算機(jī)程序,當(dāng)所述計算機(jī)程序被所述處理器執(zhí)行時,實(shí)現(xiàn)如上任一項(xiàng)所述的方法。
22、根據(jù)本發(fā)明的實(shí)施例,首先獲取用于人工智能應(yīng)用的算法任務(wù)集,每個算法任務(wù)包括多個模型計算和與多個模型計算相關(guān)的多個業(yè)務(wù)計算,將算法任務(wù)集重構(gòu)為融合任務(wù),在融合任務(wù)中至少一個模型計算被第一算法任務(wù)組共享,且至少一個業(yè)務(wù)計算被第二算法任務(wù)組共享,最后根據(jù)融合任務(wù)調(diào)度計算資源執(zhí)行計算任務(wù)。本發(fā)明根據(jù)融合任務(wù)調(diào)度計算資源,能夠?qū)崿F(xiàn)資源復(fù)用,保證ai推理的性能。
23、根據(jù)一些實(shí)施例,通過圖分析可以識別出計算任務(wù)之間的依賴關(guān)系,從而優(yōu)化任務(wù)的執(zhí)行順序,減少不必要的數(shù)據(jù)傳輸和計算,實(shí)現(xiàn)資源的有效利用。圖結(jié)構(gòu)允許容易地識別哪些任務(wù)可以并行執(zhí)行,這對于充分利用多核處理器或多臺機(jī)器的計算能力非常關(guān)鍵,能夠大大縮短任務(wù)的總體執(zhí)行時間。
24、根據(jù)一些實(shí)施例,根據(jù)系統(tǒng)負(fù)載情況動態(tài)調(diào)整任務(wù)的分配和優(yōu)先級,確保高優(yōu)先級或資源密集型的任務(wù)能夠得到及時處理,提高系統(tǒng)的響應(yīng)速度和服務(wù)質(zhì)量。當(dāng)需要增加新的計算節(jié)點(diǎn)或算法業(yè)務(wù)時,可以通過向圖中添加相應(yīng)的節(jié)點(diǎn)或邊來輕松實(shí)現(xiàn),而不需要對整個系統(tǒng)進(jìn)行大規(guī)模的重構(gòu)。
25、根據(jù)一些實(shí)施例,圖結(jié)構(gòu)有助于快速定位失敗的任務(wù),并重新安排這些任務(wù)的執(zhí)行,或者尋找替代路徑完成計算,提高了系統(tǒng)的可靠性和容錯性。將復(fù)雜的計算過程以圖的形式展現(xiàn),便于開發(fā)者和運(yùn)維人員理解和監(jiān)控整個系統(tǒng)的運(yùn)行狀態(tài),有助于問題的快速診斷和解決。
26、根據(jù)一些實(shí)施例,通過對圖的深入分析,可以發(fā)現(xiàn)瓶頸所在,為性能調(diào)優(yōu)提供明確的方向,比如通過調(diào)整特定節(jié)點(diǎn)的配置來提升整體效率。
27、應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性的,并不能限制本發(fā)明。
1.一種用于人工智能計算的方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述多個業(yè)務(wù)計算利用預(yù)定框架提供的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),所述數(shù)據(jù)結(jié)構(gòu)包括輸入數(shù)據(jù)結(jié)構(gòu)和輸出數(shù)據(jù)結(jié)構(gòu)。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述輸入數(shù)據(jù)結(jié)構(gòu)包括結(jié)果閾值、圖片關(guān)注區(qū)域和/或輸入源,所述輸出數(shù)據(jù)結(jié)構(gòu)包括報警標(biāo)識、分析類別和/或檢測框。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,將所述算法任務(wù)集重構(gòu)為融合任務(wù),包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,將所述算法任務(wù)集重構(gòu)為融合任務(wù),還包括:
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,根據(jù)所述融合任務(wù)調(diào)度計算資源執(zhí)行計算任務(wù),包括:
7.根據(jù)權(quán)利要求2所述的方法,其特征在于,根據(jù)所述融合任務(wù)調(diào)度計算資源執(zhí)行計算任務(wù),包括:
8.根據(jù)權(quán)利要求6或7所述的方法,其特征在于,根據(jù)所述融合任務(wù)調(diào)度計算資源執(zhí)行計算任務(wù),還包括:
9.一種計算機(jī)程序產(chǎn)品,其特征在于,包括計算機(jī)程序,所述計算機(jī)程序被處理器執(zhí)行時實(shí)現(xiàn)如權(quán)利要求1-8中任一項(xiàng)所述的方法。
10.一種計算設(shè)備,其特征在于,包括: