《GuardHFL: Privacy Guardian for Heterogeneous Federated Learning》——論文閱讀

研究背景:

? ? ? ? 異構聯邦中各客戶端模型結構,精度,算力都不同,無法像傳統聯邦那樣共享梯度,只能通過“查詢-響應”使用輔助數據來訓練模型。這種方法存在嚴重隱私問題:直接共享查詢樣本會泄露敏感信息,以及響應預測可能會泄露模型梯度和訓練數據的隱私。

相關知識:

????????偽隨機函數(PRF):一種確定性函數,以一個均勻隨機種子Sk和一個輸入x作為參數,輸出一個固定長度的偽隨機字符串。安全性體現在,輸出的偽隨機字符串與均勻分布的字符串在計算上是不可區分的

研究思路:

? ? ? ? 本文提出了GuardHFL的新方法,基于標準HFL范式(本地訓練,查詢,本地再訓練),通過輕量級密碼技術增強隱私保護,制定安全查詢方案。

步驟:

  1. 安全查詢數據共享

? ? ? ? 為避免樣本直接暴露,查詢方需要將查詢數據x秘密共享給響應方和服務器。借助 PRF,查詢方和響應方通過預共享的種子Sk生成相同的隨機值r,使得響應方非交互地獲得x的份額,而查詢方僅需將剩余份額發送給服務器,避免了查詢數據的直接暴露。

? ? ?2. 安全模型預測

? ? ? ? 服務器在查詢方和響應方的協助下,對秘密共享的查詢數據執行安全模型預測。包含三層:線性層,ReLU和最大池化層。線性層:通過改進的矩陣乘法協議,響應方持有模型參數和服務器協作計算。利用 PRF 生成隨機矩陣,通過 1 輪通信和 3 個環元素交換,高效實現安全乘法。ReLU 激活函數:基于最高有效位判斷輸入正負,MSB 通過并行前綴加法器計算,僅依賴 AND 和 XOR 操作。最大池化層:通過遞歸劃分輸入為兩半,轉化為 ReLU 計算。

? ? ?3. 安全結果聚合

????????為避免單條預測泄露隱私,服務器聚合多個響應方的預測結果后返回給查詢方。每個響應方生成隨機值r( 與查詢方共享),計算份額并發送給服務器;服務器匯總結果,并將掩碼聚合結果發送給查詢方;查詢方通過累加隨機值恢復最終聚合結果。

實驗設置:

  • 數據集:SVHN、CIFAR10、Tiny ImageNet;

  • 在 SVHN、CIFAR10、Tiny ImageNet 上,使用私有訓練數據(Q-priv)或合成樣本(Q-syn)作為查詢數據,模型精度比原始 HFL 提高 4%~10%;

  • 非獨立同分布(Non-IID)數據下,GuardHFL 仍能顯著提升模型性能。

未來方向:

  • 降低通信成本(如借鑒 k - 正則圖思想);

  • 擴展至惡意攻擊者模型。

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

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

相關文章

Spring AI 進階之路01:三步將 AI 整合進 Spring Boot

引子 當 LLM 的浪潮以不可阻擋之勢席卷全球,從改變用戶交互到重塑商業模式,我們每一位開發者都身處這場技術變革的中心。作為龐大的 Java 生態中的一員,你是否也曾思考:當 Python 似乎成為 AI 的“官方語言”時,我們這…

pycharm2025導入anaconda創建的各個AI環境

目錄1.pycharm下載及安裝2.導入anaconda的環境到pycharm項目中1.pycharm下載及安裝 建議從官網下載,不要亂下載。 https://www.jetbrains.com.cn/en-us/pycharm/ 右上角可以切換中英文,在此切換為中文。 點擊下載,如下頁面: 點擊中間下載w…

獲取IPv6地址的三種方式

DHCPv6無狀態自動分配IP地址Server 配置&#xff1a;<Huawei>system-view[Huawei]ipv6[Huawei]dhcp enable[Huawei]dhcpv6 pool pool1[Huawei-dhcpv6-pool-pool1]dns-server 2002::2[Huawei-dhcpv6-pool-pool1]dns-domain-name example.com[Huawei-dhcpv6-pool-pool1]qui…

[Oracle數據庫] Oracle 復雜查詢

對于剛接觸 Oracle 數據庫的初學者來說&#xff0c;簡單查詢&#xff08;如SELECT * FROM 表名&#xff09;可能不難掌握&#xff0c;但面對復雜業務場景時&#xff0c;就需要更強大的查詢能力。本文將圍繞 Oracle 復雜查詢的核心知識點展開&#xff0c;包括條件邏輯、分組函數…

Redis-plus-plus API使用指南:通用操作與數據類型接口介紹

&#x1f351;個人主頁&#xff1a;Jupiter.&#x1f680; 所屬專欄&#xff1a;Redis 歡迎大家點贊收藏評論&#x1f60a;目錄通用 API連接 Redis1. get/set2. exists 方法3. del 方法4. keys 方法5. expire 方法6. ttl 方法7. type 方法8. flushall 方法String 類型 API1. ge…

基于遺傳編程的自動程序生成

這里寫目錄標題核心概念與工作原理1. 個體表示&#xff1a;樹結構2. 初始化種群3. 適應度評估4. 選擇5. 遺傳操作&#xff08;繁殖&#xff09;6. 新一代種群形成7. 終止條件基于遺傳編程的符號回歸示例問題示例GP實現符號回歸&#xff08;Deap&#xff09;GP實現符號回歸&…

flowable匯總查詢方式

背景&#xff1a;小程序開發申請流程。使用flowable流程框架。用戶需要在后臺統攬用戶申請的匯總表。 設計思路&#xff1a;通過查詢流程實例分頁查詢獲取數據&#xff0c; 其中可以通過查詢條件進行查詢&#xff0c;查詢條件是流程申請時添加到流程變量當中的&#xff0c;方便…

力扣438:找到字符串中所有的字母異位詞

力扣438:找到字符串中所有的字母異位詞題目思路代碼題目 給定兩個字符串 s 和 p&#xff0c;找到 s 中所有 p 的 異位詞 的子串&#xff0c;返回這些子串的起始索引。不考慮答案輸出的順序。 思路 我們先不看異位詞這個條件&#xff0c;如何在字符串s中找到字符串p。我們可以…

ruoyi-vue(十一)——代碼生成

大部分項目里其實有很多代碼都是重復的&#xff0c;幾乎每個基礎模塊的代碼都有增刪改查的功能&#xff0c;而這些功能都是大同小異&#xff0c; 如果這些功能都要自己去寫&#xff0c;將會大大浪費我們的精力降低效率。所以這種重復性的代碼可以使用代碼生成。一 代碼生成使用…

neo4j導入導出方法

在 Neo4j 中&#xff0c;如果需要將數據從 一個環境導出&#xff0c;再 導入到另一個環境&#xff08;如從開發環境遷移到生產環境&#xff09;&#xff0c;可以通過以下方法實現&#xff1a;方法 1&#xff1a;使用 neo4j-admin 導出和導入&#xff08;完整數據庫遷移&#xf…

Diamond基礎2:開發流程之LedDemo

文章目錄1.關聯VS Code2.Diamond工程目錄3.Led Demo開發流程4.燒寫bit文件5.傳送門1.關聯VS Code 和Vivado一樣&#xff0c;Diamond也可以使用第三方的編輯器&#xff0c;VS Code編輯器因為可以安裝各種插件&#xff0c;并且對verilog開發的支持也算完善&#xff0c;所以很受歡…

Golang 后臺技術面試套題 1

文章目錄1.網絡1.1 瀏覽器從輸入網址到展示頁面&#xff0c;描述下整個過程&#xff1f;1.2 HTTP 502&#xff0c;503 和 504 是什么含義&#xff1f;區別以及如何排查&#xff1f;1.3 HTTPS 通信過程為什么要約定加密密鑰 code&#xff0c;用非對稱加密不行嗎&#xff1f;1.4 …

【科研繪圖系列】R語言繪制蝶形條形圖蝶形柱狀堆積圖

文章目錄 介紹 加載R包 數據下載 導入數據 數據預處理 畫圖 系統信息 參考 介紹 【科研繪圖系列】R語言繪制蝶形條形圖&蝶形柱狀堆積圖 加載R包 library(tidyverse) library(ggsignif) library(RColorBrewer) library(dplyr) library(reshape2) library(grid

Jeecg后端經驗匯總

Jeecg是一個不錯的低代碼平臺&#xff0c;極大的降低了很多開發人員接私活的難度&#xff0c;也極大的降低了開發全套功能的難度。但是一碼歸一碼&#xff0c;開發人員的水平很一般&#xff0c;如下&#xff1a;&#xff08;1&#xff09;普通用戶可以修改管理員密碼&#xff0…

ethernet_input到應用層處理簡單分析

1、驅動層&#xff1a;從硬件讀取數據并構造pbuf中斷觸發后&#xff0c;驅動層的接收任務&#xff08;或輪詢函數&#xff09;會從網卡硬件讀取數據&#xff0c;并將其封裝為 LWIP 可識別的pbuf結構體&#xff08;LWIP 的數據緩沖區&#xff09;。關鍵函數&#xff1a;驅動自定…

C#WPF實戰出真汁05--左側導航

1、左側導航設計要點清晰的信息架構 確保導航結構層次分明&#xff0c;主分類與子分類邏輯清晰&#xff0c;避免過度嵌套。使用分組、縮進或分隔線區分不同層級&#xff0c;保持視覺可讀性。直觀的圖標與標簽 為每個導航項搭配簡潔的圖標&#xff0c;強化視覺識別。標簽文字需簡…

大模擬 Major

題目來源&#xff1a;2025 Wuhan University of Technology Programming Contest 比賽鏈接&#xff1a;Dashboard - 2025 Wuhan University of Technology Programming Contest - Codeforces 題目大意&#xff1a; 模擬 16 支隊伍的瑞士輪比賽結果&#xff0c;規則太多&…

【手撕JAVA多線程】1.從設計初衷去看JAVA的線程操作

目錄 前言 概述 主動阻塞/喚醒 代碼示例 實現 為什么必須在同步塊中使用 計時等待是如何實現的 被動阻塞/喚醒 為什么要有被動阻塞/喚醒 實現&#xff08;鎖升級&#xff09; 前言 JAVA多線程相關的內容很多很雜&#xff0c;但工作中用到的頻率不高&#xff0c;用到…

UE5多人MOBA+GAS 46、制作龍卷風技能

文章目錄創建龍卷風GA創建蒙太奇創捷一系列GE添加數據表添加到角色中創建龍卷風GA GA_Tornado 添加標簽 // 龍卷風冷卻CRUNCH_API UE_DECLARE_GAMEPLAY_TAG_EXTERN(Ability_Tornado_Cooldown)// 通用技能傷害CRUNCH_API UE_DECLARE_GAMEPLAY_TAG_EXTERN(Ability_Generic_Dama…

如何在ubuntu下安裝libgpiod庫

以下是關于如何在ubuntu下安裝libgpiod庫的兩種安裝方式以及遇到ubuntu存在多個工具鏈導致編譯失敗的解決方法。如果想要自由選擇使用不同版本的libgpiod&#xff0c;可以選擇手動編譯安裝方式&#xff0c;系統安裝默認1.6.3版本(ubuntu22.04)。手動編譯安裝1、在github上下載要…