Client Selection for Federated Learning with Heterogeneous Resources in Mobile Edge

Client Selection for Federated Learning with Heterogeneous Resources in Mobile Edge

摘要

我們設想了一個用於機器學習(ML)技術的移動邊緣計算(MEC)框架,它利用分佈式客戶端數據和計算資源來訓練高性能ML模型,同時保留客戶端隱私。爲了實現這一未來目標,本文旨在擴展聯邦學習(FL)這個分散學習框架,使模型的隱私保護訓練能夠在實際的蜂窩網絡中與異構客戶端協同工作。FL協議迭代地要求隨機客戶端從服務器下載一個可訓練的模型,用自己的數據更新它,並將更新的模型上傳到服務器,同時要求服務器聚合多個客戶端更新以進一步改進模型。雖然此協議中的客戶端不必公開自己的私有數據,但當某些客戶端的計算資源有限(即需要更長的更新時間)或在較差的無線信道條件(更長的上傳時間)下時,整個訓練過程可能會變得效率低下。我們的新的FL協議(我們稱之爲FedCS)緩解了這個問題,並有效地執行FL,同時根據客戶的資源條件積極地管理客戶。具體來說,FedCS解決了具有資源約束的客戶端選擇問題,它允許服務器聚合儘可能多的客戶端更新,並加速ML模型中的性能改進。我們使用公開的大規模圖像數據集進行了一項實驗評估,以訓練用於MEC環境模擬的深層神經網絡。實驗結果表明,與原FL協議相比,FedCS能夠在較短的時間內完成其訓練過程。

  1. INTRODUCTION

各種現代人工智能產品都採用了尖端機器學習(ML)技術,從安裝在智能手機上的人臉檢測和語言翻譯,到亞馬遜Alexa和谷歌主頁等虛擬助手中使用的語音識別和語音合成。因此,開發這樣的人工智能產品通常需要大規模的數據,而這些數據對於訓練諸如深層神經網絡之類的高性能ML模型是必不可少的。可以說,大量的物聯網設備、智能手機和帶有高分辨率傳感器的自主車輛(所有這些設備都連接到高速網絡)可以在不久的將來作爲有希望的數據收集基礎設施(例如[1])。近十年來,通信和移動計算領域的研究人員開始與數據科學界進行互動,並提出了可用於大規模數據收集和處理的移動邊緣計算(MEC)框架[2]。

通常,MEC框架假設所有數據資源都通過蜂窩網絡從數據收集客戶端(物聯網設備、智能手機和連接車輛)傳輸到計算基礎設施(高性能服務器)以執行其任務[3]、[4]。但是,當收集私人活動數據(例如生活日誌視頻,電子郵件通信的歷史記錄和記錄的電話呼叫)時,這種假設並不總是可以接受的。一方面,這些私人活動數據將是提高支持我們日常生活的人工智能產品質量的關鍵因素,這些產品不僅包括智能手機和虛擬助理上的人工智能相關應用,還包括人工智能驅動的智能城市。另一方面,將這些數據直接上傳到計算基礎設施是有問題的,因爲這些數據可能被網絡中的惡意用戶竊聽,從而損害客戶的隱私。

爲了解決這個基本的隱私問題,ML社區最近提出了一項工作:聯邦學習(FL)[5]。如圖1所示,FL迭代地要求隨機客戶端1)從某個服務器下載可訓練模型的參數,2)用自己的數據更新模型,3)將新模型參數上傳到服務器,同時要求服務器4)聚合多個客戶端更新以進一步改進模型。作爲要求數據收集客戶端安裝一定級別的計算資源(例如,配備合理gpu的筆記本電腦、具有中等計算能力的自主車輛[1])的交換,FL協議允許客戶端在其本地存儲中保持其數據的安全。

在這項工作中,我們着重於在實際的MEC框架中實現上述FL協議。我們相信,我們的工作將影響未來各種人工智能產品的開發平臺,這些產品需要大量的私人活動數據來訓練ML模型。特別地,我們考慮在具有不同數據資源、計算能力和無線信道條件的異構移動設備使用的蜂窩網絡中運行FL的問題。不幸的是,不考慮此類異構客戶端屬性而直接應用現有FL協議將使整個訓練過程效率低下。例如,當一些客戶端的計算資源有限時,他們將需要更長的時間來更新模型。此外,如果客戶端處於較差的無線信道條件下,則會導致較長的更新時間。所有這些問題都將延遲後續服務器繼續訓練過程所需的聚合步驟。

我們的主要貢獻是一個新的協議,稱爲FedCS,它可以有效地運行FL,同時MEC框架的一個操作員積極地管理異構客戶端的資源。具體來說,FedCS爲客戶端在FL協議中下載、更新和上傳ML模型設置了一定的截止日期。然後,MEC操作員選擇客戶端,使得服務器能夠在有限的時間內聚合儘可能多的客戶端更新,這使得整個訓練過程高效,並且減少了訓練ML模型所需的時間。這在技術上是由一個客戶選擇問題來描述的,該問題確定哪些客戶參與了訓練過程,以及每個客戶何時必須完成訓練過程,同時考慮到客戶施加的計算和通信資源限制,我們可以貪婪地解決這一問題。

在模擬的MEC環境中,使用公開的大規模圖像數據集生成客戶端數據,我們通過對用於目標分類的深層神經網絡的實際大規模訓練來評估我們的方法。實驗結果表明,與原FL協議相比,FedCS能夠在較短的時間內完成訓練過程。

Related Work

MEC框架的資源優化是通信和移動計算領域的共同課題之一。最近的工作包括異構數據、計算和通信資源的聯合優化[6]、[7]、[8]。然而,這些方法是爲了最小化一般計算任務的計算時間和/或能量消耗而設計的,這與我們旨在最大化ML模型訓練效率的工作有很大不同。此外,如前所述,我們的工作假設不同的場景,其中每個移動客戶端都有數據和計算資源,以在執行ML任務時保護客戶端數據隱私。這些差異促使我們提出新的定製MEC協議和算法。

聯邦學習是ML社區中的一種新興技術。繼開創性的工作[5]之後,最近的研究特別關注如何增強FL協議的安全性[9],[10]。然而,很少有人研究如何在實際的網絡配置下高效地運行FL。一個例外是[11],它在犧牲模型性能的同時探索了模型壓縮技術以實現高效通信。另一個是[12],它優化了資源受限MEC環境中FL的超參數(即每個更新階段的epoch數和總epoch數)。然而,這些技術並沒有特別考慮客戶端的異構計算、通信和/或數據資源。額外使用模型壓縮技術可以幫助我們提高協議的整體效率,但這超出了本研究的範圍。

2.FEDERATED LEARNING

在這一節中,我們簡要介紹了[5]中提出的最初的FL框架。然後,在資源受限的蜂窩網絡中,我們識別出當由異構客戶端執行FL通信時影響FL通信的問題。

A.Federated Learning

考慮這樣一個場景:大量移動客戶端單獨擁有他們希望保密的數據,例如帶有個人照片集合的筆記本電腦和帶有攝像頭捕獲的城市景觀圖像的自動車輛。如果所有這些分佈式數據都是可訪問的,那麼就可以獲得一個高性能的ML模型,該模型已經在一個非常大的數據集合上進行了訓練。然而,由於隱私問題,客戶不希望披露他們的數據。

聯邦學習[5]是一種分佈式學習協議,旨在解決上述問題。如協議1所示,FL要求某個服務器和 K×C 個隨機客戶端(其中K是所有客戶端的數量,C是每輪考慮的客戶端的分數,· 是上限函數)傳遞他們要訓練的全局模型的參數(分發、更新和上傳步驟)。協議要求所選客戶端使用其數據計算模型的更新(更新和上傳步驟),同時要求服務器從客戶端聚合多個更新以使模型更好(聚合步驟)。此協議的優點是客戶端不必上傳私有數據;相反,它們將數據安全地保存在本地存儲中。唯一的技術要求是,每個客戶端必須有一定的計算資源,因爲更新和上傳包括模型的前向傳播和後向傳播的多次迭代(即,我們專門關注以有監督的方式訓練深層神經網絡;更多細節見[5])。

B.Heterogeneous Client Problem in FL

在實際的蜂窩網絡中,協議1在訓練ML模型時會遇到一些主要問題,這主要是由於沒有考慮每個客戶端的異構數據大小、計算能力和信道條件。例如,如果一個客戶端具有比其他客戶端更多的數據,則該客戶端將需要更長的時間來更新模型,除非它具有更好的計算資源。這將延遲後續用於上傳新模型參數的通信。此外,如果客戶端處於非常糟糕的通道條件下,則上傳時間將更長。

所有這些關於異構客戶端資源的問題都將成爲FL訓練過程中的瓶頸;服務器只有在接收到所有客戶端更新後才能完成聚合步驟。可以爲隨機客戶端設置完成更新和上傳步驟的截止日期,並忽略在截止日期之後提交的任何更新。然而,這種直接的方法將導致網絡帶寬的低效使用,並浪費延遲客戶端的資源。

3.FE DCS: FEDERATED LEARNING WITH CLIENT SELECTION

我們提出了一種新的FL協議FedCS,它能有效地處理具有異構資源的客戶端。在下面的章節中,我們首先總結了我們提案的幾個假設,然後更詳細地介紹了聯邦存款信用證。

A.Assumptions

圖1所示,我們認爲在FL協議中,由服務器和基站(BS)組成的位於無線網絡中的特定MEC平臺管理服務器和客戶端的行爲。在這項工作中,我們將特別關注在無線網絡穩定且不擁擠時(如午夜或清晨)利用無線網絡,這主要是因爲要訓練和通信的ML模型通常很大。然而,每個過程都必須在特定的有限帶寬下執行,特別是當有多個ML任務要通過FL執行時;LTE[13]中定義的可用於每個進程的最小帶寬資源單元由MEC運營商限制和管理。此外,如果多個客戶端同時上傳模型參數,則每個客戶端的吞吐量相應降低。

我們假設每個客戶端的無線通信的調製和編碼方案在考慮其信道狀態的同時被適當地確定,因此分組丟失率可以忽略不計。這導致每個客戶端上傳模型參數的吞吐量不同,儘管分配的RBs數量是恆定的。假設BS用於廣播和多播傳輸的吞吐量受到具有最壞信道條件的客戶端的吞吐量的限制。然而,我們也假設每個客戶端的信道狀態和吞吐量是穩定的,如上所述。

B.FedCS Protocol

我們在協議2中給出了FedCS(關於如何按順序執行每個步驟,也請參見圖2中的圖)。我們的協議的核心思想是,在協議1的原始客戶端選擇步驟中,我們沒有選擇隨機客戶端,而是提出了以下兩步客戶端選擇方案。首先,新的“資源請求”步驟要求隨機客戶端將其資源信息(例如無線信道狀態,計算能力(例如,他們是否可以備用CPU或GPU來更新模型)以及與之相關的數據資源的大小)通知MEC運營商。 當前的訓練任務(例如,如果服務器要訓練“ dog-vs-cat”分類器,則包含狗或貓的圖像數)。然後,操作員在隨後的客戶端選擇步驟中參考該信息,以估計分發和計劃的更新和上傳步驟所需的時間,並確定哪些客戶端進入這些步驟(稍後將解釋用於計劃客戶端的特定算法)。在分發步驟中,通過BS的多播將全局模型分發給所選客戶端,因爲它對於將相同的內容(即全局模型)發送到客戶端總體是有效的帶寬。在計劃的更新和上傳步驟中,選定的客戶端並行更新模型,並使用MEC操作員分配的RBs將新參數上傳到服務器。服務器根據協議1聚合客戶端更新,並使用某些驗證數據測量模型性能。在模型達到某一期望性能(例如,分類精度爲90%)或最終截止日期到來之前,除了初始化之外的所有步驟都將重複多輪。

  1. Algorithm for Client Selection Step

我們在客戶端選擇步驟中的目標是允許服務器在指定的截止日期內聚合儘可能多的客戶端更新。這一標準基於[5]的結果,即每輪使用的客戶端中有較大一部分節省了全局模型實現所需性能所需的時間。根據該標準,MEC操作員選擇能夠在最後期限內完成分發和預定的更新和上傳步驟的客戶。同時,當用於模型上傳的RBs被分配給所選客戶端時,運營商調度以防止蜂窩網絡可能施加的有限帶寬中的擁塞。請注意,爲了簡單起見,我們假設所選客戶端逐個啓動並完成其上傳過程。儘管如此,即使多個客戶端可以通過共享RBs並行上傳,傳輸所有模型所需的時間與順序上傳所需的時間相同。

形式上,令 = {1,…,K}是描述K個客戶端的一組索引,而 是在資源請求步驟中隨機選擇的 的子集(即| | = K×C )。 ,其中ki∈ ,| |≤| |,表示在Client Selection中選擇的客戶端的一系列指標,我們旨在對其進行優化。在更新和上傳步驟中,客戶端按 的順序依次上傳其模型。設 爲非負實數集,Tround∈ 爲每輪的截止時間,Tfinal∈ 爲最後的截止時間,Tcs∈ 和Tagg∈ 分別爲客戶端選擇和聚合步驟所需的時間。 表示分發所需的時間;它取決於選定的客戶端 分別表示第i個客戶端更新和上傳模型所花費的時間。可以根據在資源請求步驟中通知的資源信息來確定這些客戶端參數。

現在,Client Selection的目標,即接受盡可能多的客戶端更新,可以通過最大化所選客戶端的數量來實現,即maxS | |。爲了描述約束,我們定義了從Scheduled Update和Upload步驟開始到第ki個客戶端完成更新和上傳過程的估計運行時間,如下所示:

當客戶一個一個地上傳他們的模型更新時, 是所有必需的上傳時間 的累加。相反,可以在先前的客戶端處於上傳步驟時執行模型更新。 因此,單個更新時間 只要在先前經過的時間Θj-1之內,就不會消耗

綜上所述,Client Selection是由以下關於 的最大化問題制定的:

優化策略:解決最大化問題(4)是非常重要的,因爲它需要一個複雜的組合優化,其中 中元素的順序影響 。爲此,我們提出了一種基於貪婪算法的揹包約束最大化問題的啓發式算法[14]。如算法3所示,我們迭代地將模型上傳和更新所用時間最少的客戶端(步驟3、4和9)添加到 ,直到經過的時間t達到deadline Tround(步驟5、6、7和8)。算法的階數是O(| || |),這比單純的暴力搜索O( !)要少得多。

Tround的選擇:算法3的重要參數是Tround。如果我們將Tround的值設置很大,我們希望每一輪都有更多的客戶參與(即,更大的 集)。但是,這同時減少了更新聚合的可能數量,直到最後期限結束。我們的實驗評估顯示不同的Tround選擇如何影響訓練模型的最終性能。

4.PERFORMANCE EVALUATION

作爲演示我們的協議如何有效工作的概念驗證場景,我們模擬了一個MEC環境,並使用可公開的大規模數據集對實際的ML任務進行了實驗。

A.Simulated Environment

我們模擬了一個MEC環境,該環境是在一個城市微小區的蜂窩網絡上實現的,由一個邊緣服務器、一個BS和K=1000個客戶端組成,在一個帶有GPUs的工作站上。基站和服務器位於小區中心,半徑爲2km,客戶端在小區內均勻分佈。

無線通信基於LTE網絡建模,其著名的城市信道模型在ITU-R M.2135-1六邊形小區佈局的微型NLOS模型中定義[15]。載波頻率爲2.5 GHz,BS和客戶端的天線高度分別設置爲11 m和1m。爲了簡單起見,BS和客戶端的傳輸功率和天線增益分別假設爲20dBm和0dBi。作爲一個實際的帶寬限制,我們假設在0.5ms的每個時隙中爲一個客戶端分配10個RBs,相當於1.8MHZ的帶寬。我們採用了基於Shannon容量的吞吐量模型,在[16]中使用了一定的損耗,其中 =1.6,ρmax=4.8。在此設置下,客戶端 的平均和最大吞吐量分別爲1.4mbit/s和8.6mbit/s,這是LTE網絡中的實際值。我們將從上述模型獲得的吞吐量作爲每個客戶端的平均吞吐量,並在客戶端選擇中使用吞吐量來計算 。如第III-A節所述,假設所有的FL處理在網絡狀態穩定期間執行,並且客戶端設備可能在午夜或清晨未使用和靜止。這使我們認爲平均吞吐量是穩定的。然而,考慮到在實際中可能發生的定時更新和上傳時短期吞吐量的微小變化,每次客戶端上傳模型時,我們都使用平均吞吐量及其r%值分別給出的平均值和標準偏差從高斯分佈中採樣吞吐量。

上述假設爲算法3中使用的幾個參數提供了具體設置。設Dm爲全局模型的數據大小。然後,將模型上傳所需的時間計算爲 ,模型發佈所需的時間簡單地建模爲 。此外,我們假設服務器的計算能力足夠高,可以忽略Client Selection和Aggregation所花費的時間;因此,Tcs=0和Tagg=0。

B.Experimental Setup of ML Tasks

在上述模擬的MEC環境下,我們採用了兩種基於可公開的大規模圖像數據集的真實目標分類任務。一個是CIFAR-10,它是一個經典的目標分類數據集,由50000個訓練圖像和10000個測試圖像組成,包含10個對象類。這個數據集在FL研究中常用[5],[11]。另一個是Fashion-MNIST[17],它包含了60000張訓練圖片和10000張10種不同時尚產品的測試圖片,如T恤和包包。這個數據集將提供一個更有利但更敏感的設置,因爲自動識別時尚產品的能力對於電子商務等各種應用程序都很有用,但人們感興趣的產品是高度私有的信息。圖3顯示了數據集中的示例圖像。

對於這兩個任務,將訓練數據集分發給K=1000個客戶端,如下所示:首先,我們隨機確定每個客戶端擁有的圖像數據的數量,範圍爲100到1000。然後,按照[18]中使用的實驗設置,我們通過兩種方式將訓練數據集劃分爲客戶端:IID設置,其中每個客戶端僅從整個訓練數據集中隨機採樣指定數量的圖像;以及非IID設置,其中 每個客戶都從訓練數據的不同子集(隨機選擇的10個類別中的2個)中隨機抽取圖像,代表了更具挑戰性但更現實的設置。在每一輪FL協議中,我們基於[5]設置C=0.1,以選擇最大K×C=100個客戶端。最後,測試數據集僅用於測量分類性能。

C.Global Models and Their Updates

我們實現了一個標準的卷積神經網絡作爲兩個任務的全局模型。具體地說,我們的模型由6個3×3卷積層(32、32、64、64、128、128通道,每個通道都被ReLU激活和批量規範化,每個通道後面跟着2×2 max池)和3個完全連接層(382和192個單元被ReLU激活,另外10個單元被soft max激活)。這導致CIFAR-10大約460萬個模型參數(32位浮點中的Dm=18.3兆字節)和Fashion-MNIST大約360萬個參數(32位浮點中的Dm=14.4兆字節)。更深層的模型,如剩餘網絡[19]將提供更高的分類性能。然而,這些模型並不是我們實驗的重點。

在更新全局模型時,我們根據[5]選擇了以下超參數:50表示最小批量,5表示每輪的時間段數,0.25表示隨機梯度下降更新的初始學習率,0.99表示學習率衰減。每個客戶端的計算能力簡單地由它在一秒鐘內可以處理多少數據樣本來更新一個全局模型來建模,這個全局模型可能由於客戶端上的其他計算負載而波動。我們隨機確定了每個客戶的平均能力,範圍爲10到100,這是用於客戶選擇的值。因此,客戶端選擇中使用的每次更新時間 平均從5秒到500秒不等。在定時更新和上傳中,計算能力由高斯分佈決定,標準差由平均能力值的r%給出,如我們的吞吐量模型。我們認爲這個範圍是合理的,因爲我們的工作站只需5秒就可以用一個GPU進行一次更新;計算資源較弱的移動設備可能需要10到100倍的更新時間。最後,我們根據經驗將Tround設置爲3分鐘,Tfinal設置爲400分鐘。

D.Evaluation Details

我們比較了FedCS和FL協議[5],該協議稍加修改,以限制每輪的截止期限Tround。我們把這個協議稱爲FedLim。在此基線中,由MEC操作員隨機選擇的客戶端更新模型,並按順序將其新參數上傳到服務器,直到最後期限。在截止日期之後完成的更新只是被丟棄而不是聚合。FEDC和FedLim根據以下指標進行評估:

•達到所需精度的時間(ToA@x):我們觀察到測試數據集的精度隨時間的變化,並在精度首次達到某一水平時進行識別(即越早越好)。具體來說,我們報告CIFAR-10的[email protected](即50%準確度)和[email protected],以及具有IID設置的fashion-MNIST的[email protected][email protected],以及具有非IID設置的fashion-MNIST的[email protected][email protected][email protected][email protected]

•最終截止日期後的準確度(準確度)):我們還測量了最終截止日期後的測試數據集的準確度(Tfinal=開始後360分鐘)。

E.Results

IID設置:IID設置的主要結果如表一所示。我們每種方法運行十次,計算平均ToA和準確度得分。總體而言,就ToA而言,FEDCS在CIFAR-10和Fashion-MNIST任務方面均優於FedLim。具體來說,在CIFAR-10上,FedCS比FedLim平均提前76.5分鐘達到75%的準確度,在Tround=3和r=0時,在Fashion-MNIST上平均提前33.3分鐘達到85%的準確度。我們還發現,在最後期限(表中的“準確性”列)之後,FedCS的分類準確度比FedLim更高,尤其是在CIFAR-10上。這些結果表明,在訓練進度方面,FedCS比FedLim的效率有所提高。改進的一個原因是,FedCS能夠在每輪訓練中納入更多的客戶:每個FedCS有7.7個客戶,而FedLim只有3.3個客戶,平均當Tround=3時。請注意,CIFAR-10[20]的當前最新精度爲0.9769,Fashion-MNIST2的當前精度爲0.967。然而,我們選擇的模型架構足以說明我們的新協議如何在資源受限的環境下進行有效的訓練,而不是達到最佳的精度。原始的FL[5]在沒有截止日期限制的情況下,CIFAR-10和Fashion-MNIST的準確度分別達到了0.80和0.92,兩者都與FedCS的最終性能相當。我們還證實了由r參數化的吞吐量和計算能力的不確定性對FedCS的性能影響不大。

Tround的影響:爲了更深入地瞭解我們的方法是如何工作的,我們調查了ToA和FedCS在保持Tfinal固定的同時,針對不同的截止日期Tround值對Fashion-MNIST的分類精度的變化,如表1和圖4所示。我們注意到,必須選擇既不太長也不太短的Trounds。雖然FedCS的較長期限(如10分鐘)在每一輪中涉及許多客戶,但由於聚合步驟較少,它們的表現極爲有限。相反,較短的期限(例如1分鐘)限制了每一輪訪問的客戶數量,這也降低了分類準確性。一種更好的選擇Tround的方法是可以動態地更改它,以便在每輪中包含足夠數量的客戶端。這是留給以後工作的。

非IID設置:非IID設置的結果如表II圖5所示。在CIFAR-10和Fashion-MNIST上,FedCS仍然工作良好,FedLim的性能甚至達不到50%和70%的精度。然而,與前面的工作[5]類似,與使用IID設置的設置相比,使用非IID設置的總體性能受到限制(即,分類精度中的較低平均值和較高方差)。如[5]的結果所示,爲了更好地處理非IID數據,我們需要增加每輪選擇的客戶端數量或每輪選擇的客戶端數量,但由於實驗中施加的時間限制和麻煩因素,這兩種方法都很困難。可以緩解非IID問題的一個潛在擴展是額外使用模型壓縮技術[11],這可以增加在Tround的相同約束內可以選擇的客戶端的數量。

5.CONCLUSION

我們提出了一個新的協議,FedCS,它的目標是在一個異構客戶端的MEC框架中高效地執行FL。我們的實驗結果表明,與最新協議相比,FedCS通過在訓練過程中加入更多的客戶端,從而在短得多的時間內不斷提供高性能ML模型,而不管數據集的選擇,劃分數據方式(即IID或非IID),以及吞吐量和計算能力的不確定性。當我們將我們的全局模型侷限於足夠簡單的深層神經網絡時,這項研究的另一個可能的擴展是使用非常大的數據訓練一個更復雜的模型,該模型具有數以千萬計的參數。未來工作的另一個有趣方向是研究更動態的場景,其中資源的平均數量以及更新和上傳所需的時間可以動態波動。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章