QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率-AI.x-AIGC专属社区-51CTO.COM

QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率

发布于 2024-7-29 01:10
浏览
0收藏

1. 背景

大型语言模型(LLMs)在众多语言任务中展现出非常不错的效果,然而,LLMs中的幻觉现象正极大地削弱它们的可信度和实用性。一种解决大语言模型幻觉的方法是检索增强生成(RAG),通过检索文档来提供基于检索到文档中的事实信息的更准确的用户查询答复。

大语言模型幻觉(Hallucination)是指大语言模型产生错误或者误导性的信息。

然而,RAG并未完全根除幻觉,这样因此激发大量研究来提高RAG的准确性。一个不完善的RAG系统,常常因为模糊不清的查询而引发误导,导致没能准确捕捉到用户的真实意图。

最新有研究表明,使用LLMs对用户查询进行扩展可以提升相关文档的检索效果。查询扩展是指在原始查询中加入更多相关术语,使得用户的查询更易与相关文档相连。查询扩展主要分为两大类:

• 基于检索器的方法通过利用检索结果来拓展查询

• 基于生成的方法则是借助大型语言模型(LLMs)等外部数据来丰富查询内容

其中:

• 伪相关反馈(Pseudo Relevance Feedback,PRF)通过自动根据排名靠前的文档调整初始查询,进一步优化搜索结果,无需用户明确输入。PRF通过假定顶部结果的相关性,增强了查询,从而提升了后续检索的精确度。

• Query2Doc 研究显示,将LLM生成的内容融合到查询中,其效果明显优于传统的检索技术。但这种方法也存在风险,可能会引入不准确信息,与目标文档的匹配度不高,并且容易受到LLM幻觉的影响。

• 基于检索的方法则通过引入相关术语或短语,增强了搜索查询的实效性,使查询更加丰富和精准。

• CSQE利用LLM从检索到的文档中提取关键句子进行查询扩展,生成适应任务的查询,尽管这有时会使得查询变得过长。当将CSQE扩展的查询与BM25评估的结果以及通过交叉编码器从BEIR重新排名的结果进行比较时,发现性能提升并不显著。

为了解决以上问题,本文作者提出了一种精确查询优化方法(Query Optimization using Query expAnsion,QOQA),利用前k个平均查询-文档对齐得分,借助LLMs来精炼查询。这种方法既计算效率高,又能提升文档检索的精确性,减少误导。在实验中,这种方法能够以平均1.6%的提升率,准确提取所需文档。

2. 什么是 QOQA?

2.1 借助大型语言模型(LLM)优化查询

为了提升查询质量,采用大型语言模型(LLM)根据得分对查询进行改写扩展。

QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率-AI.x社区图片

首先,输入原始查询,并通过检索器获取相关文档。然后,将原始查询与检索到的顶级文档合并,形成扩展查询,并提交给LLM以产生一系列重新表述的查询。

经过改写的查询将根据其与检索文档的契合度进行评估,相应的查询-文档对齐得分及其查询文本将被存入查询池。

QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率-AI.x社区图片

上图展示了提示词模板,将提示模板更新为包含原始查询、检索文档以及排名靠前的查询改写。为确保性能超越原始查询,始终在模板中融入原始查询信息。在后续的优化环节,会根据得分生成一个经过优化的查询,并将其加入到查询池中。

上图中,黑色文字是对任务描述的提示词。蓝色文字是原始查询以及与之相关的顶级检索文档。紫色文字是由LLM优化器生成的改写后查询及其评分。

2.2 查询-文档对齐得分计算

2.1 中提到了一个查询-文档对齐得分,该得分涉及三个得分:

• 基于稀疏检索的BM25分数

• 基于密集检索的密集分数

• 融合了稀疏与密集检索的混合分数

混合分数如下图公式:

QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率-AI.x社区图片

文章看上去没有介绍这个 α参数 如何设置。

3. 效果对比

QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率-AI.x社区图片

上表比较了不同文档检索模型在SciFact、Trec-Covid和FiQA数据集上的表现。在密集检索方面,增强模型(QOQA变体)显示出优越的性能。

特别地,QOQA(基于BM25评分)在SciFact数据集上以75.4分的优异成绩领先,在Trec-Covid数据集上以79.2分的混合评分证明了其强大的性能。QOQA在多个数据集上一致的性能提升,凸显了其在提升检索效率方面的显著效果。

QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率-AI.x社区图片

如上表,由QOQA生成的改写查询相较于原始查询,在精确度和具体性上更胜一筹。

QOQA方法产生的查询能够精准地包含“纳米”或“分子证据”等关键词汇,从而有效抓取最为贴切的文档。这种对关键词的精准把控确保了改写查询与答案文档在词汇上的更高重合度。因此,借助QOQA优化的查询在检索包含正确答案的文档时显示出了显著的效果。

QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率-AI.x社区图片

上表中可以看出,优化步骤对于搜索更佳的改写查询起到了促进作用。

缺少了扩展部分,整体性能尤其以BM25分数为标准,会有显著的下降。

证明扩展部分在塑造高品质改写查询和提升文档检索效率方面发挥了不可或缺的作用。

本文转载自​大语言模型论文跟踪​,作者:HuggingAG

QOQA:利用TopK文档进行查询改写,平均提升RAG 1.6% 准确率-AI.x社区

收藏
回复
举报
回复
相关推荐