本發明屬于車聯網數據分析領域,涉及一種異構車聯網個性化聯邦學習方法。
背景技術:
1、隨著5g技術的推廣應用和v2x技術的發展,在車聯網(internet?of?vehicles)場景中,汽車可通過與其他車輛、路邊單元、交通基礎設施等直接共享車輛收集的軌跡、交通狀況、駕駛員信息等數據訓練機器學習模型,提供識別、搜索、停車、環境感知、地圖構建等智能服務。然而,車輛與這些基礎設施之間的數據共享雖可使車輛提高智能決策能力,但卻帶來了嚴重的數據隱私泄露問題。因此,為車聯網中的智能化應用探索既能提高智能決策能力,又能保護數據隱私的解決方案至關重要。為了解決這一問題,2016年google公司提出的聯邦學習帶來了新思路,聯邦學習的思想是允許多個車輛客戶端協同利用收集的本地數據集訓練共享的全局模型,而不需將本地數據直接上傳到云服務器進行數據分析和模型訓練,既能提高智能決策能力,又能保護數據隱私。盡管聯邦學習在解決數據隱私方面存在許多優點,但在當前各車輛客戶端之間資源不均衡以及車輛具有高速移動性的車聯網場景中,聯邦學習仍然面臨許多挑戰。
2、受車輛個體收集數據維度和車輛時空分布差異的影響,車輛間收集的數據在數據分布和數據量方面存在嚴重偏差,導致車輛間數據呈顯著的非獨立同分布特征,嚴重影響聯邦學習的全局模型面向單個車輛客戶端的性能。并且,車輛位置的時空動態性使得其與路邊單元連接的通信資源與網絡狀態動態時變,易導致聯邦訓練過程的不完備。因此,如何考慮車聯網數據的高異質性和車輛高移動性設計個性化的聯邦學習方法亟待研究。目前,現有關于異構車聯網中的個性化聯邦學習方法主要通過客戶端選擇、聚類、異步聚合等方法來緩解數據異構性和車輛移動性對模型性能造成的影響,但目前的方法對于非獨立同分布數據的個性化分析粒度不足,且對于車聯網場景,由于車輛具有高速移動性,聯邦學習模型具有快速收斂的需求,這對個性化聯邦學習方法提出了低復雜度要求,因此現有的個性化聯邦學習方法不適用于車聯網場景。
技術實現思路
1、有鑒于此,本發明的目的在于提供一種異構車聯網個性化聯邦學習方法,用以解決現有個性化聯邦學習方法對于非獨立同分布數據的個性化分析粒度不足以及現有個性化聯邦學習方法不滿足車聯網場景中的低復雜度要求的問題。首先,本發明方法采用云-邊-端三層架構,解決了傳統兩層架構中通信頻繁和開銷大的問題。其次,針對車聯網場景中車輛的高速移動性問題,本發明根據車輛的計算能力與通信能力選擇參與聯邦訓練的車輛客戶端集合,保證車輛在離開當前路邊單元之前可完成包含模型頻域參數分解在內的整個聯邦學習過程,以降低車輛移動性、信道狀態時變性對模型訓練帶來的負面影響,加快模型收斂速度。此外,區別于現有的個性化聯邦學習方法,本發明引入頻域分析思想設計異構車聯網個性化聯邦學習方法,提升異構車聯網下聯邦學習的性能,同時離散余弦變換不涉及虛部計算,計算速度更快,相比于其他個性化聯邦學習方法,有效降低模型訓練時間,滿足聯網場景中的低復雜度要求。
2、為達到上述目的,本發明提供如下技術方案:
3、一種異構車聯網個性化聯邦學習方法,基于云-邊-端三層架構進行聯邦學習,用戶層負責數據收集、本地模型訓練以及個性化模型參數分解與構建;邊緣層負責聚合其覆蓋范圍內車輛客戶端本地模型的基礎知識部分;云服務器層負責聚合所有邊緣層的邊緣基礎知識。針對個性化模型參數分解與構建,采用二維離散余弦變換區分車輛客戶端本地模型的基礎知識和個性化知識,在融合其他車輛客戶端基礎知識的同時,保留自身的細粒度個性化知識。
4、該方法具體包括以下步驟:
5、s1:云服務器初始化模型參數和其他基本參數;
6、s2:根據車輛的計算性能與通信性能選擇合適的車輛客戶端參與聯邦模型訓練;
7、s3:利用車輛客戶端各自收集的數據進行本地模型訓練;
8、s4:基于個性化頻域參數分解方法,構建個性化模型;
9、s5:反復迭代訓練,直至達到預定訓練輪次或模型收斂。
10、進一步,步驟s1具體包括:云服務器基于用戶需求定制訓練目標,并根據訓練目標初始化局部迭代器、學習率大小、批數據量大小、本地迭代次數以及訓練輪次等訓練信息,并生成初始的全局聯邦學習模型;云服務器通過路邊單元初始化參與本次聯邦訓練的車輛客戶端。
11、進一步,步驟s2具體包括以下步驟:
12、s21:云服務器通知各路邊單元對車輛客戶端的設備性能以及通信狀況進行評估;
13、s22:路邊單元評估車輛客戶端在本地訓練樣本數據時的訓練時延;
14、s23:路邊單元評估車輛客戶端的通信時延;
15、s24:計算車輛客戶端在當前路邊單元覆蓋范圍內的停留時間;
16、s25:根據車輛客戶端的計算時延、通信時延、模型聚合所用時間以及頻域分析消耗的時間之和,選擇能夠在移動到下一個路邊單元之前能夠完成一輪模型訓練的車輛客戶端進行模型訓練;如下式所示:
17、
18、式中,表示車輛本地模型參數的訓練時間,表示模型上傳所消耗的時間,tagg表示在路邊單元處模型聚合所用時間,δ表示對本地模型參數進行頻域分析及分解所用的時間,τk表示車輛vk在當前路邊單元覆蓋范圍內的停留時間。
19、進一步,步驟s22中,車輛客戶端在本地訓練樣本數據時的訓練時延定義為:
20、
21、其中,為第t輪聯邦訓練中車輛vk的性能,是車輛vk的計算資源,ek是本地迭代次數,是訓練樣本數量。
22、進一步,步驟s23具體包括:若車輛vk的發射功率為pk,路徑損耗指數為γ,噪聲功率譜密度為n0,則在當前路邊單元覆蓋范圍下,車輛客戶端的數據傳輸速率可表示為:
23、
24、式中,為車輛客戶端vk與路邊單元之間的信道增益,是小尺度通道系數,ck為車輛客戶端vk與路邊單元之間的距離;
25、若發送給路邊單元的模型參數的大小為a,則車輛客戶端vk所需的通信時延為:
26、
27、進一步,步驟s24具體包括:假設在經過邊緣服務器時車輛客戶端保持其速度不變,通過當前路邊單元的覆蓋范圍車輛客戶端vk的行駛速度vk,可計算出其在當前路邊單元覆蓋范圍內的停留時間:
28、
29、式中,lk表示從車輛客戶端vk所在的位置到當前路邊單元覆蓋區域入口的距離。
30、進一步,步驟s3具體包括:根據當前車輛客戶端收集的數據集質量以及采用的損失函數,訓練得到車輛客戶端的本地模型,表示為:
31、
32、式中,dk表示車輛客戶端收集的數據集大小,表示第k個車輛客戶端收集的數據集中第j個數據樣本,表示其對應的樣本真實標簽;表示樣本預測值與樣本真實標簽之間的差異,即交叉熵損失函數;表示第t輪聯邦訓練中車輛客戶端vk的個性化模型。
33、進一步,步驟s4具體包括以下步驟:
34、s41:對車輛客戶端本地模型的卷積層參數ω′t,k,conv進行離散余弦變換,可求得車輛客戶端模型卷積層參數解析后的頻域信號f(ω′t,k,conv),如下式所示:
35、
36、式中,x,u=0,1,2,...,s1l-1;y,v=0,1,2,...,s2c-1;x、y是時域中的坐標,u,v是頻域中的坐標,l和c分別為本地模型中卷積核的輸出通道數和輸入通道數,s1和s2為卷積核的空間形狀,ω′t,k,conv為車輛vk的本地模型的卷積層參數;c(u)是歸一化系數,用于確保變換的正交性和能量保持;是余弦基函數,在變換中主要進行信號分解,從而進行更有效的信號分析和處理;
37、s42:使用一個除中心區域外其余值均為0的低頻掩碼矩陣g提取用于模型聚合的低頻分量(基礎知識),即表示為g⊙f(ω′t,k,conv),則高頻分量(個性化知識)表示為(1-g)⊙f(ω′t,k,conv),其中f(ω′t,k,conv)為上述所提到的車輛客戶端本地模型的卷積層參數解析后的頻域信號;
38、s43:車輛客戶端將本地模型的基礎知識部分上傳到路邊單元進行初步聚合,得到邊緣基礎知識
39、
40、式中,t代表第t輪聯邦訓練,l表示第l個路邊單元bl,表示路邊單元bl覆蓋范圍內參與第t輪聯邦訓練的車輛客戶端的集合,dk表示第k個車輛客戶端vk收集的數據量大小;表示集合中車輛客戶端總的數據量大小;
41、s44:路邊單元將邊緣基礎知識上傳到云服務器進行最終聚合,從而獲取聚合后的全局基礎知識ωglobal:
42、
43、式中,表示云服務器覆蓋范圍下的所有路邊單元的集合,il代表路邊單元bl所擁有的數據量的大小,表示云服務覆蓋范圍內所有車輛客戶端的總數據量大小;
44、s45:車輛客戶端將接收到的全局基礎知識與本地保留的個性化知識結合,得到個性化模型在頻域空間的表示f(ω't,k,conv),定義為:
45、f(ω't,k,conv)=(1-g)⊙f(ω′t,k,conv)+ωglobal
46、式中,ωglobal為全局基礎知識,(1-g)⊙f(ω′t,k,conv)表示車輛客戶端vk的個性化知識;
47、s46:根據離散余弦逆變換將其轉換到時域空間,求得模型卷積層參數的時域表示ω′t,k,conv,將其與全連接層參數ωk,fc結合,從而獲得車輛客戶端vk的個性化模型
48、本發明的有益效果在于:本發明針對車聯網中數據異構性、車輛高移動性特征影響聯邦學習模型訓練精度的問題,提出云邊端協同的異構車聯網個性化聯邦學習方法,通過設計客戶端選擇算法和個性化聯邦學習方法,同時考慮車輛的計算能力和通信能力,動態選擇參與聯邦訓練的車輛客戶端;利用頻域分析思想,解析車輛客戶端本地模型的基礎知識和個性化知識,在融合其他車輛客戶端的基礎知識的同時,保留自身細粒度個性化知識,從而訓練得到高精度個性化聯邦學習模型。
49、本發明的其他優點、目標和特征在某種程度上將在隨后的說明書中進行闡述,并且在某種程度上,基于對下文的考察研究對本領域技術人員而言將是顯而易見的,或者可以從本發明的實踐中得到教導。本發明的目標和其他優點可以通過下面的說明書來實現和獲得。