Visual Prompt Tuning核心思路讲解(个人总结)

VPT的核心思想是,在适配下游任务时,我们应当冻结 (freeze) 强大的预训练模型本身,只通过训练一小组额外添加的、轻量级的提示 (Prompts) 来引导模型的行为。

这很容易理解,想想GPT:为什么一个Transformer Decoder能做这么多事?就是因为对于不同的任务,我们会喂给模型不同的prompt麻。

前置知识(prompt tuning)

这里说一下prompt tuning。

研究者发现,人想出来的文字指令不一定是最高效的。于是,一个聪明的想法诞生了:

我们不再手动设计文字,而是创建几个可学习的虚拟指令 (learnable vectors)。我们冻结大模型,只训练这几个"虚拟指令",让机器自己学会针对特定任务的、最高效的"暗号"。

VPT就是将这个思想完美地迁移到了视觉领域。它解决了核心问题:对于一个看图的模型,它的"暗号"应该是什么?答案就是可学习的提示向量 (Prompt Tokens)。

VPT的核心方法

  • 首先,准备一个强大的、已预训练好的Vision Transformer (ViT) 模型,并冻结其所有参数。这意味着ViT本身庞大的知识库在整个微调过程中保持不变。

  • 创建一小组(例如 k=10k=10k=10 个)全新的、可学习的向量,称为提示向量(Prompt Tokens)

  • 在处理一张图片时,ViT会先将其切分为一系列图像块向量 (patch tokens)。我们将上一步创建的"提示向量"插入到这串图像块向量序列的最前面。

  • 在训练时,只有这些新插入的"提示向量"和任务所需的分类头 (classification head) 会被更新。整个ViT主干网络(上亿参数)不参与梯度更新。

  • 训练的目标是,让这些最初随机的"提示向量"学会充当一个任务指令。例如,在飞机型号识别任务中,这些提示会通过学习,演变成一种能引导ViT模型将注意力高度集中于区分不同飞机(如波音系列)细微特征的"控制信号"。

相关推荐
阿汤猫66620 小时前
基于OpenCode的Harness架构实战验收指南v3.0 (windows系统)
windows·prompt
阿汤猫66621 小时前
基于OpenCode的Harness架构实战v2.2(windows系统)
windows·prompt
猫头虎1 天前
Cursor推出的Composer 2.5 是什么?从定向 RL 到合成数据,AI 编程智能体再进化
人工智能·开源·prompt·aigc·copilot·ai编程·composer
麦哲思科技任甲林1 天前
白话Skills之七:编写AI Skill的原则
人工智能·prompt·agent·ai编程·skills
城事漫游Molly1 天前
AI赋能质性研究(二):用 AI 做归纳编码,7 个场景提示词模板
人工智能·prompt·ai for science·提示词工程·定性研究
小二·1 天前
Prompt Engineering 高级技巧:CoT/ToT/ReAct 等进阶方法论实战
前端·react.js·prompt
lhxcc_fly1 天前
4.LangChain--Prompt提示词
langchain·llm·prompt
程序猿乐锅1 天前
吴恩达Prompt提示词课有感
人工智能·prompt
deephub1 天前
Prompt Engineering 的本质:角色、任务、上下文、格式、约束
人工智能·prompt·大语言模型·多智能体