在资讯检索的背景下,查询扩展(Query Expansion, QE)是一种经过重新构思以提升检索效果的过程。随着科技的进步,搜寻引擎的运作方式不断演变,而查询扩展技术的引入,无疑是改善用户搜寻体验的一个重要步骤。
查询扩展的过程涉及对用户输入进行评估,并扩展搜寻查询以匹配更多相关文档。
在搜寻引擎的运作中,查询扩展的技术涵盖了几个方面,包括寻找同义词、语意相关词(如反义词、部分词、下位词和上位词)等,自动修正拼写错误,以及查询项的加权。这些技术的应用,可以大幅提升文件检索的准确性和范围。
搜寻引擎利用查询扩展来提高用户搜寻结果的质量。一般假设,使用者不总是用最佳词汇来表达查询,尤其是当资料库中并不存在所输入的词汇时。透过对用户输入术语进行词干提取,便能够匹配到更多相关文档,从而增强召回率。然而,这同时也可能降低精确率。
这表明,提高召回率有可能带来精确率的提升,因为包含在结果集中的页面,有可能更符合用户的查询需求。
如同许多商业搜寻引擎所采用的技术,查询扩展的过程中,会利用词频(tf-idf)来协助排序。当用户输入的词汇、同义词及其他词形的出现频率越高时,该文档便越有可能向搜寻结果的上方移动,这使得高品质的搜寻结果得以在使用者的视野中优先显现,尽管召回率有所增加。
查询扩展的自动化方法早在1960年便由Maron和Kuhns提出。当今的查询扩展方法主要可分为两类:基于文档集合分析的方案和基于词典或本体的方案。全局分析可用于寻找术语之间的关系,而本地分析则利用Rocchio提出的相关性反馈技术进行查询扩展。
这种相关性反馈方法虽然在平均情况下有效,但对某些困难的查询而言,结果却可能不如预期。
另一个与查询扩展相关的重要方向是,在向量空间中表示索引和查询术语,这能在查询时利用语意向量或词嵌入找到相关术语。在当前科技背景下,查询扩展及其对应的文档扩展,已经以各种基于深度学习的编码方案形式实现于向量数据库中。
计算机科学领域不断发展,各种开源软体库也随之出现,帮助开发人员在其专案中实现查询扩展。以下是一些知名的查询扩展相关的软体库:
查询扩展技术在资讯检索和自然语言处理领域的应用,促进了检索质量的提升,并改善了用户的搜寻体验。
随着技术的不断进步,查询扩展能否成为未来搜寻引擎更智能化的关键技术?