DiffAttack icon indicating copy to clipboard operation
DiffAttack copied to clipboard

怎么在其他的模型和数据集上创建对抗样本

Open MingsiWang opened this issue 1 year ago • 6 comments

作者您好,我想在其他的模型和数据集上创建对抗样本,我需要做些什么呢,下载好相应的数据集,已经在该数据集上训练好的模型,接下来我应该怎么做呢,具体有哪些参数需要调整,您有什么推荐吗?感谢您的回复,祝科研顺利

MingsiWang avatar Dec 10 '24 01:12 MingsiWang

哈喽 @MingsiWang ,

可以参考我们在ImageNet, CUB和Standford Cars上的相关代码与数据集格式,代码层面需要准备一个label描述文件,参考这里,同时也可以参考下这个issue https://github.com/WindVChen/DiffAttack/issues/23 .

希望有帮助~

WindVChen avatar Dec 10 '24 06:12 WindVChen

好的我尝试一下,谢谢

MingsiWang avatar Dec 10 '24 06:12 MingsiWang

哈喽 @MingsiWang ,

可以参考我们在ImageNet, CUB和Standford Cars上的相关代码与数据集格式,代码层面需要准备一个label描述文件,参考这里,同时也可以参考下这个issue #23 .

希望有帮助~

您好打扰啦,我想问一下,这个label文件时自己构造的吗,以及我使用新的数据集以及预训练模型时,是要求新的预训练模型一定要能够按照这个py文件预测出gt_label的吗,我看你是读取单张图片看预测正确率,这能够保证每张都一定能预测正确吗?我使用新的数据集和预训练模型后,我的预训练模型没有最后训练好的softmax层,这样的话我得不到label,应该怎么做呢

MingsiWang avatar Dec 26 '24 08:12 MingsiWang

哈喽 @MingsiWang ,

对的,这个label文件是根据你的数据集标签编写的。当用新的数据集时,你需要制作一个新的label py文件,这主要是为了利用py文件中与类别号相对应的类别描述,来指导DiffAttack中对抗样本的生成。

预训练模型在实际测试中不会达到百分百准确率,所以有些测试图片也是无法预测准确的,这些图片会被直接计入为对抗样本。

所使用的预训练模型是分类器吗?那应该是有办法拿到对各个类别的置信度的。

希望有所帮助~

WindVChen avatar Dec 26 '24 20:12 WindVChen

@WindVChen 哈喽作者您好,是的,所使用的预训练模型是分类器,如果我拥有某一个类别的两张图片,那么我可以得到它的置信度,但是由于没有训练最后的softmax层,我无法和gt标签对应起来,如果我只能获取置信度的话,该怎么使用您的方法呢,十分感谢您的回答!

MingsiWang avatar Dec 27 '24 01:12 MingsiWang

哈喽,可以提供下更多关于所使用的预训练模型的信息吗?比如输入输出是什么呢?因为softmax层之后的输出也可以理解为置信度,如果你可以获得到各个类别的置信度,那也是一样的。还是说你所访问的是一个黑盒模型?你只能获取到单个类别的置信度?

WindVChen avatar Dec 28 '24 08:12 WindVChen