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

参考论文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,一经查实,立即删除!

相关文章

【51项目】51单片机自制小霸王游戏机

视频演示效果: 纳新作品——小霸王游戏机 目录: 目录 视频演示效果: 目录: 前言:

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 亿的基础语言模型。…

【bluedroid】A2dp Source播放流程源码分析(4)

接上集分析:【bluedroid】A2dp Source播放流程源码分析(3)-CSDN博客 蓝牙和AUDIO之间的接口 蓝牙和audio之间的通信是通过socket,管理socket中的文件是UIPC,UIPC管理两条socket。 A2DP_CTRL_PATH /data/misc/bluedroid/.a2dp_ctrl A2DP_DATA_PATH /data/misc/bluedroid…

React 中结合 antd 的 Input 组件实现防抖输入

在 React 中结合 antd 的 Input 组件实现防抖输入,可以通过以下几种方式实现: 1. 使用 useEffect 和 setTimeout 代码示例 import React, { useState, useEffect } from "react"; import { Input } from "antd";const DebouncedI…

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

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

STM32 NOR FLASH(SPI FLASH)驱动移植(2)

2)FLASH 读取函数 /* * brief 读取 SPI FLASH * note 在指定地址开始读取指定长度的数据 * param pbuf : 数据存储区 * param addr : 开始读取的地址(最大 32bit) * param datalen : 要读取的字节数(最大 65535) * retval 无 */ void norflash_read(uint8_t *pbuf…

自从学会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 数据标准…

.NET在中国的就业前景:开源与跨平台带来的新机遇

随着技术的不断发展和市场需求的变化,.NET在中国的就业前景正变得愈加广阔。尤其是在开源和跨平台的推动下,越来越多的中国中小型企业选择了.NET技术作为其开发平台,进一步提升了.NET技术人才的市场需求。尽管在中国市场,.NET的市…

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

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

Hadoop解决数据倾斜方法

数据倾斜是指在分布式数据处理过程中,数据在某些节点上的分布不均匀,导致这些节点的处理负载过重,而其他节点的资源闲置,从而影响整个系统的性能。在 Hadoop 中,以下是一些解决数据倾斜的方法: 1. 数据预处…

【人工智能】人工智能与大模型

人工智能与大模型的结合正在深刻改变多个行业和领域的格局。 1. 人工智能 (AI) 人工智能指的是使计算机或机器具备模拟人类智能的能力,包括学习、推理、问题解决、自然语言处理、视觉感知等。AI的发展可以分为几个阶段: 弱人工智能 (Narrow AI)&#…

安卓11 SysteUI添加按钮以及下拉状态栏的色温调节按钮

最近客户想要做一个台灯产品,需要实现 串口调节台灯功能 ,其中包括 亮度调节 色温调节 开关 三个功能 话不多说,贴代码 diff --git a/packages/SystemUI/AndroidManifest.xml b/packages/SystemUI/AndroidManifest.xml old mode 100644 new …