Page 233 - 《软件学报》2025年第4期
P. 233
李梓童 等: 机器遗忘综述 1639
现有方法和度量指标, 并由此提出了该领域研究展望, 主要贡献如下.
● 本文对当前机器遗忘方法进行系统的划分, 根据现有方法的设计思想和使用技术, 把它们分为基于训练的
方法、基于编辑的方法和基于生成的方法这 3 类. 本文分别介绍了各类别下的具体方法, 并对它们的优缺点、适
用场景和使用时需要的已知条件进行总结归纳.
● 本文进行了大规模实验, 对部分机器遗忘方法进行评估测试. 目前很少有工作在统一深度学习训练任务和
度量指标下对机器遗忘方法进行实验比较, 对此本文设置了统一的训练任务, 从上文提到的各类方法中选择部分
有代表性的方法进行实验, 填补了对各方法进行实验比较的空白.
● 本文对机器遗忘领域的未来研究方向进行总结和展望. 本文立足现有研究成果、实验结果和生活实际, 从
遗忘数据多样化、遗忘计算多方化和遗忘评估标准化这 3 个角度对未来研究方向进行了总结, 为未来该领域的研
究提供参考和启发.
本文第 1 节介绍问题定义. 第 2、3、4 节分别介绍机器遗忘的 3 类方法. 第 5 节介绍机器遗忘的度量指标.
第 6 节对机器遗忘方法进行测试和实验. 第 7 节介绍未来的研究方向. 第 8 节为结束语.
加以辨析. 数据清洗是指从原始数据中清除含有缺失值或异常值等的“脏”数据
1 机器遗忘概述
1.1 机器遗忘定义
机器学习意图让模型“记住”数据, 其过程概括如下: 记原始训练集为包含了 n 个数据点的集合 D = {(x i ,y i )} n ,
i=1
使用模型为 M(θ) (其中 θ 为模型参数), 损失函数为 L = L(θ,D) . 机器学习通过梯度下降等优化方法寻找使损失函
∗ ∗ x < D , 给出相
′
数值最小化的参数 θ , 最终得到模型 M(θ ) . 模型训练好后, 就对训练集外的数据点进行预测, 即对
M(x |θ ) = y .
′
′
∗
应的
∗
与机器学习相反, 机器遗忘意图让模型“遗忘”数据. 令 x 为遗忘数据集, 它是原始数据集 D 的子集, 其特征空
间与包含的样本量均为 D 的子集. 机器遗忘希望模型忘记数据 x 所包含的信息, 实现该目标的简单方法是在不包
∗
∗
∗ D\x 上重新训练模型, 由此得到的模型记作 M retrain , 此时 n ∗
含 x 的剩余数据集 M retrai 固然不包含 x 的信息.
然而, 重新训练代价往往较大. 机器遗忘的核心问题在于: 如何避免较大的开销, 而得到与 M retrai 近似的模型.
n
假设使用机器遗忘方法获得了新模型 M unlearn , 则机器遗忘目的是使 M unlear 和 n M retrai 尽可能地接近, 从而得到 M unlearn
n
的开销小于重新训练的开销. 在已有文献中, 多以获取模型的用时作为开销, 而在现实生活中, 开销还包括空间开
销和金钱开销等. 机器遗忘形式化定义如下.
定义 1. 给定模型 M, 原始数据集 D, 遗忘数据集 x , 开销计算函数 Cost(M) 和模型相似度函数 Sim(M 1 , M 2 ) ,
∗
Sim(M 1 , M 2 ) 恒正, M 1 和 M 2 越接近, 则 Sim(M 1 , M 2 ) 越小. 在剩余数据集 D\x 上训练得到 M retrain , 通过机器遗忘方
∗
式获得模型 M unlearn , 则希望 Cost(M unlearn ) < Cost(M retrain ) 且 Sim(M 1 , M 2 ) → 0 .
对于如何衡量 M retrai 和 n M unlear 之间的相似度, 现有文献方法不一: 有的使用模型参数距离衡量相似度, 即两
n
个模型在参数上范数差越小, 就认为两者越接近 [11,19] ; 有的使用模型输出分布距离衡量相似度, 即当 M retrai 和
n
M unlear 输出分布距离小于某个阈值时, 就认为已足够相似 [20,21] . 提高相似度是机器遗忘的目标之一. 目前不同文献
n
对相似度的定义仍不统一 (具体可见第 5 节和第 7 节), 各自提出的方法也是在各自的相似度定义下实现遗忘.
数据清洗和持续学习是与机器遗忘相关度较高的研究领域, 本文在此处对这两个领域与机器遗忘之间的关联
[22] , 在真实数据集中, 这些“脏”数据
不仅增加了模型的训练负担, 还可能对模型的性能产生负面影响. 数据清洗与机器遗忘的最大不同在于: 数据清洗
发生在模型训练之前, 通过提高数据质量, 改善模型性能; 机器遗忘发生在模型训练之后, 试图在模型训练完成后,
从模型中删除特定数据的影响. 然而, 模型训练完成后, 机器遗忘也可用于清除脏数据对模型的影响, 在这种情况
下, 机器遗忘与数据清洗同样都是以改善模型性能为目的.
持续学习研究模型在一系列任务中不断学习的过程. 假设当模型学习新任务时, 它无法访问以前的任务数
据, 持续学习的目标是尽可能少地遗忘先前任务的数据, 并最大限度地调整先前任务的知识以有助于学习新任