【提示学习论文】AAPL: Adding Attributes to Prompt Learning for Vision-Language Models

AAPL: Adding Attributes to Prompt Learning for Vision-Language Models(2024CVPR)

  • 问题:在unseen class上,性能提升有限
  • 解决:在提示学习中引入对抗性标记嵌入adversarial token embedding, 将低层次视觉增强特征与高层次类别信息解耦,解决传统零样本学习技术中的数据增强问题。
  • AdTriplet损失函数

对比CoCoOp和APPL


  • 1、2:类别
  • A、B:不同的随机增强
  • pull:对图像进行不同的随机增强后,即时希望图像有所不同,但它们仍然是同一个类别。因此增量元标记通过将相同类别的增量原标记拉近,来学习相似的属性特征。
  • push:对于不同类别的图像,它们的增量元标记应该学习到不同的属性特征。因此需要embedding中将它们推开来学习。

动机

meta token不能有效的捕捉语义信息

提出 delta meta token

  • 需要两个类别
  • 两种随机增强(从SimCLR提出的14种无重复增强方法种随机选择两种)

对抗性三重损失

constraints-2

  • Δpai 1A
  • 正对 Δpai 2A:不同类别,相同增强
  • 反对 Δpai 1B:相同类别,不同增强

constraints-4

总损失

实验

base to new 76.01

总结

  • 在CoCoOp上的改进,在原本的meta-net中,增加了Adtriplet loss。通过在两个类别,两种随机增强之间计算,更新meta-net。
  • 然后将meta token加入到Learnable prompt里面,和CoCoOp一样

疑问

为什么这样做能达到解耦的效果?

  • 增量元标记Δmeat tokens:从同一类别不同增强的图像中相减得到,主要捕捉图像增强的变化(低层次特征差异,与类别的高层语义信息无关)
  • 使得增量元标记可以专注于增强引入的低层次特征,而非类别本身的特征

对抗三重损失的作用?

  • 拉近同一类别的不同增强版本
  • 推开不同类别的增量元标记,进一步区分类别之间的特征
  • 帮助低层次的视觉特征(亮度、颜色)与高层次的语义特征(类别)之间,建立清晰的界限
  • 使得模型学会增强特征与类别特征的区分能力,有效将两者解耦

可学习提示?

  • 最后将增量元标记中的属性特定偏差引入到learnable prompt中,此时增量元标记包含低层次增强特征,让提示学习可以专注于高层次类别信息。
相关推荐
Rabitebla9 小时前
【Linux操作系统】进程篇(十一):进程程序替换——从底层原理到 exec 函数族
linux·服务器·c++·笔记·学习·算法
叼烟扛炮10 小时前
[LangChain] 学习笔记(03):打破失忆症——对话机制与上下文管理
java·前端·javascript·笔记·学习·langchain
旖旎夜光10 小时前
【C++ 基础入门】类和对象(下):初始化列表、static 成员、友元与内部类
c++·笔记·学习
LONGZHIQIN10 小时前
STM32学习笔记
笔记·stm32·学习·arm
xiaoye-duck10 小时前
《C++ 项目:手写大模型接入 SDK》本地 Ollama 部署与适配
开发语言·网络·c++·语言模型
硅谷秋水10 小时前
面向科学的科学AI智能体:任务、架构、评估与挑战综述
人工智能·科技·语言模型
redtank200011 小时前
纯血鸿蒙小工具三件套实测:弹幕手持、爱记录与仓库管理软件
学习·华为·智能手机·harmonyos
§ꦿCFོ༉11 小时前
嵌入式八股文—C语言入门学习(二)
c语言·学习·嵌入式·编程语言
Nerd(BUG版)11 小时前
KMP学习day5--Kotlin Flow异步流基础
开发语言·学习·kotlin
叼烟扛炮11 小时前
Linux 学习笔记(六十一):网络编程毕业设计——Reactor 反应堆模式
linux·网络·笔记·学习·课程设计