人工智能安全 课件全套 1-11 人工智能安全概述 - 第11章 大语言模型安全_第1页
人工智能安全 课件全套 1-11 人工智能安全概述 - 第11章 大语言模型安全_第2页
人工智能安全 课件全套 1-11 人工智能安全概述 - 第11章 大语言模型安全_第3页
人工智能安全 课件全套 1-11 人工智能安全概述 - 第11章 大语言模型安全_第4页
人工智能安全 课件全套 1-11 人工智能安全概述 - 第11章 大语言模型安全_第5页
已阅读5页,还剩574页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章人工智能安全概述人工智能安全简介本章介绍本章从几个经典的人工智能(AI,ArtificialIntelligence)安全案例事件说起,引入人工智能安全的概念及框架,说明了人工智能安全现状与治理方法。最后给出了使用本教材时可能会遇到的一些问题及解决方案。知识与能力目标了解人工智能安全的重要性。认知人工智能安全的概念。掌握人工智能安全的模型。了解人工智能安全现状与治理方法。了解本教材的知识体系。内容提纲1.3人工智能安全的架构、风险及应对方法1.2人工智能安全的概念1.1人工智能安全的引入1.4人工智能安全现状与治理1.5本书的使用方法1.1人工智能安全的引入当前,人类已经进入了人工智能时代。各种人工智能技术如雨后春笋般爆发式出现,ChatGPT、Deepseek、Manus等人工智能大模型的应用更是大大改变了人们原本的生活方式。另外,机器人的出现将在未来会替换到大多数人类的工作。如图1-1所示为做煎饼果子的机器人,并且在独立营业。1.1人工智能安全的引入

2016年11月18日,在中国深圳举办的“第十八届中国国际高新技术成果交易会”上,一台名为“小胖”的机器人引起了很多人的兴趣。如图所示为小胖机器人。1.1人工智能安全的引入小胖机器人原为4-12岁儿童研发,主要用于教育目的。然而在展示的过程中这台机器人却突发故障,在没有任何指令的前提下自行打砸展台的玻璃,最终导致部分展台被破坏。更为严重的是,该机器人在破坏展台的过程中还砸伤了一名路人。如图所示为受伤的路人。该事件大概是国内最早报道的机器人伤害人类的事件。以前类似事件多是在电影电视里才能看到的虚拟场景。从深圳这次安全事件可以看出,人工智能方法自身如果出现问题就可以威胁到人类的安全。1.1人工智能安全的引入当前,人工智能技术应用最具新颖和挑战性的场景之一就是自动驾驶技术,但是就是这样一种技术处理不好的话,依然影响着人类的生命安全。例如,2018年3月23日,苹果公司华裔工程师黄伟伦驾驶特斯拉ModelX在加利福尼亚州山景城附近的高速路上,撞上公路屏障不幸身亡。如图所示为事故现场。1.1人工智能安全的引入美国国家运输安全委员会(NTSB)的调查结果显示,该车祸发生前,这辆特斯拉车的自动驾驶辅助系统被使用了近19分钟,当时汽车以每小时71英里的速度偏离了高速公路。这场导致驾驶员死亡的车祸明显是技术问题,而非人为因素。

从这次事件可以看出,就连特斯拉这样的世界级顶流自动驾驶车企,在面临人工智能安全问题时,依然会出重大安全问题。由此可见,人工智能技术的应用处理不好,会导致人类的生命受到安全威胁。

以上两个典型的与人工智能相关的安全事件,一个是人工智能系统自身的安全问题,也称为人工智能原生安全;另一个是人工智能技术应用出现的安全问题,也称作人工智能衍生安全。以上两种安全问题引起了国内外的广泛讨论,人们纷纷提出一个问题:人工智能是否安全呢?1.1人工智能安全的引入

2025年2月28日,中共中央政治局就建设更高水平平安中国进行第十九次集体学习。中共中央总书记习近平在主持学习时强调“加强网络安全、人工智能安全等方面工作,着力防范重点领域风险!”可见从我国国家层面非常重视人工智能安全。内容提纲1.3人工智能安全的架构、风险及应对方法1.2人工智能安全的概念1.1人工智能安全的引入1.4人工智能安全现状与治理1.5本书的使用方法1.2人工智能安全的概念人工智能是指通过计算机科学、数学、统计学等多学科交叉融合的方法,开发出模拟人类智能的技术和算法。它通过模拟人类智能的学习、推理、感知和行动能力,实现机器自主的思考和决策,从而完成一系列复杂的任务和功能。人工智能安全是指通过釆取必要措施,防范对人工智能系统的攻击、侵入、干扰、破坏和非法使用以及意外事故,使人工智能系统处于稳定可靠运行的状态,以及遵循人工智能以人为本、权责一致等安全原则,保障人工智能算法模型、数据、系统和产品应用的完整性、保密性、可用性、鲁棒性、透明性、公平性和隐私的能力。这个人工智能安全定义是全国信息安全标准化技术委员会在《人工智能安全标准化白皮书(2019年版)》上发布的。以上的对人工智能安全定义只是强调人工智能内在的安全。更广义上的讲,人工智能安全还包括人工智能的应用安全。内容提纲1.3人工智能安全的架构、风险及应对方法1.2人工智能安全的概念1.1人工智能安全的引入1.4人工智能安全现状与治理1.5本书的使用方法1.3人工智能安全的架构、风险及应对方法人工智能安全框架如图1-3所示。包含安全目标、安全风险、安全评估和安全保障4大维度。1.3人工智能安全的架构、风险及应对方法人工智能安全风险:1.数据安全风险2.算法模型安全风险3.机器学习框架安全风险4.人工智能系统应用安全风险5.法律风险。1.3人工智能安全的架构、风险及应对方法人工智能安全风险的应对方法:1.建立完善的安全管理制度。2.人工智能系统风险评估。3.建立应急响应机制。4.加强法律法规的制定和执行。内容提纲1.3人工智能安全的架构、风险及应对方法1.2人工智能安全的概念1.1人工智能安全的引入1.4人工智能安全现状与治理1.5本书的使用方法1.4人工智能安全现状与治理随着人工智能技术的不断进步,全球人工智能安全治理体系面临着前所未有的挑战!如何构建一个安全、可靠、高效的人工智能安全治理体系,成为各国共同面临的重要课题。人工智能的安全性甚至于关乎整个人类的命运。2024年3月21日,联合国大会通过了首个关于人工智能安全的全球决议草案,倡议各国合作起来共同开发“安全、可靠和值得信赖的”人工智能系统,为全球各国合作制定并实施人工智能技术和安全应用的标准奠定了坚实基础。2024年3月13日欧盟通过了《人工智能法案》,该法案强调依照不同风险等级来对人工智能系统安全进行管理。2023年7月10日,中国国家网信办联合国家发展改革委、教育部、科技部、工业和信息化部、公安部、广电总局公布《生成式人工智能服务管理暂行办法》。内容提纲1.3人工智能安全的架构、风险及应对方法1.2人工智能安全的概念1.1人工智能安全的引入1.4人工智能安全现状与治理1.5本书的使用方法1.5本书的使用方法1.本教材提供了许多Python编程的实践内容。这些Python编程实践的源代码都在本教材提供的网盘里,读者可以联系本教材的编辑,免费索取使用。

2.Python编程有句俗语“编程容易,配置难”。本教材所提供的Python编程实践编程很容易,因为作者都已经给出了源代码,但是Python编程环境很难配置。3.教材中,部分实践内容需要大量的算力资源才能实现。但是有的读者算力有限,实现起来有困难。这种情况下有两种解决方案:

(1)在网上购买算力。现在网上有专门卖算力的,价格也不贵。在读者经济每件允许的情况下,可以通过购买算力来实现实践内容。

(2)使用网盘中作者已经训练好的模型来实现实践内容。小结人工智能安全很重要。世界各国都在积极发展人工智能安全技术!感谢同学们的收听!致谢第二章生成对抗网络攻击与防护本章介绍本章深入探讨生成对抗网络(GenerativeAdversarialNetworks,GANs)在信息安全领域的攻击与防护问题。知识要点:1)了解生成对抗网络背景概述2)熟悉生成对抗网络的基本原理与改进分类3)熟悉生成对抗网络攻击的问题定义、攻击原理与攻击分类4)掌握生成对抗网络攻击具体实施案例5)了解生成对抗网络攻击的防护措施内容提纲2.3生成对抗网络攻击基础知识2.2生成对抗网络的基本原理与改进模型2.1生成对抗网络概述2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取2.6生成对抗网络攻击的防护2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别小结2.1生成对抗网络概述生成对抗网络(GANs)是由IanGoodfellow等人在2014年提出的一种创新性深度学习模型[1],其独特之处在于巧妙地引入了对抗机制,通过生成器和判别器这两个核心组件的相互博弈,实现对复杂数据分布的学习和生成。生成器的目标是从随机噪声中生成尽可能逼真的数据样本,而判别器则负责区分真实数据和生成器生成的假数据。2.1生成对抗网络概述GANs的提出为人工智能领域带来了巨大的变革,其应用范围广泛,涵盖了图像生成、文本生成、视频生成、数据增强等多个领域。在图像生成方面,GANs可以生成高质量、高分辨率的图像,如逼真的人脸图像、自然风景图像等,这些生成的图像在视觉上与真实图像几乎没有差异,可用于艺术创作、图像修复、虚拟现实等领域。内容提纲2.3生成对抗网络攻击基础知识2.2生成对抗网络的基本原理与改进模型2.1生成对抗网络概述2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取2.6生成对抗网络攻击的防护2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别小结2.2生成对抗网络的基本原理与改进模型2.2.1基本原理生成对抗网络(GANs)由生成器(Generator)和判别器(Discriminator)两部分组成。其核心思想是通过生成器和判别器的对抗训练,使生成器能够生成与真实数据分布难以区分的假数据。生成对抗网络的原理结构如图2-1所示。2.2生成对抗网络的基本原理与改进模型2.2.1基本原理生成对抗网络(GANs)2.2生成对抗网络的基本原理与改进模型标准生成对抗网络训练的一般步骤如图2-2所示。2.2生成对抗网络的基本原理与改进模型第1步:初始化生成器和判别器的模型参数。第2步:判断是否满足训练的迭代次数。如果“是”,则结束训练;如果“否”则进行下一步。第3步:从随机噪声中采用生成器的输入向量。第4步:从生成器生成一批伪造样本。第5步:使用判别器对真实样本和伪造样本进行分类。第6步:计算判别器的分类损失,并更新判别器的参数,以提高对真实和伪造样本的区分能力。2.2生成对抗网络的基本原理与改进模型第7步:固定判别器的参数通过生成器生成新的伪造样本。第8步:使用判别器对新的伪造样本进行分类。第9步:计算生成器的生成损失,并更新生成器的参数,以提高生成样本的质量。第10步:进一步判断是否满足观察迭代次数。如果“否”则返回第2步。如果“是”,则进行下一步。第11步:绘制真实样本和伪造样本的对比散点图。2.2生成对抗网络的基本原理与改进模型2.2.2改进模型1.DCGAN(DeepConvolutionalGAN)[12]改进点:(1)网络结构:DCGAN使用深度卷积神经网络(CNN)代替了传统的多层感知机(MLP),生成器使用转置卷积层,判别器使用卷积层。这种结构使得GAN在图像生成任务中更加稳定和高效。(2)训练技巧:DCGAN引入了标签平滑(LabelSmoothing)技术,使得训练过程更加平稳。应用场景:图像生成、图像超分辨率、图像到图像的翻译等。2.2生成对抗网络的基本原理与改进模型2.WGAN(WassersteinGAN)改进点:(1)损失函数:WGAN使用Wasserstein距离(也称为EarthMover距离)作为损失函数,解决了传统GAN训练过程中梯度消失和模式崩溃的问题。WGAN的训练更加稳定,生成的样本质量更高。(2)训练技巧:WGAN去掉了最后一层的Sigmoid激活函数,生成器和判别器的损失函数不取对数,限制更新后的权重的绝对值到一定范围内,使用RMSprop或SGD优化器。应用场景:图像生成、文本生成、数据增强等。2.2生成对抗网络的基本原理与改进模型3.StyleGAN改进点:(1)样式变换层:StyleGAN通过使用来自映射网络的样式信息来调整生成图像的特征图,从而实现对图像各个部分的控制。例如,可以使用不同的样式信息来控制图像的背景、面部特征、颜色等,从而生成具有特定风格的图像。(2)渐进式训练:StyleGAN采用渐进式训练方法,从较低的分辨率(例如4x4)开始训练生成器,并逐渐增加分辨率,直到最终达到目标分辨率(例如1024x1024)。这种方法可以有效缓解高分辨率图像生成时的训练不稳定性。(3)映射网络:StyleGAN引入了映射网络,将随机噪声映射到一个新的潜在空间(样式空间),使得生成器可以从样式空间中获取更多有用的信息,从而生成更加多样化且高质量的图像。应用场景:高分辨率图像生成、肖像风格迁移、视频生成等。2.2生成对抗网络的基本原理与改进模型4.TransGAN改进点:(1)网络结构:TransGAN使用纯Transformer结构作为生成器和判别器,解决了传统GAN中卷积神经网络的局限性。Transformer的全局感受野使得生成器能够捕获全局特征,从而提高生成样本的质量和多样性。(2)数据增强:TransGAN通过Translation、Cutout和Color三种数据增强方法,显著提高了模型的性能。(3)相对位置编码:TransGAN引入了相对位置编码,增强了模型对位置信息的捕获能力,从而进一步提升了性能。应用场景:图像生成、文本生成、数据增强等。内容提纲2.3生成对抗网络攻击基础知识2.2生成对抗网络的基本原理与改进模型2.1生成对抗网络概述2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取2.6生成对抗网络攻击的防护2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别小结2.2生成对抗网络的基本原理与改进模型基于生成对抗网络(GANs)的对抗攻击是一种利用生成器与判别器对抗机制自动生成隐蔽对抗样本的方法。2.2生成对抗网络的基本原理与改进模型图2-3展示了基于GANs的对抗攻击流程:生成器与判别器通过交替训练优化,最终生成器输出的扰动能够以高隐蔽性欺骗目标模型。2.2生成对抗网络的基本原理与改进模型攻击分类:

2.2生成对抗网络的基本原理与改进模型1.基于攻击目标的分类(1)欺骗模型:攻击者生成对抗样本,使模型对这些样本产生错误的预测,从而降低模型的性能和可靠性。例如,攻击者可以生成与真实图像极为相似的对抗图像,使图像分类模型将其误分类为其他类别。(2)提取模型:攻击者通过训练生成器来模拟目标模型的行为,从而窃取目标模型的内部结构和参数信息。例如,攻击者可以利用生成器生成与目标模型输入相似的样本,获取目标模型的输出结果,进而推断出目标模型的内部结构和参数。(3)拒绝服务:攻击者通过生成大量的对抗样本,使目标模型在处理这些样本时消耗大量的计算资源,导致模型无法正常响应其他请求。(4)隐私泄露:攻击者利用GANs生成包含敏感信息的样本,从而泄露模型训练数据中的隐私信息。2.2生成对抗网络的基本原理与改进模型1.基于攻击目标的分类(5)数据投毒:攻击者在训练数据中注入恶意样本,从而影响模型的训练过程,使模型在训练后对特定的输入产生错误的预测。(6)模型投毒:攻击者在模型训练过程中篡改模型的参数,从而破坏模型的正常功能。2.2生成对抗网络的基本原理与改进模型2.基于攻击者知识的分类(1)白盒攻击:攻击者拥有目标模型的完整知识,包括模型的结构、参数和训练数据等。在这种情况下,攻击者可以充分利用这些信息来设计更有效的攻击策略。(2)黑盒攻击:攻击者对目标模型没有任何先验知识,只能通过查询目标模型的输入输出来获取信息。这种攻击方式更具挑战性,但通过生成对抗样本等手段,攻击者仍然可以对目标模型实施有效的攻击。(3)灰盒攻击:攻击者拥有部分目标模型的知识,例如模型的结构或部分参数。这种攻击方式介于白盒攻击和黑盒攻击之间,攻击者可以根据已知的信息来优化攻击策略。2.2生成对抗网络的基本原理与改进模型3.基于攻击阶段的分类(1)训练阶段攻击:攻击者在模型的训练阶段实施攻击,例如通过数据投毒或模型投毒等方式,影响模型的训练过程,使模型在训练后具有特定的漏洞或弱点。(2)部署阶段攻击:攻击者在模型部署后实施攻击,例如通过生成对抗样本或拒绝服务攻击等方式,干扰模型的正常运行,使模型在实际应用中无法正常工作。2.2生成对抗网络的基本原理与改进模型4.基于攻击方式的分类(1)逃避攻击:攻击者生成对抗样本,使其能够逃避模型的检测。例如,在安全检测系统中,攻击者可以生成与恶意软件行为相似的样本,欺骗杀毒软件的检测,导致恶意软件在系统中潜伏和传播。(2)投毒攻击:攻击者在训练数据中注入恶意样本,从而影响模型的训练过程,使模型在训练后对特定的输入产生错误的预测。(3)隐私攻击:攻击者利用GANs生成包含敏感信息的样本,从而泄露模型训练数据中的隐私信息。(4)滥用攻击:攻击者利用GANs的生成能力,生成大量的虚假数据,从而对模型进行滥用,例如生成虚假的用户评论、新闻报道等,影响模型的正常运行。内容提纲2.3生成对抗网络攻击基础知识2.2生成对抗网络的基本原理与改进模型2.1生成对抗网络概述2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取2.6生成对抗网络攻击的防护2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别小结2.4实践案例:基于生成对抗网络的sin曲线样本模拟本次实践的目标是构建一个简单的GANs模型,生成能够欺骗判别器的伪造样本,使判别器难以区分真实样本和伪造样本。具体而言,攻击旨在使判别器在真实样本上的准确率和伪造样本上的准确率均接近随机猜测水平(约50%),从而实现对目标模型的有效干扰。本此实践的目的如下:理解生成对抗网络GANs的基本原理:通过构建并训练一个简单的GANs模型,深入学习GANs的核心概念与运作机制,明确生成器负责样本生成、判别器负责评估样本真实性的职责分工,掌握GANs模型通过对抗训练实现优化的基本流程。2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.4.2实践环境 Python版本:3.10.12或以上版本

深度学习框架:tensorflow2.15.0,keras2.15.0

其他库版本:numpy1.25.2,matplotlib3.7.1 keras官方文档:https://keras-zh.readthedocs.io/why-use-keras/ tensorflow中的keras文档:/guide/keras?hl=zh-cn2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.4.3实践步骤本实践例子要求编写代码实现简单的GANs模型,用于生成伪造样本,流程图如图2-4所示。2.4实践案例:基于生成对抗网络的sin曲线样本模拟实践核心代码定义生成器模型。2.4实践案例:基于生成对抗网络的sin曲线样本模拟实践核心代码定义判别器模型。2.4实践案例:基于生成对抗网络的sin曲线样本模拟实践核心代码定义完整的生成对抗网络模型。。2.4实践案例:基于生成对抗网络的sin曲线样本模拟实践核心代码定义了summarize_performance函数,用于打印当前轮次和准确率,绘制真实样本(红色)和伪造样本(蓝色)的分布图,构造并保存绘图结果的文件名。2.4实践案例:基于生成对抗网络的sin曲线样本模拟实践核心代码定义了train函数,用于更新判别器的权重,训练生成器以生成更逼真的伪造样本,先用真实数据和生成数据训练判别器,使其能区分真假;再用生成数据训练生成器,让生成器欺骗判别器。每n_eval轮调用summarize_performance()函数评估并总结生成器和判别器的性能。2.4实践案例:基于生成对抗网络的sin曲线样本模拟实践结果。2.4实践案例:基于生成对抗网络的sin曲线样本模拟实践结果。内容提纲2.3生成对抗网络攻击基础知识2.2生成对抗网络的基本原理与改进模型2.1生成对抗网络概述2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取2.6生成对抗网络攻击的防护2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别小结2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践概述:在现代机器学习应用中,模型的训练往往依赖于大量的真实数据。然而,在某些场景下,攻击者可能无法获取这些真实数据,但仍然希望对目标模型进行有效的对抗性攻击。无数据替代训练方法(DaST)应运而生,它通过利用生成对抗网络(GANs)来合成样本,从而在无需真实数据的情况下训练出能够对目标模型进行有效攻击的替代模型。

本次实践的主要目标是验证DaST方法在对抗性攻击中的有效性。具体而言,通过使用DaST训练的替代模型生成对抗样本,并评估这些样本在不同场景下的攻击成功率。本实践实践目的:1.检验DaST方法的效能:将通过DaST训练得到的替代模型与传统预训练模型在对抗攻击中的表现进行对比,证明DaST方法在生成高效对抗样本方面的能力。2.分析不同网络架构的影响:采用多种网络架构训练替代模型,研究不同架构对攻击成功率的影响,从而确定DaST方法的灵活性和适应性。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取3.测试在现实世界任务中的应用性:通过对MicrosoftAzure平台上的在线机器学习模型实施攻击,验证DaST方法在实际场景中的效果。4.探索无数据训练的潜力:DaST方法能够在无需真实训练数据的情况下训练替代模型,本次实践将探索这种训练方式在对抗攻击中的优势和局限性。5.增强对抗样本的泛化能力:训练能够生成具有高转移性的对抗样本的替代模型,并测试这些样本在不同模型上的效果,以评估替代模型的泛化能力。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践环境:Python版本:3.9或者更高的版本Pytorch1.11.0Cuda:11.3.1GPU:A40(AUTODL云服务器,若无条件,可直接对本地已训练好的模型进行评估)所需安装库:numpy1.21.5,matplotlib3.4.3,pyqt55.15.2数据集:MNIST、CIFAR-102.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践步骤:2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践核心代码:第一个神经网络模型Net_s:包含两个卷积层(分别用20和50个5x5过滤器)和两个全连接层(500神经元和10神经元输出),每个卷积层后接2x2最大池化,使用ReLU激活函数和F.log_softmax输出。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践核心代码:第二个神经网络模型Net_m:在Net_s基础上增加一个卷积层(50个3x3过滤器,后接2x2最大池化),全连接层接收更深层次特征图,前向传播函数中有sign参数调节内部计数,输出使用F.log_softmax。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践核心代码:第三个神经网络模型Net_l:比Net_m更复杂,增加第四个卷积层,共四个卷积层每层后跟最大池化,只有一个全连接层直接连接到输出层,输出为线性层结果,需外部应用softmax获取分类概率。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践核心代码:进行训练和评估。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践核心代码:定义对抗性攻击函数test_adver,用于在原始测试集上评估模型准确率,根据指定攻击方法生成对抗样本,并计算攻击成功率。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践结果:实践结果如图2-7所示,模型准确率和攻击成功率如图2-8所示,窃取结果如图2-9所示。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践结果:实践结果如图2-7所示,模型准确率和攻击成功率如图2-8所示,窃取结果如图2-9所示。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取实践结果:实践结果如图2-7所示,模型准确率和攻击成功率如图2-8所示,窃取结果如图2-9所示。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取表2-2中,ASR:攻击成功率。Query:评估阶段的查询数。Boundary:基于决策的攻击。GLS:一种基于贪婪局部搜索的基于分数的黑盒攻击。-:表示DaST在评估阶段不需要查询。本实践中的DaST使用FGSM生成攻击。2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取内容提纲2.3生成对抗网络攻击基础知识2.2生成对抗网络的基本原理与改进模型2.1生成对抗网络概述2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取2.6生成对抗网络攻击的防护2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别小结2.6生成对抗网络攻击的防护表2-2中,ASR:攻击成功率。Query:评估阶段的查询数。Boundary:基于决策的攻击。GLS:一种基于贪婪局部搜索的基于分数的黑盒攻击。-:表示DaST在评估阶段不需要查询。本实践中的DaST使用FGSM生成攻击。2.6生成对抗网络攻击的防护生成对抗网络(GANs)攻击作为一种新兴的网络攻击手段,其独特性在于它可能会巧妙地利用GANs自身的特性来实施攻击,这无疑给防御工作带来了极大的挑战。针对这一问题,主要存在两个方面的隐患:其一,攻击者可以利用GANs强大的生成能力,生成难以区分的恶意样本。其二,GANs的对抗特性也可能被攻击者所利用。2.6生成对抗网络攻击的防护除此之外,系统级的综合防护措施也是必不可少的。1.可以构建基于同态加密的分布式模型更新系统2.将关键检测模块部署在SGX(SoftwareGuardExtensions)等安全飞地中。3.可以将模型推理服务与特定硬件PUF(PhysicalUnclonableFunction)特征绑定。4.建立基于生成器梯度反演的攻击溯源系统,并结合区块链存证实现司法固证。2.6生成对抗网络攻击的防护2.6.1针对恶意样本生成的防护。面对基于GANs生成的恶意样本,尽管技术进步使样本区分难度增加,但仍可通过以下措施增强防护:1.增强检测模型架构2.时序行为建模3.生成样本识别技术2.6生成对抗网络攻击的防护2.6.2针对模型窃取攻击的防护针对基于GAN的模型窃取攻击的防护措施主要包括以下几种:1.输入扰动防御:核心思想是通过修改生成器的潜在代码(latentcodes),生成多样性受限或分布偏移的样本,从而降低攻击者提取高精度模型的能力。2.输出扰动防御:核心思想是直接对生成图像进行后处理,通过添加噪声或进行压缩等操作来降低样本质量,使攻击者无法有效训练替代模型。3.查询控制防御:核心思想是通过限制攻击者的查询行为来防止数据泄露。4.模型结构防御:核心思想是通过优化模型的结构和训练过程来提高其对攻击的鲁棒性。2.6生成对抗网络攻击的防护5.数字水印:一种通过将具有特定意义的数字信号(如图像、文本等)隐秘地嵌入到载体图像中的技术,可以有效实施版权保护、所有权认证、内容完整性验证、篡改检测及定位。这种方法可以在不影响图像正常使用的情况下,为图像添加不可见的水印信息,从而在发生侵权或篡改时提供有力的证据。6.差分隐私:一种通过为大型数据集添加随机噪声来防止攻击者从统计结果中提取出任何个人的具体信息的技术。这种方法可以在保证数据的统计特性的同时,保护个体的隐私信息,从而防止攻击者通过数据分析获取敏感信息。内容提纲2.3生成对抗网络攻击基础知识2.2生成对抗网络的基本原理与改进模型2.1生成对抗网络概述2.4实践案例:基于生成对抗网络的sin曲线样本模拟2.5实践案例:基于生成对抗攻击无数据替代训练的模型窃取2.6生成对抗网络攻击的防护2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别小结2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别2.7.1实践概述深度伪造(DeepFake)这一概念最早出现于2017年,随着人工智能技术在网络上的兴起,深度伪造逐渐为大众所熟知。深度伪造是“深度学习”和“伪造”的结合,是一种可以将目标人物的图像或视频叠加到另一个人身上的机器学习方法,从而创建目标人物做或说原人物所做或所说之事的新的“不真实”图像或视频。2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别本实践实践目的:1.验证模型有效性:通过训练DenseNet模型,验证其在区分真实人脸和StyleGAN生成的虚假人脸方面的有效性。2.探索模型性能:评估DenseNet模型在不同阈值下的性能,确定其在实际应用中的可行性和鲁棒性。2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别2.7.2实践环境• Python版本:3.9或者更高的版本• 实践平台:kaggle• 实践数据集:kaggle平台的140k-real-and-fake-faces数据集2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别2.7.4实践核心代码2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别实践结果:模型测试结果如下所示,分别是分类报告如图2-11所示,混淆矩阵如图2-12所示,ROC曲线如图2-13所示。2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别实践结果:模型测试结果如下所示,分别是分类报告如图2-11所示,混淆矩阵如图2-12所示,ROC曲线如图2-13所示。2.7防护案例:基于DenseNet对真实人脸和StyleGAN生成的虚假人脸进行识别实践结果:模型测试结果如下所示,分别是分类报告如图2-11所示,混淆矩阵如图2-12所示,ROC曲线如图2-13所示。小结本节介绍了生成对抗网络攻击与防护感谢同学们的收听!致谢第3章数据投毒攻击与防护本章介绍数据投毒攻击(PoisoningAttack)通过篡改训练数据的标签或特征,使得模型在测试阶段出现异常行为或性能下降。 知识要点了解数据投毒攻击的背景与动机熟悉数据投毒攻击原理掌握数据投毒攻击方法了解数据投毒攻击实验与案例分析掌握数据投毒防护策略了解数据投毒防护实验与案例分析内容提纲3.3实践案例:基于卷积神经网络的数据投毒攻击3.2数据投毒攻击原理3.1数据投毒攻击概述3.4数据投毒防护3.5实践案例:基于卷积神经网络的数据投毒防护小结3.1数据投毒攻击概述数据投毒攻击是指在数据收集阶段,攻击者通过篡改训练数据,尤其是修改数据标签或特征,从而影响机器学习模型的训练过程,导致模型性能下降甚至出现错误预测。3.1数据投毒攻击概述在机器学习和深度学习应用中,数据投毒攻击对模型的威胁尤为严重,因为大多数模型依赖大量训练数据来提高准确性和泛化能力。如图3-2所示,攻击者通过篡改原始数据集中的数据,能够在不引起注意的情况下影响模型的训练和最终输出,导致模型在实际应用中的决策或预测能力受到干扰。3.1数据投毒攻击概述在自动驾驶系统的计算机视觉模型中,它是依赖大量的图像数据来识别不同道路标志的类别。如图3-3所示攻击者通过篡改一部分图像数据的标签,将“停车”篡改为“限速”,从而使得模型在训练过程中学到错误的模式。内容提纲3.3实践案例:基于卷积神经网络的数据投毒攻击3.2数据投毒攻击原理3.1数据投毒攻击概述3.4数据投毒防护3.5实践案例:基于卷积神经网络的数据投毒防护小结3.2数据投毒攻击原理数据投毒攻击是一种针对机器学习模型的攻击方式,其基本原理是通过故意篡改训练数据的标签或特征,诱使模型在训练过程中学到错误的模式,从而在测试阶段表现出异常或性能显著下降。3.2数据投毒攻击原理数据投毒攻击形式:3.2数据投毒攻击原理数据投毒攻击形式:,标签投毒攻击是指攻击者通过篡改训练数据中的标签(即目标变量),使得模型在学习过程中获取错误的类别信息,从而导致模型产生误分类。特征投毒攻击则是指攻击者通过修改数据样本的特征(即输入变量),使得模型无法从数据中提取有效的信息,导致其学习到错误的模式。3.2数据投毒攻击原理数据投毒攻击优化公式:数据投毒攻击的基本目标是通过篡改训练数据,使得机器学习模型在面对新的数据时,产生误分类或者错误预测。为了量化这种影响,可以使用如式(3.1)所示的攻击优化公式:3.2数据投毒攻击原理数据投毒攻击过程:

3.2数据投毒攻击原理数据投毒攻击过程:

3.2数据投毒攻击原理数据投毒攻击是一种通过篡改训练数据或测试数据来误导机器学习模型的攻击方法。攻击者通过操控数据的标签或特征,迫使模型学习到错误的模式,从而在预测时产生误分类。本节将介绍三种常见的数据投毒攻击方法:基于标签翻转的数据投毒攻击、基于优化的数据投毒攻击以及基于梯度的数据投毒攻击。1、基于标签翻转的数据投毒攻击3.2数据投毒攻击原理2、基于优化的数据投毒攻击3.2数据投毒攻击原理3、基于梯度的数据投毒攻击内容提纲3.3实践案例:基于卷积神经网络的数据投毒攻击3.2数据投毒攻击原理3.1数据投毒攻击概述3.4数据投毒防护3.5实践案例:基于卷积神经网络的数据投毒防护小结3.3实践案例:基于卷积神经网络的数据投毒攻击实践概述:人工智能模型在计算机视觉领域取得了显著成效,并在图像分类、目标检测和语义分割等任务中得到了广泛应用。然而,这些模型在实际应用中可能会受到多种攻击威胁,其中数据投毒攻击(PoisoningAttack)是一种极具破坏力的安全威胁。数据投毒攻击通过篡改训练数据的标签或特征,使得模型在测试阶段出现异常行为或性能下降。这种攻击对依赖外部数据进行训练的模型构成了严重的安全挑战。3.3实践案例:基于卷积神经网络的数据投毒攻击实践环境:Python版本:3.10.0深度学习框架:Pytorch2.4.1运行平台:PyCharm其他库版本:numpy1.24.3,matplotlib3.7.2,torchvision0.15.2使用数据集:MNIST3.3实践案例:基于卷积神经网络的数据投毒攻击实践步骤:3.3实践案例:基于卷积神经网络的数据投毒攻击实践步骤:第1步:下载并处理数据集下载并预处理开源的MNIST数据集,确保数据格式符合模型训练需求。第2步:执行数据投毒攻击采用特定的攻击策略,在训练集中注入恶意数据。这些恶意数据通常携带误导性标签或特征,目的是扰乱模型的学习过程,使其产生错误分类。第3步:定义损失函数和优化器设定损失函数,并选择Adam作为优化器,为后续训练做好准备。随后初始化损失函数值和梯度,在训练开始前,初始化模型的损失值和梯度。第4步:执行前向传播和反向传播将输入数据通过卷积神经网络进行前向传播,计算模型的预测值。依据定义的损失函数,计算模型当前预测结果的损失。随后计算梯度并更新模型参数,优化模型以减少预测误差。3.3实践案例:基于卷积神经网络的数据投毒攻击实践步骤:第5步:检查是否完成所有训练数据的迭代若尚未完成,则继续训练,返回至前向传播步骤。若已完成,则进入下一步。第6步:检查训练轮次是否达到设定的epoch若未达到设定的epoch,返回至前向传播步骤,继续训练。若达到设定的epoch,则进入评估阶段。第7步评估:模型在测试集上的准确率并可视化评估结果在测试集上运行模型,评估其分类性能。通过可视化工具分析模型的预测表现,以监控投毒攻击的影响。3.3实践案例:基于卷积神经网络的数据投毒攻击实践核心代码3.3实践案例:基于卷积神经网络的数据投毒攻击实践结果(一)实验结果:当模型的学习率lr=0.001,投毒样本比例为15%,投毒策略为将原有的标签修改为该标签的下一位数字(0->1,9->0),投毒前检测结果和投毒后检测结果示例如图3-9、3-10所示:3.3实践案例:基于卷积神经网络的数据投毒攻击(二)对比实验3.3实践案例:基于卷积神经网络的数据投毒攻击(二)对比实验3.3实践案例:基于卷积神经网络的数据投毒攻击(二)对比实验3.3实践案例:基于卷积神经网络的数据投毒攻击(二)对比实验内容提纲3.3实践案例:基于卷积神经网络的数据投毒攻击3.2数据投毒攻击原理3.1数据投毒攻击概述3.4数据投毒防护3.5实践案例:基于卷积神经网络的数据投毒防护小结3.4数据投毒防护3.4.1数据清洗数据清洗是一种通过去除异常值、噪声数据和恶意数据来提高数据质量的技术。在数据清洗过程中,首先需要识别并删除那些明显偏离正常模式的数据点,这些数据点通常是潜在的投毒数据。清洗方法可以基于统计学原理,也可以基于模型来实现。3.4数据投毒防护1、基于统计学的异常值检测基于统计学的异常值检测方法利用数据的分布特性来识别异常数据。其中Z-score方法是一种常见的统计方法,通过标准化数据,来判断某个数据点是否偏离正常值。该的核心思想是计算每个数据点与数据均值之间的标准差距离。若数据点的Z-score值超过某个阈值,则认为该点为异常值。3.4数据投毒防护2、基于模型的异常值检测除了基于统计学的方法,另一种常见的异常值检测方法是基于模型的检测,其中孤立森林(IsolationForest)是一种通过递归分割数据空间来检测异常数据的技术。它能够自动识别出偏离大多数样本的数据点,尤其在高维数据中表现良好。3.4数据投毒防护2、基于模型的异常值检测除了基于统计学的方法,另一种常见的异常值检测方法是基于模型的检测,其中孤立森林(IsolationForest)是一种通过递归分割数据空间来检测异常数据的技术。它能够自动识别出偏离大多数样本的数据点,尤其在高维数据中表现良好。3.4数据投毒防护鲁棒性训练:鲁棒性训练是一种通过调整模型训练过程,使模型对异常数据或恶意数据更加稳健的方法。通过应用正则化、数据增强等技术,可以增加模型对异常数据的容忍度,从而降低数据投毒的风险[9]。1、L2正则化3.4数据投毒防护2、数据增强数据增强是通过对训练数据进行变换(如旋转、平移、缩放等)来增加数据的多样性,增强模型的泛化能力。数据增强不仅可以提高模型对新数据的适应能力,还能使模型在面对投毒数据时更加稳健。3.4数据投毒防护1、训练阶段的异常检测在训练阶段,可以使用自编码器(Autoencoder)进行异常检测。自编码器是一种神经网络架构,它通过将输入数据压缩成一个低维的表示(编码部分),然后再将其重构为原始数据的近似值(解码部分)。3.4数据投毒防护1、训练阶段的异常检测在训练阶段,可以使用自编码器(Autoencoder)进行异常检测。自编码器是一种神经网络架构,它通过将输入数据压缩成一个低维的表示(编码部分),然后再将其重构为原始数据的近似值(解码部分)。3.4数据投毒防护2、部署阶段的异常检测在部署阶段,可以使用模型输出的异常波动来检测投毒行为。例如在基于集成学习的模型中,如果某一模型的输出与其他模型的输出存在较大偏差,则可能是数据或模型本身存在异常。常用的异常检测方法包括基于加权平均的模型输出检测或基于离群点检测的技术。3.4数据投毒防护3.4.4多模型验证多模型验证是通过使用多个独立训练的模型或不同的数据分区,来验证数据的一致性和模型的可靠性。这种方法能够有效减少单一模型或数据集被投毒攻击的风险,并提高模型的整体稳定性。3.4数据投毒防护1、集成学习集成学习通过训练多个独立的模型,并将它们的预测结果进行合并,从而提高模型的鲁棒性。在集成学习中,每个模型都会根据输入数据进行独立的预测,随后通过投票或加权平均的方式整合这些预测结果。常见的集成方法包括随机森林(RandomForest)和梯度提升树(GradientBoosting)等。这些方法通过投票或加权平均的方式整合多个模型的预测结果,从而减少单一模型在面对数据投毒攻击时的表现不稳定性3.4数据投毒防护1、集成学习

3.4数据投毒防护2、交叉验证交叉验证是一种常用的验证方法,它通过将数据集划分为多个子集,分别训练模型并验证其性能。

内容提纲3.3实践案例:基于卷积神经网络的数据投毒攻击3.2数据投毒攻击原理3.1数据投毒攻击概述3.4数据投毒防护3.5实践案例:基于卷积神经网络的数据投毒防护小结3.5实践案例:基于卷积神经网络的数据投毒防护3.5.1实践概述数据投毒防护的核心目标是通过检测和过滤掉训练数据中的恶意样本,确保模型的训练过程不受干扰,从而提高模型的鲁棒性和安全性。本节主要介绍基于卷积神经网络(CNN)的数据投毒防护案例。通过使用K近邻(KNN)算法对训练数据进行清洗,过滤掉被投毒的样本,最终恢复模型的性能。实验结果表明,该防护方法能够有效抵御数据投毒攻击,恢复模型的准确率。3.5实践案例:基于卷积神经网络的数据投毒防护3.5.2实践环境Python版本:3.10.0深度学习框架:Pytorch2.4.1运行平台:PyCharm其他库版本:numpy1.24.3,matplotlib3.7.2,torchvision0.15.2,sklearn使用数据集:MNIST3.5实践案例:基于卷积神经网络的数据投毒防护3.5.3实践步骤数据投毒防护案例的实现流程图如3-18所示。3.5实践案例:基于卷积神经网络的数据投毒防护第1步:加载并预处理数据集下载并加载MNIST数据集,执行数据预处理,确保数据格式适用于模型训练。第2步:模拟数据投毒攻击设计投毒策略,通过标签翻转规则修改部分训练数据的标签,生成受攻击的训练数据集。第3步:使用K近邻(KNN)数据清洗采用KNN算法对受攻击的数据进行清洗,移除与大多数邻居标签不一致的异常样本,生成清洗后的训练数据集。3.5实践案例:基于卷积神经网络的数据投毒防护第4步:训练模型首先训练基准模型,在原始(未受攻击)数据集上训练卷积神经网络(CNN)模型,以作为性能基准。随后训练投毒模型,使用受攻击的数据集训练CNN模型,以评估数据投毒攻击对模型的影响。最后训练防护模型,采用经过KNN清洗后的数据集训练CNN模型,以测试数据清洗方法的防护效果。第5步“模型评估并进行可视化结果展示在测试集上评估三个模型(基准模型、投毒模型、防护模型)的性能,分析它们的准确率和鲁棒性。通过可视化工具对比投毒前、投毒后以及防护后模型的预测结果,展示投毒攻击的影响及防护措施的有效性。3.5实践案例:基于卷积神经网络的数据投毒防护3.4.4实践核心代码定义投毒攻击实施规则函数实现了标签翻转(LabelFlipping)数据投毒攻击,通过修改部分训练数据的标签来扰乱模型学习。该函数设定标签翻转规则flip_mapping,如1→8,2→7,并按flip_ratio随机选择部分样本翻转标签,生成受攻击的数据集。如下图所示展示了该部分代码内容。3.5实践案例:基于卷积神经网络的数据投毒防护该函数旨在通过多数投票机制识别并过滤掉潜在的异常数据。如下图所示展示了该部分代码内容。3.5实践案例:基于卷积神经网络的数据投毒防护3.5.5实践结果数据投毒防护实验结果如图3-19所示。其展示了10个样本的预测结果,分为四行:第一行为真实标签(GT),第二行为使用干净数据训练的模型预测结果(clean),第三行为使用受攻击数据训练的模型预测结果(attacked),第四行为使用防御后数据训练的模型预测结果(defended)。内容提纲3.3实践案例:基于卷积神经网络的数据投毒攻击3.2数据投毒攻击原理3.1数据投毒攻击概述3.4数据投毒防护3.5实践案例:基于卷积神经网络的数据投毒防护小结小结本章讲述了“数据投毒攻击与防护”知识。感谢同学们的收听!致谢第4章对抗样本攻击与防护本章介绍对抗样本生成算法主要用于生成能够欺骗机器学习模型的输入样本。这些算法通过在原始输入数据中添加微小的、难以察觉的扰动,使得模型做出错误的预测。 知识要点:了解对抗样本攻击背景概述熟悉对抗样本攻击的问题定义与攻击分类熟悉几种常见对抗样本攻击算法掌握对抗样本攻击具体实施案例了解对抗样本攻击的防护措施内容提纲4.3对抗样本攻击算法4.2对抗样本攻击基础知识4.1对抗样本攻击概述4.4实践案例:MNIST手写数字识别4.5对抗样本攻击防护小结4.1对抗样本攻击概述

2013年,Szegedy等人[2]在研究图像分类问题时,观察到一个“反直觉”现象:通过对输入图像添加人类视觉难以察觉的细微扰动,即可使深度神经网络DNN以较高置信度输出错误分类结果。研究者将这种现象称为对抗样本攻击,将添加细微扰动后的原始样本称为对抗样本。之后,越来越多的研究还发现强化学习模型、循环神经网络RNN等深度学习模型也存在类似问题。自发现对抗样本以来,对抗攻击的执行手段层出不穷。了解熟悉对抗样本攻击的实现原理,有助于对抗防护的施行。本章将对对抗样本攻击具体算法进行深入解析,并介绍一种对抗样本攻击的具体案例。内容提纲4.3对抗样本攻击算法4.2对抗样本攻击基础知识4.1对抗样本攻击概述4.4实践案例:MNIST手写数字识别4.5对抗样本攻击防护小结4.2对抗样本攻击基础知识4.2.1问题定义对抗样本攻击是针对深度学习模型的一种恶意攻击方法,其核心特征在于利用微小且难以察觉的扰动让模型发生预测错误。4.2对抗样本攻击基础知识4.2.1问题定义对抗样本攻击4.2对抗样本攻击基础知识攻击分类:

根据攻击环境的不同,即攻击者获取先验信息多少的不同,对抗样本攻击可以分为白盒攻击(WhiteBoxAttack)和黑盒攻击(BlackBoxAttack)[4]。白盒攻击的攻击者知晓攻击模型的全部信息,包括训练数据、超参数、模型架构等。而黑盒攻击的攻击者无法获取模型网络结构、超参数等内部信息,仅能控制输入来获取模型有限的输出结果。相较于白盒攻击,黑盒攻击不需要获取模型自身相关信息,更加符合实际应用场景。根据扰动生成方法的不同,可以将对抗样本攻击分为基于梯度的攻击、基于优化的攻击、基于迁移的攻击和基于查询的攻击。基于梯度的攻击依赖于模型的梯度信息,通过计算损失函数关于输入的梯度来生成扰动,常见的攻击方法有快速梯度符号法、迭代梯度法和投影梯度下降法等。4.2对抗样本攻击基础知识攻击分类:内容提纲4.3对抗样本攻击算法4.2对抗样本攻击基础知识4.1对抗样本攻击概述4.4实践案例:MNIST手写数字识别4.5对抗样本攻击防护小结4.3对抗样本攻击算法4.3.1基于梯度的攻击1.快速梯度符号法快速梯度符号法(FastGradientSignMethod,FGSM)是由Goodfellow等人在2014年研究神经网络模型对抗扰动干扰的脆弱性原因时提出的[4]。他们认为对抗样本产生的主要原因不是非线性和过拟合,而是模型本身的线性特性,让高维空间中的线性特性足以产生对抗样本,并以此为基础设计了一种简易的对抗样本生成方法FGSM。4.3对抗样本攻击算法4.3.1基于梯度的攻击1.快速梯度符号法4.3对抗样本攻击算法4.3.1基于梯度的攻击2.迭代梯度法:FGSM算法只需要计算一次梯度,生成对抗样本的速度非常快,适合做对抗攻击的基准测试,但生成的对抗样本可能并不总是最强的。迭代梯度法(IterativeFastGradientSignMethod,I-FGSM)算法便是采用迭代方法的FGSM扩展方法,也被称为基础迭代方法(BasicIterativeMethod,BIM)4.3对抗样本攻击算法4.3.1基于梯度的攻击2.迭代梯度法:4.3对抗样本攻击算法3.MI-FGSM算法基于动量的快速梯度符号法(MomentumIterativeFastGradientSignMethod,MI-FGSM)通过引入动量加速迭代优化过程,有助于稳定对抗扰动更新方向和跳出局部最优解,有利于增强对抗样本的对抗迁移性。而动量法是一种通过在迭代过程中累积沿损失函数梯度方向的速度矢量,从而加速梯度下降的技术。记住之前的梯度信息可以帮助算法更顺利地穿越狭窄的山谷、小的驼峰以及较差的局部最小值或最大值。4.3对抗样本攻击算法3.MI-FGSM算法基于动量的快速梯度符号法4.3对抗样本攻击算法3.MI-FGSM算法基于动量的快速梯度符号法4.3对抗样本攻击算法3.MI-FGSM算法:基于动量的快速梯度符号法4.3对抗样本攻击算法4.投影梯度下降法投影梯度下降法(ProjectedGradientDescent,PGD)[7]是由Madry等人在2017年提出的,它既是生成对抗样本的算法,也是对抗训练的防御算法。此外,Mardry等人的论文指出PGD是一阶中的最强攻击。这表明如果某一防御方法对该攻击有很好的防御效果,那么应对其攻击也不在话下。4.3对抗样本攻击算法4.投影梯度下降法投影梯度下降法。4.3对抗样本攻击算法基于优化的攻击:C&W(Carlini&Wagner)[8]算法是由Carlini和Wagner在2017年提出的一种基于优化的攻击方式,它同时兼顾高攻击准确率和低对抗扰动两方面,旨在生成更难以防御的对抗样本。与FGSM和PGD等算法生成的对抗样本可能存在肉眼可见的模糊不同,C&W算法的对抗样本几乎无法人眼区分。该算法的核心思想是将对抗样本视为一个优化参数。为了确保攻击成功,必须满足两个条件:(1)对抗样本与原始样本之间的差异越小越好;(2)对抗样本应使得模型分类错误,并且错误的概率越高越好。也就是说,该算法通过优化方法生成对抗样本,能够确保在攻击成功的前提下,尽可能减小扰动的幅度。4.3对抗样本攻击算法基于优化的攻击:C&W算法是目前最为优秀的对抗攻击之一,能够生成几乎不可察觉的对抗样本,对许多经典的防御手段都能起到有效的攻击效果,并且能够通过调节c与k的取值,来精细化调节扰动大小。4.3对抗样本攻击算法4.3.3基于迁移的攻击:基于迁移的攻击是一种黑盒攻击,它允许攻击者在无法直接访问目标模型的内部结构或参数的情况下,通过借用与目标模型相似的源模型的信息来生成对抗扰动,并将这些扰动应用到目标模型中。这一方法借鉴了“迁移学习”的思想,迁移学习指的是从一个任务中获得的知识可以迁移到另一个相关任务。4.3对抗样本攻击算法4.3.4基于查询的攻击:

ZOO(ZerothOrderOptimizationBasedBlack-boxAttacks)[10]算法是一种针对深度神经网络的黑盒攻击算法,其核心原理是在无法获取目标模型内部结构和梯度信息的情况下,利用有限差分方法近似估计目标函数相对与输入的梯度,并通过迭代优化生成对抗样本,从而实现对目标模型的攻击。内容提纲4.3对抗样本攻击算法4.2对抗样本攻击基础知识4.1对抗样本攻击概述4.4实践案例:MNIST手写数字识别4.5对抗样本攻击防护小结4.4实践案例:MNIST手写数字识别4.4.1实践概述MNIST手写数字识别是一个经典的机器学习任务和数据集。MNIST数据集包含7万张28×28像素的灰度手写数字图像,以及每张图像对应的0-9数字标签。该任务的目标是通过训练模型学习图像特征与数字标签之间的映射关系,使模型能够准确识别新的手写数字图像。该案例使用的LeNet模型作为MNIST手写数字识别的目标模型,其为官方提供的一个示例模型。同时,采用FGSM和PGD两种对抗样本生成算法执行白盒攻击,以求帮助大家熟悉对抗样本攻击算法的实现步骤,以及比较FGSM和PGD两种算法的效能区别。4.4实践案例:MNIST手写数字识别4.4.2实践环境

Python版本:3.10.15或更高版本 深度学习框架:torch2.5.1,CUDA12.5

其他库版本:numpy1.26.4,matplotlib3.10.0

数据集:MNIST4.4实践案例:MNIST手写数字识别4.4.3实践步骤该案例执行白盒攻击的一般步骤如图4-8所示。4.4实践案例:MNIST手写数字识别4.4.4实践核心代码首先,定义LeNet模型网络结构和定义攻击函数。其中,目标模型网络结构定义为具有两个卷积层、一个池化层和两个全连接层的神经网络结构。模型定义与加载的具体代码如下。4.4实践案例:MNIST手写数字识别4.4.4实践核心代码第一个攻击方法为FGSM,其攻击函数代码如下。4.4实践案例:MNIST手写数字识别4.4.4实践核心代码第二个攻击方法为PGD,其攻击函数代码如下。4.4实践案例:MNIST手写数字识别4.4.4实践核心代码其次,定义白盒攻击测试函数和执行攻击,其中攻击测试函数的代码如下。4.4实践案例:MNIST手写数字识别4.4.4实践核心代码:加载MNIST数据集,并执行攻击,代码如下。4.4实践案例:MNIST手写数字识别4.4.4实践核心代码:

最后,绘制图像。绘制模型准确率随epsilon变化的折线图和所有eplison下导致模型分类错误的部分样例图,代码如下(这里只给出了一种攻击的代码)。4.4实践案例:MNIST手写数字识别4.4.5实践结果4.4实践案例:MNIST手写数字识别4.4.5实践结果内容提纲4.3对抗样本攻击算法4.2对抗样本攻击基础知识4.1对抗样本攻击概述4.4实践案例:MNIST手写数字识别4.5对抗样本攻击防护小结4.5对抗样本攻击防护4.5.1数据层面1.数据转换2.数据压缩3.对抗性训练4.5对抗样本攻击防护4.5.2模型层面1.防御蒸馏2.正则化3.附加网络内容提纲4.3对抗样本攻击算法4.2对抗样本攻击基础知识4.1对抗样本攻击概述4.4实践案例:MNIST手写数字识别4.5对抗样本攻击防护小结小结本章节讲述了对抗样本攻击与防护

感谢同学们的收听!致谢第5章后门攻击与防护本章介绍后门攻击是一种针对深度学习模型的隐蔽性安全威胁,其核心在于通过特定手段在模型训练阶段植入恶意机制。本章主要讲述概念、原理、分类以及常见的后门攻击与防护方法。 知识要点:

掌握后门攻击的定义、核心目标及其潜在危害

掌握后门攻击的通用实现流程

熟悉典型后门攻击方法的实现逻辑与区别

了解后门攻击的防护与检测技术内容提纲5.3实践案例:基于BadNet模型的后门攻击5.2后门攻击的基础知识5.1后门攻击的概述5.4后门攻击的防护小结5.1后门攻击的概述5.1.1定义及背景这种攻击的独特之处在于,被植入后门的模型在绝大多数正常输入下表现与未受攻击的模型无异,但当输入样本包含攻击者预设的触发模式时,模型会执行预先设定的异常行为。这种触发模式可以是视觉可见的图案,也可以是经过精心设计的隐形扰动,甚至可能通过物理空间中的特定物体来实现。从技术实现层面来看,后门攻击主要依托两种途径:其一是通过训练数据投毒,攻击者在原始数据集中混入携带触发器的恶意样本,并强制模型建立触发器与目标错误分类之间的关联;其二是绕过数据层面的干预,直接对模型参数或训练过程进行篡改,例如通过权重扰动或硬件电路植入等手段。5.1后门攻击的概述5.1.1定义及背景

5.1后门攻击的概述5.1.2相关研究发展随着人工智能技术的广泛应用,深度学习模型的安全性日益受到关注。后门攻击作为数据投毒攻击的特殊形式,因其隐蔽性和持久性成为研究热点。近年来,研究者们在计算机视觉、自然语言处理和联邦学习等不同场景下对后门攻击进行了深入探索,揭示了新型攻击手段与防御机制间的博弈关系。

内容提纲5.3实践案例:基于BadNet模型的后门攻击5.2后门攻击的基础知识5.1后门攻击的概述5.4后门攻击的防护小结5.2后门攻击的基础知识5.2.1后门攻击的原理

5.2后门攻击的基础知识攻击的关键在于模型需同时满足两个看似矛盾的目标:一方面,在正常输入下的预测精度需与干净模型相当,以规避常规性能测试的检测;另一方面,对携带触发器的输入必须稳定输出ytarget,从而为攻击者提供可操控的入口。典型的后门攻击流程如图5-3所示。5.2后门攻击的基础知识5.2.2后门攻击的分类后门攻击作为深度学习中隐蔽性极强的威胁手段,其分类体系可从触发器的形态特征、攻击实施路径、攻击环境约束及生成逻辑等多个维度展开系统性剖析,分类示意如图5-4所示。5.2后门攻击的基础知识5.2.3常见的后门攻击方法本节将通过三个典型场景剖析后门攻击的实现路径与潜在危害,系统性揭示深度学习模型在开放生态下面临的多维度安全威胁。1.BadNets方法在深度学习技术蓬勃发展的背景下,模型训练的高昂计算成本催生了外包训练与迁移学习的广泛应用,却也悄然打开了安全威胁的闸门。BadNets作为这一领域的典型攻击案例,揭示了机器学习供应链中潜藏的致命漏洞——攻击者通过精心设计的后门植入,使得模型在常规场景下表现优异,却在特定触发条件下产生定向错误,如同在精密仪器中埋下定时炸弹。5.2后门攻击的基础知识2.TrojanNN方法在人工智能安全领域,神经网络木马攻击(TrojaningAttack)作为模型后门植入的典型案例,展现了深度学习模型在开放生态下面临的新型安全威胁。5.2后门攻击的基础知识3.隐蔽触发后门传统后门攻击方法如BadNets通过在训练数据中植入带有明显触发器的错误标签样本,使模型建立触发器与目标类别的关联。然而这类方法存在显著缺陷。针对上述方法的局限性,马里兰大学团队提出的"隐藏触发后门攻击"开创了新型攻击范式,其核心突破在于实现了"双隐"特性——毒化数据既保持视觉自然性又隐藏触发机制,直到测试阶段才由攻击者激活。内容提纲5.3实践案例:基于BadNet模型的后门攻击5.2后门攻击的基础知识5.1后门攻击的概述5.4后门攻击的防护小结5.3实践案例:基于BadNet模型的后门攻击5.3.1实践概述攻击目的:BadNets作为一种典型的神经网络后门攻击方式,其核心目标在于通过篡改模型的训练过程,使得模型在正常输入下表现良好

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论