(論文閱讀)FedViT:邊緣視覺轉換器的聯邦持續學習

FedViT:邊緣視覺轉換器的聯邦持續學習

FedViT: Federated continual learning of vision transformer at edge
(北京理工大學-2023年發表于《Future Generation Computer Systems》中科院二區)
highlight:

?提出一種輕量級的客戶端聯合持續學習方法。
?通過將簽名任務的知識整合到客戶端上,防止災難性遺忘。
?減少負面知識轉移,無需頻繁與服務器通信。
?理論上保證了我們方法更快的訓練收斂。
?適用于多任務、多客戶端、多ViT的場景。

一.Introduction

background:隨著客戶端環境的不斷變化,需要DNN模型重新訓練并適應這些變化。例如圖中ViT,需要隨著時間的推移處理一系列任務。通常,一個任務由多個類別/對象和每個類別的不同特征組成。

聯邦持續學習(FCL)它從由不同任務組成的非平穩數據中增量學習深度模型。FCL在從其他客戶端的(間接)經驗中學習的直覺的驅動下,將持續學習結合在聯邦學習框架中,使客戶端中的模型可以不斷地從其本地數據和其他客戶端的任務知識中學習。

主要問題是災難性遺忘:當其模型隨著時間的推移學習新任務時,它可能會忘記以前學習的任務信息,并且這些任務中的模型準確性會降低。(例:一旦客戶端1中的模型完成其初始任務(即任務(1))的訓練,其參數收斂到任務損失區域的最優點,產生86%的準確率。然而,當隨后適應第二個任務(即使用相同模型的任務(2))時,由于兩個任務之間的相關性有限,參數逐漸偏離任務1的最優點,并逐漸接近任務2的最佳狀態。因此,盡管在任務 2 上達到了 83% 的準確率,但模型對任務 1 的分類準確率卻大幅下降至 54%,這體現了對前一個任務的災難性遺忘現象。)

當客戶端的模型與聯邦學習中來自其他客戶端的模型聚合時,這種差異帶來了重大挑戰。其他客戶端模型中的不同知識可能會降低模型在其專用本地數據上的性能。這種從全局模型中轉移不相關知識的有害轉移被稱為負向知識轉移

ViT對數據分布漂移表現出很強的魯棒性,這是持續學習和聯邦學習面臨的關鍵問題。此外,ViT高度依賴訓練數據,例如數據量和數據多樣性。在FCL中,隨著任務數量的增加,它自然會向ViT提供這些數據資源。

ViT在邊緣持續聯邦學習中的挑戰

邊緣計算是為了降低與云服務器的通信成本,并通過設備上的數據處理增強數據隱私;模型訓練中的計算和通信成本隨著任務和客戶端的數量而增加,并且在資源受限的邊緣設備上進行這種昂貴的訓練會帶來兩個技術挑戰。

1.有限的計算資源導致顯著的精度損失。因此,第一個挑戰是設計一種輕量級的學習方法,可以直接在資源受限的邊緣設備上保留大量的歷史知識并縮短模型訓練時間。

2.防止負面知識轉移會導致高通信成本和隱私泄露。第二個挑戰是如何開發一種分布式方法,可以防止負面的知識轉移,而不增加客戶之間的額外通信。

在這里插入圖片描述
圖. 聯邦持續學習的示例場景 n 客戶

二、方法

總結:FedViT是一種輕量級的客戶端解決方案,它集成了包含相關過去和對等任務的簽名任務的知識。FedViT 在每個客戶端中發揮作用,并提取緊湊且可轉移的知識——重要的數據樣本。在學習一項新任務時,FedViT 將其與其簽名任務的知識相結合,這些任務是從本地過去的任務中識別出新任務中最不同的任務,以防止災難性遺忘,以及代表其他客戶端當前任務的更新全局模型,以防止負面知識轉移。通過完成具有多項式時間復雜度的知識集成,FedViT 通過提供高模型精度和邊緣低通信開銷來解決現有技術的局限性。

1.通過對簽名任務的了解提供可擴展的客戶端解決方案。

2.通過梯度積分進行高精度模型訓練。

在這里插入圖片描述

主要分為三個部分:知識提取器、梯度恢復器、梯度積分器
在這里插入圖片描述
圖 FedViT的流程和設計目的
在這里插入圖片描述

三、實驗:

測試平臺:Jetson TX2 8 GB; Jetson Nano 4 GB; Jetson Xavier NX 16 GB; Jetson AGX 32 GB

數據集:CIFAR100、FC100、COR50、MiniImageNet、TiniImageNet;分為多個任務,每個任務有多個類別;并隨機分配為Non-IID,數據間差異較大

對比基線模型:

  1. 持續學習方法:gradient episodic memory (GEM)、Balanced Continual Learning (BCN)、Balanced Continual Learning (BCN)、Memory aware synapses(MAS)、Dytox、LVT
  2. 聯邦學習方法:FedAvg、APFL、FedRep
  3. 聯邦持續學習方法:FedWEIT、FedKNOW

評價指標:平均準確率 (Average Accuracy)、遺忘率 (Forgetting Rate)、通信成本 (Communication Cost)、計算成本 (Computation Cost)、存儲開銷 (Memory Storage)

對比試驗:

不同FCL下精度評估:在不同數據集上,測試了不同類型模型的準確度(災難性遺忘和負面知識轉移);此外還評估了異構邊緣設備上FedViT的準確率

通信成本評估:

將FedViT和FedWEIT進行對比,在不同數據集上,FedViT在執行相同模型訓練任務時需要更少的通信成本;

在不同網絡帶寬下,FedViT的通信時間始終更少。

客戶端和任務數量討論:

任務數:將TinyImageNet(200類)構建為多任務數據集,50個任務,每個任務4類;為了保證每個任務的數據異構性,將數據集劃分為 10 個客戶端,每個客戶端最多包含 2 類數據樣本。 測試不同任務下,對比模型的精度。

客戶端數:50個和100個客戶端比較準確率和遺忘率。

綜上所述,FedViT 利用少量高質量樣本作為舊任務知識,使其即使在訓練樣本極其有限的場景下也能準確恢復舊任務知識。此外,基于梯度積分的知識恢復器有效解決了客戶端或任務數量不斷增加導致的嚴重負向知識轉移問題,使其成為實際聯邦學習應用的潛在候選者。

不同ViT模型的適用性

測試了5種共8個ViT模型,隨任務數增加精度的變化,結果表明在8種模型下,FedViT框架都取得了最好的精度。還對比了不同客戶端采樣率下的比較不同知識存儲速率下的比較;以及圖像分辨率的影響

超參數的影響

知識存儲率的影響 ;所選漸變數量的影響

結論:

FedViT是一個專為分布式邊緣設備上基于Transformer的計算機視覺模型而設計的框架。FedViT 在三個方面進行創新,以應對邊緣聯合持續學習的關鍵挑戰。首先,基于樣本的輕量級知識提取減少了設備開銷,同時保留了關鍵的過去任務信息,提高了約束下的持續學習精度。其次,梯度積分消除了負遷移,有利于新舊知識的同化,提高了模型泛化性。最后,簽名任務知識的本地化集成可以隨著任務和客戶的增長實現可擴展性,而無需額外的通信成本。大量實驗表明,FedViT 在確保準確性的同時顯著降低了通信開銷,并表現出很強的可擴展性。

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

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

相關文章

微算法科技(NASDAQ: MLGO)研究利用PBFT中的動態視圖變換機制,實現區塊鏈系統高效運轉

隨著區塊鏈技術的飛速發展,其去中心化、透明性、不可篡改等特性使得它在金融、供應鏈管理、物聯網等多個領域得到了廣泛應用。然而,區塊鏈系統在高并發場景下的性能瓶頸問題一直是制約其大規模應用的關鍵因素。傳統的共識算法如PoW(工作量證明…

從數據匯總到高級分析,SQL 查詢進階實戰(下篇)—— 分組、子查詢與窗口函數全攻略

引言:從 “提取數據” 到 “洞察價值”,SQL 進階之路 在掌握了基礎查詢與多表關聯后,你是否曾遇到這樣的挑戰:如何按部門統計平均薪資?怎樣找出每個崗位薪資最高的員工?或者如何計算銷售額的月度環比增長率…

Spring 和 Lettuce 源碼分析 Redis 節點狀態檢查與失敗重連的工作原理

關鍵步驟:Spring Boot 啟動時創建 LettuceConnectionFactory根據配置類型(集群/哨兵/單機)初始化客戶端對于集群模式:創建 RedisClusterClient調用 setOptions(getClusterClientOptions(configuration)) 應用配置2. 節點狀態檢查機…

從ChatGPT到智能助手:Agent智能體如何顛覆AI應用

從ChatGPT到智能助手&#xff1a;Agent智能體如何顛覆AI應用 更多大模型知識分享&#xff0c;盡在>>>GitHub<<< Agent 智能體是什么 簡單來說&#xff0c;Agent 智能體是一種能夠感知環境&#xff0c;并根據自身目標自主采取行動的智能實體。它就像是一個擁…

Spring Boot應用實現圖片資源服務

在這篇文章中&#xff0c;我們將介紹如何使用Spring Boot創建一個REST API來提供服務器上的靜態圖片資源。該API包括路徑安全檢查、文件存在性驗證以及緩存控制等功能&#xff0c;并且代碼包含詳細的注釋以幫助理解。Maven依賴 首先&#xff0c;在您的pom.xml文件中添加以下依賴…

Word 中 MathType 公式編號問題與解決

注&#xff1a;本文為 “Word 中 MathType 公式編號” 相關合輯。 圖片清晰度受引文原圖所限。 略作重排&#xff0c;未整理去重。 如有內容異常&#xff0c;請看原文。 【Word】解決 MathType 已插入公式按新章節開始編號的問題 Allan326 于 2020-03-25 15:30:08 發布 問題…

19. 大數據-產品概念

文章目錄前言一、數據庫1. 簡介2. 使用場景3. 數據庫類型4. 數據類型二、數據倉庫1. 簡介2. 使用場景3. 數據倉庫架構三、數據平臺1. 簡介2. 使用場景3. 數據倉庫架構四、數據中臺1. 簡介2. 使用場景3. 數據中臺架構五、數據湖1. 簡介2. 使用場景3. 數據湖架構六、總結1. 區別2…

python學習DAY46打卡

DAY 46 通道注意力(SE注意力) 內容&#xff1a; 不同CNN層的特征圖&#xff1a;不同通道的特征圖什么是注意力&#xff1a;注意力家族&#xff0c;類似于動物園&#xff0c;都是不同的模塊&#xff0c;好不好試了才知道。通道注意力&#xff1a;模型的定義和插入的位置通道注意…

Ansible 中的文件包含與導入機制

Ansible 中的文件包含與導入機制本文介紹了在 Ansible 中如何通過模塊化方式管理復雜的 Playbook&#xff0c;包括使用 include 和 import 系列語句來拆分和重用代碼。概述 當 Playbook 變得冗長或復雜時&#xff0c;可以將其拆分為多個小文件以提高可管理性。Ansible 提供了模…

OpenCV-循環讀取視頻幀,對每一幀進行處理

原型代碼 內存模型&#xff1a; 核心變量&#xff1a;frame&#xff0c;Numpy ndarray&#xff0c;每次會被覆蓋&#xff0c;大小保持恒定import cv2video_path your_video.mp4cap cv2.VideoCapture(video_path)if not cap.isOpened():print("Cant open Video")exi…

決策樹的學習(二)

一、整體框架本 PPT 聚焦機器學習中的決策樹算法&#xff0c;圍繞 “核心算法&#xff08;ID3、C4.5、CART&#xff09;→ 特殊問題&#xff08;連續值處理&#xff09;→ 優化策略&#xff08;剪枝&#xff09;→ 代碼實現→ 課堂練習” 展開&#xff0c;系統補充決策樹的進階…

粗糧廠的基于spark的通用olap之間的同步工具項目

粗糧廠的基于spark的通用olap之間的同步工具項目1 項目背景2 項目實現2.1 實現原理2.2 細節要點3 抽樣說明4 項目運行狀態4.1 運行速度4.2 項目吞吐4.3 穩定性說的比較簡單&#xff0c;有需要的可以留言&#xff0c;我不斷補充完善1 項目背景 我們公司內部的需要一款&#xff…

C# 時間戳

在C#中&#xff0c;獲取當前時間的毫秒級時間戳可以通過多種方式實現。以下是幾種常見的方法&#xff1a;方法1&#xff1a;使用DateTime和DateTimeOffsetlong timestamp (long)(DateTimeOffset.Now.ToUnixTimeMilliseconds()); Console.WriteLine(timestamp);方法2&#xff1…

【牛客刷題】REAL792 小O的平面畫圓

文章目錄 一、題目介紹 1.1 輸入描述 1.2 輸出描述 1.3 示例 二、算法設計思路 2.1 核心問題分析 2.2 圖解兩個圓的位置關系 2.2.1. 相離 (Separate) 2.2.2. 外切 (Externally Tangent) 2.2.3. 相交 (Intersecting) 2.2.4. 內切 (Internally Tangent) 2.2.5. 包含 (Containing)…

uniapp:微信小程序使用Canvas 和Canvas 2D繪制圖形

一、Canvas 畫布 canvas 組件 提供了繪制界面&#xff0c;可以在之上進行任意繪制 功能描述 Canvas 畫布。2.9.0 起支持一套新 Canvas 2D 接口&#xff08;需指定 type 屬性&#xff09;&#xff0c;同時支持同層渲染&#xff0c;原有接口不再維護。 二、Canvas 和Canvas 2D 區…

word如何轉換為pdf

pip install pywin32import os import win32com.client import pythoncom # 新增&#xff1a;用于處理COM線程 import sysdef docx_to_pdf(docx_path, pdf_pathNone):"""將Word文檔轉換為PDF格式&#xff0c;修復退出時的COM錯誤"""if not os.p…

服務器Linux防火墻怎樣實現訪問控制

在互聯網世界里&#xff0c;Linux服務器就像一座城池&#xff0c;而防火墻便是城池的守衛者。沒有防火墻&#xff0c;外部的任何流量都能毫無阻攔地進入服務器;而有了防火墻&#xff0c;就可以像設關卡一樣&#xff0c;對進出城門的人進行盤查和控制。對企業運維人員來說&#…

【原創理論】Stochastic Coupled Dyadic System (SCDS):一個用于兩性關系動力學建模的隨機耦合系統框架

【原創理論】Stochastic Coupled Dyadic System (SCDS)&#xff1a;一個用于兩性關系動力學建模的隨機耦合系統框架 作者&#xff1a;[望月&#xff0c;GPT5,GPT-O3,Gemini2.5pro] 分類&#xff1a; 人工智能 理論模型 交叉學科 系統科學 人性 愛情 標簽&#xff1a; 關系動力…

星圖云開發者平臺新功能速遞 | 微服務管理器:無縫整合異構服務,釋放云原生開發潛能

在構建現代數字化應用的過程中&#xff0c;開發者常常面臨一個關鍵挑戰&#xff1a;如何高效、安全地集成和復用既有的復雜服務或自有業務系統&#xff1f;這些服務可能是核心算法引擎、遺留業務邏輯模塊&#xff0c;或是特定的SaaS能力。傳統方式下&#xff0c;將它們融入新的…

數據結構:構建 (create) 一個二叉樹

目錄 問題的本質——什么信息才能唯一確定一棵樹&#xff1f; 推導“最佳拍檔”——哪兩種遍歷序列能行&#xff1f; 遞歸思想——如何構建一棵樹&#xff1f; 第1步&#xff1a;確定整棵樹的根節點 第2步&#xff1a;劃分左右子樹的成員 第3步&#xff1a;遞歸構建左右子…