测试阶段模型自适应方法总结

1d3d9b99f25963ea14dbb464db6b10ad.gif

©PaperWeekly 原创 · 作者 | 张一帆

单位 | 中科院自动化所博士生

研究方向 | 计算机视觉

Domain Generalization(DG:域泛化)一直以来都是各大顶会的热门研究方向。DA 假设我们有多个个带标签的训练集(源域),这时候我们想让模型在另一个数据集上同样表现很好(目标域),但是在训练过程中根本不知道目标域是什么,这个时候如何提升模型泛化性呢?核心在于如何利用多个源域带来的丰富信息。

DG 最困难的地方在于 test-sample 的不可知,训练时不可用,近期有一系列方法开始尝试假设 test sample 以 online 的形式出现,然后利用其信息增强泛化性,下表总结了 test time daptation 方法与传统 DA,DG 方法的区别。

de78b0ab26ad2e60a9cd3e38e78b12fa.png

传统 DG 方法就是在源域 finetune 预训练模型,然后部署时不经过任何调整。DA 方法可以根据无标签的目标域数据在训练时调整模型,test-time training 方法在测试时会有一些无监督损失比如检测旋转角度等,然后对每个 test sample 也会进行旋转角度的检测,本文所述的 fully test-time adaptation 在 training 的时候不需要无监督损失,而只需要在 test 的时候进行 adaptation。

1f31fd8450a6ef374285aa3c3e1e0cc0.png

T3A

1c504313a08051b7d1aa91bcdb2d53c6.png

论文标题:

Test-Time Classifier Adjustment Module for Model-Agnostic Domain Generalization

论文来源:

NeurIPS 2021 Spotlight

论文链接:

https://proceedings.neurips.cc/paper/2021/hash/1415fe9fea0fa1e45dddcff5682239a0-Abstract.html

代码链接:

https://github.com/matsuolab/T3A

以往的 DG 方法都致力于研究如何利用好手头的域信息,这篇文章另辟蹊径。在 test 的阶段,我们在依然会选择更新模型头部的linear层。但是这与直接使用 test 的数据进行训练不同,主要的差异在于,本文假设在测试时,模型通常部署在某些环境中,并且必须在不断出现的各种示例上工作良好,样本连续到来是本文场景的主要特征,在拿到样本后模型需要立刻给出决策并更新。

本文的方法被称之为 test-time templates adjuster(T3A),接下来我们对其 intuition 和具体实现思路进行介绍。

首先,我们知道模型的分类是通过样本特征 和分类层对于 类的权重 进行点积然后 softmax 得到的,也就是说分类层的权重在这里作为一个 prototype,预测是在衡量样本到每个 prototype 之间的相似度。

3e863a4b63f5b59df9ae1e72a8c65110.png

作者维护了 个不同的 support set,对于每一个到来的样本 ,首先根据上式得到初始的预测结果,然后更新 support set。

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
YOLOv8是一种目标检测模型,它是YOLO(You Only Look Once)系列的最新版本。YOLOv8采用了一种单阶段的检测方法,可以实现实时目标检测。 YOLOv8的训练板块主要包括以下几个步骤: 1. 数据准备:首先需要准备训练所需的数据集。数据集应包含标注好的图像和对应的目标框信息。可以使用标注工具如LabelImg来进行标注。 2. 模型选择:根据具体需求选择合适的YOLOv8模型。YOLOv8有不同的变体,如YOLOv3、YOLOv4等,可以根据需要选择合适的版本。 3. 模型配置:配置模型的参数和超参数。包括输入图像尺寸、类别数、学习率、批大小等。这些参数会影响模型的性能和训练速度。 4. 模型初始化:使用预训练的权重文件初始化模型。可以使用在大规模数据集上预训练的权重,如COCO数据集上预训练的权重。 5. 训练过程:使用训练数据集对模型进行训练。训练过程中,通过计算损失函数来优化模型参数。常用的优化算法包括随机梯度下降(SGD)和自适应矩估计(Adam)等。 6. 模型评估:训练完成后,需要对模型进行评估。可以使用验证集或测试集来评估模型的性能,如计算准确率、召回率、平均精度等指标。 7. 模型调优:根据评估结果,可以对模型进行调优。可以尝试调整学习率、增加训练数据、调整网络结构等方法来提升模型性能。 8. 模型保存:训练完成后,将模型保存为权重文件或模型文件,以便后续使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值