机器学习笔记(23): GAM-Agent
可能更好的阅读体验 Jeefy's Blog: GAM-Agent
在答案聚合这一块,一般的做法是平均聚合、投票选优之类的,在推理、视觉层面的信息交换是不充分的,所以,需要对于聚合阶段采取一个较好的框架性方案。
GAM-Agent 采用一种基于博弈的思路,加上一些可以量化的指标,完成了该论文。
说是博弈的思路,其实就是通过 “辩论” 进行强化,与博弈关系不大
论文中使用博弈去证明,感觉就像是套壳。
这个框架最好的设计其实就是这个 \(\Phi\) 和这些量化的指标的设计,框架本身并没有特别的地方。
- 不确定估计
对于一个回答,如果能够获取其每个 token 的 logits,那么就可以使用香农熵的形式:
前者通过 top-2 概率差,判断 “确定性”,后者通过熵,判断犹豫度。
\(\Phi\) 越大,则不确定性越强,生成的答案越不可信。
但是对于非开源模型,不可知其 logits,那么就只能换一种启发式的思路:通过关键词判断其是否不确定。核心公式就是:
但是显然存在一个问题:模型自信的错误的情况都无法判断。模型偏见本身无法被消除,反而会因为多轮推理而强化。
- IntegrateJudge
其实就是用 prompt + 各种上下文,生成一个答案。
将 \(\Phi\) 经过 softmax 得到概率,将 \((R_i, p_i)\) 以及模型信息注入:
You are a Judge tasked with creating the best possible final answer based on
expert analyses and critiques.
Original Question: ...
Available Options: ... # 若有选项
Current Answer: ...
--- Expert Analyses --- / --- Critiques on Uncertain Claims ---
Instructions for Final Integration:
1. Review the original question, current answer, expert analyses, and critiques.
2. Focus on improving the parts of the answer that received critique.
3. Maintain the accurate parts of the current answer.
4. Synthesize a final answer that is accurate, complete, ...
5. If options were provided, your final answer MUST select one of the options clearly.
- 要来辩论吗?
那论文中说了,有一个:
那不是代码中一点都看不见踪迹?
代码中硬编码 3 轮
- 证据充分吗?这不是多模态吗?
那就是说,有两个组件,Evidence Mapping (M) and Claim Parsing (P)。
P 就是将响应变成一个 4 元组,也就是 {主张,置信度,文本证据,视觉证据(某个区域)}
M 就是将主张和图片间构建一个证据映射,返回图片区域和置信度。
这个映射,理论上应该是 box 或者 mask,但是论文选择纯语言模型的 description 方法。用文字声称位置。这就很不错了
- 还要我怎么辩下去?
-
IdentifyDisputes
将结构化元组中,可能存在矛盾冲突,或者置信度低的东西提取出来,让其成为辩论的 context。 -
专家生成 \(Arg_i\)
基于输入的图片和原问题,存疑答案和争议点,生成定向论证 -
估计 \(Arg_i\) 的不确定度
根据开始的算法。
但是,论文中出现了一点非常有问题的部分:
这是论文中原本的写法,但是在附录和代码中,只有关于 \(U\) 也就是先前的不确定度的计算,而没有对于这个 \(C_i\) 的部分。所以不清楚这里的 or 是来做什么的。
-
IntegrateJudge
-
判断停止
就是是否确定了、或者达到轮次上限了、或者不确定度收敛了。
- 存在的问题
- 模型的偏见始终没有被考虑,多次辩论可能会放大模型的偏见,变得错而更确定。也就是说,虽然是通过 “纳什均衡” 去证明,但是却没有考虑均衡后,是不是收敛到一个正确的答案上。
- 模型能力不足的地方无法弥补,只能将模型学习到的但是不那么强的能力释放出来,轻微的提升,其实感觉是可用在后训练提升模型能力上的,将多轮的答案,经过清洗后,给模型微调。
- 实验部分,都是同一个模型多个 prompt,换成异构模型会更好一点。这个承接问题 1
- 专家路由是静态的,缺乏选择机制,对于完全不存在的内容,例如 ORC Agent 对于文字识别的部分,会压低最终聚合的时候的答案质量。
- 可能可以怎么做?
利用 SLM-MUX 的 Contradiction 和 UnionACC 的指标,可能可以,但是这会引入 “预训练” 的问题,不是很好。

浙公网安备 33010602011771号