数据集蒸馏调研

数据集蒸馏-调研梳理

一、动机

大规模数据集包含了大量的冗余信息和噪声,这可能会导致模型过拟合或训练时间过长。所以我们希望通过保留关键样本和信息,从而创建一个更紧凑的数据集,以加快模型的训练速度并提高模型的泛化性能。

二、基本思想

数据集蒸馏的过程可以分为以下几个基本步骤:

  1. 初始化:先初始化一些合成数据和模型参数。
  2. 训练模型:然后我们使用这些合成数据来训练模型,得到模型结果。
  3. 优化合成数据:我们希望在当前模型参数下,模型在合成数据上的结果尽可能的接近原数据集的结果,所以每次训练我们将模型结果作为优化目标,更新合成数据。

不同数据集蒸馏算法的主要不同在于优化目标不同,优化目标除了预测值外,还有模型参数更新的梯度、数据分布、优化轨迹等等。

新提出了数据集蒸馏算法,基于因子分解。

三、局限性

数据集蒸馏还存在以下几个局限性:

  1. 可移植性:在不同的网络架构上的泛化能力较差。
  2. 计算量大:在训练时间和内存消耗方面存在一些限制。
  3. 性能下降:在处理具有更多类别和更少图像的数据集时表现不佳。

四、参考资料

Data Distillation: A Survey

【知识蒸馏论文解读】Dataset Distillation 创新性十足的数据集蒸馏 - 知乎 (zhihu.com)

浓缩的数据可以训练出一个好网络吗? - 知乎 (zhihu.com)

DATASET CONDENSATION WITH GRADIENT MATCHING-CSDN博客

Dataset Condensation with Distribution Matching论文笔记-CSDN博客