作者 | Conqueror712 整理 | NewBeeNLP https://zhuanlan.zhihu.com/p/682697588
大家好,这里是NewBeeNLP。今天分享关于大模型的幻觉现象。
省流版:幻觉是指模型生成的信息可能或 不准确 ,目前的办法只能 缓解 不能根除。
LLM 时常会出现一些神奇的现象—— 幻觉 Hallucination ,在 AI 领域,幻觉是指模型生成的信息可能 不真实 或 不准确 ,这是一个常见的问题,而 Truthfulness 指的是模型输出的 真实性 或者叫 可靠性 ,显然如果模型输出的真实性越高,那么出现幻觉的概率就是越低的。
下面展示了 LLM 常见的几个衡量指标,今天我们主要来关注一下可靠性中的 幻觉 :
定义 :我们在这里将 Misinformation 定义为是由 LLM 无意生成的,而不是故意生成来对用户造成伤害的,因为 LLM 缺乏提供事实正确信息的能力。另外,我们可能会直观的认为 LLM 只会在有挑战性的问题上犯错,但事实上,有时 LLM 即使对于简单的问题也无法提供正确的答案,至少在没有复杂的 Prompt 设计的情况下是这样的,这也一定程度上说明了好的 Prompt 设计的重要性,所以让我们耐心的向 LLM 提问吧(笑)。
原因 :虽然 LLM 产生不真实答案的原因没有一个公认的原因,但存在一些猜测:
定义 :LLM 可以信心满满地生成毫无意义或不忠实于所提供的源内容的内容,这在 LLM 中被称为幻觉。在心理学文献中,类似的现象被称为虚构,即无意欺骗的错误记忆,有时是由脑损伤引起的。请注意,幻觉和错误信息之间是有区别的:
原因 :梅开二度,产生幻觉的确切原因尚不清楚,不过也同样有一些猜测:
评估与检测 :评估和检测幻觉仍然是一个正在进行的领域,常见的评估任务有:
解决方法 :减轻幻觉也没有一种定式说应该如何解决最好,目前有的方法例如:
定义 :LLM 可能无法向不同用户、不同会话中的同一用户,甚至同一对话的会话内的聊天中提供相同且一致的答案,这就是矛盾,想必大家都遇到过。
原因 :帽子戏法,不一致的确切原因尚不清楚,但 随机性 肯定发挥了作用,包括但不限于:
这表明 LLM 在 推理能力 方面可能仍然落后,这要求用户在 Prompt 时小心谨慎,从而提高了使用 LLM 获得正确答案的门槛。此外,训练数据中令人困惑和相互矛盾的信息肯定是原因之一,由此产生的不确定性增加了对下一个标记进行采样时的随机性产生输出。
解决方法 :关于如何提高 LLM 的 alignment 已经有一些讨论:
定义 :LLM 由于其固有的局限性,导致对缺乏客观答案的主题和不确定性的领域可能会表现出过度自信,这是应当警惕的。这种过度自信表明模型对知识库缺乏认识,从而导致自信但错误的回答。
原因 :大四喜最终还是没有出现,这种过度自信的问题部分源于 训练数据的性质 ,训练数据通常包含了互联网数据中固有的两极分化观点。
解决方法 :
然而,这些校准方法通常会带来权衡,对校准 Transformer 的实证研究表明,尽管域外任务略有改善,但域内性能却恶化了。对于 LLM,我们其实有两种方法来 计算不确定性 :
定义 :LLM 可能倾向于通过再次确认用户的误解和既定信念来奉承用户。当用户挑战模型的输出或反复强迫模型遵守时,这是一个特别明显的现象。下图是一个好笑的例子,尽管模型最初进行了正确的计算,但它会退回到用户暗示和坚持的错误计算:
原因 :请注意,谄媚与回答错误的原因不同:
因此,对现有 RLHF 算法的一个重要改进是平衡阿谀奉承的程度和与人类用户一致的程度之间的权衡。
这里只是给出常见的几种方法,并不是所有方法
另外,一般来说,进行更多 Alignment 的模型在整体可靠性方面往往表现更好。不过 Alignment 的有效性也会因所考虑的不同可靠性类别而异,这凸显了进行更细粒度的分析、测试和持续改进 Alignment 的重要性,我们可以用一张图来表示:
有人认为,幻觉来源于预训练和 SFT(有监督微调),因为我们希望模型尽可能的能回答我们的问题,尽管他们可能回答的不对,由此带来的三个负面影响是:
行为克隆 是强化学习领域的一个术语,意思是监督微调或最大化似然,其目的是完成给定 Prompt 的最大化似然或最大化对数概率。如果用行为克隆来训练模型,比如使用人类编写的正确答案或使用 ChatGPT 的输出进行训练,那么即使用 100 个正确的答案进行克隆,由于模型缺乏所有相关的事实,仍然是在教会模型产生幻觉。
如果你使用行为克隆来训练模型,那么无法避免出现幻觉问题,同时也会出现相反的问题,即如果你想训练模型在某些情况下回答 我不知道 ,那么它可能会隐瞒实际上已经知道的信息。
例如,如果标注者不知道答案,他们可能会将我不知道列为目标答案,但实际上网络可能已经有了答案,你只是在训练模型隐瞒信息。
因此,行为克隆或监督学习的问题在于: 正确的目标实际上取决于神经网络中包含了哪些知识,而这对于收集数据或进行实验的人来说是未知的。 所以,除非你有一种方法来查看模型中的内容,否则无法使用行为克隆训练出真实可信的模型。
如果尝试用监督学习数据集来训练另一个模型,也会遇到同样的问题。
例如,许多人正在使用 ChatGPT 的输出来微调开源基础语言模型。微调后,这些模型的表现很好。但如果仔细查看事实准确性,你会发现它们存在一些问题,并且经常会编造信息。不过这只是我预测的结果,还有待实验证实。
有人认为, 强化学习 可以解决这个问题,部分幻觉仅因为模型陷入想要 给出完整答案 的模式或不知道如何表达不确定性而产生,因此这类幻觉很好解决。比如可在训练模型时给出一些表明 我不知道 、 我的知识截止于某某日期 的示范,或者给出一些质疑用户提问的范例,这样模型至少能够表达不确定性,而如何掌握这个 度 ,就是强化学习要解决的问题(本质上和训练狗狗没有区别),当模型给出一个答案,如果是非常自信的正确答案,将得到高额奖励;如果是模糊的正确答案,将得到稍差的奖励;如果是无信息的答案,例如我不知道,将得到一些惩罚;如果是模糊的错误答案和完全错误的答案,将得到更多的惩罚。这基本是一个适当的评分规则,能够激励模型给出自信的答案,如果它对错误答案过于自信,就会给出相应惩罚。
实际上,有一个被设置为 TriviaQA 模式的实验,TriviaQA 是一个流行的问答数据集,它包含了一系列常识问题,这个实验使用了一种基本的问答格式来引导模型回答问题,如果你只在正确答案上进行行为克隆,那么模型对所有问题都会给一个回答,但往往会包含一些错误答案。因为我们从未告诉它输出 我不知道 这样的答案,若遇到不知道的问题,它只能进行猜测而不会说 我不知道 。在对答案进行行为克隆时,只需要少量训练后模型就达到一定的准确率和对数损失,但这种训练只是在教模型它应该试图输出正确答案,模型实际上没有从这种微调中学习很多新知识,学到的只是问题格式及其处理方式。
某种程度上,我们可以通过解析计算来得出正确的奖励行为,即错误答案的惩罚与正确答案的奖励之间的差异。最优奖励行为可以简单理解成确定某种阈值,譬如当列表中排在最前的选项有超过 50% 的概率时就回答,否则就不回答。如果我们将奖励函数用于强化学习,模型就会学到最佳阈值行为,就像模型已经了解最佳策略。因此,如果使用强化学习微调模型,就可以让它做同样的事情,即使它并没有真正查看到这些概率。
如果你问 ChatGPT 一个技术问题,可能会得到正确、错误或具有误导性的答案,让标注者来判断答案是否有误往往行不通。所以需要让人们对回答进行排序,并说出哪个更好而不是最好。人们必须根据错误的严重程度来判断模型给出的答案,这在很大程度上取决于上下文。举一个编程的例子:模型写了 100 行代码,只有一个地方的参数写错了,这种情况下我宁愿让它给出这个答案,也不愿让它回答不知道,因为我至少可以在其基础上运行和调试。但是在其他情况下,这种错误可能是一个大问题。
事实上,ChatGPT 已经使用了一种常见的奖励机制——人工标注的排序序列,如下是示意图:
这样做的好处想必不用多说,一个是节约人力成本,另一个是防止个体差异。
然而,模型并没有就事实错误的严重程度和错误的模糊程度施以正确的惩罚,所以可以说,基于排名的奖励模型没有很好地解决这个问题。此外,标注者的错误肯定也有很多。有时标注者没有足够的信息来做出正确的标注,人类无法始终正确地进行排名,比如有些问题可能涉及到用户计算机上的某些代码库,标注者就无法访问。
综上所述,现在的方法都是尽可能地缓解幻觉,而不能根除幻觉,更有效的方法有待进一步研究,让我们拭目以待。
[1]
1] [TRUSTWORTHY LLMS: A SURVEY AND GUIDELINE FOR EVALUATING LARGE LANGUAGE MODELS’ ALIGNMENT, Research, August 9, 2023: https://arxiv.org/pdf/2308.05374.pdf
[2]
2] [Large Language Models Help Humans Verify Truthfulness – Except When They Are Convincingly Wrong, October 2023: https://link.zhihu.com/?target=http%3A//arxiv.org/pdf/2310.12558.pdf
[3]
3] [Long-Form Speech Translation through Segmentation with Finite-State Decoding Constraints on Large Language Models, 23 Oct 2023: https://link.zhihu.com/?target=http%3A//arxiv.org/pdf/2310.13678.pdf
[4]
4] [https://juejin.cn/post/7229891752647950394: https://juejin.cn/post/7229891752647950394
[5]
5] [https://zhuanlan.zhihu.com/p/655152338: https://zhuanlan.zhihu.com/p/655152338
[6]
6] [https://zhuanlan.zhihu.com/p/595579042: https://zhuanlan.zhihu.com/p/595579042