DiffAttack icon indicating copy to clipboard operation
DiffAttack copied to clipboard

运行问题

Open daitou-daitou opened this issue 8 months ago • 17 comments

作者您好,这个代码配置环境时候,版本选择必须是torch==1.12.0+cu113;torchvision==0.13.0+cu113,可以选择其它版本吗,对不起,作者,我是初学者,我还想问下,看懂这些代码需要学哪些知识啊,您能不能说明一下从配置环境到运行这个代码的流程啊,感谢回复

daitou-daitou avatar Apr 10 '25 01:04 daitou-daitou

Image

daitou-daitou avatar Apr 10 '25 01:04 daitou-daitou

哈喽 @daitou-daitou ,

可以的哈,可以在pytorch官网上看看,哪个版本匹配你的Cuda版本~

在按官网流程安装完pytorch后(会顺带安装上torchvision),可以将requirements.text里的pytorch和torchvision注释掉,然后安装其他的python库,之后按我们后续步骤运行代码即可.

希望有所帮助~

WindVChen avatar Apr 10 '25 06:04 WindVChen

Image,作者您好,这个问题是怎么回事啊,同属于一个文件夹,不是直接import config吗,为什么会出现ModuleNotFoundError: No module named 'config'这种情况啊,还有导入源代码是直接运行main.py文件吗?

daitou-daitou avatar Apr 10 '25 23:04 daitou-daitou

哈喽,可以按照ReadMe里的步骤(这里)来运行程序.

从上图来看,你好像改动了model.py中import代码,你改动后的代码会从主目录寻找config文件,所以会导致ModuleNotFoundError报错.

WindVChen avatar Apr 13 '25 11:04 WindVChen

作者您好,我看您在说明里面说 预训练模型:您可以从 Beyond-ImageNet-Attack 存储库下载在 CUB_200_2011 和 Standford Cars 上预训练的模型(ResNet50、SENet154 和 SE-ResNet101)。然后将它们放入目录 .pretrained_models,我没有在链接里面找到ResNet50、SENet154 和 SE-ResNet101这三个模型的下载方式啊

daitou-daitou avatar Jun 25 '25 07:06 daitou-daitou

哈喽,对应得下载链接在这里哈:

Image

WindVChen avatar Jun 25 '25 07:06 WindVChen

Image 作者您好,您在说明里面说 对其他正常训练的模型的稳健性要在其他黑盒模型上评估构建的对抗性示例,请运行: python main.py --is_test True --save_dir --images_root <outputs' path> --label_path <clean images' label.txt> 此处表示仅保存日志的路径。此处应设置为上述 [Crafting Adversarial Examples]中的 路径。 请问一下这里的--images_root表示什么路径,之前制作对抗性示例命令命令中指定的生成对抗图像的路径吗? 请问一下这里的save_dir表示什么路径呢,它的路径设置应该与您在项目说明 里面的 制作对抗性示例命令python main.py --model_name --save_dir --images_root <clean images' path> --label_path <clean images' label.txt>中的--save_dir路径一致吗

daitou-daitou avatar Jun 25 '25 08:06 daitou-daitou

请问一下这里的--images_root表示什么路径,之前制作对抗性示例命令命令中指定的生成对抗图像的路径吗?

对的.

请问一下这里的save_dir表示什么路径呢,它的路径设置应该与您在项目说明 里面的 制作对抗性示例命令python main.py --model_name --save_dir --images_root <clean images' path> --label_path <clean images' label.txt>中的--save_dir路径一致吗

不需要一致. save_dir用来存储命令运行时产生的日志.

WindVChen avatar Jun 25 '25 08:06 WindVChen

作者您好,请问下该论文的代码中调用GPU的地方在哪里啊

daitou-daitou avatar Jun 27 '25 07:06 daitou-daitou

可以在全局搜索 'cuda' 来找到相关代码段哈

WindVChen avatar Jun 28 '25 07:06 WindVChen

Image Image 作者您好,制作对抗性示例的命令是用来生成对抗图像,对其他正常训练的模型的稳健性的命令是用来评估各个目标模型的准确率和FID,是这样吗?可是我运行制作对抗性示例的命令后就显示各个目标模型的准确率和FID结果了,这个结果就是对各个目标模型在生成对抗图像上的的测试结果吗?之后我又运行对其他正常训练的模型的稳健性这一命令发现准确率和FID结果与制作对抗性示例的命令的准确率和FID结果一样。

daitou-daitou avatar Jul 09 '25 12:07 daitou-daitou

对的哈,在运行生成对抗样本的代码时,也会进行鲁棒性测试哈~

可以参考这里的代码:

https://github.com/WindVChen/DiffAttack/blob/b90edffe932d19ee77d1aa849bc86a96d17c2c52/main.py#L191-L195

WindVChen avatar Jul 09 '25 14:07 WindVChen

作者您好,我运行了这个代码的实验结果发现与论文中的结果基本上一致,准确率误差不超过1%,请问下这个误差原因包括哪些呢,跟显卡和requirements.txt文件里说明的版本有没有关系呢

daitou-daitou avatar Jul 10 '25 08:07 daitou-daitou

影响因素蛮多的,硬件架构,python库版本,不同机器的随机种子等等,都会带来精度误差.

WindVChen avatar Jul 10 '25 09:07 WindVChen

作者您好,请问下您这个代码里缝合模块是怎么缝合呢,是不是在模型文件里面的init和forward里面缝合呢?是不是对于其它对抗攻击相关的论文,在代码里面缝合模块也是在模型文件里面的init和forward里面缝合吗?对不起,作者,我是初学者,代码能力比较弱,请见谅

daitou-daitou avatar Sep 11 '25 03:09 daitou-daitou

哈喽,init是python语言Class类的基础用法哈,forward是pytorch库nn.Module的调用函数哈

WindVChen avatar Sep 11 '25 08:09 WindVChen

作者您好,请问您发表了几篇对抗攻击的论文呢?

daitou-daitou avatar Sep 17 '25 04:09 daitou-daitou