TRAINING CONFIDENCE-CALIBRATED CLASSIFIERS FOR DETECTING OUT-OF-DISTRIBUTION SAMPLES(翻译)

本文主要是介绍TRAINING CONFIDENCE-CALIBRATED CLASSIFIERS FOR DETECTING OUT-OF-DISTRIBUTION SAMPLES(翻译),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用于检测分布外样本的置信度校正分类器的训练
原文:https://arxiv.org/pdf/1711.09325.pdf
摘要
在许多实际的机器学习应用中,检测测试样本是来自于分布内(即,由分类器训练的分布)还是来自分布外与它有很大不同的问题出现了。然而,最先进的深度神经网络在其预测中高度自信,即不区分内部和外部分布。近年来,为了解决这一问题,人们提出了几种基于阈值的检测器。然而,由于以往的工作只关注于推理过程的改进,其性能很大程度上取决于分类器的训练。在本文中,我们提出了一种新的分类器训练方法,使这种推理算法能够更好地工作。特别地,我们建议在原始损失的基础上增加两个附加项(例如交叉熵)。第一种方法迫使样本不在分布范围内,分类器对样本的可信度较低,而第二种方法用于(隐式地)为第一种方法生成最有效的训练样本。在本质上,我们的方法联合训练分类和生成神经网络的分布。我们用深度卷积神经网络在各种流行的图像数据集上证明了它的有效性。
1简介
深度神经网络(DNN)在许多分类任务中表现出了最先进的性能,例如语音识别(Hannun et al.,2014)、图像分类(Girshick,2015)、视频预测(Villegas et al.,2017)和医学诊断(Caruana et al.,2015)。尽管DNN具有很高的准确性,但已经指出(Lakshminarayanan等人,2017;Guo等人,2017),他们通常对自己的预测过于自信。例如,训练用于分类MNIST图像的DNN通常会产生91%的高置信概率,即使是随机噪声(参见(Hendrycks&Gimpel,2016)的工作)。由于评估其预测不确定性的质量很困难,在现实世界系统中部署它们会引起人工智能安全方面的严重关注(Amodei等人,2016),例如,人们可以很容易地破坏安全认证系统,该系统可以通过使用DNN检测眼睛的注视和虹膜来解锁(Shrivastava等人,2017)。
过于自信的问题与检测外分布(区分测试样本是来自于外分布还是内分布)高度相关。可以形式化为一个二分类问题。令输入x∈X和标签y∈Y=1,…,K为随机变量,服从联合分布 P in (x,y)=P in (y|x)P in (x) 。我们假设分类器 Pθ(y|x) 在来自 Pin(x,y) 分布的数据上训练,其中θ是模型参数。令 P out (x) 表示外分布,即与内分布 P in (x) 距离较远。我们的问题是区分输入X来自于 P in 还是 P out 。换句话说,我们希望构建一个检测器g(x):X→0,1,对内分布标记为1,外分布标记为0。
最近有人致力于开发高效的检测方法,他们主要研究了简单的基于阈值的检测器(Hendrycks&Gimpel,2016;Liang et al.,2017),利用预先训练的分类器。对于每个输入x,它基于预先训练好的分类器来度量置信度q(x),并将其与某个阈值δ>0进行比较。然后,如果置信度得分q(x)高于δ,检测器分配标签1,否则分配标签0。具体而言,(Hendrycks&Gimpel,2016)将置信度定义为预测分布的最大值,并且(Liang et al.,2017)通过使用温度标度(Guo et al.,2017)和向输入数据添加小的受控扰动,进一步改进了性能。虽然这种推理方法计算简单,但其性能在很大程度上依赖于预先训练好的分类器。也就是说,如果分类器对Pin和Pout的预测分布的最大值分离得不够好,它们就无法工作。理想情况下,应该训练分类器来分离输出空间中所有依赖于类的分布和不依赖于类的分布。作为另一个研究方向,还研究了贝叶斯概率模型(Li&Gal,2017;Louizos&Welling,2017)和分类器集合(Lakshminarayanan等人,2017)。然而,训练或推断这些模型在计算上更为昂贵。这激发了我们为更合理的简单分类器开发新的训练方法的方法。我们的方向是正交的贝叶斯和集成方法,其中一个也可以结合他们甚至更好的性能。
贡献。在本文中,我们提出了这样一种训练方法,可以在不损失原始分类精度的前提下,更好地检测出分布外的Pout。首先,我们考虑一个新的损失函数,称为信心损失。我们对所提出的损失的关键思想是另外最小化KullbackLeibler(KL)从分布外样本的预测分布到均匀分布的偏差,以便对它们给出不太可信的预测。然后,内部和外部的分布将更加可分离。然而,优化置信度损失需要从分布外训练样本,而这些样本往往很难抽样:分布外的先验知识不可用或其潜在空间太大而无法覆盖。为了解决这个问题,我们考虑了一种新的生成性对抗网络(GAN)(Goodfellow等人,2014),用于从Pout生成最有效的样本。与原来的GAN不同,这种GAN在Pin的低密度区域产生边界样品。最后,我们设计了一个联合训练方案,使得分类器的损失和新的GAN的损失交替最小化,即随着训练的进行,置信分类器改进GAN,反之亦然。在这里,我们强调,在我们的方案下,提出的GAN不需要生成显式样本,而是隐式地鼓励训练一个更自信的分类器。
我们使用深层卷积神经网络(如AlexNet(Krizhevsky,2014)和VGGNet(Szegedy et al.,2015)对CIFAR(Krizhevsky&Hinton,2009)、SVHN(Netzer et al.,2011)、ImageNet(Deng et al.,2009)和LSUN(Yu et al.,2015)数据集上的图像分类任务证明了所提出方法的有效性。在所有实验中,我们提出的方法训练的分类器显著提高了所有基于阈值的检测器的检测性能(Hendrycks&Gimpel,2016;Liang et al.,2017)。特别地,用我们的方法训练的13层VGGNet与基线相比,提高了真阴性率(TNR),即检测到的分布外(LSUN)样本的比例:在95%的分布内样本被正确检测时,CIFAR-10和SVHN上分别为14.0%→39.1%和46.3%→98.9%。我们还提供了视觉上的理解,对所提出的方法使用的图像数据集。我们相信,当其他研究人员在未来从事这些工作时,我们的方法可以成为一个强有力的指导。
2训练神经分类器
在本节中,我们提出了一种新的分类器训练方法,以提高基于先验阈值的检测器的性能(Hendrycks&Gimpel,2016;Liang et al.,2017)(详见附录a)。我们的动机是这样的推理算法可以更好地工作,如果分类器的训练,使他们映射的样本,从进出分布到输出空间分开。即首先训练一个改进的分类器,然后在训练好的模型下使用先验检测器来衡量其性能。
2.1分布外的置信分类器
在不损失一般性的前提下,假设交叉熵损失用于训练。然后,我们提出以下新的损失函数,称为置信损失:
在这里插入图片描述
其中KL表示Kullback-Leibler(KL)散度,U(y)表示均匀分布,β>0表示惩罚参数。这是非常直观的,因为新的损失迫使分布外样本的预测分布更接近均匀分布,即零置信度,而分布内样本的预测分布仍然遵循标签相关概率。换言之,所提出的损失被设计为分配更高的最大预测值,即maxy Pθ(y | x)给分布内样本而不是分布外样本。这里需要注意的是,添加KL散度项可能会降低分类性能。然而,我们发现,由于深层神经网络的高表达能力,情况并非如此,而通过优化置信损失,内部分布和外部分布相对于最大预测值变得更加可分离(支持实验结果见第3.1节)。
我们注意到,最近出于不同目的研究了最小化类似KL损失(Lee et al.,2017;Pereyra et al.,2017)。训练样本,以尽量减少KL散度项显式地给出了他们的设置,而我们可能不会。理想情况下,必须对所有(几乎无限)类型的分布外进行抽样,以最小化(1)中的KL项,或者需要一些关于测试分布外的先验信息,以便进行有效抽样。然而,这往往是不可行和脆弱的。为了解决这一问题,我们建议在不假设检验出分布的情况下,采用接近于内分布的抽样方法,这样可以更有效地提高检测性能。
为了详细解释我们的直觉,我们在一个简单的例子中考虑了一个二进制分类任务,其中每个类的数据都是从高斯分布中提取的,整个数据空间由2D box[-50,50]2限定,以便可视化。我们使用不同类型的分布外训练样本,将置信度损失应用于简单的全连接神经网络(每层2个隐藏层和500个隐藏单元)。首先,如图1(a)所示,我们在整个数据空间[−50,50]2上使用拒绝采样构建了一个由100个(绿色)点组成的分布外训练数据集。图1(b)显示了分类器优化相应数据集上置信度损失的决策边界。我们可以观察到,分类器仍然显示过度自信的预测(红色和蓝色区域)附近的标签在分布区域。另一方面,如果我们在分布空间(参见图1(c)),从[-20,20]2,即更接近目标,构造一个100点的分布外训练数据集,分类器只对标记区域产生有信心的预测,而对整个数据空间[-50,50]2的剩余区域产生零信心,如图1(d)所示。如果增加从整个空间生成的训练分布外样本的数量,即[−50,50]2,则图1(b)预计与图1(d)类似。换句话说,如果样本是从整个空间生成的,则需要更多的样本来训练有信心的分类器。然而,这可能是不可能的,也不是有效的,因为分布外训练样本的数量可能几乎是无限的,以覆盖整个巨大的实际数据空间。这意味着在分布区域附近训练分布外样本可以更有效地提高检测性能。我们潜在的直觉是,分布区域内的边界效应可能会传播到整个分布空间外。当我们的实验任务是改进高斯分布的图像分类时,我们也考虑了高斯分布的实验结果。这促使我们开发一种新的生成性对抗网络(GAN)来生成这种有效的分布外样本。
在这里插入图片描述
图1:展示了不同分布外训练数据集下分类器的行为。我们从(a)2D-box[-50,50]2生成分布外样本,并显示(b)分类器的相应决策边界。我们还从(c)2D-box[-20,20]2生成分布外样本,并显示(d)分类器的相应决策边界。
2.2分布外的对抗生成器
在本节中,我们将介绍一种新的训练方法,用于学习受生成性对抗网络(GAN)启发的分布外发生器(Goodfellow等人,2014)。我们将首先假设in分布的分类器是固定的,并在下一节中描述联合学习框架。
GAN框架由两个主要部分组成:鉴别器D和发生器G。发生器将先验分布Ppri(z)中的潜变量z映射到生成的输出G(z),鉴别器D:X→[0,1]表示样本X来自目标分布的概率。假设我们想用生成器G恢复分布Pin(x)中的值。然后,可以优化以下min-max目标,以强制PG≈Pin
在这里插入图片描述
然而,与原来的GAN不同的是,我们要使发生器恢复一个有效的出分布的Pout而不是Pin。为此,我们提出以下新建议:
在这里插入图片描述
其中θ是在分布上训练的分类器的模型参数。上述目标可解释如下:第一项(a)对应于用发生器分布PG替换分布外的Pout-in(1)的KL损失。可以注意到,这迫使发生器产生低密度样品,因为它可解释为最小化在使用分类器的分布中,即Pin(x)≈exp(KL(U(y)||pθ(y | x)))。我们注意到,这种近似值也与初始分数密切相关(Salimans et al.,2016),后者通常被用作样本视觉逼真度的定量度量。第二项(b)对应于原始GAN损耗,因为我们希望分布外样本接近分布内,如第2.1节所述。假设适当设置分类器θ的模型参数,使得分类器对分布外的样本产生均匀分布。那么,无论产生什么样的分布外样本,(3)中的KL散度项(a)都近似为0。然而,如果样品远离边界,则(3)中的GAN损耗(b)应较高,即样品在分布空间中离边界不太远的GAN损耗力。因此,我们可以预期,提出的损耗可以鼓励发生器产生分布空间中低密度边界上的样本。第3.2节还提供了实验证据。
我们还注意到(Dai et al.,2017)考虑了一个类似的GAN,从分布外生成样本,用于半监督学习。作者假设存在一个预训练密度估计模型,例如PixelCNN++(Salimans et al.,2017),用于in-distribution,但是这样的模型可能不存在,并且通常训练成本很高。相反,我们使用更简单的自信分类器来近似密度。因此,在我们完全监督的环境下,我们的GAN更容易训练,也更合适。
2.3自信分类器与对抗生成器联合训练方法
在上一节中,我们建议使用预先训练的自信分类器来训练所提出的GAN。我们提醒,反过来也是可能的,也就是说,有这样一个GAN的动机是为了培养一个更好的分类器。因此,两个模型可以相互改进。这自然提出了一种联合训练方案,其中自信分类器随着训练的进行而改进所提出的GAN,反之亦然。具体而言,我们建议采用以下联合目标函数:
在这里插入图片描述
分类器的置信度损失对应于(c)+(d),所提出的GAN损失对应于(d)+(e),即它们在联合训练下共享KL散度项(d)。为了有效地优化上述目标,我们提出了一种交替算法,该算法交替优化分类器和GAN模型的模型参数{G,D},如算法1所示。由于该算法单调地减少了目标函数,保证了算法的收敛性。
在这里插入图片描述
3实验结果
我们使用各种数据集证明了我们提出的方法的有效性:CIFAR(Krizhevsky&Hinton,2009)、SVHN(Netzer et al.,2011)、ImageNet(Deng et al.,2009)、LSUN(Yu et al.,2015)和合成(高斯)噪声分布。我们训练卷积神经网络(CNNs),包括VGGNet(Szegedy等人,2015)和AlexNet(Krizhevsky,2014),用于分类CIFAR-10和SVHN数据集。使用相应的测试数据集作为分布内(正)样本来度量性能。我们使用真实图像和合成噪声作为非分布(负)样本。为了进行评估,我们使用基于阈值的检测器测量以下指标(Hendrycks&Gimpel,2016;Liang et al.,2017):95%真阳性率(TPR)下的真阴性率(TNR)、接收器工作特征曲线下面积(AUROC)、精确召回曲线下面积(AUPR)和检测准确度,其中,所有度量的值越大,表示检测性能越好。由于篇幅限制,有关数据集、度量和网络体系结构的更多说明见附录B.1。
3.1信心丧失的影响

我们首先验证了(1)中的置信度损失的影响,这些影响是由一些显式的,比如说被看到的,分布外数据集训练的。首先,我们通过应用不同的训练损失来比较信心水平的质量。具体来说,使用softmax分类器,通过最小化SVHN数据集上的标准交叉熵损失来训练简单的cnn(两个卷积层和三个完全连通层)。我们还通过使用CIFAR-10数据集(作为分布外训练)对KL散度项进行优化,将置信度损失应用到模型中。在图2(a)和图2(b)中,我们报告了softmax分数中最大预测值的分布,以评估分布内(即SVHN)和分布外的分离质量。很明显,当用置信度损失训练模型时,SVHN测试集(红条)和其他测试集之间存在更好的分离。在这里,我们强调,即使是未经训练(看不见)的分布,例如tinyimagnet、LSUN和合成数据集,最大预测值也很低。因此,当通过优化置信损失来训练分类器时,人们可以更容易地区分内分布和外分布。为了验证这一点,我们使用基线检测器(Hendrycks&Gimpel,2016)获得ROC曲线,该检测器计算测试样本上预测分布的最大值,如果置信度高于某个阈值,则将其分类为阳性(即分布中)。图2(c)显示了在各种数据集上优化KL散度项时的ROC曲线。可以观察到真实图像,如tinyimagnet(水线)和LSUN(绿线)比合成数据集(橙色线)更有用,以提高检测性能。这支持了我们的直觉,即接近于in分布的分布外样本可以更有效地提高检测性能,正如我们在第2.1节中讨论的那样。
在这里插入图片描述
图2:对于(a)、(b)和(c)中的所有实验,我们通常使用SVHN数据集进行非分布。通过(a)交叉熵损失和(b)置信度损失训练的softmax分数中最大预测值的分数:x轴和y轴分别表示最大预测值和接收到相应分数的图像的分数。不同损失下的接收机工作特性(ROC)曲线如(c)所述:红色曲线对应于通过优化原始交叉熵损失训练的模型的ROC曲线,而其他曲线对应于通过优化置信损失训练的模型的ROC曲线。置信损失中的KL散度项是使用括号中所示的显式分布外数据集优化的,例如,置信损失(LSUN)意味着我们使用LSUN数据集优化KL散度项。

我们确实使用大规模CNN(即具有13层的VGNET)评估了基线检测器在各种训练场景下的性能,在附录C中可以找到关于AlexNet和ODIN检测器的更多结果(Liang et al.,2017)(结果的总体趋势相似)。为了优化(1)中的置信度损失,分别使用SVHN和CIFAR-10训练数据集对in分布为CIFAR-10和SVHN的情况下的KL散度项进行优化。表1显示了每个输入和输出分布对的检测性能。当输入分布为SVHN时,该方法训练的分类器在不影响原有分类性能的前提下,大大提高了所有输出分布的检测性能。然而,当in分布是CIFAR-10时,置信度损失并不能提高总体上的检测性能,我们认为这是因为经过训练/观察的SVHN分布外并不能有效地覆盖所有被测的分布外。我们在(4)中的联合置信度损失是根据直觉设计的,它解决了表1中CIFAR-10(分布中)分类情况的问题(见图4(b))。
在这里插入图片描述
表1:使用VGGNet的基线检测器的性能(Hendrycks&Gimpel,2016)。所有值均为百分比,粗体表示相对较好的结果。对于每一个in分布,我们使用来自一个用“seen”表示的分布外数据集的训练样本最小化(1)中的KL散度项,其中其他“看不见”的分布外数据集仅用于测试。

3.2对抗生成器和联合信任损失的影响
在本节中,我们验证了第2.2节中提出的GAN的效果,并评估了(4)中联合置信度损失的检测性能。为了验证提出的GAN能在分布空间的低密度边界附近产生样品,我们首先在一个简单的例子中比较了原始GAN和提出的GAN产生的样品,其中目标分布是两个高斯分布的混合。对于生成器和鉴别器,我们使用了两个隐层的完全连接的神经网络。对于我们的方法,我们使用一个预先训练的分类器,它最小化目标分布样本上的交叉熵和有界二维盒上拒绝采样产生的分布外样本上的KL散度。如图3(a)所示,原始GAN样品覆盖了目标分布的高密度区域,而拟定GAN样品覆盖了其边界区域(见图3(b))。我们还比较了MNIST数据集(LeCun et al.,1998)上原始和拟议GANs的生成样本,该数据集由手写数字组成。在这个实验中,我们使用了深度卷积的GANs(DCGANs)(Radford等人,2015)。在这种情况下,我们使用了一个预先训练的分类器,该分类器最小化了MNIST训练样本上的交叉熵和合成高斯噪声上的KL散度。如图3(c)和图3(d)所示,原始GAN的样品看起来更像数字,而不是建议GAN的样品。有意思的是,提出的GAN仍然会产生一些新的数字图像。
在这里插入图片描述
图3:从原始GAN(a)/(c)和拟定GAN(b)/(d)生成的样品。在(a)/(b)中,灰色区域是从两个高斯分布的混合中提取的分布样本中训练的二维直方图,红色点表示由GANs生成的样本。

我们确实在(4)中使用所提出的GAN来评估我们的联合置信损失的性能。为此,我们使用VGGnet(作为分类器)和DCGAN(作为GAN)。我们还测试了一个变量的信心损失优化KL散度项的样本从预先训练的原始GAN(隐式)模拟分布。可以预期,来自原始GAN的样本也有助于提高检测性能,因为它可能具有很差的泛化特性(Arora等人,2017),并且在低密度边界上生成一些样本,就像提议的GAN一样。图4显示了每个输入和输出分布对的基线检测器的性能。首先,观察到联合置信损失(蓝色条)优于某些显式分布外数据集(绿色条)的置信损失。这是非常显著的,因为前者仅使用分布内数据集进行训练,而后者使用额外的分布外数据集。我们还注意到,我们的方法在所有情况下都显著优于基线交叉熵损失(红色条),而不会损害其原始分类性能(见附录C中的表2)。有趣的是,使用原始GAN(橙色条)的置信度损失通常(但不总是)有助于提高检测性能,而使用所提出的GAN(蓝色条)的置信度损失在所有情况下仍然优于它。
在这里插入图片描述
图4:基线检测器在各种训练损失下的性能(Hendrycks&Gimpel,2016)。对于通过置信度损失训练模型,KL散度项使用括号中所示的样本进行优化。为了公平比较,我们只绘制了不可见分布的性能,其中不可见分布的性能(用于最小化(1)中的KL散度项)可以在表1中找到。

最后,我们还使用引导梯度图提供模型的视觉解释(Springenberg et al.,2014)。这里,梯度可以解释为影响分类决策的每个像素的重要值。如图5所示,由交叉熵损失训练的模型显示了来自内部和外部分布的样本的尖锐梯度图,而由置信损失训练的模型只对来自内部分布的样本进行训练。在SVHN分布的情况下,所有的置信度损失都给出了几乎为零的梯度,这与图4(a)中的结果相匹配:它们的检测性能几乎是完美的。对于CIFAR10分布的情况,现在可以观察到梯度映射和检测性能之间存在某种联系。这是直观的,因为为了更好地检测分布外的样本,分类器应该将更多的像素视为相似的重要性,并且KL散度项强制它。我们认为,我们的可视化结果可能会为未来的工作提供一些思路,以开发更好的推理方法来检测我们模型下的分布外。
在这里插入图片描述
图5:在各种训练损失下,top-1预测类相对于输入图像的引导梯度(灵敏度)图。

4结论
本文旨在提出一种神经分类网络的训练方法,在不损失原有分类精度的前提下,更好地检测出不均匀分布。本质上,我们的方法通过交替地最小化损失来联合训练两个模型来检测和生成分布外的数据。虽然我们的实验主要集中在图像分类上,但是我们的方法可以用于任何使用深度神经网络的分类任务。将我们的方法应用于其他相关任务也是一个有趣的未来方向:回归(Malinin et al.,2017)、网络校准(Guo et al.,2017)、贝叶斯概率模型(Li&Gal,2017;Louizos&Welling,2017)、集成(Lakshminarayanan et al.,2017)和半监督学习(Dai et al.,2017)。

A 基于阈值的探测器
在本节中,我们正式描述了基于阈值的检测器的检测过程(Hendrycks&Gimpel,2016;Liang et al.,2017)。对于每个数据x,它通过将数据输入预先训练好的分类器来测量一些置信度q(x)。在这里,(Hendrycks&Gimpel,2016)将置信度定义为预测分布的最大值,并且(Liang等人,2017)通过处理预测分布进一步提高了性能(更多细节见附录C.3)。然后,检测器g(x):x→{0,1},如果置信度q(x)高于某个阈值δ,则指派标签1,否则指派标签0
在这里插入图片描述
对于这个检测器,我们必须找到一个分数阈值,以便正确地分类一些阳性的例子,但这取决于假阴性和假阳性之间的权衡。为了解决这个问题,我们使用了与阈值无关的评估指标,如接收机工作特性曲线下面积(AUORC)和检测精度(见附录B)。

B 第3节中的实验装置
数据集。我们训练VGGNet(Szegedy et al.,2015)和AlexNet(Krizhevsky,2014)等深度模型对CIFAR-10和SVHN数据集进行分类:前者由50000个训练图像和10000个测试图像组成,包含10个图像类;后者由73257个训练图像和26032个测试图像组成,包含10个数字。2使用相应的测试数据集作为模型以分布(正)样本来衡量绩效。我们使用真实图像和合成噪声作为分布外(负)样本:TinyImageNet由10000个测试图像和来自ImageNet图像子集的200个图像类组成。LSUN由10个不同场景的10000个测试图像组成。我们将tinyimagnet和LSUN的每幅图像缩小到32×32。高斯噪声是从平均值为0.5,方差为1的高斯分布中独立而相同地采样的。我们将每个像素值剪裁到范围[0,1]中。
详细的CNN结构和培训。图2所示的用于评估的简单CNN由两个卷积层和三个完全连接的层组成。卷积层分别有128和256个滤波器。每层有一个最大2×5像素的步幅池,每个步幅池有一个2×5像素的接收区。AlexNet(Krizhevsky,2014)由五个卷积层和三个完全连通层组成。卷积层分别具有64、192、384、256和256个滤波器。第一卷积层和第二卷积层具有5×5的感受野,每个感受野以1像素的步幅施加,接着是以2像素的步幅汇集3×3个区域的最大汇集层。其他卷积层有一个3×3的感受野,步幅为1像素,然后是最大池层,以2像素的步幅聚集2×2个区域。完全连接的层分别有2048、1024和10个隐藏单元。辍学(Hinton等人,2012)仅适用于网络的完全连接层,保留单元的概率为0.5。所有隐藏单位都是雷卢斯。图6显示了具有三个完全连接层和10个卷积层的VGGNet(Szegedy et al.,2015)的详细结构。图中的每个ConvReLU框表示一个3×3卷积层,然后是ReLU激活。所有最大池层都有2×2的感受野,步幅为2。辍学只适用于完全连接的网络层,保留单元的概率为0.5。对于所有实验,使用softmax分类器,通过使用Adam学习规则优化目标函数来训练每个模型(Kingma&Ba,2014)。对于每个分布外的数据集,我们随机选取1000幅图像来调整惩罚参数β、最小批量大小和学习率。惩罚参数从β∈{0, 0.1, . . . 1.9, 2},最小批量大小从{64,128}中选择,学习率从{0.001,0.0005,0.0002}中选择。在验证集上选择最优参数以减小检测误差。我们在60个历元时将学习率降低0.1,总共训练100个历元的模型。报告了每种方法的最佳试验结果。
在这里插入图片描述
性能指标。我们使用基于阈值的检测器测量以下指标:
•95%真阳性率(TPR)时的真阴性率(TNR)。设TP、TN、FP和FN分别表示真阳性、真阴性、假阳性和假阴性。当TPR=TP/(TP+FN)为95%时,我们测量TNR=TN/(FP+TN)。
•接收器工作特性曲线下的面积(AUROC)。ROC曲线是通过改变阈值绘制TPR与假阳性率=FP/(FP+TN)的曲线图。
•精确召回曲线(AUPR)下的区域。PR曲线是通过改变阈值绘制精度=TP/(TP+FP)与召回率=TP/(TP+FN)的曲线图。AUPR-IN(或-OUT)是AUPR,其中IN-(或OUT)分布样本被指定为阳性。,
•检测精度。该度量对应于所有可能阈值的最大分类概率δ:1−minδ{Pin(q(x)≤δ)P(x is from Pin)+Pout(q(x)>δ)P(x is from Pout)},其中q(x)是置信分数,例如softmax的最大值。我们假设正例和负例出现在测试集中的概率相等,即P(x is from Pin)=P(x is from Pout)=0.5。
请注意,AUROC、AUPR和检测精度是与阈值无关的评估指标。
在一个简单的例子上生成样本。如图3(a)和图3(b)所示,我们在一个简单的例子中比较了原始GAN和提出的GAN产生的样本,其中目标分布是两个高斯分布的混合。对于生成器和鉴别器,我们使用了两个隐层的全连通神经网络,每层有500个隐单元。对于所有层,我们使用ReLU激活函数。我们对潜变量z使用了一个100维高斯先验。在我们的方法中,我们通过最小化目标分布样本上的交叉熵和在有界条件下拒绝采样产生的分布外样本上的KL散度来预训练简单的全连通神经网络(每层2个隐层和500个ReLU单元)2D框[−10,10]2。惩罚参数β设置为1。我们使用ADAM学习规则(Kingma&Ba,2014),最小批量为400。初始学习率设置为0.002,我们总共训练100个时期。
正在MNIST上生成示例。如图3(c)和图3(d)所示,我们在MNIST数据集上比较了原始和建议GANs的生成样本,该数据集由灰度图像组成,每个图像包含一个数字0到9,有60000个训练和10000个测试图像。我们将每个图像的大小扩展为3×32×32。用于卷积发生器(we和Radgans等人,2015)。鉴别器和发生器分别由四个卷积层和反卷积层组成。卷积层分别有128、256、512和1个滤波器。每层有一个4×2的卷积感受野。第二和第三卷积层之后是批量标准化(Ioffe&Szegedy,2015)。对于所有层,我们使用LeakyReLU激活函数。反褶积层分别有512、256、128和1个滤波器。每个反褶积层有一个4×4的感受野,步幅为2像素,然后进行批量归一化(Ioffe&Szegedy,2015)和ReLU激活。对于我们的方法,我们通过最小化MNIST训练样本上的交叉熵和合成高斯噪声上的KL散度,使用预先训练好的简单CNNs(两个卷积层和三个完全连接层)。卷积层分别有128和256个滤波器。每层有一个最大2×5像素的步幅池,每个步幅池有一个2×5像素的接收区。惩罚参数β设置为1。我们使用ADAM学习规则(Kingma&Ba,2014),最小批量为128。初始学习率设置为0.0002,我们总共训练50个时期。
C更多实验结果
C、 1分类性能
表2报告了在图4所示的各种训练损失下,在CIFAR-10和SVHN数据集上VGNET的分类精度。可以注意到,所有的方法都不会降低原始的分类性能,在我们的实验中,所有被测试的单个模型的分类错误差异最多为1%。
在这里插入图片描述
表2:CIFAR-10和SVHN数据集上VGNET在不同训练损失下的分类测试集精度。

C、 2置信度损失的校正效果
我们还验证了我们的方法的校准效果(Guo等人,2017):通过我们的方法训练的分类器是否能够指示何时它们可能对来自不分布的测试样本不正确。为了评估校准效果,我们测量了预期校准误差(ECE)(Naeini等人,2015)。给定测试数据{(x1,y1), …, (xn,yn)},我们将预测分为M个区间箱(每个大小为1/M)。假设Bm是预测置信度落在区间(m-1/M, m/M]内的样本的指标集,则Bm的精度定义如下:
在这里插入图片描述
其中θ是分类器的模型参数,1A∈{0,1}是事件A的指示函数。我们还定义Bm的置信度如下:
在这里插入图片描述
其中q(xi)是数据i的置信度。使用这些符号,我们测量预期校准误差(ECE),如下所示:
在这里插入图片描述
可以注意到,如果置信度得分能够代表真实分布,则ECE为零。表3显示了当我们将置信度得分q定义为分类器的最大预测分布时,置信度损失的校准效果。我们发现用我们的方法训练的分类器的ECE比用标准交叉熵损失训练的分类器的ECE要低。这意味着我们提出的方法是有效的校准预测。我们还注意到,温度标度(Guo et al.,2017)在我们联合置信度损失训练的分类器下提供了进一步的改进。
在这里插入图片描述
表3:CIFAR 10和SVHN数据集上VGG网络在各种训练损失下的预期校准误差(ECE)。bins数量的数量M设置为20。所有值均为百分比,粗体表示相对较好的结果。

C、 3使用ODIN检测器的实验结果
在本节中,我们使用ODIN检测器(Liang et al.,2017)验证了置信度损失的影响,ODIN检测器是一种先进的基于阈值的检测器,使用温度标度(Guo et al.,2017)和输入扰动。ODIN的关键思想是温度缩放,其定义如下:
在这里插入图片描述
其中T>0是温度标度参数,f=(f1, …, fK)是神经网络的最终特征向量。对于每个数据x,ODIN首先通过添加如下小扰动来计算预处理图像x^:
在这里插入图片描述
其中ε是噪声的大小,y^是预测的标签。然后,ODIN将预处理后的数据送入分类器,计算出标度预测分布的最大值maxy Pθ(y|x’;T),如果置信度高于某个阈值δ,则将其分类为正(即分布中)。
对于ODIN探测器,微扰噪声ε选自{0,0.0001,0.001,0.01},温度T选自{1,10,100,500,1000}。在验证集上选择最优参数以减小检测误差。图7显示了每个输入和输出分布对的OIDN和基线检测器的性能。首先,我们注意到使用我们的联合置信度损失(蓝色条)训练的分类器的基线检测器通常优于使用交叉熵损失(橙色条)训练的分类器的ODIN检测器。这意味着我们的分类器可以更独立地映射分布的内部和外部,而无需诸如温度缩放之类的预处理方法。如果将ODIN检测器与我们的联合置信度损失(绿色条)一起使用,它将提供进一步的改进。也就是说,我们提出的训练方法可以改进所有的先验检测方法。
在这里插入图片描述
图7:基线检测器(Hendrycks&Gimpel,2016)和ODIN检测器(Liang et al.,2017)在各种训练损失下的性能。

C、 4在ALEXNET上的实验结果
表4显示了当分类器是AlexNet(Krizhevsky,2014)时,每个输入和输出分布对的检测性能,AlexNet是流行的CNN架构之一。我们注意到,它们显示出类似的趋势。
在这里插入图片描述
表4:使用AlexNet的基线检测器(Hendrycks&Gimpel,2016)和ODIN检测器(Liang et al.,2017)的性能。所有值均为百分比,粗体表示相对较好的结果。对于每一个in分布,我们使用来自一个用“seen”表示的分布外数据集的训练样本最小化(1)中的KL散度项,其中其他“看不见”的分布外数据也用于测试。

最大熵
有人可能会认为,不分布的熵比不分布的熵要高得多,因为不分布的熵通常比不分布的熵大得多。因此,我们可以在(3)中的新GAN损耗和(4)中的联合置信度损耗中加上生成元分布的最大熵。然而,最大化发电机分布的熵在技术上是有挑战性的,因为GAN不能明确地模拟发电机分布。为了解决这个问题,人们可以利用拉走条件(PT)(Zhao等人,2017年):
在这里插入图片描述
其中H(·)表示熵,zi,zj∼Ppri(z),M表示样本数。直观地说,可以预期通过最小化PT来增加熵的效果,因为它对应于生成样本的平方余弦相似性。我们注意到(Dai等人,2017年)也使用PT使熵最大化。与第3.2节类似,我们使用VGGNet验证了PT的效果。表5显示了每个输入和输出分布对的基线检测器的性能。我们发现联合置信度损失与PT有助于(但并非总是)提高检测性能。然而,由于PT增加了训练复杂度,并且PT的增益相对较小(或有争议),因此我们将其作为改进性能的辅助选项。
在这里插入图片描述
表5:基线检测器的性能(Hendrycks&Gimpel,2016),使用了通过联合置信度损失训练的VGG网络(有和没有抽离项(PT))。所有值均为百分比,粗体表示相对较好的结果。

E 添加分布外类
不必强迫分布外样本的预测分布更接近均匀分布,只需向分类器添加一个额外的“分布外”类,如下所示:
在这里插入图片描述
其中θ是模型参数。与第3.1节类似,我们在(5)中使用VGG网络和SVHN数据集上的图像分类比较了置信度损失和上述损失的性能。利用CIFAR10训练数据集对KL散度项和(5)的第二项进行优化。为了比较检测性能,在(5)的情况下,我们将输入x的置信度定义为1−Pθ(y=K+1 | x)。表6显示了分布外的检测性能。首先,通过我们的方法训练的分类器通常比添加新类标签的方法有显著的性能。这是因为显式的分布外建模会导致对经过训练的分布外数据集的过度拟合。
在这里插入图片描述
表6:使用VGGNet的基线检测器(Hendrycks&Gimpel,2016)和ODIN检测器(Liang et al.,2017)的性能。所有值均为百分比,粗体表示相对较好的结果。

这篇关于TRAINING CONFIDENCE-CALIBRATED CLASSIFIERS FOR DETECTING OUT-OF-DISTRIBUTION SAMPLES(翻译)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/267838

相关文章

2014 Multi-University Training Contest 8小记

1002 计算几何 最大的速度才可能拥有无限的面积。 最大的速度的点 求凸包, 凸包上的点( 注意不是端点 ) 才拥有无限的面积 注意 :  凸包上如果有重点则不满足。 另外最大的速度为0也不行的。 int cmp(double x){if(fabs(x) < 1e-8) return 0 ;if(x > 0) return 1 ;return -1 ;}struct poin

2014 Multi-University Training Contest 7小记

1003   数学 , 先暴力再解方程。 在b进制下是个2 , 3 位数的 大概是10000进制以上 。这部分解方程 2-10000 直接暴力 typedef long long LL ;LL n ;int ok(int b){LL m = n ;int c ;while(m){c = m % b ;if(c == 3 || c == 4 || c == 5 ||

2014 Multi-University Training Contest 6小记

1003  贪心 对于111...10....000 这样的序列,  a 为1的个数,b为0的个数,易得当 x= a / (a + b) 时 f最小。 讲串分成若干段  1..10..0   ,  1..10..0 ,  要满足x非递减 。  对于 xi > xi+1  这样的合并 即可。 const int maxn = 100008 ;struct Node{int

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

excel翻译软件有哪些?如何高效提翻译?

你是否曾在面对满屏的英文Excel表格时感到头疼?项目报告、数据分析、财务报表... 当这些重要的信息被语言壁垒阻挡时,效率和理解度都会大打折扣。别担心,只需3分钟,我将带你轻松解锁excel翻译成中文的秘籍。 无论是职场新人还是老手,这一技巧都将是你的得力助手,让你在信息的海洋中畅游无阻。 方法一:使用同声传译王软件 同声传译王是一款专业的翻译软件,它支持多种语言翻译,可以excel

MonoHuman: Animatable Human Neural Field from Monocular Video 翻译

MonoHuman:来自单目视频的可动画人类神经场 摘要。利用自由视图控制来动画化虚拟化身对于诸如虚拟现实和数字娱乐之类的各种应用来说是至关重要的。已有的研究试图利用神经辐射场(NeRF)的表征能力从单目视频中重建人体。最近的工作提出将变形网络移植到NeRF中,以进一步模拟人类神经场的动力学,从而动画化逼真的人类运动。然而,这种流水线要么依赖于姿态相关的表示,要么由于帧无关的优化而缺乏运动一致性

linux dlopen手册翻译

名称 dlclose, dlopen, dlmopen 打开和关闭一个共享对象 简介 #include <dlfcn.h>void *dlopen(const char*filename, int flags);int dlclose(void *handle);#define _GNU_SOURCE#include <dlfcn.h>void *dlmoopen(Lmid_t lm

从计组中从重温C中浮点数表示及C程序翻译过程

目录 移码​编辑  传统浮点表示格式 浮点数的存储(ieee 754)->修炼内功 例子:   ​编辑 浮点数取的过程   C程序翻译过程 移码  传统浮点表示格式 浮点数的存储(ieee 754)->修炼内功 根据国际标准IEEE(电⽓和电⼦⼯程协会)  32位 例子:    64位    IEEE754对有效数字M和

HumanNeRF:Free-viewpoint Rendering of Moving People from Monocular Video 翻译

HumanNeRF:单目视频中运动人物的自由视点绘制 引言。我们介绍了一种自由视点渲染方法- HumanNeRF -它适用于一个给定的单眼视频ofa人类执行复杂的身体运动,例如,从YouTube的视频。我们的方法可以在任何帧暂停视频,并从任意新的摄像机视点或甚至针对该特定帧和身体姿势的完整360度摄像机路径渲染主体。这项任务特别具有挑战性,因为它需要合成身体的照片级真实感细节,如从输入视频中可能