参考文档:聊一聊大模型幻觉:起因、评估及缓解策略探索

小结

幻觉简介

有的场景需要幻觉【创作等】,有的场景不需要【如医疗、法律】

幻觉分类

没有固定的分类标准,可以按照如下分类:

  1. 语境冲突性幻觉:在多轮对话中,常常会出现前后语境不一致的情况

  2. 与事实相冲突的幻觉:LLM 生成的内容不忠实于既定的世界知识

幻觉产生的原因

  1. 数据:大模型缺乏相关知识或者内化错误知识

  2. 大模型有时会高估自己的能力:正确答案和错误答案的分布熵可能是相似的,LLM 在生成错误答案时和生成正确答案时同样自信

  3. SFT的数据质量

    1. LLM 在预训练阶段没有获得相关的先决知识,在训练指令的时候一个错误的对齐过程,会促使 LLM 产生幻觉

    2. 谄媚:生成偏向用户观点的回答,而不是提供正确或错误的答案

  4. 生成策略

    1. 局部最优化(标记预测)并不一定能够确保全局最优化(序列预测)

    2. 基于抽样的生成策略(如top-p、top-k)引入的随机性

幻觉的评估

  1. 生成事实陈述评估:将幻觉视为一种生成特征,类似于流畅性和连贯性,并对 LLM 生成的文本进行评估,查看一个 query 前一个查询的答案与下一个查询的两个答案之间是否存在蕴含关系,类似于自然语言推理(NLI)中的三元组问题

  2. 判别式基准评估:考察大模型辨别真实陈述和幻觉陈述的能力

  3. 已经出现了一些评估标准:比如TruthfulQA

缓解大模型幻觉

  1. 策略1:构建高质量微调数据和拒答

    1. 在经过编辑的指令数据上进行微调

    2. 通过加入拒答环节,采用以诚实为导向的 SFT,即在 SFT 数据中引入一些诚实样本,诚实样本指的是承认自己无能的回答,如“对不起,我不知道”,学会拒绝回答特定问题以减少幻觉。拒答数据配比:在实际中发现,鼓励拒答问题的数据达到千级以上就能够比较好地形成一个拒答的意识。如果拒答数据过多,会造成大模型对任何问题都说不知道

  2. 策略2:强化阶段引入诚实对齐

    1. GPT4 使用合成幻觉数据来训练奖励模型并执行 RL,从而将 Truth-fulOA 的准确率从约 30% 提高到 60%

    2. 优化 Reward 模型,设计用于减轻幻觉的特殊奖励函数:“Unhedged/HedgedCorrect/Wrong”代表 LLM 用肯定或犹豫的语气提供正确或错误的答案。 --这些奖励函数是什么?

  3. 策略3:优化解码策略

    1. 上下文感知解码策略(CAD):迫使 LLMs 更关注上下文信息,而不是过度依赖自身的参数知识做出决策

    2. RALM 策略:用自回归方式检索解码策略https://arxiv.org/pdf/2302.00083.pdf。先利用 LLM 解码出部分 tokens,再检索与该 tokens 相似的文本,然后拼接在 prompt 中,进行 next-tokens 预测,这样自回归式完成解码

    3. KNN+LLM 策略:在推理中将两个 next_token 分布进行融码,一个分布来自自身 LLM 输出,一个是来自检索 top-k token,利用 LLM embedding方式在外挂知识库中查找与query token 相似的 token

  4. 策略4:外挂知识库增强,缓解幻觉

    1. 何时利用:在模型生成答案前、生成答案过程中以及生成答案后(采用辅助修正器

    2. 利用的频率

      1. 在接收到 query 后,先进行检索,然后将检索结果输入到大语言模型中生成答案,这种一次性的外挂方式在某些情况下是有效的

      2. 在使用GPT4 等模型时会发现,模型对于某些问题的回答不够确定或准确,这时采用迭代的方式进行外挂,在得到模型的初步回答后,再次将问题或模型的回答作为输入,进行多次迭代,然后对生成答案进行事后干预,比如再利用知识图谱(KG)等工具对答案进行检索和修正,可以提高答案的准确性和可靠性。

    3. 利用的形式:外部知识库、外部工具(搜索引擎、API 代码执行器)

补充

问题一:什么是大模型幻觉,应该如何看待?

  1. 大模型幻觉的分类维度各不一样;

  2. 有的场景需要幻觉【创作等】,有的场景不需要【如医疗、法律】。

问题二:多样性和幻觉的关系

多样性是造成幻觉的重要原因

问题三:大模型幻觉产生原因

数据、训练方式、解码方方面面都有。

问题四:大模型的幻觉能不能解?

  1. 无根本解,只能缓解,并且要跟具体业务场景做区分;

  2. 现有的 RAG 并没有触及大模型本身,都是治标不治本。

问题五:大模型知不知道自己知不知道?

不知道,本质上都是概率。

问题六:在大模型背景下,知识图谱的自身定位是什么

做好结构化数据,发挥好知识管理、网络结构化特性。

结尾

亲爱的读者朋友:感谢您在繁忙中驻足阅读本期内容!您的到来是对我们最大的支持❤️

正如古语所言:"当局者迷,旁观者清"。您独到的见解与客观评价,恰似一盏明灯💡,能帮助我们照亮内容盲区,让未来的创作更加贴近您的需求。

若此文给您带来启发或收获,不妨通过以下方式为彼此搭建一座桥梁: ✨ 点击右上角【点赞】图标,让好内容被更多人看见 ✨ 滑动屏幕【收藏】本篇,便于随时查阅回味 ✨ 在评论区留下您的真知灼见,让我们共同碰撞思维的火花

我始终秉持匠心精神,以键盘为犁铧深耕知识沃土💻,用每一次敲击传递专业价值,不断优化内容呈现形式,力求为您打造沉浸式的阅读盛宴📚。

有任何疑问或建议?评论区就是我们的连心桥!您的每一条留言我都将认真研读,并在24小时内回复解答📝。

愿我们携手同行,在知识的雨林中茁壮成长🌳,共享思想绽放的甘甜果实。下期相遇时,期待看到您智慧的评论与闪亮的点赞身影✨!

万分感谢🙏🙏您的点赞👍👍、收藏⭐🌟、评论💬🗯️、关注❤️💚~


自我介绍:一线互联网大厂资深算法研发(工作6年+),4年以上招聘面试官经验(一二面面试官,面试候选人400+),深谙岗位专业知识、技能雷达图,已累计辅导15+求职者顺利入职大中型互联网公司。熟练掌握大模型、NLP、搜索、推荐、数据挖掘算法和优化,提供面试辅导、专业知识入门到进阶辅导等定制化需求等服务,助力您顺利完成学习和求职之旅(有需要者可私信联系) 

友友们,自己的知乎账号为“快乐星球”,定期更新技术文章,敬请关注!

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐