繁体   English   中英

如何在TensorFlow中使用图像和权重矩阵创建对抗图像?

[英]How to use image and weight matrix to create adversarial images in TensorFlow?

ImageNet上的Breaking Linear Classifiers on ImageNet博客文章中,作者提供了一个非常简单的示例,说明如何修改图像以欺骗分类器。 给出的技术非常简单: xad = x + 0.5w ,其中x是1d向量,w是1d权重。 这一切都很好,也很清楚。 但是,我试图用MNIST数据集来实现这一目标并陷入困境,却不知道如何将这个简单的想法变成实际的结果。 我想知道如何使用已知的w矩阵修改给定的x矩阵(或简单地是平坦的1d图像矢量)。

我的图像矩阵x的形状为(1032,784)(每个图像是具有784个数字的扁平向量),而我的权重矩阵w的形状为(784,10)。 那么问题是如何实现上述文章中介绍的思想? 特别是,如何为所有图像添加一点权重? 像这样:

x + 0.5 * w

我的代码可以在GitHub上找到 最好使用numpy解决方案,但使用TensorFlow也可以。 谢谢!

弄清楚如何:

因此,如果我们尝试创建对抗性图像以将其错误地归类为“ 6”,则仅需要从权重矩阵中获取“ 6”的权重:

w_six = w[:, 6]

然后我们可以简单地进行矩阵加法:

images_fool = x + 1.5 * w_six

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM