业务痛点
由于用户搜索习惯的不同,搜索时输入的关键词往往会存在差异,这导致搜索引擎无法召回与搜索词文本不一致但实际上是用户期望的结果。比如,用户搜索“棉袄”时,通用文本检索将无法搜索到“棉服”相关的内容,影响用户的搜索效率与使用体验。解决此类问题最有效的方法之一是使用同义词功能。
痛点一:行业属性强
由于业务场景的多样性,不同行业、垂类之间的同义词可能存在着巨大的差异,通用的开源同义词模型难以覆盖细分业务场景。比如在电商场景下,会因业务特殊性生成专属的品牌词、别名、简称等同义词,在这种情况下,业务同义词的挖掘与维护成为提升搜索召回效果的痛点之一。
痛点二:自建同义词成本高、难度大
为解决上述业务痛点,自建同义词模型是业务常见的方案之一,自建同义词模型主要包含以下流程:
- 难点1:同义词标注领域知识要求高,对于查询词中不同词在搜索引擎中的重要性判断难。同时数据量也至少需要达到万级别,耗时可能长达数月。
- 难点2:模型训练门槛高,需要专业的算法从业人员进行调试,且模型效果、迭代效率强依赖与算法工程师的投入和能力。
- 难点3:模型部署、运维流程复杂,需要工程、算法、运维等多方参与,且深度模型的上线还涉及性能、效率相关的诸多优化。
综上,自建同义词模型对时间、人力、资源的投入均相对较高,且模型效果强依赖于专业算法人员的能力,往往投入了很多成本却无法提升搜索效果。
开放搜索定制同义词解决方案
方案介绍
在进行搜索文本搜索前,开放搜索OpenSearch会对用户输入关键词进行查询语义分析和处理。其中,同义词功能主要是对查询词进行同义扩展,扩大召回和查询词同义的文档。由于业务场景的多样性,不同行业、不同业务都有各自的特殊性,只有具体到应用级别的同义词模型才能保障最优的搜索效果。
OpenSearch提供了丰富的面向特定领域的同义词模型,用户可以基于对应的行业,经过简单的配置训练得到专属的定制同义词模型。训练完成后,用户可在控制台中查看差异率、同义词case对比等模型效果,等到效果符合预期后,即可在开放搜索中使用该定制同义词模型,并支持同义词效果人工干预。
整个定制过程无需进行额外的数据对接、标注、模型调参、部署、运维等工作,在更低附加成本下完成模型定制与搜索效果调优。
适用客户
- 搜索为核心业务重要场景,对搜索有更高效果要求的客户
- 行业、垂类、业务特殊,有较多专属名词的客户
- 搜索投入人力有限,算法同学相对较少的客户
使用方法
- 在行业算法版-召回配置中创建召回定制-同义词模型并开启训练;
- 配置查询分析并引用已训练的召回定制-同义词模型;
- 根据业务需求通过干预词典调整召回定制-同义词模型;
更多使用说明请参考:https://help.aliyun.com/document_detail/467943.html
效果对比
电商场景效果对比
原文 |
电商同义词 |
定制同义词 |
交话费 |
缴话费 |
充话费 |
演出服 |
表演服、演出装、舞台服 |
表演服、舞台装、表演装 |
染发剂 |
染发膏 |
染发膏、染发液 |
医疗场景效果对比
原文 |
通用同义词 |
定制同义词 |
血液粘稠度 |
- |
血液黏稠度 |
不可过度劳累 |
- |
不要过分劳累、不要过度劳累、 不要过于劳累 |
喉咙很痛 |
- |
喉咙疼痛、喉咙特别痛、喉咙有点痛、喉咙疼 |
小结
- 如果您的业务目前正在或准备使用OpenSearch行业算法版,可以在行业模型的基础上训练定制同义词模型;
- 如果OpenSearch还没有提供与您业务接近的行业,建议选择在行业算法版-通用行业的基础上训练定制同义词模型,这种情况需要数据尽量丰富,分布尽量全面均衡,有助于提升模型效果;
- 开放搜索目前还支持定制分词器、定制词权重模型,后续还会提供更多定制召回模型,敬请期待~
欢迎有高质量搜索效果需求的技术同学参与OpenSearch产品试用~
试用申请问卷:https://page.aliyun.com/form/act4137000/index.htm
与更多开发者技术交流可以钉钉加入【推荐与搜索技术交流群】