研究背景:

        异构联邦中各客户端模型结构,精度,算力都不同,无法像传统联邦那样共享梯度,只能通过“查询-响应”使用辅助数据来训练模型。这种方法存在严重隐私问题:直接共享查询样本会泄露敏感信息,以及响应预测可能会泄露模型梯度和训练数据的隐私。

相关知识:

        伪随机函数(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上下载要…