Conditional Prompt Learning for Vision-Language Models

本文是对CoOp方法提出的改进。CoOp由论文Learning to Prompt for Vision-Language Models提出,CoOp针对CLIP模型做了改进,将人工设计的提示修改为了可学习的参数,具体来说就是,CoOp不再使用"[x]的照片"作为提示,而是引入了M个可学习的提示向量。由于CoOp学到的提示参数存在对训练集过拟合的现象,在新类别上的泛化性能不好,因此作者又进一步提出了CoCoOp。CoCoOp加入了一个轻量的模型,用于为每个输入图像生成一个补充提示向量,提升模型在新类别上的泛化性能。

本模型的结构并不复杂,具体见下图:

模型的主要结构和CLIP一致,不同之处在于加入了一个轻量网络Meta-Net,该网络从图像中学习到输入实例的特征,将该特征与提示向量结合,从而提升泛化能力。Meta-Net是一个两层的Linear-ReLU-Linear结构。

实验:

本文主要设计了3个实验(1)数据集中从基类到新类的泛化(2)跨数据集的迁移(3)域泛化;

针对第一个实验,作者选取了ImageNet、Caltech101、StanfordCars等11个数据集,在每一个数据集上,将类平均分为两组,一组作为基类,另一组作为新类。CoOp和CoCoOp仅使用基类进行训练(固定clip模型的参数,只训练提示参数,每类16个数据),分别在基类和新类上进行评估,从而测试泛化性。从整体效果来看,CoCoOp体现出了较强的泛化能力。虽然与 CoOp相比,在大多数数据集上,CoCoOp的基类会出现性能下降,但这是合理现象,因为CoOp专门针对基类进行优化,而CoCoOp针对每个实例进行了优化,以便在整个任务中获得更多的泛化。

实验2对比了跨数据集的迁移能力,模型首先基于ImageNet进行了训练(固定clip模型的参数,只训练提示参数,每类16个数据),然后在其余的数据集上进行了迁移学习,结果如下表,可以看到CoCoOp在ImageNet上的效果虽然略差一点,但在其他大部分迁移数据集上效果都有提高。

实验3对比了模型的域泛化性能,模型基于ImageNet进行了训练(固定clip模型的参数,只训练提示参数,每类16个数据),然后在表格中的数据集上进行了测试,结果显示CoCoOp有更强的泛化能力。

总结:

该论文提出了一个针对提示参数优化的方案,目标是改进模型的泛化性能,并对此设计了丰富的实验。Meta-Net通过学习输入实例的特征,生成提示参数的补充,从而将模型的焦点从样本类别向样本实例转移。Meta-Net模型结构的设计仍有比较多的实验空间。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值