人工智能安全——联邦学习的安全攻击与防护

参考论文FedMDFG: Federated Learning with Multi-Gradient Descent and Fair Guidance (AAAI-2023)

背景

随着人工智能技术的飞速发展,隐私保护和数据安全越来越受到重视。联邦学习(Federated Learning, FL)作为一种分布式隐私保护的机器学习框架,通过让数据留在本地设备上,仅共享模型参数而非原始数据,显著降低了隐私泄露风险。然而,这一技术并非毫无漏洞,联邦学习仍然面临诸多安全威胁,现有的 FL 协议设计已被证明容易受到系统内部或外部的对手的攻击,从而损害数据隐私和系统稳健性。如何应对这些威胁成为了一个重要的研究方向。

联邦学习的安全攻击也常叫“中毒攻击”,这种攻击旨在损害联邦学习系统的稳健性、破坏和干扰联邦学习的正常进行,或者是故意使坏让联邦学习的模型可用性变得极低。常见的攻击手段有:

  • 模型投毒攻击(拜占庭攻击):恶意的client上传随机的模型参数/梯度给server,干扰FL的聚合效果。

  • 后门攻击(特洛伊木马攻击),例如,攻击者给训练数据/模型加入隐秘的后门,并在预测阶段通过触发简单的后门触发器完成恶意攻击,意图让FL模型预测出攻击者所设定的错误标签。

  • 女巫攻击:攻击者伪造大量的虚假用户加入FL,以在FL中获得更高的主导地位,或者将其真实的攻击行为给隐藏起来。

这些安全攻击手段极大地威胁了联邦学习,一定程度上加剧了联邦学习很难在真实应用场景下推广难的问题。因为在现实场景中,server、client的成分很复杂,总会存在一些恶意攻击者要破坏FL的正常运行。

联邦学习安全防护

目前学界提出了很多应对联邦学习安全威胁的应对方案。例如将同态加密、安全多方计算等结合到FL里面,采用复杂的密码协议为FL保驾护航,减轻客户端的恶意行为。但这会带来显著的计算开销,以至于损害系统性能。

另外也有人提出利用区块链来增加FL参与用户的可信度,比如说这篇文章:Defending Against Poisoning Attacks in Federated Learning with Blockchain。

但无一例外的是,这些方法都极大增加了联邦学习系统的复杂性。机缘巧合地,我发现前面读的那篇基于多目标优化的联邦学习算法FedMDFG,文章里面恰好讨论了方法对于应对联邦学习安全攻击的能力。

FedMDFG的文章解读可以参考我前面那篇博客:

该方法简言之,就是设计了一种具有理论保障的方法,能够计算一个公平的梯度下降方向来更新模型,如下图所示:

 

从FL安全防护的角度来看,这方法恰好能简单有效地应对模型投毒攻击、后门攻击,以及女巫攻击。这是因为,即便恶意用户上传错误的模型参数/梯度,抑或是故意安插后门,修改label,或者是试图主导FL,在FedMDFG面前,都会失效。这得益于更新方向对于所有用户而言都是梯度下降以及公平的。例如,有10个用户,其中8个都是恶意用户,那么,FedMDFG得到的更新方向,对于剩下的那两个个非恶意用户A和B而言,依旧是梯度下降的,依旧能够提升FL模型在该用户上的性能表现,模型依旧能在A和B上具有泛化性。

文章做了以下实验来分析FedMDFG的应对安全攻击的表现,它模拟了三种攻击手段:

  • 恶意用户上传随机的梯度给server;

  • 恶意用户故意增大梯度的norm并上传给server,意图主宰FL;

  • 恶意用户上传一个全0向量作为梯度给server。

实验结果如下图:

 

可以看到,FedMDFG成功地防住了这三种攻击,表现出不错的鲁棒性。

后记

由此可见,将多目标优化与联邦学习结合,是一种非常实用的方法。它不但能够具有理论保障地改善联邦学习的公平性,使得联邦学习在non-IID的场景下表现更佳,同时还能很好地抵御联邦学习的安全攻击。我后面将持续关注在更复杂的攻击手段面前的应对之法,也希望这篇文章在帮助自己记录学习点滴之余,也能帮助大家!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/66055.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

R机器学习:神经网络算法的理解与实操,实例解析

神经网络算法是一种模仿生物神经网络(尤其是人脑)结构和功能的算法。它由大量相互连接的节点(称为神经元)组成,这些神经元组织成层,通过传递信号来处理信息。神经网络算法在机器学习、人工智能等领域中扮演…

wsl linux CUDA安装、卸载、清理、版本降级、升级过程详解

目录 1 前言2 卸载与重新安装2.1 列出所有与 CUDA 相关的包2.2 卸载 CUDA2.3 删除残留文件2.4 移除 CUDA 仓库包2.5 删除仓库目录2.6 移除所有 CUDA 相关包2.7 删除 CUDA 的优先级配置文件2.8 查看所有 APT 源中的 CUDA 条目2.9 移除或禁用不需要的 CUDA 仓库源2.10 删除所有 A…

牛客网刷题 ——C语言初阶——OR76 两个整数二进制位不同个数

1. 牛客网题目:OR76 两个整数二进制位不同个数 牛客网OJ链接 描述: 输入两个整数,求两个整数二进制格式有多少个位不同 输入描述:两个整数 输出描述:二进制不同位的个数 示例1 输入:22 33 输出&#xff1a…

【AWS SDK PHP】This operation requests `sigv4a` auth schemes 问题处理

使用AWS SDK碰到的错误,其实很简单,要装个扩展库 保持如下 Fatal error: Uncaught Aws\Auth\Exception\UnresolvedAuthSchemeException: This operation requests sigv4a auth schemes, but the client currently supports sigv4, none, bearer, sigv4-…

设计模式 结构型 装饰器模式(Decorator Pattern)与 常见技术框架应用 解析

装饰器模式(Decorator Pattern),又称为包装器模式(Wrapper Pattern),是一种结构型设计模式。它允许在不改变原有对象结构的基础上,动态地给对象添加一些新的职责(即增加其额外功能&a…

<论文>聊聊初代LLaMA

一、摘要 本文介绍来自Meta的论文《LLaMA: Open and Efficient Foundation Language Models》,这篇2023年的研究发布了开源的LLaMA系列大模型,轰动一时。 译文: 我们推出了 LLaMA,一系列参数规模从 70 亿到 650 亿的基础语言模型。…

把vue项目或者vue组件发布成npm包或者打包成lib库文件本地使用

将vue项目发布成npm库文件,第三方通过npm依赖安装使用;使用最近公司接了一个项目,这个项目需要集成到第三方页面,在第三方页面点击项目名称,页面变成我们的项目页面;要求以npm库文件提供给他们;…

自从学会Git,感觉打开了一扇新大门

“同事让我用 Git 提交代码,我居然直接把项目文件压缩发过去了……”相信很多初学者都经历过类似的窘境。而当你真正掌握 Git 时,才会发现它就像一本魔法书,轻松解决代码管理的种种难题。 为什么 Git 能成为程序员的标配工具?它究…

【重庆】《政务数字化应用费用测算规范》(T/CDCIDA 001—2023)-省市费用标准解读系列36

《政务数字化应用费用测算规范(报批稿)》于2023年11月18日实施,本文件按照GB/T 1.1-2020给出的规则起草,主要适用于重庆政务数字化应用项目的费用测算。我司基于专业第三方信息化项目造价机构角度,从标准创新点、定制软…

Python | 学习type()方法动态创建类

getattr方法的使用场景是在访问不存在的属性时,会触发该方法中的处理逻辑。尤其是在动态属性获取中结合 type()动态创建类有着良好的使用关系。 type()方法常用来判断属性的类别,而动态创建类不常使用,通过如下的几个实例来学习使用&#xff…

机器学习之逻辑回归算法、数据标准化处理及数据预测和数据的分类结果报告

逻辑回归算法、数据标准化处理及数据预测和数据的分类结果报告 目录 逻辑回归算法、数据标准化处理及数据预测和数据的分类结果报告1 逻辑回归算法1.1 概念理解1.2 算法导入1.3 算法优缺点 2 LogisticRegression理解2.1查看参数定义2.2 参数理解2.3 方法2.4基本格式 3 数据标准…

Linux(Ubuntu24.04)源码编译安装VTK7.1.1记录

VTK(Visualization Toolkit)是一个开源的3D可视化开发工具包,用于开发可视化和图形处理应用程序。VTK提供了一系列的算法和工具,用于创建、渲染和处理复杂的3D图形和数据。VTK由C编写,并提供了Python、Java和Tcl等语言…

node.js下载、安装、设置国内镜像源(永久)(Windows11)

目录 node-v20.18.0-x64 工具下载安装设置国内镜像源(永久) node-v20.18.0-x64 工具 系统:Windows 11 下载 官网https://nodejs.org/zh-cn/download/package-manager 版本我是跟着老师选的node-v20.18.0-x64如图选择 Windows、x64、v2…

如何轻松安全地销售旧 Android 手机

众所周知,手机不断更新换代。当您想要的手机终于到货时,您可能迫不及待地将旧 Android 手机更新为最新手机。在此之前,你们中的一些人可能会考虑以最多的钱卖掉旧的Android手机。 但永远不要冲动地卖掉你的旧 Android 手机!为了安…

欧科云链研究院:ChatGPT 眼中的 Web3

编辑|OKG Research 转眼间,2024年已经进入尾声,Web3 行业经历了热闹非凡的一年。今年注定也是属于AI的重要一年,OKG Research 决定拉上 ChatGPT 这位“最懂归纳的AI拍档”,尝试把一整年的研究内容浓缩成精华。我们一共…

【从零开始入门unity游戏开发之——unity篇04】unity6基础入门——场景窗口(Scene)和层级窗口(Hierarchy)介绍

文章目录 场景窗口(Scene)和层级窗口(Hierarchy)一、层级窗口(Hierarchy)1、添加新的对象(物体)2、Hierarchy层级窗口快捷键3、搜索 二、Scene场景窗口1、工具栏控制台2、操作物体位…

Mac中配置vscode(第一期:python开发)

1、终端中安装 xcode-select --install #mac的终端中安装该开发工具 xcode-select -p #显示当前 Xcode 命令行工具的安装路径注意:xcode-select --install是在 macOS 上安装命令行开发工具(Command Line Tools)的关键命令。安装的主要组件包括:C/C 编…

快速将索尼手机联系人导出为 HTML 文件

我想将 Sony Xperia 手机上的联系人导出到计算机上进行备份,并在需要时进行编辑。这可以做到吗?如何做到?作为助手我需要下载什么工具吗? 当您的 Android 手机上存储了如此多的重要联系人,而您又不想丢失它们时&#…

学习threejs,导入AWD格式的模型

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.AWDLoader AWD模型加…

【OAA 】面向对象分析:从概念到实践

🔥个人主页: 中草药 🔥专栏:【Java】登神长阶 史诗般的Java成神之路 我们都知道Java是一门面向对象的开发语言,在软件开发的广袤天地中,面向对象分析(Object-Oriented Analysis,简称…