VQA方向
框架目标是:
基于 VisPlay 的自学习能力,引入 SPELL 式第三个 verifier/scorer agent,构建一个适用于医学影像QA/医学视觉推理的三智能体自进化系统。
其中,VisPlay 提供的是“图像驱动的 questioner-reasoner 自进化闭环”,核心包括 image-conditioned questioner、multimodal reasoner、不确定性奖励、difficulty filtering 和伪标签训练。
2511.15661v2
SPELL 提供的是“第三个 verifier 参与奖励与质量控制”的思想,用 verifier 判断 responder 输出与参考答案的语义一致性,并缓解仅靠规则奖励的局限。
Yang 等 - 2025 - SPELL Self-Play…
一、框架名称
可以先命名为:
Med-VisPlay-V: A Verifier-Guided Self-Evolving Medical Vision-Language Framework
如果你想突出三智能体,也可以叫:
Tri-Agent Medical VisPlay
二、核心目标
这个框架解决的不是普通医学VQA,而是更具体的三个问题:
如何从未标注医学图像中自动生成高质量训练问题
如何在没有人工答案的情况下构造相对可信的伪标签
如何避免医学场景中最危险的现象:
- hallucination 自强化
- 错误伪标签循环放大
- 问题分布漂移到“视觉上难但医学上无意义”的方向
三、整体结构
框架由三个 agent 组成:
Agent 1:Medical Image-Conditioned Questioner
输入:医学图像
输出:与图像相关的医学问题
职责:
- 生成有训练价值的问题
- 控制问题难度
- 保持问题多样性
- 保证问题属于“图像可回答”的医学问题
Agent 2:Medical Multimodal Reasoner
输入:医学图像 + 医学问题
输出:答案 + 可选解释
职责:
- 对问题作答
- 多次采样生成候选答案
- 形成伪标签候选
- 作为被 challenge 的对象,提供难度信号
Agent 3:Medical Verifier / Scorer
输入:医学图像 + 医学问题 + candidate answer + 可选 reasoning + pseudo-label
输出:分数或二值判断
职责:
- 评估答案是否可靠
- 判断回答是否与图像一致
- 判断解释是否支持答案
- 判断问题是否适合仅凭图像回答
- 作为 reward shaping 和数据过滤模块
四、训练闭环
整个框架分成两个主循环。
第一阶段:Questioner 训练循环
Step 1
给定一张医学图像 III,Questioner 生成一组问题:
{qi}i=1G∼Qθ(⋅∣I)\{q_i\}_{i=1}^G \sim Q_\theta(\cdot | I){qi}i=1G∼Qθ(⋅∣I)
Step 2
Reasoner 对每个问题采样多次答案:
{ai,j}j=1m∼Sϕ(⋅∣I,qi)\{a_{i,j}\}_{j=1}^m \sim S_\phi(\cdot | I, q_i){ai,j}j=1m∼Sϕ(⋅∣I,qi)
Step 3
构造伪标签:
yi=MajorityVote({ai,j})\tilde{y_i} = \text{MajorityVote}(\{a_{i,j}\})yi=MajorityVote({ai,j})
并计算置信度:
ci=p^(yi∣I,qi)c_i = \hat p(\tilde y_i | I, q_i)ci=p^(yi∣I,qi)
这一步直接沿用 VisPlay 的核心思想。
2511.15661v2
Step 4
Verifier 对问题和伪标签做评估,输出:
- 问题是否有效
- 答案是否可信
- 是否 grounded in image
- reasoning 与 answer 是否一致
Step 5
给 Questioner 奖励,鼓励它生成:
- 中等难度问题
- 非重复问题
- 医学有效问题
第二阶段:Reasoner 训练循环
Step 1
从 Questioner 生成的大量问题中,筛选出:
- 置信度中等
- verifier 高分
- 医学有效
- 多样性较高
的问题集合 DDD
Step 2
对每个样本 (I,q,y)(I, q, \tilde y)(I,q,y),Reasoner 再采样多个候选答案
Step 3
用 verifier 和 pseudo-label 一起计算 reward,优化 Reasoner
Step 4
Reasoner 能力提升后,返回上一阶段,驱动 Questioner 继续升级问题难度
五、三类核心奖励设计
这是整个框架最关键的部分。
1. Questioner reward
建议写成:
rQ=1valid(q)⋅ReLU(runc−rdiv+λmedrmed−valid)r_Q = \mathbb{1}_{valid}(q)\cdot \text{ReLU}(r_{unc} - r_{div} + \lambda_{med} r_{med-valid})rQ=1valid(q)⋅ReLU(runc−rdiv+λmedrmed−valid)
其中:
(a) 不确定性奖励
继承 VisPlay:
runc=1−∣2c−1∣r_{unc} = 1 - |2c - 1|runc=1−∣2c−1∣
含义:
- c≈0.5c \approx 0.5c≈0.5:奖励最高
- 太简单或太确定:奖励低
2511.15661v2
(b) 多样性惩罚
问题之间如果过于相似,则扣分,防止 question collapse。VisPlay 原文用 BLEU 聚类做 redundancy penalty。
2511.15661v2
(c) 医学有效性奖励
这是医学版新增项,建议由 Verifier 给出:
rmed−valid∈[0,1]r_{med-valid} \in [0,1]rmed−valid∈[0,1]
用来判断:
- 问题是否真的与图像相关
- 是否属于医学视觉问题
- 是否不依赖图像外信息
- 是否有训练意义
例如:
- “该胸片最可疑异常位于哪里?”:高分
- “患者最可能的治疗方案是什么?”:低分
2. Reasoner reward
建议设计成加权组合:
rS=λansrans+λconsrcons+λgroundrground+λsafersafer_S = \lambda_{ans} r_{ans} + \lambda_{cons} r_{cons} + \lambda_{ground} r_{ground} + \lambda_{safe} r_{safe}rS=λansrans+λconsrcons+λgroundrground+λsafersafe
(a) 答案一致奖励 ransr_{ans}rans
如果输出答案与 pseudo-label 一致,则给正奖励。
这是 VisPlay/R-Zero 风格的基础 reward。
2511.15661v2
(b) 解释一致奖励 rconsr_{cons}rcons
看 reasoning 是否支持 final answer。
例如 explanation 里说“左肺异常”,final answer 却说“右肺病变”,则扣分。
(c) 图像依据奖励 rgroundr_{ground}rground
看回答是否真的可由图像支持。
避免模型无依据补充:
- 病史
- 治疗方案
- 不可见临床信息
(d) 安全性奖励 rsafer_{safe}rsafe
避免高风险错误表达,比如:
- 过度诊断
- 不必要的确定性口吻
- 越权结论
3. Verifier reward / training signal
Verifier 本身可以不一定用 RL 单独训练。更现实的方案是:
方案 A:固定 verifier
先使用一个较强医学VLM/LLM作为冻结 judge,负责打分。
方案 B:逐步蒸馏 verifier
后续可训练一个轻量 verifier,输入:
- image
- question
- answer
- reasoning
输出:
- validity
- groundedness
- consistency
- semantic correctness
如果你想完全三智能体 co-evolution,也可以后续再扩展 verifier 的在线更新。
六、问题空间设计
这一点必须限制,不然系统很容易崩。
建议的医学问题类型
一级:低风险基础问题
- 模态识别
- 解剖结构识别
- 图像方向/部位识别
二级:中风险征象问题
- 是否存在异常
- 异常位置
- 异常形态、大小、边界、密度、颜色、纹理
三级:轻诊断问题
- 候选诊断多选
- 最可能影像学印象
- finding-to-diagnosis mapping
暂不建议一开始纳入
- 治疗方案
- 预后判断
- 药物推荐
- 单图无法回答的病史推断
七、数据流设计
建议你的数据流分成四层。
层 1:原始图像池
- Chest X-ray
- Fundus
- Dermoscopy
- Pathology
- CT/MRI 切片
尽量先从单张图像任务做起。
层 2:Questioner 生成问题池
对每张图生成多个问题
层 3:Reasoner 候选答案池
每个问题生成多个答案,用于:
- majority vote
- self-consistency
- verifier 打分
层 4:高质量训练池
只保留:
- 中等难度
- verifier 通过
- 问题多样
- 伪标签置信度适中
的样本进入下一轮训练
八、一个推荐的最小可行版本(MVP)
不要一开始做太大,建议先做一个可验证的 MVP。
任务
胸片或 fundus 的医学VQA
三个 agent
- Questioner:生成异常识别/部位识别/模态识别问题
- Reasoner:回答并给 boxed answer
- Verifier:判断问题有效性与答案可信度
训练设置
backbone:Qwen2.5-VL-3B 或 7B
图像数据:未标注医学图像
只做多选或短答案 QA
reward 用:
- uncertainty
- diversity
- medical-validity
- answer-consistency
指标
- 医学VQA accuracy
- hallucination rate
- verifier agreement
- pseudo-label precision
- question diversity
九、和原始 VisPlay 相比,你的新增贡献可以怎么写
如果做论文,贡献点可以写成:
贡献 1
把 VisPlay 的自进化 questioner-reasoner 框架扩展到医学视觉问答场景,构建面向未标注医学图像的三智能体自学习系统。VisPlay 原始框架只有 image-conditioned questioner 与 multimodal reasoner。
2511.15661v2
贡献 2
引入 verifier/scorer agent,借鉴 SPELL 中 verifier 的思想,用于语义一致性、医学有效性和图像依据约束。SPELL 的 verifier 用于 responder 输出与 reference answer 的等价性判断与奖励整合。
Yang 等 - 2025 - SPELL Self-Play…
贡献 3
提出适用于医学场景的 reward 设计与问题空间约束,降低伪标签错误自强化和医学 hallucination 风险。
贡献 4
证明在少量或零人工医学QA标注条件下,系统仍可通过自进化持续提升医学影像理解与推理能力。
十、你这个框架最关键的价值
一句话说清楚就是:
它把“医学自学习”从一个高风险的伪标签闭环,变成一个带有质量控制、问题约束和安全过滤的三智能体进化系统。
十一、最大的风险点
也要提前知道。
风险 1
Verifier 本身不可靠,可能把错误答案放行。
风险 2
Questioner 可能学会“骗 verifier”,生成表面合理但低价值的问题。
风险 3
Reasoner 可能过拟合 verifier 偏好,而不是真正学会医学视觉理解。
风险 4
医学图像中很多问题不是单图可答,问题空间控制不严会导致训练噪声很大。
十二、最后给你一个精炼版框架图文字描述
你可以直接放进笔记或开题报告里:
Med-VisPlay-V 框架
以未标注医学图像为输入,Medical Questioner 基于图像生成医学视觉问题;Medical Reasoner 对每个问题进行多次采样作答,通过多数投票形成伪标签;Medical Verifier 对问题有效性、答案可信度、图像依据性和解释一致性进行评分。Questioner 通过“不确定性 + 多样性 + 医学有效性”奖励进行优化,Reasoner 通过“答案一致性 + 医学依据 + 解释一致性 + 安全性”奖励进行优化。系统在 Questioner–Reasoner–Verifier 三者的闭环交互中逐步提升医学视觉推理能力。
如果你要,我下一步可以直接把这个框架整理成论文方法章节写法,包括:方法图、公式、算法流程和实验设计。