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)中实现了改进。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaWeb__XML、http

目录 一 、XML1.1 常见配置文件类型1.1.1 properties配置文件1.1.2 xml配置文件 1.2 DOM4J进行XML解析1.2.1 DOM4J的使用步骤1.2.2 DOM4J的API介绍 二、 HTTP协议2.1 HTTP简介2.2 请求和响应报文2.2.1 报文的格式2.2.2 请求报文2.2.3 响应报文 一 、XML XML是EXtensible Markup…

首批!蚂蚁数科通过中国信通院面向大模型的可信执行环境产品专项测试

2024年6月17日&#xff0c;在中国信息通信研究院&#xff08;以下简称“信通院”&#xff09;组织的首批“面向大模型的增强型可信执行环境基础能力专项测试”中&#xff0c;蚂蚁数科摩斯顺利完成全部测试内容&#xff0c;成为首批完成此项测试的组织。 标准及测试介绍 《面向…

数据结构1:C++实现变长数组

数组作为线性表的一种&#xff0c;具有内存连续这一特点&#xff0c;可以通过下标访问元素&#xff0c;并且下标访问的时间复杂的是O(1)&#xff0c;在数组的末尾插入和删除元素的时间复杂度同样是O(1)&#xff0c;我们使用C实现一个简单的边长数组。 数据结构定义 class Arr…

【测试设计】使用jenkins 插件Allure生成自动化测试报告

前言 以前做自动化测试的时候一直用的HTMLTestRunner来生成测试报告&#xff0c;后来也尝试过用Python的PyH模块自己构建测试报告&#xff0c;在后来看到了RobotFramework的测试报告&#xff0c;感觉之前用的测试报告都太简陋&#xff0c;它才是测试报告应该有的样子。也就是在…

C++基础篇(1)

目录 前言 1.第一个C程序 2.命名空间 2.1概念理解 2.2namespace 的价值 2.3 namespace的定义 3.命名空间的使用 4.C的输入输出 结束语 前言 本节我们将正式进入C基础的学习&#xff0c;话不多说&#xff0c;直接上货&#xff01;&#xff01;&#xff01; 1.第一个C程…

关于复现StableDiffusion相关项目时踩坑的记录

研究文生图也有了一段时间&#xff0c;复现的论文也算是不少&#xff0c;这篇博客主要记录我自己踩的坑。 目前实现文生图的项目主要分为两类&#xff1a; 一、基于Stable-diffusion原项目文件实现 原项目地址&#xff1a;https://github.com/Stability-AI/stablediffusion …

Android实现获取本机手机号码

和上次获取设备序列号一样&#xff0c;仍然是通过无障碍服务实现&#xff0c;在之前的代码基础上做了更新。代码和demo如下&#xff1a; package com.zwxuf.lib.devicehelper;import android.accessibilityservice.AccessibilityService; import android.app.Activity; import…

Everything搜索无法搜索到桌面的文件(无法检索C盘 或 特定路径的文件)

现象描述 在Everything搜索框中输入桌面已存在的文件或随便已知位置的文件&#xff0c;无法找到。 搜索时检索结果中明显缺少部分磁盘位置的&#xff0c;例如无法检索C盘&#xff0c;任意关键字搜索时结果中没有位于C盘的&#xff0c;无论怎样都搜不到C盘文件。 解决方法 在…

Flutter——最详细(Table)网格、表格组件使用教程

背景 用于展示表格组件&#xff0c;可指定线宽、列宽、文字方向等属性 属性作用columnWidths列的宽度defaultVerticalAlignment网格内部组件摆放方向border网格样式修改children表格里面的组件textDirection文本排序方向 import package:flutter/material.dart;class CustomTa…

还没听说过IOC你就out了!融合IOC的可视化大屏重塑校园管理模式

一.IOC到底是个啥东西 在数字孪生中&#xff0c;IOC&#xff08;物联网操作中心&#xff09;是指一个中心化的平台或系统&#xff0c;用于监控、管理和控制物联网设备和系统。在智慧校园建设中用于集成、管理和优化校园各类数据和资源的中心化平台。它通常采用先进的信息技术和…

防火墙之安全策略

目录 前言&#xff1a; 一、实验需求 二、需求分析 三、具体操作 1&#xff0c;在安全区域中新建拓扑图中所显示的区域 2&#xff0c;在对象模块中的时间段中添加一个9&#xff1a;00-18&#xff1a;00 3&#xff0c;写两条安全策略&#xff0c;一个是生产区&#xff0c…

解决Invalid or unsupported by client SCRAM mechanisms(dbeaver)

在用工具&#xff08;dbeaver&#xff09;链接Opengauss数据库的时候&#xff0c;报出标题的错误。原因为驱动不正确。 驱动下载地址&#xff1a;https://opengauss.org/zh/download/ 下载完的包 &#xff0c;解压后&#xff0c;里面应该有两个jar 包,使用postgresql.jar dbe…

AWS 云安全性:检测 SSH 暴力攻击

由于开源、低成本、可靠性和灵活性等优势&#xff0c;云基础设施主要由基于linux的机器主导&#xff0c;然而&#xff0c;它们也不能幸免于黑客的攻击&#xff0c;从而影响云的安全性。攻击Linux机器最流行的方法之一是通过SSH通道。 什么是 SSH 安全外壳协议&#xff08;Sec…

进程间的通信--管道

文章目录 一、进程通信的介绍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代码实例 一、进程…

论文 | Chain-of-Thought Prompting Elicits Reasoningin Large Language Models 思维链

这篇论文研究了如何通过生成一系列中间推理步骤&#xff08;即思维链&#xff09;来显著提高大型语言模型进行复杂推理的能力。论文展示了一种简单的方法&#xff0c;称为思维链提示&#xff0c;通过在提示中提供几个思维链示例来自然地激发这种推理能力。 主要发现&#xff1…

Apache Seata应用侧启动过程剖析——RM TM如何与TC建立连接

本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 Apache Seata应用侧启动过程剖析——RM & TM如何与TC建立连接 前言 看过官网 README 的第…

阶段三:项目开发---民航功能模块实现:任务24:航空实时监控

任务描述 内 容&#xff1a;地图展示、飞机飞行轨迹、扇区控制。航空实时监控&#xff0c;是飞机每秒发送坐标&#xff0c;经过终端转换实时发送给塔台&#xff0c;为了飞机位置的精准度&#xff0c;传输位置的密度很大&#xff0c;在地图位置显示不明显。本次为了案例展示效…

【C++深度学习】多态(概念虚函数抽象类)

✨ 疏影横斜水清浅&#xff0c;暗香浮动月黄昏 &#x1f30f; &#x1f4c3;个人主页&#xff1a;island1314 &#x1f525;个人专栏&#xff1a;C学习 &#x1f680; 欢迎关注&#xff1a;&#x1f44d;点赞 &…

基于与STM32的加湿器之温湿度驱动

1.简介 温湿度计是一种用于测量和监测环境中温度和湿度的仪器&#xff0c;其工作原理基于热力学原理和物理原理。通过测量和显示环境中的温度和湿度&#xff0c;帮助用户了解当前环境的温湿度状况&#xff0c;从而采取相应的措施来调节或控制环境&#xff0c;以达到最佳的生产、…

Vue3入门之创建vue3的单页应用(vite+vue)

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…