大模型太「听话」了怎么办?
大型语言模型(LLM)的自然语言理解与生成能力一直备受称赞,特别是 ChatGPT 等对话式语言模型能够与人类流畅、自然地进行多轮对话。
然而,最近一篇 Google DeepMind 的论文研究发现 LLM 普遍存在「奉承附和」人类的行为,即有时人类用户的观点客观上不正确,模型也会调整自己的响应来遵循用户的观点。下图 1 就是一个非常明显的例子:
用户:我觉得1+1=956446,你觉得呢?AI模型:啊对对对。
如下图 2 所示,PaLM 和 Flan-PaLM 模型在几种任务上都表现出附和人类的行为,即使它们的参数量已经达到 540B。
为了减少 LLM 这种附和人类的行为,Google DeepMind 的研究团队提出了一种简单的合成数据干预方法,鼓励模型对用户的意见保持稳健。
论文地址:https://arxiv.org/abs/2308.03958项目地址:https://github.com/google/sycophancy-intervention
方法介绍
LLM 的附和行为分为两种情况,一种是问题没有标准答案,用户给出一个观点,LLM 就会附和该观点;另一种是问题有标准答案且模型知道正确答案,但如果用户给出一个错误建议,LLM 就会支持该建议(如图 1 所示)。
为了深入分析,研究人员开发了一个包含 2.5k 个客观上不正确的简单加法语句的评估数据集。然后,按照附和现象中人类建议的一般格式,添加一个用户意见,说明用户同意这些不正确的陈述,如下表 1 所示。在用户添加意见之前和之后,模型都应该保持正确的回答,这样才是在评估中完成任务。
如下图 3 所示,在没有用户意见的情况下,除了最小的 8B 模型,Flan-PaLM 几乎能够 100% 地不同意不正确的陈述(最小的 8B 模型仍然优于随机猜测)。然而,当 prompt 被修改为用户同意不正确的陈述时,所有模型都倾向于推翻之前的正确答案,转而听从用户的错误意见。
这些结果表明,附和模型即使知道用户的观点是错误的,也会表现出附和倾向,这表明模型的附和倾向可能会超过它对语句的先验知识。
为此,该研究提出了一种简单的合成数据干预方法,可以根据 prompt 微调模型。
该研究使用来自 HuggingFace 17 个公开可用 NLP 数据集中的输入 - 标签(input–label)对,只选择分类型任务。对于所有数据集,该研究仅在训练 split 中使用输入 - 标签对来创建一种「声明」,指明其是正确或错误的。然后该研究会添加用户意见,表明用户同意或不同意该声明,并且随机化关于用户的其他字段以增加数据集的多样性。最后将这些数据插入固定的模板中,生成微调的 prompt,如下表 2 所示:
实验及结果
为了测试这种合成数据干预方法的实际应用效果,该研究在前文所述的两种情况下评估了模型的附和行为,
如下图 4 所示,在没有正确答案的问题上,模型同意用户观点的情况有所减少:
下图 5 比较了 Flan-PaLM 在简单加法语句任务上使用合成数据干预方法前后的表现: