学习日记53:Extract Free Dense Labels from CLIP
摘要CLIP模型对开放词汇的零样本图像识别上有很强的能力许多研究利用预训练的CLIP模型进行图像级别的分类和操作。作者希望研究CLIP在像素级稠密预测方面的潜力并通过最小修改在没有注释和微调的情况下取得了很好的对于开放词汇的分割能力。介绍作者探索了CLIP特征在对象级和局部语义分割方面的潜力与传统图像分类的预训练任务不同CLIP从复杂场景的图像及其自然语言描述中学习1.将局部图像语义嵌入到特征内部每个 patch的特征里面自发编码了小块对应的物体语义2.图像特征空间和文本空间对齐可以识别训练图像中没有见过的物体概念3捕获丰富上下文信息物体共现、物体关系、空间位置先验作者发现任何对CLIP单独分支的微调都会破坏其原有的图文对齐能力导致其无法分割未见类。最终在MaskCLIP中直接从CLIP的图像编码器中提取稠密的patch特征即最后一个注意力层的V特征从而不破坏对齐能力。另外分类权重等价 1×1 卷积直接拿文本 embedding图像 patch 特征和文本向量直接点积算相似度完成分类不需要专门的映射器 mapper。此外还提出了两种掩码精华技术为了将MaskCLIP从架构约束中解放出来并融入更先进的架构可以在训练时将作为一个注释器来提供高质量的伪标签结合标准的自训练策略最终得到的模型MaskCLIP 取得了显著的性能。方法CLIP在其特征中内在地嵌入了局部图像语义因为它学习将图像内容与自然语言描述相关联而后者包含了跨多个粒度的复杂而密集的语义指导这种独特性在仅使用图像标签的训练中是不存在的。按照通常做法只要动态用文本 embedding 更新分类头权重改造后的 DeepLab 不用重新训练就可以分割不同类别。但是在实际情况中这种改动后模型在训练见过的 seen 类效果不错但是所有版本在未见类上效果都很差。作者认为1主干网在网络架构上与图像编码器略有不同( 2 )从图像编码器初始化的权值在微调过程中得到了更新( 3 )引入额外的映射器仅对已见类数据进行训练通用性不足。MaskCLIP为了避免微调对引入额外参数导致CLIP特征空间的偏移作者将目标移到CLIP独有的全局池化部分与普通的全局池化不同CLIP的图像编码器采用Transformer风格的多传感头注意力层其中全局平均池化的特征作为查询每个空间位置的特征生成一个键值对。每个空间位置计算的F ( vi )已经捕获了局部语义的丰富响应这与CLIP的文本嵌入中的token很好地对应。基于这样的假设对CLIP图像编码器直接进行修改1移除 query查询、key键嵌入层2把 value 嵌入层和后面最后一个线性层重新改写为两个独立的 1×1 卷积层。将最后一层的特征图直接通过已有的线性层得到V再转换到输出的稠密语义图。由于训练时全程只有一个query,用这一个q去聚合所有的patch的v,得到高质量的全局图像向量这些 value 向量训练的优化目标是被全局 query 加权求和之后得到好的全局向量。所以不能直接把运行过程中产生的中间v抠出来拿出来用得到稠密特征图因为不是所有的v天然适合直接和文本向量做匹配分割。这种简单的结构改动有很多优点首先MaskCLIP可以作为一个自由的分割注释器为工作在有限标签下的分割方法提供丰富而新颖的监督信号。其次由于MaskCLIP保留了CLIP的视觉-语言关联因此它天然具有分割开放词汇类的能力。第三由于CLIP是在原始的网络压缩图像上训练的因此CLIP对自然分布偏移和输入损坏具有很强的鲁棒性Key Smoothing and Prompt Denoisingkey smoothing利用注意力层内部被丢弃的key特征 视觉内容越相似的 patch它们的 key 向量余弦相似度越高。用相似度做权重把周围相似 patch 的预测结果加权平均消除细碎噪点。风险容易过度平滑整片区域被单一类别占领。prompt denoising开放词汇分割会输入一大堆候选类别但一张图只会出现少数几类。 如果某一类在整张图所有位置置信度全部低于阈值0.5判定该物体不在图中直接把这个类别从候选列表移除消除干扰。风险很小的物体全局置信度低有可能被误删。MaskCLIP不在推理阶段使用 MaskCLIP放到训练阶段用把它当做泛化性强、鲁棒的标注器输出高质量伪标签。结合标准自训练策略得到 MaskCLIP取得非常突出的效果。MaskCLIP 引导学习利用 MaskCLIP 输出去训练另一个专门面向分割的目标网络。同一张预处理图片一路送入待训练的目标网络另一路并行送入冻结的 MaskCLIPMaskCLIP 输出当做伪真值监督目标网络训练。另外把目标网络的分类头替换成 MaskCLIP 的分类器以此保留开放词汇预测能力。MaskCLIP 引导阶段跑至全部迭代的 1/10 左右就摸到性能上限。因为伪标签质量上限就是 MaskCLIP 本身的能力。之后停止调用 MaskCLIP拿当前 DeepLab 自己输出的预测当做伪标签自己监督自己继续训练。实验a消融‑MaskCLIP 基线对比证明改造 attnpool 必要性骨干网络对比 ResNet‑CLIP vs ViT‑CLIPMaskCLIP 消融实验训练策略