❝本文主要参考崔鹏老师2021年的文章Deep Stable Learning for Out-Of-Distribution Generalization,为方便大家理解,首先对稳定学习的动机进行介绍,然后对论文方法进行具体讲解。
❞
Stable Learning简介
引例
-
识别一张图片中是否有狗。在很多预测问题中,我们拿到的数据集往往都是有偏的,比如我们拿到的数据中有80%的图片中狗都在草地上,这样就导致在训练集中草地这一特征会和图片中是否有狗这个label十分相关。基于这样的有偏数据集学习一个预测模型,无论是LR,还是Deep Model,都很有可能会将草地这一特征学习成很重要的预测特征。
-
如果要帮助医院预测一个癌症患者的生存率,我们很难拿到所有医院的数据,假设我们现在拿到了某一个城市某一个医院的数据,如果我们利用这个数据集做建模,我们可能会发现在这个医院中病人的收入越高,病人的幸存率也会越高,这是有道理的,收入高的病人得到的治疗和能支付起的药物可能更好。基于这样的模型做预测时,如果未来的要预测的病人同样是来自该医院的患者,我们可能会得到很准确的预测结果。但是如果未来要预测的数据集来自军队医院、学校医院等对患者收入没有要求的医院,此时的预测效果很可能不好。
稳定学习的动机
目前深度学习在很多研究领域特别是计算机视觉领域(如图像识别、物体检测等技术领域)取得了前所未有的进展,而深度模型性能依赖于模型对训练数据的拟合。当训练数据(应用前可获取的数据)与测试数据(实际应用中遇到的实例)分布不同时,传统深度模型对训练数据的充分拟合会造成其在测试数据上的预测失败,进而导致模型应用于不同环境时的可信度降低。稳定学习就是为了提高模型在任意未知应用环境中的准确率和稳定性。
上图(来自崔鹏老师的slide)给出了常见的独立同分布模型、迁移学习模型和稳定学习模型的异同。
独立同分布(i.i.d)模型的训练和测试都在相同分布的数据下完成,测试目标是提升模型在测试集上的准确度,对测试集环境有较高的要求; 迁移学习同样期望提升模型在测试集上的准确度,但是允许测试集的样本分布与训练集不同。独立同分布学习和迁移学习都要求测试集样本分布已知; 而稳定学习则希望在保证模型平均准确度的前提下,降低模型性能在各种不同样本分布下的准确率方差。理论上稳定学习可以在不同分布的测试集下都有较好的性能表现。