搜索引擎是如何进行查询纠错的?

简介: 当用户输入错误查询词时,搜索引擎通过查询纠错功能自动识别并修正错误。该过程分为三步:首先判断输入是否存在错误,利用字典或语言模型评估置信度;接着召回候选词,基于拼音、字形或编辑距离生成可能的正确词;最后对候选词打分排序,选出最优结果。结合查询推荐,搜索引擎能更好理解用户意图,提升检索效果。

以上,都是在用户输入正确搜索词时的查询分析。那如果用户的输入有误,比如说,将「极客时间」输成了「即可时间」,或者是「级可时间」,搜索引擎又会怎么办呢?这个时候,我们就需要用到查询纠错功能和查询推荐功能了。

我们先来说一说查询纠错功能是如何使用的。查询纠错的过程一般会分为三个步骤,分别是错误判断、候选召回和打分排序。

一般来说,在错误判断阶段,我们会根据人工编辑以及对搜索日志进行数据挖掘,得到常见字典和混淆字典。然后,我们使用哈希表或者字典树等结构来对字典进行索引,使得这两个字典具有高效的检索能力。如果某个分词后的检索词,我们无法在常用字典中查询到,或者它出现在了混淆字典中,那就说明这个词很可能是错误的。因此,我们还需要启动后续的候选召回和打分排序步骤。

不过,近年来,基于语言模型和机器学习的错误判断方式被广泛地使用。这种判断方式具体来说就是,我们会在用户输入检索词后,先对其进行置信度判断,如果得分过低,再进入后续的纠错过程。这能帮助我们更好地进行纠错。为什么这么说呢?我们来看一个例子,如果我们将「极客」错误地输入成了「级可」,通过检索常用字典和混淆字典,我们是有可能发现这个错误的。但如果我们错输成「即可」,由于「即可」本身也是一个合理的词,因此我们就需要使用基于语言模型和机器学习的方法,计算「即可」这个词出现在这个上下文中的置信度,才能发现有错。

在错误判断完成之后,就进入候选召回阶段了。在候选召回中,我们会预估查询词出错的每种可能性,提前准备好可能的正确结果。一般情况下,中文输入有 2 种常见的出错情况。

第 1 种,拼音相同但是字不同。这时,我们就要将相同拼音的词作为候选集,以拼音为 Key 进行检索。第 2 种是字形相似,那我们就生成一个相似字型的词典,通过该词典召回候选集。此外,还有根据编辑距离进行相似召回,根据机器学习得到候选集进行召回等。通过这些不同的纠错方式,我们就能得到可能的纠错结果集合了。

最后,我们要对众多的纠错结果进行打分排序。在这个过程中,我们可以使用各种常见的机器学习和深度学习算法进行打分判断(你可以回忆一下 11 讲,我们讲过的那些方法),将得分最高的纠错结果返回。这样就完成了整个查询纠错过程。

好了,到这里,我们就把查询纠错的过程说完了。至于查询推荐,则更多的是分析搜索日志的结果,用「查询会话」「点击图」等技术,来分析哪些检索词之间有相关性。比如说,如果检索「极客时间」和检索「极客邦」的用户都会浏览相同的网页,那么「极客邦」就很有可能出现在「极客时间」的相关推荐中。

因此,查询推荐可以提供出更多的关键词,帮助搜索引擎召回更多的结果。它一般会在关键词不足的场景下被启用,或是作为补充提示出现。所以,关于查询推荐我就不再多说了,你只要记住查询推荐的原理就可以了。

总的来说,通过查询分析、查询纠错、查询推荐的过程,搜索引擎就能对用户的意图有一个更深入的理解。那接下来,我们就通过得到的一系列关键词,也就是【极客、时间、极客时间】,去查询倒排索引了。

相关文章
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的迁移学习:从理论到实践
科技进步不断推动人工智能的发展,其中深度学习已成为最炙手可热的领域。然而,训练深度学习模型通常需要大量的数据和计算资源,这对于许多实际应用来说是一个显著的障碍。迁移学习作为一种有效的方法,通过利用已有模型在新任务上的再训练,大大减少了数据和计算资源的需求。本文将详细探讨迁移学习的理论基础、各种实现方法以及其在实际应用中的优势和挑战。
|
7月前
|
人工智能 Linux API
每天省2小时!阿里云/本地保姆级部署OpenClaw+飞书集成+百炼API配置完整指南
2026年的职场办公,真正的效率提升从不是靠加班硬拼,而是把机械重复的“后台工作”交给AI,把精力留给核心的思考与决策。OpenClaw作为实干型AI生产力工具,与飞书的深度融合,让这份想象成为现实——从数据汇总、文件信息提取,到资料分发、周报生成,原本耗时数小时的机械劳动,AI十秒就能完成,每周至少为职场人省出3.5小时。本文将拆解OpenClaw+飞书的4大核心办公提效场景,给出可直接落地的操作方法,同时完整整理2026年OpenClaw在阿里云及本地MacOS/Linux/Windows11的部署流程、阿里云百炼Coding Plan免费大模型API配置步骤,以及部署和集成中的常见问题解
1027 6
|
存储 缓存 Android开发
android 读取WebView缓存及清理WebView缓存
1.缓存的分类: 首先要说的一点是缓存的分类,我们缓存的数据分为:页面缓存和数据缓存 页面缓存:加载一个网页时的html、JS、CSS等页面或者资源数据,这些缓存资源是由于浏览器  的行为而产生,开发者只能通过配置HTTP响应头影响浏览器的行为才能间接地影响到这些缓存数据。
4143 0
交叉证书
## 证书4要素 pubkey(公钥) ,有一个其一一对应的私钥,由证书拥有者保存。 subject(名字),可以理解为证书的名字,你可以理解为 网站的域名。 issuer(颁发者的名字),即上级证书的subject。 signature(签名) ,上级证书使用私钥对当前证书进行签名的值。 ## 证书签名 假设 有 3 级 证书 ![image.png](
6144 0
|
9月前
|
API Apache
OPIK:一个开源的自动提示词优化框架
本文介绍如何用OPIK的MetaPromptOptimizer实现自动提示词优化,通过几轮迭代将大模型在复杂推理任务上的准确率从34%提升至97%。详解环境搭建、代码实现及优缺点,展示如何让LLM自我改进提示词,大幅提升效率与性能,推动提示工程迈向自动化。
1079 2
|
5月前
|
人工智能 自然语言处理 安全
阿里云百炼Token Plan和Coding Plan怎么选?一篇讲透区别与适用场景,告别纠结!
随着AI编程与智能体工具快速普及,阿里云百炼推出的订阅套餐成为开发者低成本使用大模型的主流选择。但很多用户在Token Plan与Coding Plan之间难以判断,再加上套餐状态频繁调整,很容易选错、买错、用错。本文基于2026年最新官方政策与真实使用体验,系统梳理两种套餐的定位、计费、模型支持、工具兼容性与实际限制,给出清晰可落地的选择建议,帮你一次性选对最适合自己的方案,不花冤枉钱、不踩不必要的坑。
1680 4
|
人工智能 Cloud Native 搜索推荐
【2025云栖大会】阿里云AI搜索年度发布:开启Agent时代,重构搜索新范式
2025云栖大会阿里云AI搜索专场上,发布了年度AI搜索技术与产品升级成果,推出Agentic Search架构创新与云原生引擎技术突破,实现从“信息匹配”到“智能问题解决”的跨越,支持多模态检索、百亿向量处理,助力企业降本增效,推动搜索迈向主动服务新时代。
1062 0
|
7月前
|
SQL 机器学习/深度学习 人工智能
从 NL2SQL 到本体论智能问数:为什么复杂企业数据问答需要新的方法
当“大模型+数据问答”成智能化入口,真正难点不在NL2SQL,而在理解业务对象、关系、口径与动作。本文剖析传统方法的天花板,提出以本体论构建业务语义层——将问数从“查表工具”升维为“决策基础设施”,揭示UINO等厂商通过ABC(Acquire-Build-Compute)范式,推动智能问数迈向可持续演进的语义底座。
|
6月前
|
数据采集 缓存 人工智能
Agno框架学习笔记
这是一份面向小白的Agno框架学习笔记,以轻松易懂的方式讲解Agent核心概念:状态管理、工具调用、动态加载(callable factories)、缓存机制与运行流程。通过真实代码示例,手把手带你构建可对话、能执行Excel处理等任务的智能体,助你入门AI Agent开发。(239字)
1106 0
|
10月前
|
消息中间件 存储 Java
消息中间件RabbitMQ(高级)
本文深入探讨RabbitMQ在生产环境中的高级应用,涵盖消息可靠性、延迟消息、消息堆积及集群高可用等核心问题。通过生产者确认、持久化、消费者确认机制确保消息不丢失;利用TTL与死信交换机实现延迟队列;借助惰性队列提升堆积能力;最后通过普通集群、镜像集群及仲裁队列实现高可用架构。
 消息中间件RabbitMQ(高级)

热门文章

最新文章