【FedMut】Generalized Federated Learning via Stochastic Mutation

基于隨機變異的泛化聯邦學習

來源:AAAI2024

Abstract

問題:

????????FedAvg 將相同的全局模型派發給客戶端進行本地訓練,容易陷入尖銳解,導致訓練出性能低下的全局模型

提出 FedMut:

????????本文提出了一種名為 FedMut 的新型FL方法,它根據梯度變化變異全局模型,以生成下一輪訓練的幾個中間模型。每個中間模型將被派發到客戶端進行本地訓練。最終,全局模型會收斂到突變模型范圍內的平坦區域內

Introduction

????????當模型收斂到兩個客戶端的平坦最優區域的重疊區域時,它在大多數客戶端中都能實現高推理性能

Relate?work

????????相關工作部分討論了為了提高傳統 FL 的推理性能,已經提出了許多 FL 優化方法。具體來說,這些方法可以分為三類,即

  • 基于全局變量的 FL 方法

????????這類方法通常使用全局變量來指導本地訓練朝相似方向進行

FedProx 使用本地模型與全局模型之間的平方距離作為近端項來正則化本地損失函數,從而穩定模型的收斂

SCAFFOLD 生成一個全局控制變量,并使用該變量在本地訓練過程中糾正本地模型的優化方向

缺點:需要額外的通信開銷來分發全局變量,或者在客戶端上計算近端項的額外計算開銷

  • 基于設備分組的 FL 方法

????????這類方法嘗試根據特定指標對設備進行分組,然后從不同分組中智能選擇設備進行本地訓練。大多數設備分組方法使用模型相似性作為分組指標,因為由于隱私保護的考慮,直接獲取每個客戶端的數據分布是困難的

CluSamp 使用樣本大小或模型相似性作為客戶端分組的指標

FedCluster 將客戶端分組,并在每個 FL 輪次中循環地執行 FL

缺點:它們需要獲取所有本地模型,這導致 FL 與安全聚合機制不兼容,從而可能引起潛在的隱私泄露風險

  • 基于知識蒸餾的 FL 方法

????????這些方法采用著名的知識蒸餾技術來增強FL的推理性能。具體來說,它們使用一個表現良好的“教師模型”來指導“學生模型”的訓練

FedAUX 使用輔助數據集進行數據依賴的蒸餾來初始化服務器模型

FedDF 使用集成模型作為“教師模型”,并使用未標記數據進行蒸餾,以加速FL訓練

FedGen 使用內置生成器和代理數據集實現無數據蒸餾,解決了對額外數據集的需求問題

缺點:需要額外的計算開銷來進行知識蒸餾和額外的數據集

Motivation

????????如果全局模型位于平坦區域,那么在其鄰域內的模型仍然處于相同平坦區域的概率更高。相反,如果模型位于尖銳區域,那么在其鄰域內的模型可能位于其他區域。基于這種直覺,我們變異全局模型以在其中生成多個模型,用于本地訓練。當所有變異模型都位于相同區域時,我們可以獲得一個泛化良好的全局模型,其鄰域是平坦的

????????如圖2(a)所示,云服務器通過模型變異過程生成四個變異模型。由于由變異模型組成的鄰域小于初始全局模型所在的平坦區域,所有變異模型仍然位于這個平坦區域內。通過本地訓練,所有變異模型都朝著平坦區域的中心優化,聚合后的全局模型相應地更新到平坦區域的中心

????????如圖2(b)所示,由于由變異模型組成的鄰域大于平坦區域,三個變異模型位于另一個區域而不是初始全局模型所在的尖銳區域。通過本地訓練,三個變異模型朝著平坦區域優化,只有一個變異模型在尖銳區域進行優化。因此,聚合后的全局模型朝平坦區域移動

Settings

  • 隨機梯度下降(SGD)優化器
  • learning rate = 0.01
  • momentum = 0.9
  • batch size = 50
  • epoch =?5

數據集

  • CIFAR-10
  • CIFAR-100
  • Shakespeare

模型

在 CIFAR-10 和 CIFAR-100 上

  • CNN、ResNet-18?

在 Shakespeare?上

  • LSTM

動機驗證

?實驗結果

?消融研究

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/37699.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/37699.shtml
英文地址,請注明出處:http://en.pswp.cn/web/37699.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2024免費的股票數據接口API

滄海數據 # Restful API https://tsanghi.com/api/fin/stock/{exchange_code}/realtime?token5dbb47113a4a43a6be1755673ce854db&ticker{ticker} 數據來源:滄海數據 請求方式:Get 數據格式:標準Json格式[{},...{}]

如何借用物聯網快速實現高標準農田信息化

如何借用物聯網快速實現高標準農田信息化 高標準農田信息化,作為現代農業發展的重要基石,是指在建設高產、穩產、節水、環保的農田基礎上,深度融合現代信息技術,實現農田管理的精準化、智能化和高效化。物聯網(Intern…

vue3+ts實現計算兩個字符串的相似度

在TypeScript中,可以使用Levenshtein萊文斯坦距離算法來精確匹配兩個字符串的相似度百分比。Levenshtein距離是指兩個字符串之間,由一個轉換成另一個所需的最少編輯操作次數,這里的編輯操作包括插入、刪除、替換。 /*** Levenshtein距離算法…

Linux Static calls機制

文章目錄 前言一、簡介二、Background: indirect calls, Spectre, and retpolines2.1 Indirect calls2.2 Spectre (v2)2.3 RetpolinesConsequences 2.4 Static callsHow it works 三、其他參考資料 前言 Linux內核5.10內核版本引入新特性:Static calls。 Static c…

JAVA各版本-安裝教程

目錄 Java安裝包下載 Java安裝步驟 Java環境配置 Java安裝包下載 到Oracle官網下載自己需要的版本 Oracle Java下載:Java Archive | Oracle Hong Kong SAR, PRC 下拉選擇自己需要的版本(本教程以Windows環境下,JAVA11為例) 注…

C++初學者指南-3.自定義類型(第一部分)-指針

C初學者指南-3.自定義類型(第一部分)-指針 文章目錄 C初學者指南-3.自定義類型(第一部分)-指針1.為什么我們需要它們?2.T 類型的對象指針原始指針:T * 智能指針(C11) 3.操作符地址操作符 &解引用運算符 *成員訪問操作符 ->語法重定向 4.nullptr (…

【Linux】用戶管理

創建與刪除 adduser adduser 是一個交互式命令,用于創建新用戶并設置初始環境。 sudo adduser 用戶名示例: sudo adduser newuseruseradd useradd 是一個非交互式命令,允許你通過選項指定用戶的屬性。 sudo useradd [選項] 用戶名常見選…

SCADA系統對于工業生產的意義!

關鍵字:LP-SCADA系統, 傳感器可視化, 設備可視化, 獨立SPC系統, 智能儀表系統,SPC可視化,獨立SPC系統 SCADA系統在智能制造中扮演著至關重要的角色,它通過集成和自動化工廠車間的各種過程,提高了生產效率和產品質量,降低了成本,并…

【AI繪畫 ComfyUI】全新整合包來襲!一鍵安裝 即開即用,超好用的工作流形式的AI繪畫工具!

大家好,我是畫畫的小強 請在看這篇文章的人注意,本文章介紹的Comfy UI整合包是一個節點式的工作,流式的AI繪畫界面,并不適合新手使用。 如果你在找的是Web UI, 請前往我之前發布一篇的文章AI繪畫『Stable Diffusion』面向小白的…

【高中數學/基本不等式】設a,b>0.a+b=5,則 根號下(a+1)+根號下(b+3) 的最大值為?(2015重慶卷)

【問題】 設a,b>0.ab5,則根號下(a1)根號下(b3)的最大值為? 【解答】 解法一: 因雙根號計算不便,故采用平方后簡化之。 原式的平方a12倍根號下((a1)(b3))b3 ab42倍根號下((a1)(b3)) 因為ab5 a1b31359 9(a1)(b3)>2倍根號下((a1)…

【小貪】項目實戰——Zero-shot根據文字提示分割出圖片目標掩碼

目標描述 給定RGB視頻或圖片,目標是分割出圖像中的指定目標掩碼。我們需要復現兩個Zero-shot的開源項目,分別為IDEA研究院的GroundingDINO和Facebook的SAM。首先使用目標檢測方法GroundingDINO,輸入想檢測目標的文字提示,可以獲得…

uniapp中如何進行微信小程序的分包

思路:在uniapp中對微信小程序進行分包,和原生微信小程序進行分包的操作基本上沒區別,主要就是在pages.json中進行配置。 如圖,我新增了一個包diver-page 此時需要在pages.json中的subPackages數組中新增一項 root代表這個包的根…

用好華為小助手,生活總能快人一步

嘿!朋友們!你們有沒有想過,如果身邊有一個小助手,他不僅聰明伶俐,還能在生活的方方面面給予你最貼心的關懷和幫助,讓我們的日常生活變得更加方便和快捷,那該有多好!沒錯,…

【云原生】Kubernetes資源配額+HPA+節點選擇器+親和性+污點

Kubernetes高級功能 文章目錄 Kubernetes高級功能一、資源配額1.1、什么是資源配額1.2、資源配額應用1.2.1、針對Namespace設置資源配額1.2.2、針對Pod設置資源配額 二、HorizontalPodAutoscaler(HPA)2.1、什么是HorizontalPodAutoscaler2.2、Horizontal…

談談創意設計中的AI、AGI、AIGC

在當今的數字化時代,創意設計領域正經歷著前所未有的變革。隨著人工智能(AI)、通用人工智能(AGI)以及人工智能生成內容(AIGC)的迅猛發展,設計師們的工作方式和創作手段都發生了深刻的…

Spring Boot中的緩存配置與優化

Spring Boot中的緩存配置與優化 大家好,我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編,也是冬天不穿秋褲,天冷也要風度的程序猿!今天我們將探討在Spring Boot應用中如何配置和優化緩存,以提升系統的…

UML形式化建模期末復習筆記

本文檔為xmind導出,可能存在缺少圖片等問題,建議下載思維導圖查看完整內容 鏈接: https://pan.baidu.com/s/17s-utC2C6Qg0tFp61Kw0ZQ?pwduq64 提取碼: uq64 概述 UML: Unified Modeling Language 統一建模語言 建模 定義 把不太理解的東西和一些已經較…

隔離級別是如何實現的?

在數據庫管理系統中,隔離級別(Isolation Level)是用來定義事務在執行過程中可以看到其他事務執行中的操作的一個設置。這主要用于控制事務之間的并發性和數據一致性。SQL標準定義了四種隔離級別,每種級別都以不同的方式平衡了性能…

Swift 中的 StoreKit 測試

文章目錄 前言創建一個 StoreKit Demo使用 SKTestSessionaskToBuyEnabled 屬性總結前言 StoreKit 框架的第二次迭代是我在過去幾年中應用程序中最重大的變化。最近版本的 StoreKit 框架已完全采用了 Swift 語言特性,如 async 和 await。本篇內容我們將討論 StoreKitTest 框架…

【揭秘】嘴尚絕鹵味健康新風尚,讓你吃得美味又健康!

在快節奏的現代生活中,美食不僅是味蕾的享受,更是健康生活的追求。今天,我們要聊的就是備受食客們青睞的“嘴尚絕鹵味”——如何在享受美味的同時,也能兼顧健康飲食的理念。 一、鹵味文化,源遠流長 鹵味,作…