范紹帥,吳劍波,田輝
(北京郵電大學網絡與交換技術國家重點實驗室,北京 100876)
隨著5G 技術在全球范圍內的廣泛部署,工業(yè)界和學術界開始探索6G 網絡[1]。6G 網絡將集成通信和計算功能,采用先進的人工智能技術,向自動駕駛、虛擬現(xiàn)實、智能工廠、智慧城市等典型應用場景[2]提供萬物智聯(lián)服務。傳統(tǒng)的資源管理機制難以滿足6G 網絡的復雜需求,因此,基于智慧內生和至簡網絡的下一代網絡成為廣泛研究的熱點。隨著物聯(lián)網的普及,各種服務對通信技術提出了更多更高的要求,這是目前5G 網絡無法支持的,而6G網絡有望推動工業(yè)革命,支持物聯(lián)網新要求,其中無線分布式計算是6G 的使能技術[3]。聯(lián)邦學習作為一種分布式機器學習方法,能夠滿足6G 網絡的隱私保護和低時延需求[4],是構建6G 物聯(lián)網系統(tǒng)的關鍵技術[5]。由于工業(yè)物聯(lián)網(IIoT,industrial Internet of things)的數(shù)據(jù)安全和快速數(shù)據(jù)分析及決策需求,聯(lián)邦學習有望應用于工業(yè)物聯(lián)網場景中來訓練機器學習模型[6]。然而,工業(yè)物聯(lián)網場景中存在資源可用性低的問題[7],如較低的計算能力、有限的帶寬和電池壽命,設備能力的異構屬性[8]也加大了設備間的性能差距。但現(xiàn)有關于工業(yè)物聯(lián)網聯(lián)邦學習的研究大多未考慮電池能量有限等問題,導致可應用場景有限。
工業(yè)物聯(lián)網場景下,當設備數(shù)量龐大且分布密集時,采用充電模式供電會導致布線復雜且降低工業(yè)節(jié)點的靈活性與可擴展性,特別對于移動工業(yè)設備而言,充電線無法滿足設備的移動需求并且可能造成安全隱患,如工業(yè)機器人等[9]。因此,大量工業(yè)物聯(lián)網設備常常由有限尺寸的電池供電,與可充電模式不同,這嚴重限制了工業(yè)設備可用的能源供應和使用壽命[10]。
關于聯(lián)邦學習的研究大多基于充電設備[11],不需要考慮設備的使用壽命。而基于電池供電設備進行聯(lián)邦學習時[12],設備在訓練中可能由于電池能量耗盡而離線,降低系統(tǒng)性能[13]。因此電池的長期能量調度和節(jié)能技術是電池供電工業(yè)物聯(lián)網高效聯(lián)邦學習的關鍵?,F(xiàn)有關于基于電池供電設備的聯(lián)邦學習的研究主要將電池壽命作為設備選擇指標[7]或者調整部分訓練參數(shù)以提高電池壽命[12,14-15],如訓練批量大小、CPU 頻率等,較少對電池能量進行整體調度與分配,缺少長期視角下對電池壽命的控制。關于能量調度的研究適用場景有限,例如文獻[16]根據(jù)電池電量和訓練輪次分配能量,其中訓練輪次為定值,忽略了實際場景下的總運行時間限制,而訓練時間為定值時難以在訓練前確定訓練輪次[6,17],難以將其有效擴展至時間預算既定的工業(yè)物聯(lián)網場景中。因此基于電池供電設備的工業(yè)物聯(lián)網聯(lián)邦學習缺少整體性與系統(tǒng)性的能量調度與節(jié)能技術研究。
聯(lián)邦學習的多個優(yōu)化方向,如時間、成本和精度等難以兼顧[18],因此優(yōu)化目標需要對此進行權衡[19-26]。已有工作研究固定訓練時間達到最大學習精度[22-25]的問題,但多數(shù)未考慮電池供電和無線傳輸對系統(tǒng)性能的影響。由于長期優(yōu)化求解復雜度隨時間增長呈指數(shù)級增大[26],因此可采用獨立迭代優(yōu)化的方法[27]簡化問題。同時,為權衡訓練時間和精度目標,加快學習速度,可引入學習效率[28-29]作為優(yōu)化目標進行資源管理。文獻[28]通過聯(lián)合批量選擇和通信資源分配以最大化學習效率;文獻[29]提出最大化學習效率的通信資源分配和數(shù)據(jù)選擇算法。
針對當前研究所面臨的低資源可用環(huán)境下異構設備電池能量、通信資源分配等資源優(yōu)化管理問題,本文提出一種針對電池供電工業(yè)物聯(lián)網下聯(lián)邦學習網絡的資源管理算法。本文考慮電池供電和無線傳輸對聯(lián)邦學習性能的影響,對設備資源、通信資源以及電池能量進行聯(lián)合優(yōu)化管理,以求解電池供電工業(yè)物聯(lián)網設備固定訓練時間達到最大學習精度的優(yōu)化問題。
本文的主要貢獻如下。
1)設計了一種針對電池供電工業(yè)物聯(lián)網設備的聯(lián)邦學習資源管理算法。該算法將長期優(yōu)化轉化為動態(tài)逐輪優(yōu)化,考慮資源塊數(shù)目受限、無線信道干擾以及電池能量有限,提出以學習效率優(yōu)化為目標的數(shù)學模型。將原優(yōu)化問題解耦為相互關聯(lián)的電池能量分配、設備資源分配和通信資源分配這3 個子問題分別進行求解。
2)為解決學習效率優(yōu)化問題,利用粒子群優(yōu)化算法求解能耗預算下的最優(yōu)設備傳輸和計算資源分配策略,并推導出單輪全局損失函數(shù)變化的表達式,基于此獲得學習效率與通信資源分配的關系,進而設計了一種資源塊迭代匹配算法以求解最優(yōu)通信資源分配策略。
3)提出一種電池能量分配策略,在給定設備資源和通信資源分配的條件下,估計訓練輪次、根據(jù)時延篩選設備并調整設備CPU 頻率以進行能量分配,確保設備在訓練時間內不會因電量耗盡而中斷訓練。
4)仿真結果表明,本文算法能在訓練時間內使用電池供電設備獲得較好的學習性能,與基準算法相比體現(xiàn)了本文算法的有效性。
本文所考慮的工業(yè)物聯(lián)網環(huán)境下的聯(lián)邦學習系統(tǒng)模型如圖1 所示,含有U個設備和一個服務器。設備與服務器間通過無線信道進行上下行通信。
圖1 工業(yè)物聯(lián)網環(huán)境下的聯(lián)邦學習系統(tǒng)模型
由于所有本地模型都是通過無線網絡傳輸?shù)?,因此在無線網絡上部署聯(lián)邦學習模型時需要考慮無線因素對聯(lián)邦學習性能的影響。下面,分別從發(fā)送時延、能量損耗、傳輸成功概率等方面構建無線模型。
1.1.1 發(fā)送時延
在所考慮的聯(lián)邦學習系統(tǒng)下,上行鏈路傳輸采用正交多址接入(OFDMA,orthogonal frequency division multiple access)技術,OFDMA 技術在未來6G 無線網絡仍具有重要參考價值[30-31]。假設上行鏈路中M個資源塊組成了資源塊集合?,設備i第t輪訓練將其本地聯(lián)邦學習模型參數(shù)通過資源塊n傳輸?shù)交荆渖闲墟溌匪俾蕿閇16-17]
其中,BUp為上行鏈路的單個資源塊帶寬,Pi,t為設備i第t輪的發(fā)送功率,In為信號在資源塊n上所受的干擾,N0為噪聲功率譜密度,hi為設備i到服務器的信道增益。
根據(jù)資源塊匹配方案,設備i第t輪訓練上行鏈路速率為
其中,ri,n,t∈{0,1},ri,n,t=1為設備i第t輪訓練使用資源塊n進行參數(shù)傳輸,ri,n,t=0則相反,不使用資源塊n進行參數(shù)傳輸。假設模型參數(shù)大小均為D,對應設備i第t輪訓練通過資源塊n的上行鏈路傳輸時延為
同樣地,設備i第t輪訓練傳輸時延為
由于在上行鏈路中設備分配資源塊傳輸,帶寬資源緊張,而下行鏈路使用廣播傳輸,帶寬資源壓力小,因此下行時延波動相對上行時延可忽略。定義cDown為下行鏈路速率,對應下行時延為
設備在本地使用其計算資源訓練本地模型。設備i第t輪訓練的計算時延為[17-19]
其中,εi、Ki和?i分別為設備i一個樣本數(shù)據(jù)的大小、設備樣本數(shù)量和處理每位數(shù)據(jù)所需CPU 周期數(shù),fi,t為設備i第t輪訓練時的CPU 頻率。
結合3 種時延,設備i第t輪訓練的時延為
聯(lián)邦學習每輪訓練時延取決于被選擇設備的最大時延,因此第t輪訓練的時延為
1.1.2 能量損耗
假設聚合服務器有充足供電,因此不考慮服務器上的能耗,僅關注設備能耗。設備能耗包括設備本地訓練以及無線傳輸能耗兩部分,因此設備i的能量損耗定義為[32]
1.1.3 傳輸成功概率
由于無線信道中存在干擾和噪聲,因此可能發(fā)生傳輸錯誤。文獻[33]中給出了準靜態(tài)衰落信道上的數(shù)據(jù)包傳輸系統(tǒng)的平均分組錯誤率的表達式,給定瀑布閾值m,定義設備i第t輪訓練在資源塊n的分組錯誤率為
假設上行鏈路一個本地模型使用一個分組數(shù)據(jù)包進行傳輸,且傳輸失敗不再重傳,因此設備i第t輪在資源塊n下傳輸本地模型的成功概率為
同時,設備i第t輪訓練傳輸本地模型的成功概率為。根據(jù)傳輸成功概率定義參數(shù)上傳是否成功的二元變量si,t為
其中,si,t=1代表上傳成功,si,t=0代表上傳失敗。
定義設備集合υ={1,2,…,U},設備i在本地收集的數(shù)據(jù)為Di=,i∈υ。設備i的樣本數(shù)量為Ki,設備訓練樣本數(shù)量和為
假設數(shù)據(jù)dik的輸出為oik,設備i的輸出向量為Oi={oi1,oi2,…,oi2},i∈υ,對應的本地聯(lián)邦學習模型為wi,通過無線信道發(fā)送給服務器。本地模型發(fā)送到服務器后將被整合成全局模型gt,發(fā)送回工業(yè)物聯(lián)網設備。因此考慮設備選擇和發(fā)送失敗的全局模型gt的更新表達式為
定義每個數(shù)據(jù)的損失函數(shù)為f(gt,d ik,oik),設備i的本地損失函數(shù)定義為本地數(shù)據(jù)損失的均值
而全部設備的整體損失函數(shù)為全部設備本地損失的均值,定義為
為簡便起見,后文中將設備i第t輪訓練的第k個數(shù)據(jù)的損失函數(shù)f(gt,dik,oik)簡寫為fi,k(gt)。
設備收到全局模型gt后,本地模型更新式為
其中,λ為學習率。進一步地,全局模型損失函數(shù)的更新式為
其中,vt為不考慮設備選擇與傳輸失敗時的理想全局梯度和實際全局梯度之差,定義為
其中,實際全局模型梯度 ?F'(gt)為
針對電量有限設備在固定訓練時間τ內獲得最大學習精度的優(yōu)化問題,由于學習精度最大可轉化為全局模型損失值最小,優(yōu)化目標可表示為
P1 表示在給定能耗預算下訓練時間內最小化全局損失函數(shù)。由于設備由電池供電,因此存在長期資源預算限制,如果設備能量耗盡將無法參與后續(xù)訓練。為求解P1,需要知道訓練時間內總訓練輪次W,而在訓練前難以確定[6,17],且P1 是一個非線性規(guī)劃問題,求解復雜度隨著輪次W的增大呈指數(shù)級增長[26]。此外,時延Ti,t和發(fā)送狀態(tài)si,t隨著迭代輪次索引t不同而不同,且由于聯(lián)邦學習的迭代性質,全局模型與過去所有輪次的訓練有關[24]。綜上,設備資源難以進行長時間優(yōu)化。因此本文把長期電量預算劃分為每輪可用電量預算,并將學習效率[28-29]作為每輪優(yōu)化目標,旨在加速聯(lián)邦學習訓練,快速最小化全局損失函數(shù)。
學習效率被定義為每輪全局損失衰減與時延之比,代表全局損失衰減率,即模型的學習速率。其中,第t輪全局損失衰減定義為第t–1 輪訓練全局模型gt?1損失值F(gt?1)與第t輪損失值F(gt)之差,可表示為
因此,根據(jù)學習效率的定義,第t輪訓練學習效率At可表示為
其中,Tt為第t輪訓練時延。
本文進行逐輪獨立迭代優(yōu)化,動態(tài)求解第t輪最大化學習效率At問題。結合訓練的約束條件,優(yōu)化問題P1 可轉化為
為量化無線傳輸對聯(lián)邦學習性能的影響,本文引入以下引理描述全局損失衰減有關傳輸成功率和設備調度的數(shù)學關系。
引理1在第t次訓練中預期全局損失衰減ΔFt的下限為
其中,L是平滑參數(shù),設置其為學習率的倒數(shù),即[34-36];B是強凸參數(shù);E(?)是關于發(fā)射成功率的期望。
證明見附錄1。
考慮多維聯(lián)合變量求解的復雜性,本文將問題P2解耦為設備資源分配子問題、通信資源分配子問題、電池能量分配子問題,并采用變量迭代的方式[18-19,23]進行求解,提高求解效率。首先,求解在已知能耗預算下的最優(yōu)CPU 頻率和發(fā)送功率,得到設備資源分配策略。其次,在已知的設備資源分配策略下求解通信資源分配策略。再次,根據(jù)通信資源分配策略估計下一輪設備電池能量分配策略。最后,進行多次迭代優(yōu)化直至訓練時間τ結束。
為求解優(yōu)化問題P2,要權衡每輪設備能耗預算下設備的傳輸能量和計算能量分配,本文中傳輸能量與發(fā)送功率相關,計算能量與CPU 頻率相關。給定通信資源分配矩陣Rt和能耗預算分配向量Et,優(yōu)化設備發(fā)送功率向量Pt和CPU 頻率向量ft以最大化學習效率At,上述問題為NP-hard 問題,難以獲得最優(yōu)解的閉式表達式,因此設計了一種近似求解算法,以逼近全局最優(yōu)分配策略。
首先,基于引理1 中傳輸成功率與全局損失衰減的數(shù)學關系可知,傳輸成功率對全局損失衰減的影響呈非線性關系,即傳輸成功率越大,全局損失衰減的變化越平緩。其次,基于傳輸成功率的定義式(11)可知,由于傳輸成功率與CPU 頻率無關,與發(fā)射成功概率的關系為負倒數(shù)的e 指數(shù)分布。在較理想信道條件下,傳輸成功概率在發(fā)送功率一般性取值范圍內變化不明顯。因此,在一般條件,發(fā)送功率變化所引起的全局損失衰減的變化不明顯,而CPU 頻率與全局損失衰減無關。同時,根據(jù)時延定義式(7)可知,設備時延與CPU 頻率和發(fā)送功率均相關,且計算時延與CPU 頻率倒數(shù)正相關。而基于式(23)可知,學習效率被定義為全局損失衰減與時延之比。
綜合上述原因,學習效率中時延Tt比全局損失衰減ΔFt對CPU 頻率和發(fā)送功率變化更敏感。為降低求解復雜度,將最大化學習效率問題轉換為求解最小化時延問題,以獲得發(fā)送功率向量近似解P*和CPU 頻率向量近似解f*。同時,原設備資源分配子問題近似為最小化時延問題后,由于設備之間沒有耦合關系,可將問題進一步解耦,降低求解難度,可使用多線程并行計算降低設備資源分配子問題的求解時間。具體地,設備資源分配問題P2.1 為
為求解問題P2.1,本文通過引入引理2 將原問題的求解退化為簡單的一元函數(shù)最值問題。
引理2給定當前輪次能耗預算,如果能耗預算不支持設備以最大發(fā)送功率和CPU 頻率運行,問題P2.1 最小化時延的設備發(fā)送功率和CPU 頻率在不等式約束(24f)取等號時獲得,即ei,t=Ei,t,因此發(fā)送功率Pi,t可由能耗預算Ei,t及CPU 頻率fi,t表示。
證明見附錄2。
基于引理2,本文使用粒子群優(yōu)化算法計算一元函數(shù)最小值問題,以求解在第t輪能耗預算下所有設備和資源塊組合的設備資源分配策略的近似解,即CPU 頻率向量近似解和發(fā)送功率向量近似解。粒子群優(yōu)化算法相比于其他一些群智能算法更擅長處理連續(xù)變化的變量,且具有良好的全局搜索能力,其固有的并行性可以方便地進行分布式計算,加快求解速度[37],可使用現(xiàn)成的智能優(yōu)化算法庫(例如scikit-opt)求解。粒子群優(yōu)化算法復雜度為O(pq),其中,p為迭代次數(shù),q為問題規(guī)模。設備資源分配算法的時間復雜度為O(UMpq),其中,U為設備數(shù)目,M為資源塊數(shù)目,由于不同設備在不同資源塊下的訓練時延是不耦合的,因此可以分解為多線程并行計算。
已知能耗預算和設備資源分配策略時,通信資源分配問題 P2.2 為
2.2.1 問題分析
將引理1 所述預期全局損失衰減下限代入式(23),可得學習效率At的下限為
聯(lián)立式(30)與問題P2.2,則問題P2.2 更新為
由于電池能量限制,所有設備每輪均進行本地訓練會對電池壽命造成巨大壓力,因此每輪訓練無法獲得所有設備梯度范數(shù),設備當前輪次的通信資源分配只能結合之前輪次訓練數(shù)據(jù)來完成,因而式(31)中的參數(shù)B在每輪訓練前未知。
本文基于歷史數(shù)值對參數(shù)B進行估計。首先,初始化B=1,即設備數(shù)據(jù)之間沒有差異。第t輪訓練可用全局模型和本地模型梯度范數(shù)計算Bt,定義。第t輪訓練中參數(shù)B使用指數(shù)平滑法估計為
其中,α是一個調整參數(shù),用于調整估計值中的最近值和過去值的權重。
2.2.2 資源塊迭代匹配算法
對于問題P3 的求解,本文提出一種資源塊迭代匹配算法,首先在全部設備資源塊組合下求解問題P2.1,根據(jù)獲得的設備資源分配策略,使用窮舉法列舉所有可能的訓練時延,然后采用Kuhn-Munkres 算法[38](以下簡稱為KM 算法)遍歷求解每種訓練時延下的最優(yōu)通信資源分配策略,即設備每輪資源塊匹配向量,直至可選設備數(shù)u少于資源塊數(shù)目M,最后比較獲得所有可能訓練時延下最大化學習效率的最優(yōu)解。
KM 算法是一種帶權重的二分圖匹配算法,根據(jù)式(31),設置設備和資源塊二分圖C=(υΩ,ε)每條邊權重為
其中,Tmax為訓練時延限制。根據(jù)二分圖權重,可選設備數(shù)目為
其中,R(·)為0-1 指示函數(shù)。
上述過程的具體步驟如算法 1 所示。
KM 算法的時間復雜度為O(U2M)[39],因此本文所提出的資源塊迭代匹配算法時間復雜度為O(U3M2),其中,U為設備數(shù)目,M為資源塊數(shù)目,從表達式中可以看到,計算復雜度與關鍵變量(即U和M)之間不是呈指數(shù)增長關系的。此外,通信資源分配是在服務器端進行的,網絡算力足夠,并且不同時延限制下的資源塊匹配方案可以分解為多線程并行計算任務[40]。
由于長期的能耗預算限制,若設備在某輪能耗過高,則該設備未來可能無法參與聚合,因此為延長電池壽命,本文對電池能量進行分配管理。
同時,為充分利用設備能量,本文對每輪調度設備進行篩選。如果僅依據(jù)每輪學習效率進行通信資源分配,易造成某些數(shù)據(jù)量較少的設備長時間不參與聚合而無法充分利用設備能量。本文設置每輪未聚合設備的分配能量可積累使用,當設備電池能量較少時,可將上一輪時延最大設備從該輪可選設備中去除,由于未聚合設備能量可積累,后續(xù)訓練中該設備將不再成為時延瓶頸,因此長期看有利于降低訓練時延,提高學習效率。
綜上所述,本文設計了一種在線電池能量分配策略。首先,動態(tài)估計訓練輪次,并結合歷史累計能量,為設備在線分配能耗預算。然后,通過上一輪設備時延獲得候選設備集合,根據(jù)候選設備集合進行通信資源分配。最后,在給定通信資源分配策略下,調整CPU 頻率以節(jié)約能耗。該策略具體描述如下。
首先,根據(jù)剩余訓練時間以及單輪訓練時延來估計剩余訓練輪次。第t輪訓練后,初始剩余訓練輪次估計為
其中,Tt為算法1 輸出的第t輪訓練時延,Tsum為已訓練時間。
為使不同輪次估計的剩余訓練輪次保持相對穩(wěn)定,本文結合歷史值估計最終剩余訓練輪次為
其中,β是平滑常數(shù),表征了數(shù)值新鮮度的重要性,用于調整估計值中的最近值和過去值的權重。
根據(jù)剩余訓練輪次估計值以及歷史積累能量,可得設備i第t輪訓練能耗預算為
其次,為充分利用設備能量,根據(jù)時延篩選每輪調度設備獲得候選設備集合,進行通信資源分配。第t輪訓練時,本文放棄選擇第t–1 輪時延Ti,t?1最大的前N個設備,將剩余設備組成第t輪候選設備集合Πt,僅為集合Πt中設備分配通信資源塊。其中,放棄設備數(shù)目N根據(jù)學習效率增大或減小的反饋情況進行在線調整。
第t輪訓練時,不同放棄設備數(shù)目N下的學習效率均值為
其中,lN,t′為0-1 變量,lN,t′=1 表示第t′輪訓練放棄數(shù)目為N,反之為lN,t′=0。
為獲得合適的候選數(shù)據(jù)集,需動態(tài)調整放棄設備數(shù)目N。當電池能量不足時,即不支持設備以最大發(fā)送功率和CPU 頻率訓練,需要進行設備篩選操作。初始設置放棄設備數(shù)目N=1,每經過R輪訓練后,根據(jù)學習效率變化動態(tài)調整放棄設備數(shù)目N。給定放棄設備數(shù)目N的跳變閾值?,當學習效率均值增大量或減少量超過閾值?時,放棄設備數(shù)目N對應增減。經過一段時間學習后,放棄設備數(shù)目N將趨于穩(wěn)定或者動態(tài)穩(wěn)定。
最后,調整CPU 頻率以節(jié)約能耗?;谒惴?求解第t輪訓練通信資源塊匹配向量及訓練時延Tt,為將第t輪訓練中參與聚合的設備時延對齊至訓練時間Tt,以消除設備空閑時間降低能耗,根據(jù)式(6),設備i的CPU 頻率調整為
上述過程的具體步驟如算法2 所示。
電池能量分配主要涉及能耗預算計算、可選設備集合獲取以及CPU 頻率調整等,每輪訓練時間復雜度為O(U)。
為驗證所提算法性能,本節(jié)在電池供電工業(yè)物聯(lián)網的工廠場景下對不同聯(lián)邦學習算法進行仿真對比分析。
以圖1 為例,考慮一個100 m×100 m 的工廠環(huán)境,該場景中分布多個工業(yè)設備,工廠中心有一個服務器進行模型聚合。設備數(shù)目U=15,資源塊數(shù)目M=10,不同資源塊受到的干擾不同,其他仿真參數(shù)設置如表1 所示。使用MNIST 數(shù)據(jù)集,將訓練數(shù)據(jù)以獨立同分布(IID,independent and identically distributed)方式劃分為每份樣本大小為100 個數(shù)字的切片數(shù)據(jù)集,不同設備隨機分配不同數(shù)量切片。每個設備使用所劃分的MNIST 數(shù)據(jù)集訓練一個簡單本地的三層網絡,分別為一個由512 個神經元組成的隱藏層、一個由128 個神經元組成的隱藏層以及一個輸出層,隱藏層使用ReLU 作為激活函數(shù),每經過一輪本地訓練進行一次全局聚合,損失函數(shù)采用交叉熵函數(shù)[34]。
表1 仿真參數(shù)設置
為了驗證本文所提算法的效果,將本文算法與以下基準算法進行仿真對比。
1)隨機調度算法[41]。在每一輪通信中,統(tǒng)一隨機選擇M個設備進行參數(shù)更新,每個選定的設備隨機分配一個資源塊來傳輸訓練好的參數(shù)。設置設備使用最大功率和CPU 頻率訓練,能量耗盡時設備停止訓練。
2)最大收斂精度算法[34]。文獻[34]推導了預期收斂速度 E(F(gt+1)?F(g*))的閉式表達式,其中g*為在沒有因無線干擾而造成參數(shù)發(fā)送錯誤的理想設置中基于所有本地模型生成的最佳聯(lián)邦學習模型,基于最大化收斂精度為目標求解設備選擇和資源塊匹配方案。該方案需要選擇設備有足夠的能量在整個聯(lián)邦學習迭代過程中傳輸和更新本地模型。設置設備使用最大功率和CPU 頻率訓練,能量耗盡時設備停止訓練。
3)最小收斂時間算法[42]。文獻[42]以最小化訓練時延為優(yōu)化目標,在每輪訓練中基于本地模型梯度大小選擇M個設備,對給定設備求解最小化時延的資源塊匹配方案。本文方案不考慮能量限制,設置設備使用最大功率和CPU 頻率訓練,能量耗盡時設備停止訓練。
本文設置總訓練時間為50 s,從大到小依次設置設備電池的能耗預算[6,16,43]分別為50 J、3 J、2 J、1 J,其中50 J 代表電池電量充足,可支持所有設備始終以最大CPU 頻率和最大發(fā)送功率進行訓練。
圖2 為50 J 電量下所提算法與基準算法性能對比。當電池能量充足時,所提算法與基準算法均能以最大CPU 頻率和最大發(fā)送功率持續(xù)運行。從圖2可以看出,所提算法收斂速度快于其他3 種基準算法,訓練時間足夠長時,所提算法與最大收斂精度算法所獲精度接近。由于所提算法以學習效率為優(yōu)化目標,旨在提高訓練速度,因此電池能量充足時,所提算法可以最快速度收斂到最高精度,在訓練時間較小的場景下優(yōu)勢較明顯。
圖2 50 J 電量下所提算法與基準算法性能對比
圖3~圖5 分別為3 J、2 J、1 J 電池電量下所提算法與基準算法的性能對比。可以看出,所提算法在前期學習速度較慢,后期逐漸超過其他基準算法,最后收斂到最高精度。這是由于設置電池電量不能支持設備持續(xù)以最大CPU 頻率和最大發(fā)送功率運行,3 種基準算法中設備初期以最大CPU頻率和最大發(fā)送功率運行所以學習速度大,然而由于沒有進行能量管理,后期設備電池能量提前耗盡而中斷學習。與之相反,所提算法初期學習速度較慢,但由于對設備進行能量管理,設備能夠持續(xù)訓練,在訓練時間結束時達到最大學習精度。比較圖3~圖5 則可以看出,電池能量越低,所提算法的性能優(yōu)勢更顯著。電池能量越低,3 種基準算法中斷學習越早,而所提算法由于進行能源管理電池能量對最終學習精度影響較小。
圖3 3 J 電量下所提算法與基準算法性能對比
圖4 2 J 電量下所提算法與基準算法性能對比
圖5 1 J 電量下所提算法與基準算法性能對比
為進一步分析本文算法在不同電池能量預算下的性能,本文分析給定訓練時間和能耗預算下不同算法的訓練輪次和參與數(shù)據(jù)數(shù)目,即成功上傳的本地模型所涉及數(shù)字樣本總數(shù)。如圖6 所示,所提算法的訓練輪次在電池能量預算減少時對比3 個基準算法相對增加,因此所提算法可以提高設備存活期限。從圖7 可以看出,在不同電池能量預算下,所提算法成功參與的樣本數(shù)據(jù)數(shù)目均高于3 個基準算法,體現(xiàn)出所提算法在訓練量上的提升?;谏鲜鲈u估指標,由仿真結果可知,所提算法可以很好適應各種電池能量預算,尤其在電池能量預算較低時性能優(yōu)勢明顯。
圖6 不同算法的訓練輪次對比
圖7 不同能耗預算下算法參與數(shù)據(jù)數(shù)目對比
本文針對工業(yè)物聯(lián)網下聯(lián)邦學習網絡電池能量和無線資源有限的問題,提出一種資源管理算法,有效提高固定訓練時間下聯(lián)邦學習的模型精度。將長期優(yōu)化問題轉化為動態(tài)優(yōu)化問題,構建在線能量分配策略,權衡設備的傳輸和計算能量分配,引入學習效率概念,得到能耗預算下學習效率最大化的資源塊匹配向量,并調整CPU 頻率以節(jié)約能量。仿真結果表明,與基準算法相比,所提算法能提高模型學習精度,并且在能量短缺情況下學習性能優(yōu)勢顯著。
附錄1 引理1 的證明
對于聯(lián)邦學習算法的理論分析,本文在分析中采用以下典型假設。
假設1假設F(g)滿足L-平滑[21,23]
假設2假設IID 數(shù)據(jù)分布下局部梯度間不相似程度有界,局部梯度范數(shù)與全局梯度范數(shù)滿足B-梯度不相似[13,44],局部梯度與全局梯度的不相似關系為
根據(jù)假設1 可得預期全局損失衰減滿足
進一步聯(lián)立式(18)和式(29),可得
根據(jù)式(19)和式(20),可得全局梯度與實際全局梯度之差的范數(shù)平方的均值為
其中,第t輪訓練設備i是否被選中的0-1 變量ai,t以及是否發(fā)送成功的0-1 變量si,t由資源塊匹配向量決定。
進一步地,將假設2 代入式(48),整理可得
聯(lián)立式(45)和式(51),可得預期全局損失衰減下限為
證畢。
附錄2 引理2 的證明
基于時延定義式(7)可知,隨著設備發(fā)送功率或CPU 頻率增大,時延單調遞減。
為了證明引理2,只需證明能耗定義式(9)是關于發(fā)送功率以及CPU 頻率的單調遞增函數(shù)即可。
由于計算能耗部分與CPU 頻率的平方成正比,因此能耗定義式(9)是關于CPU 頻率的單調遞增函數(shù)。而能耗關于發(fā)送功率的一階導數(shù)為
由于x>0時,且f(0)=0,因此x>0時f(x)恒正,進一步地,能耗關于發(fā)送功率的一階導數(shù)在發(fā)送功率Pi,t>0時恒正,即能耗關于發(fā)送功率Pi,t單調遞增。證畢。