簡體   English   中英

客戶端參與聯合計算輪次

[英]Client participation in the federated computation rounds

我正在使用 Tensorflow Federated 構建一個聯邦學習 model。 根據我在教程和論文中讀到的內容,我了解到最先進的方法 (FedAvg) 是通過在每一輪中選擇一個隨機的客戶端子集來工作的。

我擔心的是:

  • 我有少量客戶。 我總共有 8 個客戶,我 select 6 個客戶進行培訓,我保留 2 個客戶進行測試。
  • 所有數據都在我的本地設備上提供,所以我使用 TFF 作為模擬環境。
  • 如果我在聯合通信輪次中使用所有輪次中的所有 6 個客戶端,這會是 FedAvg 方法的錯誤執行嗎?
  • 請注意,我還計划使用本文中使用的相同實驗。 這旨在使用不同的服務器優化方法並比較它們的性能。 那么,(所有參與程序的客戶)是否可以在這里工作?

提前致謝

這當然是FedAvg和鏈接論文中提出的變體的有效應用,盡管僅在部分文獻中進行了實證研究。 另一方面,許多對FedAvg的理論分析都假設了與您所描述的情況類似的情況; 在該鏈接文件第 4 頁的底部,您將看到分析是在這種所謂的“完全參與”制度下進行的,每個客戶都參與每一輪。

您描述的設置通常稱為“跨筒倉”; 參見,例如,聯邦學習中的進展和未解決問題的第 7.5 節,其中還將包含許多跨筒倉文獻的有用指針。

最后,根據應用程序,考慮在所有客戶端上進行訓練可能更自然,保留每個客戶端數據的一部分用於驗證和測試。 圍繞“我們關心的設置”model 的數據自然分區的問題在聯合設置中通常很棘手。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM