提要
大型语言模型(LLMs)逐渐成为自然语言处理(NLP)中的常态,并在生成和推理任务中展现出良好的性能。然而其最致命的缺点之一是生成的内容缺乏事实真实性。
解决该问题的一个常见的方向是检索增强生成(RAG)[1]。这些方法涉及将 LLMs 与检索系统结合起来,旨在利用外部事实知识指导生成过程。然而,现有的方法均有内在的局限性。
我们提出了知识链(CoK)框架,通过从异构知识源动态整合事实信息来增强 LLMs 生成内容的真实性。从而减少幻觉问题的出现。大量实验表明,CoK 在不同领域的知识型任务上一致提高了 LLMs 的表现。
论文标题:
Chain-of-Knowledge: Grounding Large Language Models via Dynamic Knowledge Adapting over Heterogeneous Sources
收录会议:
ICLR 2024
论文链接:
https://openreview.net/pdf?id=cPgh4gWZlz
数据代码:
https://github.com/DAMO-NLP-SG/chain-of-knowledge
论文作者:
李星漩,赵若辰,谢耀赓,丁博生,邴立东等
问题定义
随着自然语言处理技术的发展,大模型(LLMs)开始大放异彩,在语言理解、生成、交互和推理方面表现出的非凡能力,广泛应用于对话、翻译、代码生成等领域。由于常用的大模型是基于解码器的概率生成模型,其生成过程中不可避免会发生事实性错误内容,因此,关于增强大模型生成内容的正确性已经成为自然语言处理领域中尤为重要的问题之一。
解决该问题的一个常见的方向是检索增强生成(RAG)。这些方法涉及将 LLMs 与检索系统结合起来,旨在利用外部事实知识指导生成过程。
然而,现有的方法均有内在的局限性。首先,它们对所有问题使用固定的知识源,这可能无法检索到专门和特定领域的知识。其次,在生成检索查询时,现有方法主要依赖于 LLMs,这些模型主要在自然语言句子上进行预训练,因此在生成像 SPARQL 这样的结构化查询时可能不够有效。第三,现有的检索增强方法缺乏逐步纠正能力,导致潜在的错误传播。
针对以上问题,我们提出了知识链(CoK)框架,通过从异构知识源动态整合信息来增强 LLMs。这导致了更加事实性的推理和生成中幻觉的减少。具体来说,CoK 包括三个阶段:推理准备、动态知识适配和答案整合。
与之前主要使用非结构化数据的研究不同,CoK 还利用了如 Wikidata 和表格这样的结构化知识源,提供了更可靠的事实信息。为了在动态知识适配阶段访问非结构化和结构化知识源,我们提出了一个自适应查询生成器(AQG),它可以生成各种类型查询语言的查询,包括 SPARQL、SQL 和自然语言句子。
此外,为了最小化推理之间的错误传播,CoK 使用逐步纠正推理。广泛的实验表明,CoK 在不同领域的知识型任务上一致提高了 LLMs 的表现。
CoK框架
我们的知识链(CoK)框架包括三个阶段:推理准备、动态知识适应和答案整合。面对一个知识密集型的问题,CoK 首先准备几个初步的推理和答案,同时识别相关知识领域。如果样本中的答案之间没有多数共识,CoK 通过从识别的领域适配知识逐步纠正推理。这些被纠正的推理可以合理地作为最终答案整合的更好基础。
随后,Cok 对初步的第一步推理进行知识抽取和真实性纠正。为了访问结构化和自然语言的知识来源,我们提出了一个自适应查询生成器(AQG),支持 SPARQL、SQL 和自然语言句子等多样的查询。纠正后的推理步骤被用于下一步推理步骤的生成。在逐步纠正推理步骤之后,事实信息被整合以产生最终答案。
与以前的工作相比,CoK 可以使用更多样的知识来源,比如知识图谱和表格,以提供更可靠的信息。我们的逐步纠正也减少了与以前的检索方法相比的错误传播,因为每个推理步骤可能依赖于前面步骤的准确性。
实验结果
我们分别在常识、医学、物理和生物领域进行了充分的 3-shot 和 6-shot 实验。实验结果表明,CoK 对比思维链方法有着稳定的表现提升,并将准确率平均提高 4.3%。同时,CoK 对比其他最先进的检索增强方法比如 ReAct [2] 和 VE [3] 也有着稳定的提升。
如表 2 所示,CoK 对比 VE 有稳定提升。对于 FEVER 和 HotpotQA,我们另外在表 3 中将结果与 ReAct 进行了比较。由于 ReAct 中的结果是基于 PaLM 模型报告的,为了增加更合理的视角,我们报告了在 CoT-SC 基线之上的性能提升。
与 ReAct 相比,CoK 对 CoT-SC 的改进更为实质性,特别是在 HotpotQA 上。具体而言,对于 HotpotQA,CoK 相比 ReAct 提高了 2.0%,而 ReAct 只有 0.8%。对于 FEVER,CoK 显示了 3.5% 的改进,与 ReAct 的 4.2% 改进相当。这归因于 FEVER 相对于 HotpotQA 而言的所需的逻辑推理步骤更少,因此从提升逻辑链这一方法中受益较少。
VE 同时针对所有解释进行知识检索和编辑,而 ReAct 则可能会在提示中保留过去的错误,导致错误传播。CoK 通过动态知识适应缓解了这个问题。值得注意的是,CoK 的成本远远低于 ReAct,原文附录中有详细的成本分析。
关于示例数量的影响,如表 2 所示,无论是在 3-shot 还是 6-shot 设置下,CoK 始终在多个数据集上展现出增强的性能。之前的研究表明,在提示中增加示例数量(shots)可能会在推理任务上导致更好的性能。
然而,对于知识密集型任务,这并不普遍适用。例如,如表 2 所示,CoT 在 MMLU 生物学中使用六个示例(81.7%)与使用三个示例(81.5%)几乎相同。这是因为在回答知识密集型问题时,LLM 的瓶颈在于它们的知识不足,而不是它们的推理能力。
所有基于推理的方法在 FEVER 上的性能在使用六个示例后都有所下降。这可能是因为 FEVER 问题是单跳的,需要较少的推理。因此,增加对推理的指导可能会导致潜在的噪音。这一发现与 ReAct 一致,作者在其中指出,对于 FEVER,超过 3 个示例不会导致更好的性能。
单知识源 vs. 多知识源
在 CoK 框架中,有一个关键步骤是用来选择每个问题的适当知识领域的。这一步骤对于确保 CoK 能够检索到最相关的知识以纠正解释并准确回答问题至关重要。一个问题可能会选择多个知识领域,并且在每个领域内可能有多个知识来源。
如图 3 所示,我们展示了每个数据集识别出的领域分布情况。值得注意的是,我们发现 CoK 主要为每个数据集选择了一个知识领域,而只有少数情况需要多个领域。例如,对于 MedMCQA,主要知识领域是医学,有 17.8% 的问题还将生物学作为相关领域。
此外,我们进行了消融实验来证明利用多个领域的必要性。如表 4 所示,与仅使用医学领域知识相比,CoK 使用来自生物学领域的额外知识进一步提高了 1.3% 的性能。这表明,跨越多个领域的知识对于回答某些问题是必要的,这一结果强调了整合各种知识领域的必要性。
在一个领域内,存在许多可信的知识来源,一个单一来源不可能涵盖该领域的所有知识。因此,在一个领域内利用多个知识来源是重要的。例如,如表 4 所示,与仅使用 Flashcard 相比,当同时利用 Flashcard 和 UpToDate 作为医学知识来源时,CoK 的性能提高了 2.1%。
并行 vs. 动态知识适应
如前所述,动态知识适应有助于 CoK 防止错误从前文传播到后文,接下来我们更仔细地看一下它带来了多少改进。如表 5 所示,当应用动态知识适应时,CoK 的性能比 CoT 提高了 4.2%。然而,如果直接采用并行知识适应,由于前文的错误影响到了后文的逻辑推理,最终导致了较差的性能。
真实性评估(量化及人为方法)
为了定性地检查 CoK 是否能够输出符合事实的推理链,我们还请志愿者进行了真实性评估。具体来说,我们随机选择了 CoK 在 HotpotQA 和 FEVER 数据集上输出的 100 个回答。其中 50 个 CoK 输出导致了错误答案,另外 50 个导致了正确答案。然后,我们要求志愿者选择其中更符合事实的推理链,以及这个更好的推理链是否可能导致更好的答案输出。
从表 7 的结果中,我们可以观察到,志愿者一致确认 CoK 生成的推理链在事实上是一致的,而 CoT(普通的推理链)则不是。即使在 CoK 生成了答案错误的情况下,人们仍然相信 44% 的时间,CoK 生成的推理链在事实一致性上得到了改善,尽管它可能不包含正确答案所需的信息。
在这些实例中(答案错误,但事实性有提升),人们有 73% 的时间相信这些更符合事实的推理链本应导致更准确的答案。这意味着,即使 CoT 的质量已经得到改善,许多失败案例仍然是由推理错误造成的。
结论
在本文中,我们提出了一种新颖的框架——知识链(Chain-of-Knowledge,简称 CoK),旨在提升大型语言模型(LLMs)的事实正确性,让大模型不再胡说八道。
知识链代表了一种充满希望且全面的解决方案,通过整合多个领域内的异构知识来源,极大提升了大模型的知识能力。我们通过提出自适应查询生成器(Adaptive Query Generator,简称 AQG)来解决准确查询生成的挑战,该生成器支持非结构化和结构化查询语言,并且可以轻松地在经过微调的开源大模型和闭源大模型之间进行转换。
在知识密集型任务上的实验结果显示,CoK 取得了显著的改进。此外,CoK 的模块化设计使其可以应用于不同的 LLMs 和各种格式的知识来源,有效地应对了包括隐私问题、知识来源依赖和快速信息更新等重要挑战。
通过知识链,我们能够跨越知识孤岛,连接分散的信息点,构建一个全面、动态更新的知识网络,使得大模型在处理复杂问题时,如同站在巨人的肩膀上,拥有更广阔的视野和更深厚的理解力。我们希望这个工作可以起到抛砖引玉的作用,与各位学术界的前辈和同行携手同行,一起为实现通用人工智能添砖加瓦。
参考文献
[1] Lewis, Patrick, et al. "Retrieval-augmented generation for knowledge-intensive nlp tasks." Advances in Neural Information Processing Systems 33 (2020): 9459-9474.
[2] Yao, Shunyu, et al. "React: Synergizing reasoning and acting in language models." arXiv preprint arXiv:2210.03629 (2022).
[3] Zhao, Ruochen, et al. "Verify-and-edit: A knowledge-enhanced chain-of-thought framework." arXiv preprint arXiv:2305.03268 (2023).
更多阅读
#投 稿 通 道#
 让你的文字被更多人看到 
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:[email protected] 
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
·
·
·
继续阅读
阅读原文