DELTA: DEGRADATION-FREE FULLY TEST-TIME ADAPTATION--论文笔记

论文笔记

资料

1.代码地址

2.论文地址

https://arxiv.org/abs/2301.13018

3.数据集地址

https://github.com/bwbwzhao/DELTA

论文摘要的翻译

完全测试时间自适应旨在使预训练模型在实时推理过程中适应测试数据流,当测试数据分布与训练数据分布不同时,这种方法很有效。为提高适应性能作出了若干努力。然而,我们发现,在一些刘硎的的自适应方法中,如测试时批量归一化(BN)和自学习,隐藏了两个不利的缺陷。首先,我们指明了测试时间BN中的归一化统计量完全受当前接收的测试样本的影响,会导致不准确的估计。其次,我们证明了在测试时间自适应过程中,参数更新偏向于一些优势类。除了广泛研究的具有独立和类平衡样本的测试流之外,我们还观察到,在更复杂的测试环境中,例如(时间)相关或类不平衡的数据,缺陷可能会加剧。我们观察到,以前的方法在某些情况下运行良好,而在其他情况下由于其故障而导致性能下降。在本文中,我们提供了一种称为DELTA插件式的解决方案,用于Degradation-freE测试时间自适应,它由两个部分组成:(i)测试时间批量重归一化(TBR),用于改进估计的归一化统计信息。(ii)动态在线重新加权(DOT),旨在解决优化中的类别偏差。我们在三个常用的四种场景的数据集和一个新引入的真实世界数据集上研究了各种测试时间自适应方法。DELTA可以帮助他们同时处理所有场景,从而提高SOTA的性能。

1背景

尽管取得了进展,但我们发现,在流行的方法中隐藏着不可忽视的缺陷。首先,我们仔细研究推理中的归一化统计数据(第3.2节)。我们观察到,与实际的统计数据相比,BN自适应中使用的统计数据在每批中是不准确的。其次,我们揭示了普遍的测试时间模型更新偏向于一些主要类别(第3.3节)。我们注意到,在分布外的数据上,模型预测极不平衡,基于自学习的自适应方法可能会加剧这种情况。除了现有研究中考虑的最常见的独立和类平衡测试样本外,我们调查了图1所示的其他三种测试场景(请参见第3.1节中的详细信息),并发现当面对更复杂的测试流,如依赖样本或类不平衡数据时,流行的方法将遭受严重的性能退化,这限制了这些测试时间自适应策略的有用性。
在这里插入图片描述

  • IS+CB (Independent Sampling + Class-Balanced):
    测试流是从类别平衡的测试分布中独立采样得到的。这意味着每个类别的样本在测试集中出现的概率是相同的,并且每个样本的抽取是相互独立的。
  • DS+CB (Dependent Sampling + Class-Balanced)
    测试流是从类别平衡的测试分布中依赖采样得到的。这可能意味着某些类别的样本在测试集中出现的概率较高,或者样本之间存在某种依赖关系。
  • IS+CI (Independent Sampling + Class-Imbalanced)
    测试流是从类别不平衡的测试分布中独立采样得到的。这种情况下,某些类别的样本数量可能会远远多于其他类别。
  • DS+CI (Dependent Sampling + Class-Imbalanced)
    测试流是从类别不平衡的测试分布中依赖采样得到的。这可能导致测试集中某些类别的样本非常集中,而其他类别的样本则很少。

为了解决上述问题,我们提出了两个强大的工具。具体来说,为了处理不准确的归一化统计,我们引入了测试时间批量重整化(TBR)(第3.2节),它使用测试时间移动平均统计来校正归一化特征,并在梯度优化过程中考虑归一化。通过利用观察到的测试样本,校准的归一化更加准确。我们进一步提出了动态在线重新加权(DOT)(第3.3节)来解决偏差优化,这是从成本敏感学习中得出的。为了平衡适应,DOT将低/高权重分配给频繁/不频繁类别。权重映射函数基于动量更新的类频率向量,该向量考虑了类别偏差的多个来源,包括预训练的模型、测试流和自适应方法(这些方法通常对某些类没有固有的偏差,但可以强调现有的偏差)。TBR可以直接应用于常见的基于BN的预训练模型,并且不会干扰训练过程(对应于完全测试时间的自适应设置),并且DOT也可以很容易地与其他自适应方法相结合。
在这里插入图片描述
表1将我们的方法与CIFAR100-C的其他方法在各种场景下进行了比较。现有的测试时间自适应方法在四种场景中表现不同,在某些场景中表现出性能下降。而我们的工具在没有任何测试数据先验知识的情况下同时在所有四种场景中都表现良好,这对现实世界的应用程序很重要。因此,整个方法被命名为DELTA(降级频率-频率-测试时间自适应)
类别不平衡学习。利用类别不平衡数据进行训练引起了广泛关注。Cost-sensitive learning和resampling是处理这一问题的经典策略。Ren等人(2018)设计了一种元学习范式,为样本分配权重。类平衡损失在执行重新加权时使用有效样本数。解耦训练分别学习特征提取器和分类器。Menon等人(2021)从统计学角度提出logit调整。其他技术,如权重平衡、对比学习、知识蒸馏等也被应用于解决这一问题。

2论文的创新点

  • 指明了常用的测试时间自适应方法的缺陷,这些缺陷最终损害了自适应性能。
  • 本文证明,在复杂的测试环境中,缺陷会更加严重,导致性能下降。
  • 为了实现无退化的完全测试时间自适应,我们提出了DELTA,它包括两个组成部分:TBR和DOT,以改进归一化统计估计并减轻优化中的偏差。
  • 我们在具有四个场景的三个常见数据集和一个新引入的真实世界数据集上评估了DELTA,发现它可以在所有场景上持续改进流行的测试时间自适应方法,产生新的最先进的结果。

3 论文方法的概述

3.1 问题定义

假设我们有训练数据 D t r a i n = ( x i , y i ) i = 1 N t r a i n ~ P t r a i n ( x , y ) D^{train}={{(x_i,y_i)}}^{N^{train}}_{i=1}~P^{ train}(x,y) Dtrain=(xiyi)i=1NtrainPtrain(xy),其中 x ∈ X x∈\mathcal X xX是输入, y ∈ Y = { 1 , 2 , ⋅ ⋅ ⋅ , K } y\in \mathcal Y=\{1,2,···,K\} yY={12⋅⋅⋅K}是目标标签; f { θ 0 , a 0 } f_{\{\theta_0,a_0\}} f{θ0,a0}表示在 D t r a i n D^{train} Dtrain上学习或估计的具有参数 θ 0 \theta_0 θ0和归一化统计量 a 0 a_0 a0的模型。在不通用性的情况下,我们将测试流表示为 D t e s t = { ( x j , y j ) } j = 1 N t e s t ∼ P t e s t ( x , y ) \mathcal{D}^{\mathrm{test}}=\{(x_{j},y_{j})\}_{j=1}^{N^{\mathrm{test}}}\sim P^{\mathrm{test}}(x,y) Dtest={(xj,yj)}j=1NtestPtest(x,y),其中 { y j } \{y_j\} {yj}实际上不可用,下标 j j j也表示测试流中的样本位置。当 P t e s t ( x , y ) ≠ P t r a i n ( x , y ) P^{\mathrm{test}}(x,y)\neq P^{\mathrm{train}}(x,y) Ptest(x,y)=Ptrain(x,y)(输入/输出空间 X / Y \mathcal X / \mathcal Y X/Y在训练和测试数据之间是一致的)时, f { θ 0 , a 0 } f_{\{\theta_0,a_0\}} f{θ0,a0}可能在 D t e s t D^{test} Dtest上表现不佳。在完全测试时间自适应方案下,在推理时迭代step t≥1期间,模型 f { θ t − 1 , a t − 1 } f_{\{\theta_{t-1},a_{t-1}\}} f{θt1,at1}接收一个小批量测试数据 { x m t + b } b = 1 B \{x_{m_{t}+b}\}_{b=1}^B {xmt+b}b=1B,批量大小为B( m t m_t mt是推理步骤t之前观察到的测试样本数),然后基于当前测试小批量将其自身提升到 f { θ t , a t } f_{\{\theta_{t},a_{t}\}} f{θt,at},并输出实时预测 { p m t + b } b = 1 B ( p ∈ R K ) . \{p_{m_{t}+b}\}_{b=1}^{B}(p\in\mathbb{R}^{K}). {pmt+b}b=1B(pRK).。最后,基于每个推理步骤的在线预测来计算评估度量。完全测试时间自适应强调在实时推理过程中完全执行自适应,即训练过程不能中断,训练数据在测试过程中不再可用,并且自适应应在测试流上的一次通过中完成。
最常见的假设是, D t e s t D^{test} Dtest独立于 P t e s t ( x , y ) P^{test}(x,y) Ptestxy进行采样。在现实环境中,这一假设并不总是成立的,例如,某些类别的样本可能在某一时间段内更频繁地出现,这导致了另一个假设:测试样本是依赖性采样的。大多数研究只考虑了具有类平衡测试样本的场景,而在现实世界中,测试流可以是类平衡的。考虑到潜在抽样策略和测试类别分布,我们在以下四种情况下全面研究了测试时间适应性。为了方便起见,我们将测试样本从类平衡测试分布中独立/依赖地采样的场景表示为IS+CB/DS+CB;表示从IS+CI/DS+CI类不平衡测试分布中独立/依赖地采样测试样本的场景,如图1所示。其中,IS+CB是FTTA研究中最常见的场景,其他三种场景也经常出现在现实世界的应用中。

3.2 深度研究归一化统计

  • 诊断1:每个测试小批量中的归一化统计数据不准确

我们在CIFAR100-C上进行了实验。从图2我们可以看出,BN自适应中使用的统计数据 μ ^ b a t c h , σ ^ b a t c h \hat{\mu}^{\mathrm{batch}},\hat{\sigma}^{\mathrm{batch}} μ^batch,σ^batch在自适应过程中波动很大,在大多数测试小批量中都是不准确的。需要注意的是,对于BN自适应,预测是基于实时统计数据在线进行的,因此较差的估计可能会对性能产生负面影响。更严重的是,DS+CB情景下的估计更糟。在表2中,尽管在IS+CB场景中,与Source(使用固定的预训练模型f{θ0,a0}进行测试)相比,BN adapt和TENT可以提高准确性,但在DS+CB情况下,它们会退化。总的来说,我们可以看到,糟糕的统计数据严重阻碍了测试时间的适应,因为它们完全来自当前的小批量。
在这里插入图片描述

  • 处理一:测试时间批量重整化(TBR)是一种简单而有效的工具,可以提高归一化。
    很自然地,在自适应过程中,简单地使用测试时间移动平均值 μ ^ e m a , σ ^ e m a \hat{\mu}^{\mathrm{ema}},\hat{\sigma}^{\mathrm{ema}} μ^ema,σ^ema来执行归一化,称为TEMA,其中, μ ^ t ema  = α ⋅ μ ^ t − 1 ema  + ( 1 − α ) ⋅ s g ( μ ^ t batch ) , σ ^ t ema = α ⋅ σ ^ t − 1 ema + ( 1 − α ) ⋅ s g ( σ ^ t batch ) , \hat{\mu}_t^\text{ema }=\alpha\cdot\hat{\mu}_{t-1}^\text{ema }+(1-\alpha)\cdot sg(\hat{\mu}_t^\text{batch}),\hat{\sigma}_t^\text{ema}=\alpha\cdot\hat{\sigma}_{t-1}^\text{ema}+(1-\alpha)\cdot sg(\hat{\sigma}_t^\text{batch}), μ^tema =αμ^t1ema +(1α)sg(μ^tbatch),σ^tema=ασ^t1ema+(1α)sg(σ^tbatch),sg(·)代表停止梯度的操作, α \alpha α是一个平滑系数,TEMA可以持续改进BN自适应:图2中的归一化统计数据变得更加稳定和准确,表2中的测试精度也得到了提高。
    在这里插入图片描述
    然而,对于涉及参数更新的TENT,TEMA可以破坏预训练模型,如表2所示。如Ioffe&Szegedy(2015)所述,简单地使用移动平均值将抵消梯度优化和归一化的影响,因为梯度下降优化不考虑归一化,导致模型参数的无限增长。因此,我们将批量重整化引入到测试时间自适应中,导致TBR,其公式如下 v ∗ = v − μ ^ b a t c h σ ^ b a t c h ⋅ r + d , w h e r e r = s g ( σ ^ b a t c h ) σ ^ e m a , d = s g ( μ ^ b a t c h ) − μ ^ e m a σ ^ e m a , v^*=\frac{v-\hat{\mu}^{\mathbf{batch}}}{\hat{\sigma}^{\mathbf{batch}}}\cdot r+d,\quad\mathrm{where}\quad r=\frac{sg(\hat{\sigma}^{\mathbf{batch}})}{\hat{\sigma}^{\mathbf{ema}}},\quad d=\frac{sg(\hat{\mu}^{\mathbf{batch}})-\hat{\mu}^{\mathbf{ema}}}{\hat{\sigma}^{\mathbf{ema}}}, v=σ^batchvμ^batchr+d,wherer=σ^emasg(σ^batch),d=σ^emasg(μ^batch)μ^ema,我们在算法2中给出了详细的算法描述。与BN自适应不同,我们使用测试时间移动平均值来校正归一化(通过 r r r d d d)。与TEMA不同的是,TBR与基于梯度的自适应方法非常兼容,并且可以改进它们,如表2所示。对于BN自适应,TEMA等于TBR。与训练阶段使用的原始批量重整化不同,TBR用于推理阶段,推理阶段使用从测试批量导出的统计数据和移动平均值。此外,当自适应从训练的模型 f θ 0 , a 0 f{θ_0,a_0} fθ0a0开始时,TBR放弃了对r和d的预热和截断操作,因此不引入额外的超参数。TBR可以直接应用于具有BN的普通预训练模型,而不需要用这种校准的归一化来训练模型
    在这里插入图片描述

3.3更深入地了解测试时间参数优化

在BN自适应的基础上,TENT通过熵最小化进一步优化了仿射参数 γ , β γ,β γβ,并表明与单独使用BN自适应相比,测试时间参数优化可以产生更好的结果。

  • 诊断二:测试时间优化偏向类别样本多。
    我们在CIFAR100-C的IS+CB和DS+CB高斯噪声破坏测试数据(高斯)上评估了该模型。我们还在CIFAR100的原始干净测试集上测试了该模型以进行比较。图3描述了每类预测的数量,而表3显示了相应的标准偏差、范围(最大值减去最小值)和准确性。我们得出以下五个结论。
    在这里插入图片描述
    • 即使对于在类平衡训练数据上训练并在类平衡测试集上测试的模型,预测也是不平衡的,其中 P t e s t ( x , y ) = P t r a i n ( x , y ) P^{test}(x,y)=P ^{train}(x,y) Ptest(xy)=Ptrain(xy):图3(左)中的“clean”曲线,标准偏差8.3,范围46。
    • 如图3(左)所示,当 P t e s t ( x , y ) ≠ P t r a i n ( x , y ) P^{test}(x,y)\neq P ^{train}(x,y) Ptest(xy)=Ptrain(xy)时,预测变得更加不平衡:在干净和损坏的测试集上,范围分别为46和956。
    • BN自适应+TEMA提高了准确率(从27.0%到58.0%),同时缓解了预测不平衡(范围从956下降到121.6)。
    • 尽管TENT+TBR的准确性进一步提高(从58.0%提高到62.2%),但预测结果却变得更加不平衡(范围从121.6变化到269.8)。熵最小化损失集中在具有低熵的数据上,而由于训练的模型,某些类别的样本可能具有相对较低的熵,因此TENT会加剧预测不平衡。
    • 在相关测试流中,不仅模型精度下降,而且预测变得更加不平衡(TENT+TBR的独立/相关样本的范围269.8/范围469.2),因为在DS+CB场景中,模型可能在一段时间内被某些类别绝对支配。

在正常训练阶段,不平衡的数据是有害的,导致模型有偏差和整体准确性差。我们的主要动机是,测试时间自适应方法还涉及基于模型预测的梯度优化;然而,预测实际上是不平衡的,特别是对于依赖流或类不平衡流以及强调低熵的自适应方法。因此,我们认为测试时间优化实际上偏向于一些优势类,导致性能较差。偏斜的优化和不平衡的预测形成了一个恶性循环。

  • 处理方法二
    DOT可以缓解有类别偏差的优化。已经开发了许多方法来处理训练阶段的类不平衡,但当涉及到完全测试时间自适应时,它们面临着几个挑战:(i)网络架构是不可变的。(ii)由于测试样本类频率是动态的和不可知的,使输出分布均匀的共同约束不再合理。(iii)当测试小批量到达时,推理和自适应必须实时发生(只有一次通过测试数据,没有迭代学习)。
    考虑到这些约束条件,我们提出了算法1中提出的DOT。DOT主要来源于按类别重新加权。为了处理动态变化和未知的类频率,我们使用动量更新的类频率向量 z ∈ R K z∈\mathbb R^K zRK(算法1的第10行),该向量由 z [ k ] = 1 K , k = 1 , 2 , ⋅ ⋅ ⋅ , K . z[k]=1K,k=1,2,···,K. z[k]=1Kk=1,2⋅⋅⋅K.启动。对于每个推理步骤,我们根据每个测试样本的伪标签和当前z为其分配权重(算法1第5,6行)。具体来说,当z[k]相对较大时,在随后的适应过程中,DOT将减少第k类样本(伪标签)的贡献,并强调其他样本。值得注意的是,DOT可以同时缓解预训练模型(如类间相似性)、测试流(如类不平衡场景)引起的偏差优化。
    在这里插入图片描述
    DOT是解决有偏优化的一般思路,算法1中的一些部分有多个选项,因此它可以与不同的现有测试时间自适应技术相结合。对于“正向(·)”函数(算法1的第3行),可以合并所讨论的BN自适应和TBR。对于损失函数L(·)(算法1的第8行),研究通常采用熵最小化损失: L ( p b ) = − ∑ k = 1 K p b [ k ] log ⁡ p b [ k ] \mathcal{L}(p_b) = -\sum_{k=1}^Kp_b[k]\log p_b[k] L(pb)=k=1Kpb[k]logpb[k]或具有伪标签的交叉熵损失: L ( p b ) = − I p b [ k b ∗ ] ≥ τ ⋅ log ⁡ p b [ k ‾ b ∗ ] \mathcal{L}(p_{b}) = -\mathbb{I}_{p_{b}[k_{b}^{*}]\geq\tau} \cdot \log p_{b}[\overline{k}_{b}^{*}] L(pb)=Ipb[kb]τlogpb[kb]。同样,对于熵最小化,EntW也抛弃了高熵的样本,强调低熵样本: L ( p b ) = − I H b < τ ⋅ e τ − H b ⋅ ∑ k = 1 K p b [ k ] log ⁡ p b [ k ] \mathcal{L}(p_b)=-\mathbb{I}_{H_b<\tau}\cdot e^{\tau-H_b}\cdot\sum_{k=1}^Kp_b[k]\log p_b[k] L(pb)=IHb<τeτHbk=1Kpb[k]logpb[k],其中 H b H_b Hb是样本 x b x_b xb的熵。

4 论文实验

  • 数据集
    我们在常见数据集CIFAR100-C、ImageNetC、ImageNet-R和新引入的视频(片段)数据集:YouTube BoundingBoxes(YTBB sub)的子集(上进行了实验。CIFAR100-C/ImageNet-C包含15种损坏类型,每种类型具有5个严重级别;除非另有规定,否则我们使用已发表的作为ICLR 2023最高级别的会议论文。ImageNet-R包含ImageNet类别的各种风格(例如绘画)。对于CIFAR100-C的评估,我们采用Hendrycks等人的训练后的ResNeXt-29)模型。为 f θ 0 , a 0 f{θ_0,a_0} fθ0a0;对于ImageNet-C/-R,我们使用来自Torchvision的经过训练的ResNet-50模型。在相应的原始训练数据上训练模型。对于YTBB sub,我们使用在COCO的相关图像上训练的ResNet-18。任务、数据集和示例的详细信息见附录A.1。

  • 评价指标
    我们报告各类别的平均准确度(Acc,%);在正文中,对CIFAR100-C和ImageNet-C的15种不同损坏类型的结果进行了平均,请参阅附录A.5、A.6中每种损坏类型的详细性能。

  • IS+CB场景中的评估
    CIFAR100-C的结果如表4所示。可以看出,所提出的DELTA持续改进了先前的自适应方法PL(增益0.7%)、TENT(增益0.8%)和Ent-W(增益0.8%),实现了新的最先进的性能。结果还表明,当前的测试时间自适应方法确实存在所讨论的缺点,并且所提出的方法可以帮助它们获得优越的性能。然后,我们在更具挑战性的数据集ImageNet-C上评估了这些方法。与CIFAR100C上的结果一致,DELTA显著改进了现有的方法。由于与ImageNet-C上的类号(1000)相比,自适应批量大小(64)太小,因此之前的方法比CIFAR100-C受到更严重的损害。因此,DELTA在ImageNet-C中获得了更大的增益:比PL增益1.6%,比TENT增益2.4%,比Ent-W增益5.6%。
    在这里插入图片描述

  • DS+CB场景中的评估
    为了模拟相关流,根据Yurochkin等人(2019),我们通过浓度因子ρ>0的狄利克雷分布来排列样本(ρ越小,同类样本的浓度就越高,详见附录a.1)。我们用ρ∈{1.0,0.5,0.1}来检验模型。实验结果如表5所示(我们在附录A.4中提供了ρ=0.01的更极端情况的结果)。具有代表性的测试时间自适应方法在相关场景中性能下降,尤其是在小ρ采样的数据上。DELTA成功地帮助模型适应不同浓度因子的环境。值得注意的是,DELTA的DS+CB结果与is+CB结果接近,例如,TENT+DELTA在CIFAR100-C的is+CB和DS+CB(ρ=0.5)测试流上分别达到69.5%和68.5%的准确率。
    在这里插入图片描述

  • IS+CI和DS+CI场景中的评估
    我们对具有不平衡因子π的测试样本进行了重新采样(π越小,测试数据就越不平衡,详见附录A.1)。我们测试了π∈{0.1,0.05}的模型(类似地,我们在附录A.4中展示了π=0.001的极端实验)。表6总结了IS+CI和DS+CI场景中的结果,观察结果如下:(i)在类不平衡场景下,性能退化不如依赖性数据严重。这主要是因为不平衡的测试数据对归一化统计的影响相对较小。DELTA在不平衡的测试流上运行良好。(ii)混合DS+CI场景可能比单独场景更困难。在混合场景中,DELTA也可以提高基线。(iii)尽管低熵强调方法Ent-W在IS+CB场景中提高了TENT(表4),但在依赖或类不平衡场景中,它可能不如TENT(在表5,6中的ImageNet-C上的结果)。原因是Ent-W导致了一个副作用——放大了阶级偏见,这将抵消甚至压倒它的好处。DELTA消除了Ent-W的副作用,同时保留了其优点,因此EntW+DELTA始终显著优于TENT+DELTA。
    在这里插入图片描述

  • 对真实分布外数据集ImageNet-R和YTBB-sub的评估。
    ImageNet-R本质上是类不平衡的,由卡通、艺术、绘画、素描、玩具等混合变体组成。如表8所示,DELTA也使其得到了持续的改进。虽然与ImageNet-C相比,ImageNet-R是单独收集的,它由更难识别的硬情况组成,但DELTA的增益不如ImageNet-C。对于YTBB sub,自然会遇到依赖样本和类不平衡样本。我们看到,经典方法受到严重的退化,而DELTA有助于它们获得良好的性能。
    在这里插入图片描述

  • 分布中测试数据的评估。
    合格的FTTA方法在不可分割数据集上应该是“安全的”,即 P t e s t ( x , y ) = P t r a i n ( x , y ) P^{test}(x,y)=P^{train}(x,y) Ptestxy=Ptrainxy。根据表7,(i)DELTA继续改善性能,尽管略有改善;(ii)大多数自适应方法可以产生与Source相当的结果,并且与DELTA的组合甚至在分布数据上优于Source。
    在这里插入图片描述

  • 使用不同架构进行评估
    图4表明,DELTA可以帮助改进以前使用不同模型架构的测试时间自适应方法。附录A.4中提供了更多的分析(例如,小批量、不同严重程度的评估)。在这里插入图片描述

  • 消融实验
    DELTA由两个工具组成:TBR和DOT。在表9中,我们在四个场景和两个数据集的TENT的基础上分析了他们的贡献。第1行表示TENT的结果。在TENT上单独应用TBR或DOT在大多数场景和数据集中都会带来收益。然而,我们发现,当测试流是is+CB并且批大小较大时,TBR实现的改进较少(例如,单独对批大小为200的CIFAR100-C的is+CB数据执行TBR自适应并不能提高TENT)。然而,当批量大小相对较小时(例如,ImageNet-C,批量大小为64),TBR的好处将变得明显。更重要的是,TBR对于依赖样本是非常有效和必要的。DOT可以在所有场景中持续推广TENT或TENT+TBR,尤其是当类数很大时。这些结果表明,不准确的归一化统计和有偏差的优化都是有害的,TBR和DOT可以有效地缓解它们。

  • TBR中的α和DOT中的λ的影响。
    与大多数基于指数移动平均的方法类似,当平滑系数α(或λ)太小时,自适应可能不稳定;当α(或λ)过大时,适应会很慢。图5提供了CIFAR100-C(来自验证集)的DS+CB(ρ=0.5)样品上α(左)和λ(右)的消融研究。我们发现TBR和DOT在较宽的α和λ范围内表现相当好
    在这里插入图片描述

5总结

在本文中,指明了测试时间自适应方法中导致性能次优甚至退化的缺陷,并提出了DELTA来缓解这些缺陷。首先,BN自适应中使用的归一化统计在很大程度上受到当前测试小批量的影响,这可能是片面的,并且波动很大。我们引入TBR来使用(近似的)全局统计来改进它。其次,优化高度偏向于优势类,使模型更有偏向性。DOT通过在线方式重新平衡每个班级的贡献来缓解这个问题。这两个强大工具的结合产生了我们的插件方法DELTA,它同时在不同的场景(IS+CB、DS+CB、IS+CI和DS+CI)中实现了改进。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/790304.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

苹果笔记本电脑能玩哪些游戏 苹果电脑可以玩的单机游戏推荐

苹果笔记本有着优美的外观和强大的性能。用户不仅可以使用苹果笔记本办公、剪辑&#xff0c;越来越多的用户开始关注苹果笔记本在游戏领域的表现&#xff0c;尤其是在大型游戏方面。本文将为你详细介绍苹果笔记本都能玩什么游戏&#xff0c;以及为你推荐苹果电脑可以玩的单机游…

tesla p100显卡显示资源不足,api调用失败

&#x1f3c6;本文收录于《CSDN问答解惑-专业版》专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收…

进程间的通信--管道

文章目录 一、进程通信的介绍1.1进程间为什么需要通信1.2进程如何通信 二、管道2.1匿名管道2.1.1文件描述符理解管道2.1.2接口使用2.1.3管道的4种情况2.1.4管道的五种特征 2.2管道的使用场景2.2.1命令行中的管道2.2.2进程池 2.命名管道2.1.1原理2.2.2接口2.2.3代码实例 一、进程…

C++初阶:类与对象(一)

✨✨所属专栏&#xff1a;C✨✨ ✨✨作者主页&#xff1a;嶔某✨✨ 类的定义 定义格式 • class为定义类的关键字&#xff0c;后面跟类的名字&#xff0c;{}中为类的主体&#xff0c;注意类定义结束时后⾯分号不能省略。类体中内容称为类的成员&#xff1b;类中的变量称为类的…

设计模式之职责链模式

1. 职责链模式&#xff08;Chain of Responsibility Pattern&#xff09; 在职责链模式中&#xff0c;多个处理器依次处理同一个请求。一个请求先经过 A 处理器处理&#xff0c;然后再把请求传递给 B 处理器&#xff0c;B处理器处理完后再传递给 C 处理器&#xff0c;以此类推&…

【Android组件】封装加载弹框

&#x1f4d6;封装加载弹框 ✅1. 构造LoadingDialog✅2. 调用LoadingDialog 效果&#xff1a; ✅1. 构造LoadingDialog 构造LoadingDialog类涉及到设计模式中的建造者模式&#xff0c;进行链式调用&#xff0c;注重的是构建的过程&#xff0c;设置需要的属性。 步骤一&#x…

基于考研题库小程序V2.0实现倒计时功能板块和超时判错功能

V2.0 需求沟通 需求分析 计时模块 3.1.1、功能描述←计时模块用于做题过程中对每一题的作答进行30秒倒计时&#xff0c;超时直接判错&#xff0c;同时将总用时显示在界面上;记录每次做题的总用时。 3.1.2、接口描述←与判定模块的接口为超时判定&#xff0c;若单题用时超过 …

C++:缺省参数|函数重载|引用|const引用

欢迎来到HarperLee的学习笔记&#xff01; 博主主页传送门&#xff1a;HarperLee的博客主页 想要一起进步的uu可以来后台找我哦&#xff01; 一、缺省参数 1.1 缺省参数的定义 缺省参数&#xff1a;是声明或定义函数时为函数的参数指定⼀个缺省值。在调用该函数时&#xff0c;…

MYSQL数据库建表规则及注意事项

数据类型以及应用场景 数值类型 TINYINT&#xff1a;使用在 0~1 SMALLINT&#xff1a;使用在2~10 INT&#xff1a;常用 BIGINT&#xff1a;使用在用户ID等更大范围的整数 DECIMAL&#xff1a;用于存储精确的小数。常用于需要高精度计算的场景&#xff0c;如金融数据处理。 日期…

【UE5.3】笔记10-时间轴的使用

时间轴 右键--Add Timeline(在最下面) --> 双击进入时间轴的编辑界面&#xff1a; 左上角可以添加不同类型的轨道&#xff0c;可以自定义轨道的长度&#xff0c;单位秒&#xff0c;一次可以添加多个 可以通过右键添加关键帧&#xff0c;快捷键&#xff1a;shift鼠标左键按…

JMH325【剑侠情缘3】第2版80级橙武网游单机更稳定亲测视频安装教学更新整合收集各类修改教学补丁兴趣可以慢慢探索

资源介绍&#xff1a; 是否需要虚拟机&#xff1a;是 文件大小&#xff1a;压缩包约14G 支持系统&#xff1a;win10、win11 硬件需求&#xff1a;运行内存8G 4核及以上CPU独立显卡 下载方式&#xff1a;百度网盘 任务修复&#xff1a; 1&#xff0c;掌门任务&#xff08…

MMII 的多模态医学图像交互框架:更直观地理解人体解剖结构和疾病

医生在诊断和治疗过程中依赖于人体解剖图像&#xff0c;如磁共振成像&#xff08;MRI&#xff09;&#xff0c;难以全面捕捉人体组织的复杂性&#xff0c;例如组织之间的空间关系、质地、大小等。然而&#xff0c;实时感知有关患者解剖结构和疾病的多模态信息对于医疗程序的成功…

在mysql中delete和truncated的相同点和区别点

相同点 删除数据&#xff1a;两者都会删除表中的数据。影响数据&#xff1a;两者都不删除表结构&#xff0c;只影响表中的数据。 区别点 操作方式&#xff1a; DELETE&#xff1a;逐行删除数据&#xff0c;可以使用 WHERE 子句来指定删除的条件。如果不加 WHERE 子句&#…

R包:ggsci期刊配色

介绍 不同期刊配色大多数时候不一样&#xff0c;为了更好符合期刊图片颜色的配色&#xff0c;有人开发了ggsci这个R包。它提供以下函数&#xff1a; scale_color_palname() scale_fill_palname() 对应不同期刊的color和fill函数。 导入数据R包 library("ggsci")…

LAZYNVIM学习使用笔记

文章目录 1. 前言VIM的模式快捷键参考 1. 前言 习惯使用vscode进行代码编辑&#xff0c;无意中刷到lazynvim&#xff0c;感觉功能强大&#xff0c;于是下载、安装&#xff0c;学习使用一下&#xff0c;本篇主要记录学习使用lazynvim的一些要点&#xff0c;防止遗忘。 持续更新…

Unity 打包的安卓APK在模拟器运行一会卡死

Unity 安卓APK模拟器运行一会卡死 如题&#xff0c;unity在模拟器上运行安卓apk挂机一会就卡死&#xff0c;在真机上没问题。因为打包时勾选了这个帧率优化选项&#xff0c;2019.2之后的功能&#xff0c;最坑的时打包时默认勾选&#xff0c;所以使用这个版本打包时&#xff0c…

文献阅读(1)——深度强化学习求解车辆路径问题的研究综述

doi&#xff1a; 10.3778/j.issn.1002-8331.2210-0153 深度强化学习求解车辆路径问题的研究综述 (ceaj.org) 组合最优化问题&#xff08; combinatorial optimization problem&#xff0c; COP &#xff09; 日常生活中常见的 COP 问题有旅行商问题&#xff08;traveling sale…

微调Qwen2大语言模型加入领域知识

这里写自定义目录标题 试用Qwen2做推理安装LLaMA-Factory使用自有数据集微调Qwen2验证微调效果 试用Qwen2做推理 参考&#xff1a;https://qwen.readthedocs.io/en/latest/getting_started/quickstart.html from transformers import AutoModelForCausalLM, AutoTokenizer de…

NI 5G大规模MIMO测试台:将理论变为现实

目录 概览引言MIMO原型验证系统MIMO原型验证系统硬件LabVIEW通信系统设计套件&#xff08;简称LabVIEW Communications&#xff09;CPU开发代码FPGA代码开发硬件和软件紧密集成 LabVIEW Communications MIMO应用框架MIMO应用框架特性单用户MIMO和多用户MIMO基站和移动站天线数量…

作业/数据结构/2023/7/10

1.实现单向链表队列的&#xff0c;创建&#xff0c;入队&#xff0c;出队&#xff0c;遍历&#xff0c;长度&#xff0c;销毁。 main.c #include "head.h"int main(int argc, const char *argv[]) {//创建链式队列queue_ptr QLcreate_queue();//入栈push(QL, 1000)…