论文信息
题目:CNC: Cross-modal Normality Constraint for Unsupervised Multi-class Anomaly Detection
CNC:用于无监督多类异常检测的跨模态正态约束
论文创新点
-
跨模态正态约束(CNC):论文提出了一种新的跨模态正态约束方法,利用类别无关的可学习提示来捕捉不同视觉模式中的常见文本正态性,并引导解码特征朝向“正常”文本表示,从而抑制解码器对异常模式的过度泛化(OG)。
-
门控专家混合模块(MoE):为了处理多类训练中不同补丁模式之间的相互干扰,论文引入了门控专家混合模块。该模块通过选择性地分配不同专家组合来处理不同的补丁模式,减少了模式间的干扰,进一步提升了检测性能。
-
特征级正态促进(FNP):论文设计了一种特征级正态促进机制,通过引入跨模态控制系数,增强了视觉特征对异常补丁模式的敏感性。
-
多模态蒸馏框架:论文构建了一个全新的跨模态蒸馏框架,结合了视觉和文本模态的信息,显著提升了异常检测的准确性。
摘要
现有的基于无监督蒸馏的方法依赖于编码和解码特征之间的差异来定位测试图像中的异常区域。然而,仅在正常样本上训练的解码器仍然能够很好地重建异常补丁特征,从而降低了性能。这个问题在无监督多类异常检测任务中尤为突出。作者将这种行为归因于解码器的“过度泛化”(OG):多类训练中补丁模式的多样性显著增加,增强了模型对正常补丁的泛化能力,但也不可避免地扩大了对异常补丁的泛化。为了缓解“OG”,作者提出了一种新方法,利用类别无关的可学习提示来捕捉各种视觉模式中的常见文本正态性,然后将其应用于引导解码特征朝向“正常”文本表示,抑制解码器对异常模式的“过度泛化”。为了进一步提高性能,作者还引入了一个门控专家混合模块,专门处理多样化的补丁模式,并减少多类训练中它们之间的相互干扰。该方法在MVTec AD和VisA数据集上取得了具有竞争力的性能,证明了其有效性。
关键字
异常检测,跨模态学习,正态约束,专家混合,无监督学习
方法
概述
所提出方法的框架如图2所示。作者的方法包括三个主要部分:(1)视觉蒸馏框架;(2)跨模态正态约束;(3)门控专家混合。在(1)中,作者介绍了基本的反向蒸馏网络。在(2)中,作者提出了跨模态正态约束,以确保解码特征与文本“正常”表示对齐。此外,作者提出了一个跨模态控制系数,用于提高对异常补丁模式的敏感性,称为特征级正态促进。在(3)中,详细展示了门控专家混合(MoE)模块,专门处理各种补丁模式。最后,为了方便起见,给出了作者方法的推理阶段。
视觉蒸馏框架
与之前的单模态蒸馏方法相比,作者选择了多模态骨干网络CLIP-ViT作为编码器,这意味着可以利用文本模态信息来提高检测性能。具体来说,对于给定的图像,CLIP视觉编码器将编码为多层潜在空间特征,其中表示第层特征(ViT中每层的特征大小一致),是ViT中残差注意力层的数量。作者选择第层、第层和第层特征作为视觉编码特征。为了方便起见,设、、分别表示第层、第层和第层块,是对应的编码特征。对于视觉解码器,作者采用三个通用的残差注意力块(ViT的基本模块)作为解码器,并提取相应的特征进行重建。因此,作者将解码器表示为,包含三个块,对应的解码特征为(见图2)。此外,为了进一步缓解“过度泛化”,在编码特征上应用高斯噪声以获得其扰动版本。
跨模态正态约束
为了缓解多类训练中意外的“过度泛化”,作者提出了文本模态正态约束,以引导解码特征朝向“正常”文本表示,抑制解码器对异常方向的“过度泛化”。作者提出的跨模态正态约束的关键在于应用可学习的类别无关提示,从各种正常样本中学习常见的正态性,并在训练阶段保持视觉编码和解码特征在文本空间中的语义一致性。
学习跨模态正态性
在本节中,作者旨在应用类别无关的可学习提示,从各种编码特征中学习文本正态性。具体来说,对于给定的图像,作者应用编码器中的块来获取多层特征。根据公式(2)和公式(3),作者初始化了三组可学习提示,其中用于从不同层的视觉编码特征中学习文本正态性。然后,每个提示对被输入到CLIP文本编码器,生成相应的文本特征,其中,。接下来,作者采用模态对齐优化目标,从中学习文本正态性:
其中表示的全局特征,是温度系数。接下来,文本特征被应用于特征蒸馏和解码,以缓解意外的“过度泛化”。
特征蒸馏与正态促进
在本节中,文本特征被应用于蒸馏,以提高对异常补丁模式的敏感性。具体来说,作者首先在视觉编码和解码特征和上定义了一个跨模态控制系数。它旨在计算视觉补丁特征与文本特征之间的跨模态激活图,提高对意外异常补丁模式的敏感性。具体来说,作者设计了新的编码特征,带有跨模态正态控制系数,如下所示:
其中,是一个缩放系数,是L2范数,控制系数写为
其中权重图和定义为:
其中,,表示与的每个补丁嵌入之间的向量乘积,是补丁嵌入的索引。因此,,是逐元素加法操作。类似地,根据公式(5)和公式(6),作者还获得了带有跨模态控制系数的解码特征:
其中,。
作者将上述步骤称为“特征级正态促进”(FNP),如图2所示。接下来,作者给出了一个新的跨模态蒸馏损失,以确保编码和解码特征与相应的控制系数的一致性:
其中是展平函数。
特征解码与正态约束
在本节中,作者应用由公式(4)训练的文本特征作为锚点,以指导特征解码,缓解意外的“OG”。作者的解决方案是在训练期间约束解码特征的文本表示不偏离“正常”,即作者还保持解码特征的类别标记与正常文本特征对齐:
其中表示的全局特征。作者结合公式(4)和公式(10)给出跨模态约束损失:
其中是一个超参数。每个文本特征是一个动态锚点,用于保持解码特征朝向“正常”方向。
门控专家混合模块
多层融合
遵循之前的工作,预训练编码器的不同层特征被聚合,以提高检测性能。对于输入,作者首先应用编码器提取多层特征,并将它们连接为。作者采用投影层(一个带有dropout块的线性层)将其通道维度转换为:
其中是一个融合特征(见图2 MLF),并输入到后续的MoE模块。
门控专家混合
作者采用不同的专家组合来处理不同的补丁模式,减少它们之间的相互干扰。具体来说,对于给定的小批量融合特征,作者获得一批补丁嵌入特征,其中。作者的目标是为每个补丁分配不同的专家组合,以识别不同的补丁模式。因此,作者首先使用路由器网络为每个补丁分配专家相关分数,即
其中,是专家网络的数量,每个由一个MLP组成。接下来,作者选择具有前个分数的专家来处理补丁嵌入向量,记为。接下来,作者获得每个补丁嵌入的唯一处理组合,即
为了防止路由器将过大的权重分配给少数专家,从而导致单一的评分操作,作者应用了一个通用重要性损失来优化MoE:
其中是标准差操作,是为了数值稳定性而添加的。最后,根据公式(9)、(11)和(15),作者获得了训练模型的总损失:
实验设置
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。