2021.4,效果排名第23(papers with code)
思想:将transformer引入异常检测领域,将基于生成重构的问题转化为inpainting问题(将图像某些区域覆盖然后恢复,可视为自监督方法),使用transformer来进行大感受野的信息捕捉。
Patch embeddings
如图,将输入的图分成16*16的网格图,再从网格图中随机选取7*7大小的图,构成张量[252,49,768](batchsize:252,7*7:49,16*16*3(RGB通道):768)。经全连接层转换为[252,49,512],输出到网络的图是[252,49,512](包括未被掩盖的块和为补充位置关系而加的层),[252,768](被掩盖的块)。
Multihead Feature Self-attention MFSA多头注意力机制
query,key,value张量均为输入的图[252,49,512],query,key经(MLP)两个全连接层(层间设置激活函数)输出[252,49,256],再转换张量的布置输出[252,8,49,32],value经一个全连接层(不设置激活函数)输出[252,49,256],再转换张量的布置输出[252,8,49,64]。
key张量再转换[252,8,32,49]与query张量相乘后除得张量[252,8,49,49]。经softmax返回张量p_attn[252,8,49,49],将p_attn与value相乘返回张量value_pro[252,8,49,64]。
将value_pro经转换经全连接后输出张量[252,49,512]。
将输入的张量经全连接层gelu激活再经全连接层。
--------------------------------------------
通过MSFA与MLP搭建transformer,后输出张量[252,49,512],求平均,经全连接层输出[252,768]。
映射成图[252,3,16,16],计算损失函数,损失函数包括L2损失/结构相似度损失(structural similarity)/梯度幅度相似度损失(gradient magnitude similarity)
细节:transformer的训练时间比较长,有些时候需要超过500个epoch。当验证集loss超过50个epoch都没有明显下降,则停止训练,并选择最优的模型进行评估。
消融实验:长连接,MSA与MFSA,窗口的长度(原文为7)。
参考
用于异常检测的Transformer - InTra《Inpainting Transformer for Anomaly Detection》_我是大黄同学呀的博客-CSDN博客_transformer 异常检测