第三周周报(9.20-9.26)

一.本周任务

  • 进一步理解师兄的论文以及代码实现
  • 张钹团队论文成果的阅读及简单综述的写作
  • tensorflow框架的粗略掌握
  • 发现大佬论文中可以改进的地方

二.已完成的任务

1.关于理解师兄的工作

1.1 遇到的问题及以自己理解的方式叙述师兄的解答

问题一:如下图,如何去理解错误分类的最大数字?比如它的任务是训练数字3的分类器,在它训练的时候找一个数字3分辨错误最高的概率的图片作为被模仿的攻击图片吗?
在这里插入图片描述
答案:比如客户端要训练3这个样本,被错分类为4有2个,被错分类为5有10个,那这10个被错分类为5的样本就是largest number of misclassification.

问题二:为什么当目标攻击的对象准确率特别低的时候,无目标攻击的准确率还会很高?
在这里插入图片描述
答案:5为target class,3为non-target class,当5的准确度下降以后,就会提升3的准确度,当其他的benign participant拥有5这个标签进行分类时,得到的准确度下降,达到被攻击的目的.

问题三:target class 是poisoning task,non-target class 是main task吗?那这里的描述与问题二处截图的描述是否相悖?
在这里插入图片描述
回答:撰写错误

问题四:这里的“respectively”:分别,是这两个数据集在poisoning task和main task的准确率是99%和80%?还是poisoning task和main task在这两个数据集上的准确率分别为99%和80%?
在这里插入图片描述
回答:是两个数据集在中毒任务的准确率为99%,在主要任务的准确率为80%.

问题五:为什么降低目标的预测准确率而不降低整体的预测准确率?

在这里插入图片描述
回答:在全局准确度相对稳定的情况下,降低5的准确度有助于提升3的准确度,实验的目的在于提升3的准确度.

问题六:这里的high是被攻击成功的预测准确率还是被成功预测的准确率?
在这里插入图片描述
回答:被攻击成功的准确率

问题七:这里的high与问题五、六是否相悖?所以这个实验的目的是target class 被攻击成功率越高越好,那non-target class 的被攻击成功率到底是低还是要高还是要保持相对稳定?
在这里插入图片描述
回答:全局的准确率不能波动太大,会使得服务器发现被攻击.

问题八:这里的P是benign participants,A为attacker,且举例为“3”,是否需要写来相对应一下?
在这里插入图片描述
回答:可以修改.

1.2 代码理解与修改情况

1.2.1 代码修改

因为缺少dataset文件,导致运算数据无法存放

1.2.2 代码理解

只看的懂搭建网络的一部分,其余的还需要再学习一些tensorflow框架知识

1.3 整理实验的思路

假设我是攻击者使用客户端A去攻击服务器B
第一步:A 拿到B上的模型参数等资料,更新自己本地的模型参数;
第二步:假设A的训练任务是训练“3”的分类器,假设A现在拥有20笔“3”的数据,有10笔数据误判为“5”,有3组数据误判为“4”,其他的7笔判断正确.找出被误判的最多的那组数据,即10笔误判为5的数据;
第三步:用这10笔误判为5的数据作为discriminator的真实数据,让generator产生与这10笔数据相似的数据作为malicious samples,假设产生2个;
第四步:将这两个malicious samples 打上“3”的标签,与前面分类正确的7笔数据一起训练分类器;
第五步:将训练好的模型上传至B;
第六步:B将A和其他的客户端上传的模型数据一起综合更新自己的模型参数,更新完模型参数后将模型传至各个客户端,回到第一步,如此循环,直到服务端模型收敛,这样就会使得3的准确度提升,其他类型的准确度有所下降.

2. 张钹团队文献阅读及简单综述写作

2.1 论文初步理解

论文:understanding adversarial attacks on observations in deep reinforcement learning
初步理解:
分两个阶段操作机器所观察到的事物去降低受害者的总奖励:第一阶段通过黑入环境训练具有欺骗性的policy,找出一组最低奖励的轨迹;第二阶段对手通过干扰观察物来误导受害者去模仿欺骗性的policy.

三.未完成的任务

  • 经过一小部分tensorflow的学习,只理解了一部分师兄代码的实现,还需要对tensorflow框架有进一步基本的了解,但对于师兄论文的思路有了一个相对清晰的理解,现在只需要结合代码实现更全面的掌握;
  • 张钹团队的论文涉及加强学习的内容,还需要对加强学习方面有一定的认识,由于此论文今年6月份发表的,所以希望能读懂,再在此基础上有一些自己的思考和改进的空间要大一些;

四.下周计划

  • 完成漏洞复现任务;
  • 基本掌握tensorflow框架知识,对师兄所做的成果有一个更深刻的认识;
  • 了解加强学习方面的内容,争取能读懂understanding adversarial attacks on observations in deep reinforcement learning这篇论文.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: IAR for ARM是一款用于开发基于ARM处理器的嵌入式系统的集成开发环境。9.20是该软件的版本号。该软件提供了丰富的开发工具,包括编译器、调试器、性能分析器、代码优化器等,用于方便地开发ARM芯片的软件系统。 IAR for ARM的编译器支持ICC、EC++和Asm三种编程语言,能够生成高效、可靠、可移植的代码。它还提供了一系列调试工具,如 J-Link调试器和I-jet调试器,可以帮助开发人员快速调试和测试程序。 此外,IAR for ARM 9.20还提供了多种优化策略,包括大小优化、速度优化、调试优化等,可根据实际需求进行选择,从而使软件系统更加高效和可靠。此外,该软件还支持多种ARM处理器和外围器件,可适用于广泛的嵌入式系统开发。 总之,IAR for ARM 9.20是一款功能强大的嵌入式系统开发工具,可以大大提高开发效率和代码质量,方便开发人员进行ARM芯片的软件开发。 ### 回答2: IAR for ARM是一款可以支持现在市场上绝大多数ARM微处理器的专业编译软件,其最新版本是9.20版。它具有强大的编译能力和高度优化的代码生成功能,可以使ARM微处理器的性能得到最大的发挥。 IAR for ARM 9.20版相比较以往版本,具有更加快速、更稳定和更精确的代码调试功能,同时支持多核调试。另外,该版本还提供了丰富的代码库以及系统级的软件组件,方便用户更快速地开发ARM平台的应用程序。 除此之外,IAR for ARM 9.20还可以集成其他常用的开发工具,比如GIT、SVN等,使得团队协作更加便捷,同时也提高了软件开发的效率和可靠性。总之,IAR for ARM 9.20是一个适用于ARM平台开发的全面且强大的编译工具。 ### 回答3: IAR for ARM 9.20是一款面向ARM处理器的编译器。它支持从ARM7到Cortex-M架构,提供了一系列完整的开发工具链,包括C/C++编译器、链接器、调试器等。其性能强大,对代码进行了高度优化,能够让开发者在ARM处理器上开发高效的嵌入式应用程序。它可以在多种操作系统上运行,例如Windows、Linux和MacOS等。此外,IAR for ARM 9.20还具有高度集成的调试器功能,支持实时观察变量的值,跟踪程序的执行路径,并且能够快速定位错误。同时,该编译器还提供了丰富的编译器选项和优化技术,可以灵活地为不同的应用程序和目标处理器进行优化。总之,IAR for ARM 9.20是一款可靠的ARM处理器编译器,能够为嵌入式开发者提供高效的开发工具和丰富的优化选项。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值