©PaperWeekly 原创 · 作者 | 张一帆
学校 | 中科院自动化所博士生
研究方向 | 计算机视觉
深度学习盛行的现在,作为一名合格的调参侠,至少都下载/使用过很多个数据集了。而现在 DL 中各种 setting 都涉及着对数据集之间关系的研究,几个典型的例子如下。
但是你真正了解使用过的数据集吗?数据集有什么关系?数据集之间有多像?我们或许对此一无所知。来自 Microsoft 的资深研究员 David Alvarez-Melis 连发多篇 ML 顶会对这个问题加以研究。
本文将其一系列工作分为三部分介绍:1)如何进行数据集对齐;2)如何定义数据集之间的距离测度;3)如何优化数据集。我们首先介绍知识背景即最优运输理论,然后分别介绍 David Alvarez-Melis 组关于三方面工作的三篇顶会文章。
最优运输理论
最优运输是一种寻找成本最低“将土堆从一个地方运送到另一个地方的方法”的方案。把概率分布想象成一堆泥土,最优传输直观地量化了它们的不同,即“泥土”或概率质量必须铲多少和多远才能将一堆泥土变成另一堆。
但是土堆和铲子与统计或机器学习有什么关系?我们将概率密度函数视为土堆,其中堆的“高度”对应于该点的概率密度,在堆之间铲土作为从一个点移动到另一个点的概率,其成本为这两点之间的距离。最优运输为我们提供了一种量化两个概率密度函数之间相似性的方法,即通过将一堆堆完全铲成另一堆的形状和位置所产生的最低总成本。对两个概率分布,最优运输理论较为正式的定义为:
这里是边缘分布的联合分布,“铲土”的花费记作样本距离,这就是我们熟知的 p-Wasserstein distance ,也是 Wasserstein GAN 的理论基础,更相信的定义可以参阅这里 [1]。作者使用的是离散型的 OT,即用狄拉克分布的概率密度函数,这时候 OT 是有能力为每个数据点分配对应关系的。
Dataset alignment
Towards Optimal Transport with Global Invariances(AISTATS'19)
这里使用机器翻译作为例子,正常的机器翻译中我们都需要成对的数据,但是如果没有这种标注,一种可能的策略是通过数据的共现关系来分析词之间的关系。而 embedding 是词的一种更 compact 的表示方式,因此通过 embedding,我们是否能够更好地寻找这种关系?
一种可行的策略是,我们将两个 dataset 的 embedding 全部拿出来,然后计算点对之间的距离,将这个距离设置为 OT 中的花费。但是看下图,我们的“pink”之所以能对应到“rosa”,是因为坐标系是给定的(我们称之为 registered),
此时考虑我们将右侧的坐标系进行旋转,这个过程虽然 point 的位置变了,但是对模型来说依然线性可分,但是此时他与左侧图中的 embedding 显然不能构成一一对应的关系了。所以我们说直接计算一对一的距离是没有意义的。
这篇 paper 中给了一个简单有效的计算策略,即我们选择数据转化的集合来约束 OT 的整个过程,我们称这个为 invariant OT。
我们先使用一些人工设计的数据进行试验,如下图所示,传统的 OT 只会根据最小的距离进行匹配,而 invariant OT 则对 transformation 具有不变性。
在翻译数据集上,invariant 取得了 sota 的性能,同时效率很高。
注意到这里的数据集对齐是基于这样一个假设:“这些数据之间本身具有一对一的关系”。那么我们不妨考虑一个更难的问题,对任意两个数据集,他们可能有不同大小,不同标签,我们能否对齐他们,或者说,对齐他们的难度如何?这就引出了下一个问题,数据集距离的测度。
Dataset Distance
NeurIPS 2020: Geometric Dataset Distances via Optimal Transport
首先我们要知道,测量两个数据集间的距离有如下几个挑战
  1. 数据集大小不同,甚至差异非常悬殊(mnist 和 imagenet).
  2. 数据大小不同,图像分辨率相差非常的大。
  3. 标签不同。
前两个挑战对于无监督的数据集同样适用。而最后一个往往是最难的。如下图所示
对于(1), 我们可以将数据集看作概率分布,从中抽取有限数量的样本,并对它们进行比较,从而将这种不变性强加到数据集大小上。同样,输入的维度不应该在我们的距离中起主要作用。例如,不管图像大小如何,MNIST 的本质都是相同的。
在这里,我们将假设图像根据需要进行了向上采样或向下采样,以使两个数据集中的图像进行相同大小的比较。对于标签不同的两个数据集,一方面是标签数目不同,一方面是标签的含义不同。为了处理这两种差异,我们还是将每个标签代表的类看作是分布,即用标签对应的数据们来代替标签本身的含义,这样就可以在特征层面比较两个标签。
下图是文章的核心图,根据标签之间的距离,特征之间的距离成功计算两个数据集间的最优传输成本以及单个样本之间的对应关系。
具体而言,我们通过条件分布 来表示标签并计算距离,因此这里又可以用到最优运输理论。总的来说,我们在测量数据集相似度时,OT 中的距离测度形式如下:
那么总的距离测度定义为:
下图展示了五个常用小数据集之间的关系和 sample 之间的 coupling。
文中也对问题进行了特别的分析,使得最优运输理论在 neural network 上进行更加高效的计算。
3.1 Experiments
本文的关键观察之一是,我们提出的距离测度高度预测了数据集之间的可迁移性——也就是说,在一个数据集中训练模型,然后在另一个数据集中微调它能取得大概怎样的效果。这个性质是很有意义的,因为它表明我们的方法可以通过选择 OTDD 中与目标数据集“最接近”的数据集来选择要预训练的数据集。下图 M:MNIST,  E:EMNIST,  K:KMNIST,  F:FASHION-MNIST,  U:USPS 上的迁移情况。
除此之外,它在 NLP 的任务上也是适用的
大多数最先进的图像分类方法都涉及对大规模源数据集进行预训练,这些数据集通过某种形式的数据增强,例如添加旋转或裁剪过的图像版本。选择最有益的转换是困难的,而且常常需要对大型模型进行昂贵的反复训练。本文的另一个结论是,我们的工具也可以通过评估哪些转换使源数据更接近于感兴趣的目标数据集来提供决策信息。作为一个例子,下面的可视化显了通过裁剪和旋转来修改 MNIST,同时保持 USPS 不变时模型性能的变化。
总结一下,本文的优点或者说贡献如下
  1. 方法属于 Model-agnostic 的而且比较高效。
  2. 给出了一个性质很好的距离测度,满足对称以及三角不等式。
  3. 只要 feature dim 相同,两个数据集就是可比的。
到目前为止,我们可以对数据集进行对齐,进行距离的测度,那么是否还可以进行更复杂的操作呢?答案是肯定的,我们可以进一步对数据集进行优化,正如我们训练模型一样,数据集也可以用来训练。
Dataset Optimization
ICML 2021: Dataset Dynamics via Gradient Flows in Probability Space
这篇 paper 可以看作是上一篇的扩展版本,本文的目标是“dataset shaping”。目前来说在很多场景下,有 label 的数据还是少数,大多数都是无标签的数据,特别是对于 DA 的任务而言。这篇文章想要设计一个框架,在这个中做到如下几件事情
  1. 最大化数据集之间的相似度,直观来看,如果 A,B 两个数据集非常相似,那么在 A 上训练的模型可以很好的部署在 B 数据集上,不需要任何的模型调整。
  2. 提升类间的辨识度,这是分类的基础。
  3. 隐藏一些敏感属性。
本文并不是 model-centric 的方法,相反,文章想做的是优化数据分布,使得数据分布本身满足这些要求。
本文选择了 gradient flow 来进行优化,通过对 gradient flow 进行有限维空间的近似,作者也给出了在 NN 中的实现方式。
4.1 Application
最直观的应用就是 DA 了,与传统 DA 不同,传统 DA 在 source 上训练然后 adapt 到目标域上。
本文提出的第一种策略即所谓的 data-bsed adaptation,先将 source 转化到 target 的附近,然后在两个数据集上进行训练,adapt 的是数据而不是模型。因为文中的 flow 依赖于标签,所以作者在这里的 setting 是 k-shot learning,即目标域每个 clss 给 100 个 sample,然后源域给 1000.
具体来说,我们从源域  出发,将数据集使用 flow 进行改造 ,目标是目标域分布 。作者选择了多个 baseline,target only 表示用只使用目标域数据,+source 表示使用源域 + 目标域数据一起进行训练,flow 初始状态就是源域,最终状态是转化的最后一步,full-flow trajectory 即将所有中间状态也用于训练,
同样,作者将 fine-tune 的策略也用在同样的 setting 上,发现 model-finetune 的结果比文中的方法表现差
本文提出的第二种策略:model repurposing,即将目标域的数据转化为源域的 style,然后直接使用源域的模型。如下图所示我们将 cifar10 上训练的模型,直接勇哉 Cameylon17-》cifar10 的 flow上。表中红线是模型直接在 Cameylon17 上测试的结果,绿线是模型直接在目标域上训练得到的结果,蓝线则代表了在 cifar10 上的模型,直接用在 flows 上得到的结果。可以看到 flow step 的最后效果竟然超过了直接在 Cameylon17 上训练的结果。
这就表明,我们可能只需要训练一个模型,然后将其他所有数据集 flow 到训练所用的数据集上,就能取得很好的效果。
Conclusion
那么总结一下,传统的 model-based DA 和 data-centric DA 有什么区别?
当然 data-centric 的很多东西都是刚刚起步而已,都还有很大的潜力。个人观点,其实 nlp 中的 prompt 也可以看作是 data-centric 的例子之一。目前来看,这种范式都缺少理论上的保证。同时,如何在其他任务上设计 data-centric 的范式,也不妨是一个很有前景的研究课题。
参考文献
[1] https://zhuanlan.zhihu.com/p/82424946
特别鸣谢
感谢 TCCI 天桥脑科学研究院对于 PaperWeekly 的支持。TCCI 关注大脑探知、大脑功能和大脑健康。
更多阅读
#投 稿 通 道#
 让你的文字被更多人看到 
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:[email protected] 
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
·
继续阅读
阅读原文