1 概述
1.1 要点
题目:深度近邻分布外检测 (Out-of-distribution detection with deep nearest neighbors)
方法:本文探索了非参数近邻距离在OOD检测中的使用,其不需要任何分布假设,且取得了优异性能。图1展示了所提出KNN-OOD检测方法的示意。
1.2 代码
https://github.com/deeplearning-wisc/knn-ood
1.3 引用
@inproceedings{Sun:2022:2082720840,
author = {Sun, Yi You and Ming, Yi Fei and Zhu, Xiao Jin and Li, Yi Xuan},
title = {Out-of-distribution detection with deep nearest neighbors},
booktitle = {{ICML}},
pages = {20827--20840},
year = {2022},
url = {https://proceedings.mlr.press/v162/sun22d/sun22d.pdf}
}
2 深度近邻OOD检测
本节将描述基于近邻的OOD检测方法,其利用特征嵌入且假设测试OOD样本与ID数据的差异足够大。
令
z
=
ϕ
(
x
)
/
∥
ϕ
(
x
)
∥
2
\mathbf{z}=\phi(\mathbf{x})/\|\phi(\mathbf{x})\|_2
z=ϕ(x)/∥ϕ(x)∥2表示标准化的logits特征,其中
ϕ
:
X
↦
R
m
\phi:\mathcal{X}\mapsto\mathbb{R}^m
ϕ:X↦Rm是一个特征编码器。令
Z
n
=
(
z
1
,
z
2
,
…
,
z
n
)
\mathbb{Z}_n=(\mathbf{z}_1,\mathbf{z}_2,\dots,\mathbf{z}_n)
Zn=(z1,z2,…,zn)表示训练集的嵌入集合。在测试期间,导出测试样本
x
∗
\mathbf{x}^*
x∗的
z
∗
\mathbf{z}^*
z∗,并计算其到
z
i
∈
Z
n
\mathbf{z}_i\in\mathbb{Z}_n
zi∈Zn的欧式距离
∥
z
i
−
z
∗
∥
\| \mathbf{z}_i-\mathbf{z}^* \|
∥zi−z∗∥。接下来按照距离的升序重排列
Z
n
\mathbb{Z}_n
Zn,得到
Z
n
′
=
(
z
(
1
)
,
z
(
2
)
,
…
,
z
(
n
)
)
\mathbb{Z}_n'=(\mathbf{z}_{(1)},\mathbf{z}_{(2)},\dots,\mathbf{z}_{(n)})
Zn′=(z(1),z(2),…,z(n))。用于OOD检测的决策函数给定为:
G
(
z
∗
;
k
)
=
1
{
−
r
k
(
z
∗
)
≥
λ
}
,
G(\mathbf{z}^*;k)=\mathbf{1}\{-r_k(\mathbf{z}^*)\geq\lambda\},
G(z∗;k)=1{−rk(z∗)≥λ},其中
−
r
k
(
z
∗
)
=
∥
z
∗
−
z
(
k
)
∥
2
-r_k(\mathbf{z}^*)=\|\mathbf{z}^*-\mathbf{z}_{(k)}\|_2
−rk(z∗)=∥z∗−z(k)∥2,以及
1
{
⋅
}
\mathbf{1}\{\cdot\}
1{⋅}是指示函数。