本發(fā)明涉及一種面向多模態(tài)模型的分布式協(xié)同推理技術(shù),屬于嵌入式人工智能中的協(xié)同推理優(yōu)化領(lǐng)域。
背景技術(shù):
1、物聯(lián)網(wǎng)的快速發(fā)展造就了海量多模態(tài)數(shù)據(jù)。隨著傳感器設(shè)備部署規(guī)模和通信網(wǎng)絡(luò)連接數(shù)的增加,各種類型的設(shè)備和傳感器能夠相互連接并交換數(shù)據(jù)。這些數(shù)據(jù)不僅來自于傳統(tǒng)的文本和數(shù)字信息,還包括聲音、圖像和視頻等多種模態(tài)的數(shù)據(jù)。多模態(tài)數(shù)據(jù)的涌現(xiàn)為人工智能的應(yīng)用提供了更豐富的信息源,同時(shí)也帶來了新的挑戰(zhàn)和機(jī)遇。
2、相比于傳統(tǒng)的單一模態(tài)數(shù)據(jù)分析手段,多模態(tài)數(shù)據(jù)分析能夠合理利用不同模態(tài)數(shù)據(jù)的互補(bǔ)信息。近年來受益于人工智能技術(shù)的飛速發(fā)展,多模態(tài)人工智能成為熱點(diǎn)研究領(lǐng)域。傳統(tǒng)的人工智能模型主要基于單一模態(tài)的數(shù)據(jù),而多模態(tài)人工智能模型則融合處理來自不同傳感器和設(shè)備的多種模態(tài)數(shù)據(jù),以求進(jìn)一步提升其在各種領(lǐng)域的應(yīng)用效果。
3、隨著多模態(tài)人工智能的應(yīng)用范圍不斷擴(kuò)大,研究者及用戶開始逐步關(guān)注隱私和安全問題。為了保護(hù)用戶的隱私和數(shù)據(jù)安全,越來越多的人工智能模型開始在嵌入式設(shè)備上本地部署。用戶的數(shù)據(jù)可以在本地進(jìn)行處理和分析,避免了將敏感數(shù)據(jù)傳輸?shù)皆贫说娘L(fēng)險(xiǎn)。同時(shí),本地部署人工智能模型還可以減少云端計(jì)算的延遲,提高響應(yīng)速度,更好地適應(yīng)實(shí)時(shí)應(yīng)用的需求。
4、多模態(tài)模型的超高計(jì)算量和本地受限算力資源限制了人工智能應(yīng)用的部署。首先,嵌入式設(shè)備通常受限于帶寬和存儲(chǔ)容量,無法承載大規(guī)模的模型和數(shù)據(jù)。其次,嵌入式設(shè)備的計(jì)算資源有限,難以滿足復(fù)雜模型的運(yùn)算需求。這些限制使得在嵌入式設(shè)備上高效地部署多模態(tài)人工智能模型成為一項(xiàng)具有挑戰(zhàn)性的任務(wù)。一種常見的方式是協(xié)調(diào)本地設(shè)備和邊緣設(shè)備進(jìn)行聯(lián)合推理。與單模態(tài)模型的模型分割相比,分布式部署多模態(tài)模型時(shí),還需要考慮不同設(shè)備傳輸?shù)膸挷町悾瑐鬏敂?shù)據(jù)量的差異,以及不同設(shè)備算力資源的差異。因此,如何綜合考慮各類資源限制因素,找到分布式部署多模態(tài)模型的性能最優(yōu)分割方案,是多模態(tài)模型分布式部署的核心挑戰(zhàn)。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明所要解決的技術(shù)問題在于如何在帶寬和算力受限的嵌入式設(shè)備上高效部署多模態(tài)人工智能模型。
2、本發(fā)明通過以下技術(shù)手段實(shí)現(xiàn)解決上述技術(shù)問題的:一種面向多模態(tài)模型的分布式協(xié)同推理方法,整體執(zhí)行步驟分為離線準(zhǔn)備和在線推理兩個(gè)階段,離線準(zhǔn)備階段部分包括:
3、步驟1-1,完成對(duì)多模態(tài)模型整體的訓(xùn)練;
4、步驟1-2,根據(jù)多模態(tài)模型內(nèi)的數(shù)據(jù)依賴關(guān)系識(shí)別出可劃分的部分,同時(shí)將訓(xùn)練得到的權(quán)重進(jìn)行對(duì)應(yīng)的切分;
5、步驟1-3,將多模態(tài)模型的可分割部分部署到將劃分的模型塊結(jié)構(gòu)文件及權(quán)重文件按數(shù)據(jù)依賴關(guān)系部署到對(duì)應(yīng)設(shè)備中,即將多模態(tài)模型的特征提取部分部署到各個(gè)端側(cè)設(shè)備上,并將完整模型部署到接收所有數(shù)據(jù)的中心設(shè)備上;
6、步驟1-4,在推理系統(tǒng)中的各設(shè)備上運(yùn)行多模態(tài)模型,記錄每個(gè)多模態(tài)模型塊的計(jì)算需求,即每個(gè)組件的運(yùn)行時(shí)間以及輸出數(shù)據(jù)的大小,其中輸出數(shù)據(jù)的大小即以當(dāng)前層所在位置分割模型后傳輸數(shù)據(jù)的大小,通過整理各設(shè)備上各組件的運(yùn)行時(shí)間和傳輸數(shù)據(jù)大小,形成離線分割配置;
7、在線推理階段部分包括:
8、步驟2-1,預(yù)熱模型,各設(shè)備測試通信連接情況;
9、步驟2-2,準(zhǔn)備建模所需數(shù)據(jù),首先,中心設(shè)備讀取離線準(zhǔn)備階段預(yù)先設(shè)置好的離線分割配置參數(shù),同時(shí),中心設(shè)備讀取每個(gè)端側(cè)設(shè)備的數(shù)據(jù)傳輸速率,結(jié)合分割配置中的傳輸數(shù)據(jù)大小,計(jì)算每個(gè)端側(cè)設(shè)備的不同分割點(diǎn)在當(dāng)前帶寬情況下的傳輸時(shí)間,將傳輸時(shí)間與當(dāng)前分割點(diǎn)之前各層的執(zhí)行時(shí)間加和,得到每個(gè)端側(cè)設(shè)備應(yīng)用分割策略時(shí)的本地執(zhí)行時(shí)間;
10、步驟2-3,對(duì)有n個(gè)模態(tài)分支的多模態(tài)模型,求解每個(gè)分支的計(jì)算給總推理時(shí)延增加的時(shí)間;
11、步驟2-4,完成推理總時(shí)延建模;
12、步驟2-5,分割方案分發(fā)與模型推理,中心設(shè)備監(jiān)控及預(yù)測與不同端側(cè)設(shè)備通信時(shí)的數(shù)據(jù)傳輸速率,結(jié)合離線準(zhǔn)備階段獲得的模型分割配置,求解推理總時(shí)延模型最優(yōu)化問題,得到最優(yōu)分割方案;
13、然后中心設(shè)備將模型最優(yōu)分割方案分發(fā)給各設(shè)備,由各設(shè)備調(diào)整模型實(shí)際的運(yùn)行部分,每個(gè)設(shè)備重新構(gòu)建本地需要的模型結(jié)構(gòu),然后各設(shè)備基于新的模型結(jié)構(gòu),執(zhí)行分布式的推理計(jì)算,最終中心設(shè)備將各設(shè)備傳輸?shù)闹虚g特征合并,并完成剩余的模型計(jì)算,輸出完整的推理結(jié)果,完成分布式多模態(tài)推理任務(wù)。
14、進(jìn)一步的,步驟2-2中,對(duì)有n個(gè)模態(tài)分支的多模態(tài)模型,將分割方案記為p(n)={p1,p2,…,pn},按照不同端側(cè)設(shè)備傳輸數(shù)據(jù)到達(dá)中心設(shè)備的順序,將端側(cè)設(shè)備上的執(zhí)行時(shí)間與傳輸時(shí)間之和記為{e(p1),e(p2),…,e(pn)},中心設(shè)備上的執(zhí)行時(shí)間記為{c(p1),c(p2),…,c(pn)},其中時(shí)序約束可表示為“當(dāng)i<j時(shí),e(pi)<e(pj)”,ej,cj來分別簡化表示端側(cè)設(shè)備上執(zhí)行時(shí)間與傳輸時(shí)間之和以及中心設(shè)備上的執(zhí)行時(shí)間。
15、進(jìn)一步的,步驟2-3中,對(duì)于第j個(gè)分支,其增加的總時(shí)間為:
16、
17、其中前m個(gè)分支的推理總時(shí)延記為
18、步驟2-4中,在時(shí)序約束e1<e2<…<en下,將分布式多模態(tài)模型分割的推理時(shí)延最優(yōu)化問題建模如下:
19、
20、其中trest代表模型剩余部分的執(zhí)行時(shí)間,在完成所有模態(tài)特征提取分支的計(jì)算后,由中心設(shè)備收取所有的模態(tài)數(shù)據(jù),并執(zhí)行模型剩余部分完成推理任務(wù)。
21、進(jìn)一步的,步驟2-5中,求解的詳細(xì)步驟如下:
22、1)由于模型剩余部分始終被部署在中心設(shè)備上,且中心設(shè)備的算力穩(wěn)定,而剩余部分的執(zhí)行不受模型分割操作和網(wǎng)絡(luò)通信帶寬的影響,因此認(rèn)為trest在推理過程中不發(fā)生變化,從而將式子(2)的優(yōu)化問題轉(zhuǎn)化為:
23、
24、2)接下來按到達(dá)時(shí)間先后分別確定各分支的分割點(diǎn),多模態(tài)模型的不同分支的分割點(diǎn)之間互不干擾,結(jié)合式子(1),對(duì)于第j個(gè)分支(j=2,…,m)給推理增加的總時(shí)間,將式子(3)的優(yōu)化問題轉(zhuǎn)化為依次求解m個(gè)分支的最優(yōu)分割點(diǎn)問題,第j個(gè)分支的最優(yōu)分割點(diǎn)問題如下:
25、
26、其中p*(n)={p*(1),p*(2),...,p*(m)};
27、3)求解式(4),得到最優(yōu)分割點(diǎn);
28、4)通過按時(shí)間順序,從第m個(gè)分支到第1個(gè)分支依次求解式子(4),重復(fù)上一步的操作,得到m個(gè)最優(yōu)分割點(diǎn){p*(1),p*(2),...,p*(m)},即得到模型的模型分割整體方案p*(n)={p*(1),p*(2),...,p*(m)}。
29、進(jìn)一步的,步驟3)中,分兩種情況求解式子(4);第一,當(dāng)ej-sj-1<0時(shí),tj=cj,直接從分割配置中讀取cj的值,其中cj最小值對(duì)應(yīng)的分割層索引即為第j個(gè)分支的其中一個(gè)最優(yōu)分割點(diǎn);第二,反之,tj=ej+cj-sj-1,其中sj-1是前j-1個(gè)分支的推理總時(shí)延,與第j個(gè)分支的分割位置無關(guān),因此在確定第j個(gè)分支的分割點(diǎn)時(shí)此時(shí)直接從分割配置中讀取ej和cj的值,其中ej+cj的最小值對(duì)應(yīng)的分割層索引即為第j個(gè)分支的其中一個(gè)最優(yōu)分割點(diǎn)。
30、本發(fā)明還提供一種面向多模態(tài)模型的分布式協(xié)同推理系統(tǒng),分為離線準(zhǔn)備模塊和在線推理模塊,離線準(zhǔn)備模塊包括:
31、訓(xùn)練單元,用于完成對(duì)多模態(tài)模型整體的訓(xùn)練;
32、切分單元,用于根據(jù)多模態(tài)模型內(nèi)的數(shù)據(jù)依賴關(guān)系識(shí)別出可劃分的部分,同時(shí)將訓(xùn)練得到的權(quán)重進(jìn)行對(duì)應(yīng)的切分;
33、部署單元,用于將多模態(tài)模型的可分割部分部署到將劃分的模型塊結(jié)構(gòu)文件及權(quán)重文件按數(shù)據(jù)依賴關(guān)系部署到對(duì)應(yīng)設(shè)備中,即將多模態(tài)模型的特征提取部分部署到各個(gè)端側(cè)設(shè)備上,并將完整模型部署到接收所有數(shù)據(jù)的中心設(shè)備上;
34、運(yùn)行單元,用于在推理系統(tǒng)中的各設(shè)備上運(yùn)行多模態(tài)模型,記錄每個(gè)多模態(tài)模型塊的計(jì)算需求,即每個(gè)組件的運(yùn)行時(shí)間以及輸出數(shù)據(jù)的大小,其中輸出數(shù)據(jù)的大小即以當(dāng)前層所在位置分割模型后傳輸數(shù)據(jù)的大小,通過整理各設(shè)備上各組件的運(yùn)行時(shí)間和傳輸數(shù)據(jù)大小,形成離線分割配置;
35、在線推理階段模塊包括:
36、預(yù)熱單元,用于預(yù)熱模型,各設(shè)備測試通信連接情況;
37、數(shù)據(jù)準(zhǔn)備單元,用于準(zhǔn)備建模所需數(shù)據(jù),首先,中心設(shè)備讀取離線準(zhǔn)備階段預(yù)先設(shè)置好的離線分割配置參數(shù),同時(shí),中心設(shè)備讀取每個(gè)端側(cè)設(shè)備的數(shù)據(jù)傳輸速率,結(jié)合分割配置中的傳輸數(shù)據(jù)大小,計(jì)算每個(gè)端側(cè)設(shè)備的不同分割點(diǎn)在當(dāng)前帶寬情況下的傳輸時(shí)間,將傳輸時(shí)間與當(dāng)前分割點(diǎn)之前各層的執(zhí)行時(shí)間加和,得到每個(gè)端側(cè)設(shè)備應(yīng)用分割策略時(shí)的本地執(zhí)行時(shí)間;
38、求解單元,用于對(duì)有n個(gè)模態(tài)分支的多模態(tài)模型,求解每個(gè)分支的計(jì)算給總推理時(shí)延增加的時(shí)間;
39、建模單元,用于完成推理總時(shí)延建模;
40、分割單元,用于分割方案分發(fā)與模型推理,中心設(shè)備監(jiān)控及預(yù)測與不同端側(cè)設(shè)備通信時(shí)的數(shù)據(jù)傳輸速率,結(jié)合離線準(zhǔn)備階段獲得的模型分割配置,求解推理總時(shí)延模型最優(yōu)化問題,得到最優(yōu)分割方案;
41、分發(fā)模塊,用于中心設(shè)備將模型最優(yōu)分割方案分發(fā)給各設(shè)備,由各設(shè)備調(diào)整模型實(shí)際的運(yùn)行部分,每個(gè)設(shè)備重新構(gòu)建本地需要的模型結(jié)構(gòu),然后各設(shè)備基于新的模型結(jié)構(gòu),執(zhí)行分布式的推理計(jì)算,最終中心設(shè)備將各設(shè)備傳輸?shù)闹虚g特征合并,并完成剩余的模型計(jì)算,輸出完整的推理結(jié)果,完成分布式多模態(tài)推理任務(wù)。
42、進(jìn)一步的,數(shù)據(jù)準(zhǔn)備單元中,對(duì)有n個(gè)模態(tài)分支的多模態(tài)模型,將分割方案記為p(n)={p1,p2,…,pn},按照不同端側(cè)設(shè)備傳輸數(shù)據(jù)到達(dá)中心設(shè)備的順序,將端側(cè)設(shè)備上的執(zhí)行時(shí)間與傳輸時(shí)間之和記為{e(p1),e(p2),…,e(pn)},中心設(shè)備上的執(zhí)行時(shí)間記為{c(p1),c(p2),…,c(pn)},其中時(shí)序約束可表示為“當(dāng)i<j時(shí),e(pi)<e(pj)”,ej,cj來分別簡化表示端側(cè)設(shè)備上執(zhí)行時(shí)間與傳輸時(shí)間之和以及中心設(shè)備上的執(zhí)行時(shí)間。
43、進(jìn)一步的,求解單元中,對(duì)于第j個(gè)分支,其增加的總時(shí)間為:
44、
45、其中前m個(gè)分支的推理總時(shí)延記為
46、建模單元中,在時(shí)序約束e1<e2<…<en下,將分布式多模態(tài)模型分割的推理時(shí)延最優(yōu)化問題建模如下:
47、
48、其中trest代表模型剩余部分的執(zhí)行時(shí)間,在完成所有模態(tài)特征提取分支的計(jì)算后,由中心設(shè)備收取所有的模態(tài)數(shù)據(jù),并執(zhí)行模型剩余部分完成推理任務(wù)。
49、進(jìn)一步的,分割單元中,求解的詳細(xì)步驟如下:
50、1)由于模型剩余部分始終被部署在中心設(shè)備上,且中心設(shè)備的算力穩(wěn)定,而剩余部分的執(zhí)行不受模型分割操作和網(wǎng)絡(luò)通信帶寬的影響,因此認(rèn)為trest在推理過程中不發(fā)生變化,從而將式子(2)的優(yōu)化問題轉(zhuǎn)化為:
51、
52、2)接下來按到達(dá)時(shí)間先后分別確定各分支的分割點(diǎn),多模態(tài)模型的不同分支的分割點(diǎn)之間互不干擾,結(jié)合式子(1),對(duì)于第j個(gè)分支(j=2,…,m)給推理增加的總時(shí)間,將式子(3)的優(yōu)化問題轉(zhuǎn)化為依次求解m個(gè)分支的最優(yōu)分割點(diǎn)問題,第j個(gè)分支的最優(yōu)分割點(diǎn)問題如下:
53、
54、其中p*(n)={p*(1),p*(2),...,p*(m)};
55、3)求解式(4),得到最有分割點(diǎn);
56、4)通過按時(shí)間順序,從第m個(gè)分支到第1個(gè)分支依次求解式子(4),重復(fù)上一步的操作,,得到m個(gè)最優(yōu)分割點(diǎn){p*(1),p*(2),...,p*(m)},即得到模型的模型分割整體方案p*(n)={p*(1),p*(2),...,p*(m)}。
57、進(jìn)一步的,步驟3)中,分兩種情況求解式子(4);第一,當(dāng)ej-sj-1<0時(shí),tj=cj,直接從分割配置中讀取cj的值,其中cj最小值對(duì)應(yīng)的分割層索引即為第j個(gè)分支的其中一個(gè)最優(yōu)分割點(diǎn);第二,反之,tj=ej+cj-sj-1,其中sj-1是前j-1個(gè)分支的推理總時(shí)延,與第j個(gè)分支的分割位置無關(guān),因此在確定第j個(gè)分支的分割點(diǎn)時(shí)此時(shí)直接從分割配置中讀取ej和cj的值,其中ej+cj的最小值對(duì)應(yīng)的分割層索引即為第j個(gè)分支的其中一個(gè)最優(yōu)分割點(diǎn)。
58、本發(fā)明的優(yōu)點(diǎn)在于:
59、1、本發(fā)明首次提出了一種針對(duì)深度多模態(tài)神經(jīng)網(wǎng)絡(luò)的通用分布式協(xié)同推理技術(shù)。通過對(duì)深度多模態(tài)神經(jīng)網(wǎng)絡(luò)的分布式推理進(jìn)行理論建模,揭示了限制多模態(tài)模型分布式部署性能的關(guān)鍵因素。實(shí)際應(yīng)用中,即使不同設(shè)備的通信帶寬異構(gòu)且動(dòng)態(tài)變化,本發(fā)明能可解釋地輸出當(dāng)前帶寬情況下的最優(yōu)模型分布式部署方案,有效降低推理時(shí)延。
60、2、本發(fā)明通過解耦深度多模態(tài)神經(jīng)網(wǎng)絡(luò)中的各模塊和層,構(gòu)建協(xié)同推理框架,能夠有效降低因?yàn)椴渴鹪诓煌O(shè)備上數(shù)據(jù)傳輸差異導(dǎo)致的阻塞問題,緩解了資源空耗的問題,提高了推理平臺(tái)的整體資源利用率。
61、3、本發(fā)明在不同分布式嵌入式平臺(tái)上進(jìn)行了實(shí)驗(yàn)驗(yàn)證,相較于傳統(tǒng)模型分割方法,本發(fā)明能實(shí)時(shí)自適應(yīng)地調(diào)整部署策略,在計(jì)算量、準(zhǔn)確性、延遲方面均優(yōu)于傳統(tǒng)方法。