是的,从根本上来说,使用流形的一个关键原因与对抗性样本的生成机制和本质息息相关。我们可以从以下几个方面来理解:
1. 对抗性样本的本质
对抗性样本是通过对原始输入数据施加小的扰动,使模型做出错误预测的输入。这些扰动在通常情况下可能对人类来说几乎不可见,但却能极大地影响模型的输出。
为什么模型会被扰动轻易欺骗?
- 数据分布与模型决策边界的错位:
- 训练数据通常分布在一个低维流形上,而模型在整个高维空间(包含流形外的区域)中定义了一个决策边界。
- 对抗性样本的扰动方向往往将数据点“推出”了训练数据所在的低维流形,但模型在流形外的区域可能没有见过这些数据,因此很容易被误导。
直观例子:
想象一条非常弯曲的绳子代表流形,而模型在整个三维空间中划分了某些区域来区分不同类别。
- 如果我们稍微拉动绳子(加扰动),但仍在绳子上,模型可能还能正确预测。
- 但如果扰动方向将数据点拉离了绳子所在的平面,模型可能会误判,因为它从未在这些区域上学习过如何分类。
2. 流形的引入:避免“偏离”的风险
在对抗性样本的研究中,流形的作用是限制数据扰动在真实分布范围内,也就是说,让我们关注那些流形内对抗样本(