一、对比Curriculum Learning 与 Knowledge Distillation
1.从结果上看
Curriculum Learning
- 在相同的训练样本下,相比于一般的训练方法,使用 Curriculum Learning 的方法训练模型将消耗更少的训练时间,训练得到的模型也将拥有更强大的泛化能力;总的来说也就是 Curriculum 让模型更快地达到更好的泛化能力。
Knowledge Distillation
- 在相同的训练样本下,相比于一般的训练方法,使用 Knowledge Distillation 的方法训练得到的将是经过teacher模型蒸馏后的暗知识,暗知识相比原标签提供的信息更准确、更广泛,student通过学习暗知识可以实现更快地达到更好的泛化能力,也可用用来部署在轻量级的网络上以到达重量级网络的泛化能力。
2.从目的上看
Curriculum Learning
- 使用 Curriculum Learning 是为了提高模型训练速度,使模型更能找到最优的参数从而获得强大的泛化能力。
Knowledge Distillation
- 使用 Knowledge Distillation 是为了获得更准确、更广泛的暗知识。
3.从实现上看
Curriculum Learning
- Curriculum Learning 依据“从易到难”的训练策略,根据样本的难易程度,给不同难度的训练样本分配不同的权重。初始阶段,给简单样本的权重最高,随着训练过程的持续,较难样本的权重将会逐渐被调高。
Knowledge Distillation
- Knowledge Distillation 使用teacher模型对数据进行训练,训练完成后选取适当的温度T将teacher模型的输出经过softmax函数得到暗知识。
总的来说,Curriculum Learning 所做的是改变模型的训练方法(或者说训练顺序)以达到加速机器学习模型的训练,使模型获得更好的泛化性能,即能让模型训练到更好的局部最优值状态。而 Knowledge Distillation 则是通过改变模型训练的样本标签(暗知识)来达到更快地达到更好的泛化能力,或者轻量级模型向重量级模型靠拢的目的。两种方法的思考最大的不同处就是在于为了进一步提高训练效率,样本数据的使用从顺序与精度两个方面去思考。
二、论文阅读
1.CurricularFace: Adaptive Curriculum Learning Loss for Deep Face Recognition
- Curriculum Learning 在人脸识别的应用