本技術涉及但不限于計算機,尤其涉及一種基于算法運行系統(tǒng)的進化學習算法運行方法、系統(tǒng)、介質(zhì)。
背景技術:
1、進化學習算法,是一類基于自然選擇和遺傳學原理的優(yōu)化算法,通過模擬生物進化過程來尋找最優(yōu)解。常見的進化計算技術包括遺傳算法、進化策略和遺傳編程。在優(yōu)化問題和機器學習領域中,進化學習算法作為一種重要的優(yōu)化方法得到了廣泛應用,通常應用于復雜的優(yōu)化問題和搜索空間廣泛的場景,例如工程設計的結(jié)構優(yōu)化場景、生物信息學的基因序列比對場景、蛋白質(zhì)結(jié)構預測場景等?,F(xiàn)有的進化學習算法的相關系統(tǒng)如deap系統(tǒng)、pymoo系統(tǒng)、pagmo系統(tǒng)等主要基于cpu,將進化學習算法應用在低精度ai加速卡及其集群系統(tǒng)仍面臨挑戰(zhàn)。
技術實現(xiàn)思路
1、本技術實施例提供了一種基于算法運行系統(tǒng)的進化學習算法運行方法、系統(tǒng)、介質(zhì),能夠在保障進化學習算法的計算精度的同時,實現(xiàn)將進化學習算法在低精度ai加速卡上運行,擴展進化學習算法的硬件應用范圍。
2、第一方面,本技術實施例提供了一種基于算法運行系統(tǒng)的進化學習算法運行方法,應用于算法運行系統(tǒng),算法運行系統(tǒng)包括高精度計算設備和ai加速器,所述方法包括:
3、響應于目標算法的運行請求,確定所述高精度計算設備的第一資源占用狀態(tài),以及所述ai加速器的第二資源占用狀態(tài),基于所述第一資源占用狀態(tài)和所述第二資源占用狀態(tài)從所述高精度計算設備和所述ai加速器中確定目標計算設備,其中,所述目標算法用于指示待運行的進化學習算法;
4、當所述目標計算設備為所述ai加速器,確定所述目標算法的優(yōu)化屬性信息,其中,所述優(yōu)化屬性信息包括求解所述目標算法的目標函數(shù)、針對所述目標算法的解的維度和搜索空間范圍;
5、基于所述目標函數(shù)、所述解的維度和所述搜索空間范圍從預設的無梯度優(yōu)化策略集合中確定第一目標優(yōu)化策略,并基于所述第一目標優(yōu)化策略生成針對所述目標算法的第一初始解;
6、利用所述目標計算設備評估所述第一初始解在第一目標模擬環(huán)境中的第一適應度,其中,所述第一適應度用于指示所述第一初始解在所述第一目標模擬環(huán)境中的性能表現(xiàn)程度;
7、基于預設的進化算子和所述第一適應度對所述第一初始解進行迭代優(yōu)化處理,得到所述目標算法的目標解。
8、在一些實施例中,所述高精度計算設備的數(shù)量為多個,各個所述高精度計算設備對應有所述第一資源占用狀態(tài),所述ai加速器的數(shù)量為多個,各個所述ai加速器對應有所述第二資源占用狀態(tài),所述基于所述第一資源占用狀態(tài)和所述第二資源占用狀態(tài)從所述高精度計算設備和所述ai加速器中確定目標計算設備,包括:
9、從所述運行請求中確定所述目標算法的算法類型、輸入數(shù)據(jù)類型和性能需求信息;
10、基于所述算法類型、所述輸入數(shù)據(jù)類型和所述性能需求信息從所述高精度計算設備中確定第一候選設備;
11、當所述第一候選設備的所述第一資源占用狀態(tài)表征所述第一候選設備處于占用狀態(tài),基于所述算法類型、所述輸入數(shù)據(jù)類型和所述性能需求信息從所述ai加速器中確定第二候選設備;
12、當所述第二候選設備的第二資源占用狀態(tài)表征所述第二候選設備處于未占用狀態(tài),將所述第二候選設備確定為所述目標計算設備。
13、在一些實施例中,所述目標計算設備的數(shù)量為多個,所述第一初始解的數(shù)量為多個,利用所述目標計算設備評估各個所述第一初始解在第一目標模擬環(huán)境中的第一適應度,包括:
14、確定所述目標計算設備的目標數(shù)量,基于所述目標數(shù)量對所述第一初始解進行分組,得到多個參考解集,其中,各個所述參考解集至少包括1個所述第一初始解,各個所述第一初始解對應1個在所述第一目標模擬環(huán)境中的第一適應度評估任務,所述參考解集的數(shù)量與所述目標計算設備的數(shù)量相等;
15、將各個所述參考解集對應的各個所述第一適應度評估任務分配至對應的各個所述目標計算設備,得到對應的各個所述第一適應度。
16、在一些實施例中,基于預設的進化算子和各個所述第一適應度對對應的各個所述第一初始解進行迭代優(yōu)化處理,得到所述目標算法的目標解,包括:
17、當所述第一適應度大于預設的第一適應度閾值,將對應的所述第一初始解確定為所述目標解;
18、或者,
19、當所述第一適應度小于或等于所述第一適應度閾值,基于所述進化算子對對應的所述第一初始解進行進化操作,生成第一中間解,并記錄進化操作的第一迭代次數(shù);
20、利用所述目標計算設備評估所述第一中間解在所述第一目標模擬環(huán)境中的第一適應度,當所述第一中間解對應的第一適應度小于或等于預設的第一適應度閾值,重新進行進化操作、重新評估新的第一適應度以及生成新的第一中間解,直至所述第一迭代次數(shù)等于第一迭代次數(shù)閾值或所述新的第一適應度大于所述第一適應度閾值,將對應的所述新的第一中間解確定為所述目標解。
21、在一些實施例中,所述方法還包括:
22、當所述目標計算設備為所述高精度計算設備,基于所述目標算法對應的所述目標函數(shù)、所述解的維度和所述搜索空間范圍從預設的梯度優(yōu)化策略集合中確定第二目標優(yōu)化策略,并基于所述第二目標優(yōu)化策略生成針對所述目標算法的第二初始解;
23、利用所述目標計算設備評估所述第二初始解在第二目標模擬環(huán)境中的第二適應度,其中,所述第二適應度用于指示所述第二初始解在所述第二目標模擬環(huán)境中的性能表現(xiàn)程度;
24、基于所述第二適應度對所述第二初始解進行迭代優(yōu)化處理,得到所述目標算法的所述目標解。
25、在一些實施例中,基于所述第二適應度對所述第二初始解進行迭代優(yōu)化處理,得到所述目標算法的所述目標解,包括:
26、當所述第二適應度大于預設的第二適應度閾值,將對應的所述第二初始解確定為所述目標解;
27、或者,
28、當所述第二適應度小于或等于所述第二適應度閾值,計算所述第二初始解的梯度信息,并更新所述第二初始解的搜索分布信息,基于所述梯度信息和更新后的所述搜索分布信息對所述第二初始解進行優(yōu)化得到第二中間解,并利用所述目標計算設備評估所述第二中間解在所述第二目標模擬環(huán)境中的第二適應度,并記錄第二迭代次數(shù),直至所述第二中間解對應的第二適應度大于所述第二適應度閾值或所述第二迭代次數(shù)等于第二迭代次數(shù)閾值,將對應的第二中間解確定為所述目標解。
29、第二方面,本技術實施例提供了一種算法運行系統(tǒng),包括:
30、高精度計算設備;
31、ai加速器;
32、目標計算設備確定模塊,用于響應于目標算法的運行請求,確定所述高精度計算設備的第一資源占用狀態(tài),以及所述ai加速器的第二資源占用狀態(tài),基于所述第一資源占用狀態(tài)和所述第二資源占用狀態(tài)從所述高精度計算設備和所述ai加速器中確定目標計算設備,其中,所述目標算法用于指示待運行的進化學習算法;
33、多精度自適應求解模塊,用于當所述目標計算設備為所述ai加速器,確定所述目標算法的優(yōu)化屬性信息,其中,所述優(yōu)化屬性信息包括求解所述目標算法的目標函數(shù)、針對所述目標算法的解的維度和搜索空間范圍,基于所述目標函數(shù)、所述解的維度和所述搜索空間范圍從預設的無梯度優(yōu)化策略集合中確定第一目標優(yōu)化策略,基于所述第一目標優(yōu)化策略生成針對所述目標算法的第一初始解;
34、目標解計算模塊,用于利用所述目標計算設備評估所述第一初始解在第一目標模擬環(huán)境中的第一適應度,其中,所述第一適應度用于指示所述第一初始解在所述第一目標模擬環(huán)境中的性能表現(xiàn)程度,基于預設的進化算子和所述第一適應度對所述第一初始解進行迭代優(yōu)化處理,得到所述目標算法的目標解。
35、在一些實施例中,還包括:
36、任務調(diào)度模塊,用于在所述目標解計算模塊執(zhí)行利用所述目標計算設備評估各個所述第一初始解在第一目標模擬環(huán)境中的第一適應度的操作時,確定所述目標計算設備的目標數(shù)量,基于所述目標數(shù)量對所述第一初始解進行分組,得到多個參考解集,其中,各個所述參考解集至少包括1個所述第一初始解,各個所述第一初始解對應1個在所述第一目標模擬環(huán)境中的第一適應度評估任務,所述參考解集的數(shù)量與所述目標計算設備的數(shù)量相等,將各個所述參考解集對應的各個所述第一適應度評估任務分配至對應的各個所述目標計算設備,得到對應的各個所述第一適應度。
37、在一些實施例中,所述多精度自適應求解模塊還用于:
38、當所述目標計算設備為所述高精度計算設備,基于所述目標算法對應的所述目標函數(shù)、所述解的維度和所述搜索空間范圍從預設的梯度優(yōu)化策略集合中確定第二目標優(yōu)化策略,并基于所述第二目標優(yōu)化策略生成針對所述目標算法的第二初始解。
39、在一些實施例中,所述目標解計算模塊還用于:
40、利用所述目標計算設備評估所述第二初始解在第二目標模擬環(huán)境中的第二適應度,其中,所述第二適應度用于指示所述第二初始解在所述第二目標模擬環(huán)境中的性能表現(xiàn)程度,基于所述第二適應度對所述第二初始解進行迭代優(yōu)化處理,得到所述目標算法的所述目標解。
41、第三方面,本技術實施例提供了一種算法運行系統(tǒng),包括至少一個控制處理器和用于與所述至少一個控制處理器通信連接的存儲器;所述存儲器存儲有可被所述至少一個控制處理器執(zhí)行的指令,所述指令被所述至少一個控制處理器執(zhí)行,以使所述至少一個控制處理器能夠執(zhí)行如第一方面所述的基于算法運行系統(tǒng)的進化學習算法運行方法。
42、第四方面,本技術實施例還提供了一種計算機可讀存儲介質(zhì),存儲有計算機可執(zhí)行指令,所述計算機可執(zhí)行指令用于執(zhí)行如第一方面所述的基于算法運行系統(tǒng)的進化學習算法運行方法。
43、本技術實施例提供了一種基于算法運行系統(tǒng)的進化學習算法運行方法、系統(tǒng)、介質(zhì),方法包括:響應于目標算法的運行請求,確定所述高精度計算設備的第一資源占用狀態(tài),以及所述ai加速器的第二資源占用狀態(tài),基于所述第一資源占用狀態(tài)和所述第二資源占用狀態(tài)從所述高精度計算設備和所述ai加速器中確定目標計算設備,其中,所述目標算法用于指示待運行的進化學習算法;當所述目標計算設備為所述ai加速器,確定所述目標算法的優(yōu)化屬性信息,其中,所述優(yōu)化屬性信息包括求解所述目標算法的目標函數(shù)、針對所述目標算法的解的維度和搜索空間范圍;基于所述目標函數(shù)、所述解的維度和所述搜索空間范圍從預設的無梯度優(yōu)化策略集合中確定第一目標優(yōu)化策略,并基于所述第一目標優(yōu)化策略生成針對所述目標算法的第一初始解;利用所述目標計算設備評估所述第一初始解在第一目標模擬環(huán)境中的第一適應度,其中,所述第一適應度用于指示所述第一初始解在所述第一目標模擬環(huán)境中的性能表現(xiàn)程度;基于預設的進化算子和所述第一適應度對所述第一初始解進行迭代優(yōu)化處理,得到所述目標算法的目標解。根據(jù)本技術實施例提供的方案,能夠在保障進化學習算法的計算精度的同時,實現(xiàn)將進化學習算法部署在低精度數(shù)據(jù)格式的ai加速卡上運行,擴展進化學習算法的硬件應用范圍。