TENT: Fully Test-time Adaptation by Entropy Minimization

TENT: 当模型训练好之后,在没有任何监督信息的测试数据上使用时,只有parameter和test data,如何自适应的进行预测从而在测试数据上表现最佳。

模型训练时学到的分布不仅仅是预测结果,也表明了模型的confidence,这些信息不仅在训练时而且在预测时都是有用的。

  • highlight the setting of fully test-time adaptation with only target data and no source data.

  • propose a test-time entropy minimization scheme to reduce generalization error by reducing the entropy of model predictions on test data.

作者首先归纳了一些已有的方法 (fine-tuning, domain adaptation, test-time training)以及TENT方法所用到的源数据和目标数据的区别。

作者首先描述了TENT的好处 (只需使用unlabelled target data和model ),并提出了上述方法的不足:

  • Fine-tuning: 必须有target label来重新训练L(xt,yt)L(x^t,y^t)

  • Domain Adaptation: 既需要source data也需要target data,用来训练cross-domain loss L(xs,xt)L(x^s,x^t)

  • Test Time Training (TTT): 在训练和测试同时进行adaptation,必须有source target。

本文引入了测试熵在测试期间优化模型,通过调整其特征来最小化其预测的熵。

熵是一个无监督的目标,因为它只依赖于预测不需要annotations。然而,作为预测的度量,它与监督任务和模型直接相关。

图上代表的意思就是:xˉ=xμσ\bar x=\frac{x-\mu}{\sigma},normalization;x=γxˉ+βx'=\gamma\bar x+\beta,Transformation。统计量 μσμ、σ 是根据数据估计(滑动平均)的,而参数γβγ、β是通过损失优化的(目标函数是熵)。

实验部分

  1. 数据 : 不同规模图像分类数据和图像分类的领域自适应/迁移学习数据集和语义分割迁移学习数据集,训练数据被使用多种方式corruption,比如增加对比度、增加高斯噪声等。

  2. 结论:

  • Tent不仅能够提升鲁棒学习和迁移学习的效果,而且开销很低

  • 测试集entropy和loss之间有一定的正相关

  • ablation:不normalization只rescale比不过BN,直接修正所有参数没效果,但没放出数据

  • 比较:与BN相比,BN倾向于修复corrupt的feature,而Tent倾向于生成接近Oracle的feature分布。