第4章 查询理解与意图识别
查询理解是搜索引擎的“入口”——用户输入的短query背后藏着深层需求。本章围绕 查询改写、意图分类、实体识别 三大核心技能,拆解大厂面试高频考点。掌握这套回答框架,你就能从“知道怎么做”升级为“能讲清为什么这么做”。
回答框架:从分词到反馈的闭环思考路径。
📌 卡片1:查询改写
| 面试问题 | 请解释搜索引擎中查询改写的常见策略,并举例说明如何评估改写效果。 |
|---|---|
| 考察点 | 对改写方法(同义、纠错、分词消歧)的落地经验;离线/在线评估指标;对长尾query的处理能力。 |
| 回答框架 | 策略分类→核心流程→评估方式 |
| 示例回答 | “改写策略分三类:同义词扩展、拼写纠错、分词消歧。离线用改写准确率&召回率,线上看改写后CTR提升和NDCG变化。比如‘苹国’先纠错为‘苹果’,再扩展‘水果’、‘iPhone’,用点击模型评估改写效果。” |
| 可能追问 | 如何处理缩写歧义(如“CBA”)?改写模型如何避免过改? |
| 避坑提醒 | 不要只背策略名字,一定要结合具体query举例;避免说“召回率95%”而不解释分母定义。 |
📌 卡片2:意图分类
| 面试问题 | 如何设计一套意图分类系统来区分导航类、信息类、交易类query?你会用什么特征和模型? |
|---|---|
| 考察点 | 多分类模型设计、特征工程、线上延迟与准确率平衡;对意图混淆边界的处理(如“京东”既是导航也可是交易)。 |
| 回答框架 | 分类体系→特征→模型选型→线上部署 |
| 示例回答 | “三级分类:导航/信息/交易。特征包括query长度、中英文比例、历史点击分布、百科实体类型。用轻量级BERT蒸馏模型,线上延迟<5ms。对歧义query用置信度阈值+兜底规则,比如‘优衣库’置信度>0.7走交易类,否则走导航类。” |
| 可能追问 | 冷启动流量如何标注?意图切换(如语音query)如何动态更新? |
| 避坑提醒 | 不要只谈NN不谈工程约束;区分用户意图与搜索结果意图(“天气”可能是信息类也可能想查本地天气)。 |
📌 卡片3:实体识别
| 面试问题 | 如何在搜索引擎中对query进行实体识别(NER)?如何处理实体边界和嵌套实体? |
|---|---|
| 考察点 | NER模型(BiLSTM-CRF/Transformers)、词典匹配与模型融合、OOV问题、实体链接。 |
| 回答框架 | 技术路线→难点突破→评估指标 |
| 示例回答 | “采用词典+指针网络(BIO标签)结合。先基于知识库构建实体候选,再用预训练模型做边界检测。嵌套实体通过分层CRF或Span预测解决。线上用F1评估,长尾实体靠用户点击回传补偿,如‘AI芯片’中的‘AI’与‘芯片’分别提取再组合。” |
| 可能追问 | 同义词实体如何归一化(“苹果公司” vs “Apple Inc.”)?实体和意图如何相互影响? |
| 避坑提醒 | 别只讲模型结构,工程上要提字典存储(Trie树)、双检冲突策略;实体召回率比准确率更重要。 |
🏢 公司侧重点对比
- 百度:强依赖于实体图谱和知识体系,面试常问实体消歧与知识融合;对地名、人名精准度要求极高。
- 阿里:侧重电商意图分类与商品词改写,关注买家的交易意图和属性值抽取(如“红色连衣裙”中的颜色/品类)。
- 字节:强调多模态查询(视频/语音)的意图理解,面试会问跨模态用户行为信号如何融入query改写。
- 谷歌/微软:国际场景下的多语言查询理解,考查无监督/弱监督方法(如利用搜索结果锚文本做自动标注)。
🎯 面试官画像
年龄/职级:P6-P8(资深工程师/技术专家),大部分拥有5年以上NLP/搜索经验。
提问风格:先问宏观理解(“你怎么设计XX系统”),再追问细节(“那遇到XXX case怎么办”),最后施加压力(“一天内要上线,你怎么砍特征”)。
隐性期望:不仅是“做过”,更要能讲清楚为什么选A不选B,包括离线指标与线上收益之间的推导关系。对工程落地敏感度(延迟、资源消耗)是加分项。
⚠️ 核心提醒:本章所有回答都要体现“Query理解不是单点任务,而是一个多模块交互的系统工程”。哪怕只问一个子问题,也要自然带出上下游的关联,让面试官看到你的系统思维。