《PromptAD》实验步骤

训练阶段:

步骤1: 输入正常样本图像

输入 : 正常样本图像

操作 : 在视觉编码器(VV-CLIP)中提取全局特征(CLS特征)和局部特征(ViT块特征)。

输出: 视觉特征(全局特征 (z) 和局部特征 (F))。

步骤2: 构建提示

输入 : 正常对象名称(如"cable")、手动异常后缀(如"with crack")和随机初始化的可学习token。

操作 :

语义连接(SC) :

◦ 生成正常提示(NP): (P_1P_2...P_{E_N}obj.)(可学习前缀+对象名)。

◦ 生成手动异常提示(MAP): 将NP与手动异常后缀拼接(如 (P_1P_2...P_{E_N}obj.withcrack))。

◦ 生成可学习异常提示(LAP): 将NP与可学习后缀拼接(如 (P_1P_2...P_{E_N}obj.A_1...A_{E_A}))。

文本编码器(CLIP Text Encoder) : 将NP、MAP、LAP编码为特征向量。

输出: 正常提示特征 (g(s^n))、异常提示特征 (g(s^m)) 和 (g(s^l))。

步骤3: 损失计算与优化

输入 : 视觉特征 (z)、提示特征 (g(sn))、(g(sm))、(g(s^l))。

操作 :

对比损失((\mathcal{L}_{\text{clip}})) : 最小化正常视觉特征与正常提示特征的距离,最大化其与异常提示特征的距离。

显式异常边界损失((\mathcal{L}_{\text{ema}})) : 通过超参数强制控制正常原型与异常原型的间隔。

对齐损失((\mathcal{L}_{\text{align}})) : 对齐MAP和LAP的分布。

优化器更新 : 仅更新提示参数(NP和LAP的token)。

输出: 优化后的提示参数。

步骤4: 存储正常特征记忆

输入 : 中间层局部特征 (F)。

操作 : 将训练集中所有正常样本的ViT中间层特征(去除CLS特征)存入内存 (R)。

输出: 正常特征记忆库 (R)。


测试阶段:

步骤1: 输入测试图像

输入 : 测试图像(正常或异常)。

操作 : 通过VV-CLIP提取全局特征 (z_t) 和局部特征 (F_t)。

输出: 测试视觉特征 (z_t) 和 (F_t)。

步骤2: 计算提示引导异常分数

输入 : 训练后的提示参数(NP、MAP、LAP)。

操作 :

文本编码器 : 生成正常原型 (\overline{w}^n) 和异常原型 (\overline{w}^a)。

相似度计算 :

◦ 图像级分数 (S_t = \frac{\exp(\langle z_t, \overline{w}^n \rangle)}{\exp(\langle z_t, \overline{w}^n \rangle) + \exp(\langle z_t, \overline{w}^a \rangle)})。

◦ 像素级分数图 (M_t = \text{softmax}(\langle F_t, \overline{w}^n \rangle - \langle F_t, \overline{w}^a \rangle))。

输出: 图像级分数 (S_t) 和像素级分数图 (M_t)。

步骤3: 计算视觉引导异常分数

输入 : 测试局部特征 (F_t) 和正常记忆库 (R)。

操作 : 对每个空间位置 ((i,j)),计算 (F_ti,j) 与 (R) 的最小余弦距离:

M_v\[i,j\] = \\min_{r \\in R} \\frac{1}{2}(1 - \\langle F_t\[i,j\], r \\rangle)

输出: 视觉引导分数图 (M_v)。

步骤4: 融合结果

输入 : (S_t)、(M_t)、(M_v)。

操作 :

像素级融合 : (M_{pix} = 1.0 / (1.0/M_v + 1.0/M_t))(调和平均)。

图像级融合 : (S_{img} = 1.0 / (1.0/\max(M_v) + 1.0/S_t))。

输出: 最终异常分数图 (M_{pix}) 和图像级分数 (S_{img})。


关键操作位置:

  1. 训练:在VV-CLIP视觉编码器和CLIP文本编码器中完成特征提取与提示学习。
  2. 测试:直接调用训练好的提示参数和内存库 (R),无需反向传播。
相关推荐
美狐美颜sdk30 分钟前
直播APP开发技术架构解析:从音视频流到第三方美颜SDK接入的完整方案
大数据·人工智能·音视频·美颜sdk·美颜api
CIO_Alliance38 分钟前
AI认知系列(3)| 数据、算法、算力、场景四要素协同
人工智能·算法·ipaas·系统集成·企业cio联盟·企业级ai化转型
技术传感器1 小时前
让 Hermes 自动完成一个软件需求:从 Issue 到 PR 的 AI 开发流水线
人工智能·架构·aigc·需求分析·issue
啥都想学点的研究生1 小时前
一篇文章讲清楚:机器学习的相关概念
人工智能·机器学习
Capricorn19881 小时前
知芽研究问题看板无法推进?从孵化区到笔记的机制排查指南
大数据·论文阅读·人工智能·笔记·学习方法·论文笔记
Wang's Blog1 小时前
AI Agent白手起家76:使用 CrewAI 搭建多智能体营销策略生成器
人工智能
梦想的旅途21 小时前
企微 API 二次开发:利用 AI Agent 实现自动化运维
运维·人工智能·企业微信
DS随心转APP1 小时前
deepseek生成的word怎么下载 AI导出鸭全平台方案技术深度测评
人工智能·ai·chatgpt·word·deepseek·ai导出鸭
皖山文武1 小时前
逻辑代数基础学习笔记--概述
笔记·学习·机器学习
睿本云1 小时前
从“有数据”到“会用数据”,一次标签体系的升级能带来的改变
大数据·人工智能