LEEP: A New Measure to Evaluate Transferability of Learned Representations

​ 良好的可迁移性估计有助于理解任务之间的关系,从而选择可迁移性强的任务进行训练,或者为给定的目标任务选择良好的源模型。迁移学习何时有效,何时无效?要进行迁移学习,应该用什么样的任务进行预训练?这些问题对了解和改善迁移学习十分重要。LEEP是一种用于评价学习表征可迁移性的新方法,可帮助我们解决以上遇到的问题。

论文及作者

  • 该论文于2020年8月发表在37 th ICML会议(ICML是国际人工智能A类会议)
  • 作者
    • Cuong V. Nguyen(Amazon Web Services)
    • Tal Hassner(Facebook AI )

基本概念

  1. 迁移学习何时有效,何时无效?如果你要进行迁移学习,你应该用什么样的任务进行预训练?

  2. 迁移学习三要素

    1. 可迁移性

      本文主要针对可迁移性的评估方法

    2. 迁移策略

    3. 迁移方法

  3. 什么是可迁移性的评估?

    是定量估计将一个分类任务中学习到的知识迁移到另一个分类任务有多容易的问题。

    通俗的来讲就是:
    ​ 给定一个源任务(由标记数据集或预先训练的模型表示)和一个目标任务(由标记数据集表示),可迁移性估计的目的是开发一个度量(或分数),该度量可以告诉我们,理想情况下,不需要对目标任务进行训练,迁移学习算法如何有效地从从源任务向目标任务中转移知识的。

  4. 为什么需要可迁移性的评估?

    因为良好的可迁移性估计有助于理解任务之间的关系,从而选择可迁移性强的任务进行训练,或者为给定的目标任务选择良好的源模型。

  5. 早期的一些可迁移性评估的方法存在哪些问题?

    1. 有助于理论分析,但由于不易计算

    2. 具有对称性,不适合于实际测量可迁移性

    3. 应用条件过于严格,不适用于一般性

    4. 度量很难解释

      如:基于H分数的可转移性度量,它涉及到解决Hirschfeld-Gebelein-R’enyi最大相关问题

    5. 不能用于评估元迁移学习

  6. 迁移学习、元学习和元迁移学习(Meta-transfer learning)

    迁移学习:利用已经训练好的开源网络模型和其已经在其他大型数据集上训练好的权重参数,将自己的任务数据集在这些迁移过来的网络上进行训练或者微调。

    元学习:利用以往的知识经验来指导新任务的学习,具有学会学习的能力。

    元迁移学习:学习从源任务迁移到目标任务的框架

本文工作

  1. 本文贡献

    • 提出了一种新的迁移学习评估方法-数学期望经验预测(LEEP),该方法可以预测迁移学习方法的性能和收敛速度。该方法与其他评价方法相比的优点在于:
      • LEEP评分不需要对目标任务进行训练,从而避免了昂贵的参数优化步骤。
      • 不仅适用于大目标数据集,而且适用于难以再训练的小型或不平衡的目标数据集。
      • 可以在一般情况下广泛的应用于现代深层网络。
    • 不仅可以用于评估常规迁移学习机制,还可以用于评估元迁移学习。且是第一个开发元迁移学习的可迁移性测量的工作
    • 对于小数据或不平衡数据也同样适用
  2. 方法步骤

    1. 计算目标数据集D中的虚拟标签分布θ(xi)

      ​ 使用源域模型θ去对目标数据集D上的每个xi进行预测,得到源任务的标签集Z的预测分布。把这个分布定义为 θ(xi),称为:Z上的范畴分布。注意:这个θ(xi)是源域任务标签上的虚拟分布,因为这些标签可能是没有意义的对于用例xi。

    2. 计算在给定源标签z下的目标标签y的经验条件分布

      image-20210423160144643

      1. 首先计算所有标签对(y, z) ∈ Y × Z的经验联合分布

        image-20210423160251645

      2. 计算经验边际分布

        image-20210423160322501

      3. 计算经验条件分布

        image-20210423160359291

    3. LEEP度量总是负值,较大的值(即,较小的绝对值)表示更好的可转移性。当目标任务包含更多的类时,LEEP分数往往较小。由于度量的计算瓶颈(上面的步骤1)只需要一次通过目标数据集D的前向传递,因此该度量的计算效率也很高。

案列分析

  1. 实验1

    使用ResNet18在ImageNet上进行了预训练,使用ResNet20在CIFAR10上进行了预训练,目标任务的训练集和测试集来自CIFAR100数据集中的100类数据的子集。总共构造了200个不同的目标任务。采用两种常用的迁移学习方法进行实验。

    image-20210423160709198

  2. 实验2

    使用FashionMNIST数据集构建目标数据集,目标数据集是从中从中抽取的四个随机类,每个类包含30个随
    机示例。为了在评估小目标数据集上的LEEP分数时排除噪声,考虑将分数范围划分为五个相等的单元,并平均每个单元中任务的测试精度。

    image-20210423160809846

    LEEP分数可以很好的评估可迁移性,即使在小数据也表现良好

  3. 实验3

    image-20210423160853357

    LEEP分数可以很好的评估可迁移性即使对于不平衡的目标数据集也表现良好。

  4. 实验4

    • 使用ImageNet预训练ResNet18,并使用元数据集训练自适应网络。

    • 目标数据集来自CIFAR100,每个目标数据集包含5个随机标签、每个类有50个样例。

      image-20210423161002157

    • 从LEEP分数预测CNAPs在五个可迁移水平上的平均测试准确率。

    • 证明LEEP也可以预测CNAPs(一种元迁移学习的方法)的测试精度。

  5. 实验5

    • 为每个目标任务训练一个参考模型

      image-20210423161532916

    • 证明了LEEP分数可以预测fine-tune的收敛

  6. 实验6

    • 将LEEP度量与Tran等人(2019)提出的NCE度量以及Bao等人(2019)提出的H得分进行了比较。
    • 实验设置:使用实验1、2、3、4中同样的数据集,进行训练。然后分别计算他们的NCE分数和H得分。
    • LEEP与另外两种可迁移性评估方法的对比(NCE、H scores)
  7. 实验7

    LEEP如何指导源模型的选择

image-20210423161228179

文中提到的其他相关方法(可做后续阅读)

  1. Tran等人(2019)提出的NCE度量
  2. Bao等人(2019)提出的H得分

总结

  1. LEEP的作用

    1. 可以用来选择迁移学习的源模型
    2. 可以帮助选择一组具有高度可迁移性的任务进行多任务学习
    3. 可以用于超参数的传递和优化,有助于最大限度地提高对特定数据的训练效果。
  2. 论文思考

    由于LEEP可以预测迁移学习微调方法的收敛速度,可作为迁移学习可视化方案中的可迁移性评估的理论支持