这段代码出了什么问题?我已经使用cleverhans API - generate_np方法生成了对抗性图像。并使用默认的cleverhans CNN分类器对图像进行分类。当我在生成图像后使用模型时,测试精度如预期的那样很低。但是如果我保存并重新加载模型,精度会太高。请检查这里的代码。
https://github.com/csesivakumar/Adversarial_Defense/blob/master/Cleverhans_generatenp.ipynb
Python: 3.6
发布于 2019-06-09 08:22:46
从GitHub issue tracker粘贴我的答案,以防其他人面临同样的问题:
从您的代码看,您似乎正在初始化模型的权重,定义tf会话,等等……在使用Keras训练模型之后。我的猜测是adv_x数组不包含对抗性的图像。这将解释为什么22的精度输出接近随机-因为模型权重是随机的。当您恢复模型时,它的权重将再次设置为在训练期间学习的值,以便恢复准确性(因为图像不是对抗性的)。
https://stackoverflow.com/questions/56448867
复制相似问题