1. 背景
异常检测目标
给定数据集,分布外(OOD)检测的目标是对上的检测器建模,识别x为分布内(ID)或者分布外(OOD)数据。
对比学习
对比学习的思想是学习编码器,以提取必要的信息,将相似样本与其他样本区分开来。设为查询,与 分别为一组正样本和负样本。对比损失的原始形式定义如下:
其中表示集合{x+}的势,表示对比层的输出特征,表示温度超参数。可以定义对比特征 。为余弦相似性。
可以直接定义对比特征为编码器,即,或应用额外的投影层,即。论文中使用了投影层。
SimCLR的目标损失函数通过对比损失来定义:
其中为给定的批次,每个为查询密钥(query-key)对,分别为对样本进行两个同系列变换得到的变换样本。其他来自不同图片的样本为负样本。
2. CSI
2.1 Contrasting shifted instances
论文定义的 CSI(Contrasting shifted instances)损失为:
其中为不同变换(包括恒等式)中的一个,即.
2.2 Classifying shifted instances
论文还考虑了一个辅助任务,该任务可以预测给定的输入应用了哪些移位转换,以便于区分每个移位实例。论文在上添加了一个线性层,用于建模辅助softmax分类器。设为通过SimCLR从扩充而来的批次,损失定义如下:
最终损失CSI通过结合两个目标来定义:
实验中。
3. 检测OOD分数的函数
3.1 对比表征的检测分数
论文发现SimCLR表示的两个特征在检测OOD样本方面有效:
(a)与中最近的训练样本的余弦相似性,即
(b)表示的范数,即。
直观地说,对比损失增加了分布样本的范数,因为通过增加(1)的分母,可以很容易地最小化相同样本的余弦相似性。论文简单地结合这些特征来定义对比表征的检测分数:
3.2 利用变换
论文提出了两个额外的分数分别对应于(3)和(4):
总的分数为: