1. 背景 异常检测目标
给定数据集 { x m } m = 1 M \{x_m\}^M_{m=1} {xm?}m=1M?,分布外(OOD)检测的目标是对 { x m } \{x_m\} {xm?}上的检测器建模,识别x为分布内(ID)或者分布外(OOD)数据。
对比学习
对比学习的思想是学习编码器 f θ f_θ fθ?,以提取必要的信息,将相似样本与其他样本区分开来。设 x x x为查询, x + {x_+} x+?与 x ? {x_?} x?? 分别为一组正样本和负样本。对比损失的原始形式定义如下:
文章图片
其中 ∣ x + ∣ |{x_+}| ∣x+?∣表示集合{x+}的势, z ( x ) z(x) z(x)表示对比层的输出特征, τ τ τ表示温度超参数。可以定义对比特征 z ( x ) z(x) z(x) 。 s i m ( z , z ′ ) sim(z,z') sim(z,z′)为余弦相似性。
文章图片
可以直接定义对比特征 z ( x ) z(x) z(x)为编码器 f θ f_θ fθ?,即 z ( x ) = f θ ( x ) z(x)=f_θ(x) z(x)=fθ?(x),或应用额外的投影层 g φ g_φ gφ?,即 z ( x ) = g φ ( f θ ( x ) ) z(x)=g_φ(f_θ(x)) z(x)=gφ?(fθ?(x))。论文中使用了投影层。
SimCLR的目标损失函数通过对比损失来定义:
文章图片
其中 B : = x i i = 1 B B:={x_i}^B_{i=1} B:=xi?i=1B?为给定的批次,每个 ( x ~ i ( 1 ) , x ~ i ( 2 ) ) (\tilde{x}^{(1)}_i,\tilde{x}^{(2)}_i) (x~i(1)?,x~i(2)?)为查询密钥(query-key)对,分别为对样本 x x x进行两个同系列变换得到的变换样本。其他来自不同图片的样本为负样本。
2. CSI
2.1 Contrasting shifted instances
论文定义的 CSI(Contrasting shifted instances)损失为:
文章图片
其中 S S S为不同变换(包括恒等式 I I I)中的一个,即 S ∈ { S 1 , . . . , S K ? 1 } S∈ \{S_1, . . . , S_{K?1}\} S∈{S1?,...,SK?1?}.
2.2 Classifying shifted instances
论文还考虑了一个辅助任务,该任务可以预测给定的输入 x x x应用了哪些移位转换 y S ∈ S y^S∈ S yS∈S,以便于 f θ f_θ fθ?区分每个移位实例。论文在 f θ f_θ fθ?上添加了一个线性层,用于建模辅助softmax分类器。设 B ~ S \tilde{B}_S B~S?为通过SimCLR从 B S B_S BS?扩充而来的批次,损失定义如下:
文章图片
最终损失CSI通过结合两个目标来定义:
文章图片
实验中 λ = 1 λ=1 λ=1。
3. 检测OOD分数的函数
3.1 对比表征的检测分数
论文发现SimCLR表示的两个特征在检测OOD样本方面有效:
(a) x x x与 { x m } \{x_m\} {xm?}中最近的训练样本的余弦相似性,即 max ? m s i m ( z ( x m ) , z ( x ) ) \max_m sim(z(x_m),z(x)) maxm?sim(z(xm?),z(x))
(b)表示的范数,即 ∣ ∣ z ( x ) ∣ ∣ ||z(x)|| ∣∣z(x)∣∣。
直观地说,对比损失增加了分布样本的范数,因为通过增加(1)的分母,可以很容易地最小化相同样本的余弦相似性。论文简单地结合这些特征来定义对比表征的检测分数:
文章图片
3.2 利用变换
【计算机视觉|Anomaly Detection 异常检测之 CSI(Contrasting shifted instances论文解读)】论文提出了两个额外的分数分别对应于 L c o n ? S I L_{con-SI} Lcon?SI?(3)和 L c l s ? S I L_{cls-SI} Lcls?SI?(4):
文章图片
文章图片
总的分数为:
文章图片
推荐阅读
- 机器学习|Python实现词云舞
- python相关学习|用python批量修改图片名称!超级简单
- 大数据|超高分辨率显著目标检测,新颖高效的错层嫁接架构PGNet(CVPR2022)
- 编程语言大杂烩|Python批量改变图片名字
- 当人工智能遇上安全|[当人工智能遇上安全] 2.清华张超老师 - GreyOne: Discover Vulnerabilities with Data Flow Sensitive Fuzzing
- 历史上的今天|【历史上的今天】5 月 3 日(戴尔公司成立;“深蓝”再战象棋冠军;计算机先驱诞生日)
- YOLO-V4|yolov4 darknet编译和训练自己的数据集
- Darkent|Darknet-Yolo系列(一)利用 Darknet 在自己的数据集上训练 Yolov4-tiny 模型
- YOLO|Ubuntu18.04配置darknet环境实现YOLOv4目标检测(五)——darknet YOLOv4和YOLOv4-tiny模型转ONNX转TensorRT部署