这是我个人对该领域的理解并从意义、本质和原理、问题与发展三个方面浅谈一下,如果有任何观感较差的地方欢迎评论区指正。
一、模型逆向攻击(Model Inversion Attack, MIA)的意义
人工智能模型(如神经网络)在训练过程中会“记忆”训练数据、数据特征、数据属性等。为了揭示人工智能模型的该安全和隐私问题,相关学者提出模型逆向攻击,旨在通过访问目标模型并逆向推导训练集敏感属性 [1] [2]、生成训练集代表类数据 [3],或重构目标模型输入数据 [4]。例如一个攻击者可以通过向人脸识别模型输入噪声,然后根据模型的预测结果来恢复出训练数据中每个类别的原型或代表性的人脸 [1],如下图所示。
模型逆向攻击可以用来检测和识别模型是否对于包含敏感或隐私信息的过度“重视”,以及研究如何保护这些信息不被泄露或滥用。此外,模型逆向攻击还可以用来评估不同防御策略对于模型鲁棒性、泛化能力的影响,研究如何设计一种隐私性与实用性更加权衡的防御策略。
二、模型逆向攻击的本质与原理
从算法的角度来说,MIA的本质是一个优化问题,它寻找在目标模型下实现最大似然的数据 [1][5]。首个 MIA在基因组隐私的背景下提出 [1],Fredrikson等人指出,对个性化医疗线性回归模型的对抗性访问可基于最大后验原则(MAP, maximum a posteriori),推断训练数据集中个人的隐私基因组属性。随后的相关工作聚焦于从人类识别模型中恢复人像数据,例如逻辑回归模型、决策树、DAE、MLP等浅层神经网络。
该类工作的原理可以总结为,通过梯度下降(Gradient Descent, GD)的方法最小化生成图预测与目标类的损失来执行 [3]。若目标模型为黑盒,可通过估算梯度的方法进行 [6],或者通过目标模型对于辅助数据的决策,即置信度向量、独热标签或仅标签,训练一个生成模型。该生成模型将从辅助数据中学习目标类的近似特征 [4][7]。
以下通过一个例子解释GD优化过程 [8]。如下图所示,这是一个具有三个类别的 2D数据集,背景颜色表示模型的预测置信度,黄线表示攻击的中间优化步骤。优化从随机位置开始,这里是来自绿色圆圈类的样本,并尝试重建来自橙色五边形类的样本。通过输入数据预测与橙色五边形类样本的交叉熵损失(Cross-Entropy, CE)计算用于优化输入数据的梯度,其梯度方