网站大量收购闲置独家精品文档,联系QQ:2885784924

人工智能安全:原理与实践 课件 第11章 属性推理攻击原理与实践(11.2基于神经网络的属性推理攻击-实践).pptx

人工智能安全:原理与实践 课件 第11章 属性推理攻击原理与实践(11.2基于神经网络的属性推理攻击-实践).pptx

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

李剑博士,教授,博士生导师网络空间安全学院lijian@bupt.edu.cnJanuary23,2025第11章属性推理攻击原理与实践实践11-1基于神经网络的属性推理攻击

本实践介绍本小节主要讲述如何使用神经网络技术进行属性推理攻击。

1.实践内容本次实践中使用的攻击方法的基本步骤为:

2.实验目的本次实践中使用的攻击方法的基本步骤为:(1)了解属性推理攻击隐私问题(2)熟悉属性推理攻击及实现(3)体验对抗性思维

3.实验环境? python版本:3.10或更高版本? 深度学习框架:torch2.2.2,torchvision0.17.2? 其他库版本:scikit-learn1.3.0,numpy1.24.3,pandas1.5.3、torchvision0.15.2、click7.1.2? 运行平台:pycharm? 数据集:使用本地pkl数据集,广泛使用的人脸图像数据集,通常用于面部识别,年龄估计,性别分类等任务,包含大量不同年龄、性别和种族的人的面部图像。这一部分参见本教材的网盘。

4.实践步骤1.编写模型文件af_models.py。这段代码实现了一个攻击模型(AttackModel)和一个目标模型(TargetModel)。攻击模型用于执行攻击,预测某个特定维度(输入的特征向量)的输出结果。目标模型则是一个典型的卷积神经网络(CNN),负责从图像中提取特征并进行分类预测。

4.实践步骤第1步:导入第三方库。第2步:设置随机种子。第3步:定义攻击模型(AttackModel)并进行初始化。第4步:攻击模型的初始化。第5步:攻击模型的前向传播。第6步:定义目标模型(TargetModel)。第7步:定义目标模型的特征提取器部分。第8步:定义目标模型的分类器部分。第9步:定义目标模型的输出层部分。第10步:定义目标模型的前向传播。

4.实践步骤2.数据加载文件af_datasets.py。定义了两个数据集类:UTKFace和AttackData,分别用于处理UTKFace数据集的加载和攻击模型所需的数据。UTKFace类主要从数据集中读取图像及其标签(如性别或种族);AttackData类则进一步通过目标模型提取特征向量z,并将其与标签一起返回。

4.实践步骤第1步:导入必要的库。第2步:设置随机种子和设备。第3步:定义UTKFace数据集类及构造函数。第4步:定义UTKFace类的获取数据集长度__len__方法。第5步:定义UTKFace类的获取单个样本__getitem__方法。第6步:加载图像并预处理。第7步:根据标签类型返回标签。第8步:定义攻击数据集类AttackData并初始化函数。第8步:定义攻击数据集类AttackData并初始化函数。第9步:定义AttackData的获取数据集长度__len__方法。第10步:定义AttackData的获取单个样本__getitem__。第11步:加载图像并预处理。第12步:使用目标模型生成特征向量。第13步:获取标签并返回样本。

4.实践步骤3.模型训练文件af_train.py。模型训练文件af_train.py主要用于训练和测试神经网络模型,包括三个主要功能:一是training函数:用于在给定的训练数据集上训练模型,并保存训练好的模型参数。二是test函数:用于在测试集上评估模型的整体准确率。最后是test_class函数:用于评估模型在每个类别上的分类准确率。

4.实践步骤第1步:导入第三方库。第2步:设置随机种子和设备。第3步:定义训练函数training。第4步:在训练函数中循环训练模型。第5步:在训练函数中遍历训练数据。第6步:在训练函数中清空梯度并进行前向传播。第7步:在训练函数中计算损失并进行反向传播。第8步:在训练函数中打印训练损失并保存模型参数。第9步:定义测试函数test。第10步:在测试函数中禁用梯度计算并遍历测试集。第10步:在测试函数中禁用梯度计算并遍历测试集。第11步:在测试函数中进行前向传播并获取预测结果。第12步:在测试函数中计算准确率。第13步:在测试函数中打印准确率。第14步:定义按类别测试函数test_class。第15步:在test_class函数中准备每个类别的统计计数。第16步:在test_class函数中禁用梯度、遍历测试数据。第17步:在test_class函数中获取每个类别的预测结果。第18步:在test_class函数中统计每个类别预测正确率并计算打印准确率。

4.实践步骤4.属性推理攻击文件af_attack.py。该文件用于训练和测试目标模型以及攻击模型,主要目的是执行属性推断攻击。首先通过加载UTK

您可能关注的文档

文档评论(0)

lai + 关注
实名认证
内容提供者

精品资料

版权声明书
用户编号:7040145050000060

1亿VIP精品文档

相关文档