来源:晓飞的算法工程笔记 公众号,转载请注明出处

论文: VL4AD: Vision-Language Models Improve Pixel-wise Anomaly Detection

创新性


  1. 提出VL4AD模型用于解决语义分割网络难以检测来自未知语义类别的异常的问题,避免额外的数据收集和模型训练。
  2. VL4AD将视觉-语言(VL)编码器纳入现有的异常检测器,利用语义广泛的VL预训练来增强对离群样本的感知,还加入max-logit提示集成和类别合并策略用于丰富类别描述。
  3. 提出了一种新的评分函数,可通过文本提示实现无数据和无训练的离群样本监督。

VL4AD


视觉文本编码器

视觉编码器 \(\mathcal{E}_\text{vision, vis-lang}\) 是与文本编码器 \(\mathcal{E}_\text{text}\) 共同预训练,解码器 \(\mathcal{D}_\text{vis-lang}\) 处理多尺度的视觉和文本嵌入,生成两种类型的输出:掩码预测分数 \(\mathbf{s} \in [0, 1]^{N\times H\times W}\) 和掩码分类分数 \(\mathbf{c} \in [0, 1]^{N\times K}\) ,其中 \(N\) 表示对象查询的数量。

对象查询是可学习的嵌入,类似于目标检测网络中的先验框。掩码预测分数以类别无关的方式识别物体,而掩码分类分数计算掩码属于特定语义类别的概率。

基于编码后的视觉嵌入 \(\mathbf{v}_i\) ( \(i=1, \dots, N\) )和ID类别文本嵌入 \(\mathbf{t}_j\) ( \(j=1, \dots, K\) )之间的余弦相似性计算掩码分类分数:

\[\begin{equation}
\mathbf{c}_{i} = \text{softmax}\Big(1/T
\begin{bmatrix}
\text{cos}(\mathbf{v}_i, \mathbf{t}_1), &
\text{cos}(\mathbf{v}_i, \mathbf{t}_2), &
\ldots, &
\text{cos}(\mathbf{v}_i, \mathbf{t}_{K})
\end{bmatrix}
\Big)
\end{equation}
\]

在架构上, \(\mathcal{E}_\text{vision, vis-only}\) 和 \(\mathcal{E}_\text{vision, vis-lang}\) ,以及 \(\mathcal{D}_\text{vis-only}\) 和 \(\mathcal{D}_\text{vis-lang}\) 是相当相似的,区别在于 \(\mathcal{E}_\text{vision, vis-lang}\) 在预训练后保持不变,仅对视觉-语言解码器 \(\mathcal{D}_\text{vis-lang}\) 进行微调。通过这种方式,将零样本CLIP在图像级别的竞争性OOD检测性能转移到像素级任务中。

Max-Logit提示集成于类合并

优化ID类文本嵌入可以使其更好地与相应的ID视觉嵌入对齐,提高IDOOD类别之间的可分离性,但盲目地微调文本编码器可能导致灾难性遗忘。

为此,论文通过max-logit提示集成在文本提示中引入概念词汇多样性和具体化,显著提高模型对OOD输入的敏感性。词汇多样性包括同义词和复数形式,而具体化涉及更好地与CLIP预训练对齐的分解概念。例如,使用概念{vegetation, tree, trees, palm tree, bushes}来表示类vegetation

max-logit集成考虑给定类 \(k\) 的所有替代概念,替换内容为视觉嵌入 \(\mathbf{v}_i\) 与所有 \(l\) 个替代文本嵌入 \([\mathbf{t}_{k}^{1}, \ldots, \mathbf{t}_{k}^{l}]\) 的最大余弦相似度:

\[\begin{equation}
\max\Big(
\begin{bmatrix}
\text{cos}(\mathbf{v}_i, \mathbf{t}_{k}^{1}), &
\text{cos}(\mathbf{v}_i, \mathbf{t}_{k}^{2}), &
\ldots, &
\text{cos}(\mathbf{v}_i, \mathbf{t}_{k}^{l})
\end{bmatrix}\Big).
\end{equation}
\]

此外,单靠在 \(K\) 类维度上的最大像素级得分可能导致次优性能,因为在两个ID类之间的边缘像素的不确定性较高,尤其是当类别数量增加时。

为了解决这个问题,将相关的ID类合并为超类。通过在测试期间将各个语义类的文本提示作为不同的替代概念连接到超类中来实现,而无需重新训练。然后,可以使用max-logit方法获得超类的不确定性。

通过OOD提示实现无数据、无训练异常监督

通过视觉-语言预训练,通常能够很好地检测到与ID类不同的语义OOD类(远OOD类)。但当OOD类与ID类非常相似的情况(近OOD类),则更具挑战性。例如,在CityScapes类别中,OOD类大篷车在城市驾驶场景中可能在视觉上与ID类卡车相似。

利用视觉-语言模型的开放词汇能力,论文引入了一种新的评分函数,旨在更好地检测这些近OOD类,而不需要额外的训练或数据准备。

为了在测试时整合 \(Q\) 个新的OOD概念,需要通过 \(Q\) 个额外的项 \(\text{cos}(\mathbf{v}_i, \mathbf{t}_{K+1}), \ldots, \text{cos}(\mathbf{v}_i, \mathbf{t}_{K+Q})\) 扩展公式1中的掩码分类得分 \(\mathbf{c}_i\) 。遵循公式2,即通过将 \(\mathbf{c} \in \left[0, 1\right]^{N\times (K+Q)}\) 的前 \(K\) 个通道与掩码预测得分 \(\mathbf{s} \in \left[0, 1\right]^{N\times H\times W}\) 进行组合,获得最终的不确定性得分 \(\mathbf{u} \in \mathbb{R}^{H\times W}\) :

\[\begin{equation}
\mathbf{u}_{h,w} = -\max_{k}\sum_{i=1}^{N} \mathbf{s}_{i, h, w} \cdot \mathbf{c}_{i, k}\ \ .
\end{equation}
\]

通过这一整合, \(Q\) 类中的OOD对象将(在大多数情况下)正确分配到其相应的类别。如果没有这一整合,它们可能会被错误地分配到与其实际OOD类别相似的ID类。相反,如果输入中不存在OOD对象,额外的 \(Q\) 类的影响将保持微不足道。

主要实验






如果本文对你有帮助,麻烦点个赞或在看呗~

更多内容请关注 微信公众号【晓飞的算法工程笔记】

VL4AD:让语义分割认识未知类别,无需额外数据和训练的OOD语义分割 | ECCV'24的更多相关文章

  1. Android 解析未知格式的json数据

    1.递归一有的时候我们需要解析未知的json.或者说是动态的json.那么我们并不知道key具体是多少,或者说key不是固定的.这时候就需要解析动态key的方法. 这个方法是我在实现解析前台传入的js ...

  2. seaborn 数据可视化(二)带有类别属性的数据可视化

    Seaborn的分类图分为三类,将分类变量每个级别的每个观察结果显示出来,显示每个观察分布的抽象表示,以及应用统计估计显示的权重趋势和置信区间: 第一个包括函数swarmplot()和stripplo ...

  3. DataPipeline CTO陈肃:构建批流一体数据融合平台的一致性语义保证

    文 | 陈肃 DataPipelineCTO 交流微信 | datapipeline2018 本文完整PPT获取 | 关注公众号后,后台回复“陈肃” 首先,本文将从数据融合角度,谈一下DataPipe ...

  4. 【安富莱专题教程第4期】SEGGER的J-Scope波形上位机软件,HSS模式简单易用,无需额外资源,也不需要写目标板代码

    说明:1.在实际项目中,很多时候,我们需要将传感器或者ADC的数值以波形的形式显示.通常的解决办法是用串口上位机,USB接口上位机或者MDK的逻辑分析仪功能,使用这三种方式都比较繁琐.本期专题为大家讲 ...

  5. 机器学习基础:(Python)训练集测试集分割与交叉验证

    在上一篇关于Python中的线性回归的文章之后,我想再写一篇关于训练测试分割和交叉验证的文章.在数据科学和数据分析领域中,这两个概念经常被用作防止或最小化过度拟合的工具.我会解释当使用统计模型时,通常 ...

  6. SQL Server 分割字符串和合并多条数据为一行

    分割字符串函数 create function f_split(@c varchar(2000),@split varchar(2)) returns @t table(col varchar(20) ...

  7. win10算hash值,md5,sha256等,无需额外下载工具

    # windows_cmd certutil -hashfile .\文件名 SHA256 可选哈希算法:md2/md4/md5/sha1/sha256/sha384/sha512

  8. 机器学习之KNN原理与代码实现

    KNN原理与代码实现 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/9670187.html 1. KNN原理 K ...

  9. Python机器学习笔记 K-近邻算法

    K近邻(KNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一. 所谓K最近邻,就是K个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表.KNN算法的 ...

  10. 论文阅读笔记(一)FCN

    本文先对FCN的会议论文进行了粗略的翻译,使读者能够对论文的结构有个大概的了解(包括解决的问题是什么,提出了哪些方案,得到了什么结果).然后,给出了几篇博文的连接,对文中未铺开解释的或不易理解的内容作 ...

随机推荐

  1. win10无法访问共享文件夹win2008R2 错误代码0X80004005

    错误代码0X80004005 无法访问共享计算机的解决方法 开始->运行(快捷键"win+R"),输入"regedit"后回车,打开注册表编辑器. 依次打 ...

  2. 使用命令行 Windows 修改文件权限

    修改文件访问权限的命令行工具是 icacls,其使用语法是这样的: icacls <file> # 查看文件的访问权限 icacls <file> /grant <SID ...

  3. Android Adapter中组件EditText文本变化监听 addTextChangedListener

    问题背景:使用适配器显示一个列表,列表中Item中有EditText,滚动时会有EditText组件内容消失 步骤: 1. 在Adapter中,添加interface public interface ...

  4. Transforms的使用

    Transform的作用 把图片经过Transforms的一些函数之后就会对图片进行一些变化.比如,resize就是改变其大小,totensor就是把图片PIL或者numpy类型转化为Tensor类型 ...

  5. ST-SSL: 用于交通流量预测的时空自监督学习《Spatio-Temporal Self-Supervised Learning for Traffic Flow Prediction》(交通流量预测、时空异质性、自监督、数据增强)

    2023年10月23日,继续论文,好困,想发疯. 论文:Spatio-Temporal Self-Supervised Learning for Traffic Flow Prediction Git ...

  6. 安全 – CSP (Content Security Policy)

    前言 之前讲过 CSRF.防 Cookie hacking 的. 也介绍过防 XSS 的 HtmlSanitizer. 今天再介绍 CSP. 参考 Content Security Policy 介绍 ...

  7. CSS – 管理

    前言 CSS 有好几种写法. 它们最终出来的效果是一样的, 区别只是在你如何 "写" 和 "读" 或者说开发和维护. 这已经不是如何"实现" ...

  8. Email 关于 POP3 IMAP SMTP office365 Outlook Gmail G-Suit shared mailbox小小理解

    Outlook 是微软的一个 email 软件, 管理 email 的 UI. Gmail 是 google 的 office365 是一个配套, 里面有 email, one drive, exce ...

  9. ASP.NET Core C# 反射 & 表达式树 (第三篇)

    前言 前一篇讲完了反射, 这一篇来讲一下和反射息息相关的表达式树. 首先搞清楚 Delegate, Action, Func, Anonymous Method, Lambda, Expression ...

  10. 阿里邮箱网页正常登陆,outlook报错

    事件起因: 某客户使用阿里邮箱办公,然又使用outlook绑定阿里邮箱:在网页端可以登录阿里邮箱,但是在outlook的登录的时候,服务器.端口均设置无误,但是就是登录不上去,死活都等登录不上去,总是 ...