全部产品
云市场

拼写纠错干预配置

更新时间:2019-08-06 10:16:18

干预主要是在系统无法正确纠错时,提供一种途径供用户自定义纠错行为。通过创建干预词典,并在查询分析中配置拼写检查功能时,选择对应的干预词典,可以实现对纠错的干预。

干预词条生效规则

  1. 完全匹配:查询词和干预词条query完全一致。
  2. 包含匹配:查询词中一个或多个(最多5个)连续完整的语义term和干预词条中的query的匹配才能生效。包含匹配不完全等价于字符串的子串匹配。例如,干预词条:手机冲电器 -> 手机充电器
    • query:手机冲电器哪个牌子好,假设其分词后的语义term为:手机|冲|电器|哪个|牌子|好,那么纠错会被干预成手机充电器哪个牌子好
    • query:苹果手机冲电器价格,假设其语义term被切分为:苹果手机|冲|电器|价格,没有连续的语义term能够匹配上干预词条,该query就不会被干预。

干预词条生效顺序

  1. 位置靠前的干预词条优先
    例如: 干预词条:中国建社->中国建设建社很行->建设银行, query:中国建社很行, 两条干预数据均在query中有连续语义term的匹配,但是由于干预词条在query中有重叠,选择位置靠前的干预词条生效,最终纠错结果为中国建设很行
  2. 位置相同的情况下,干预词条长度(语义term个数)优先
    例如: 干预词条开法->开发开法搜嗦->开放搜索,query:开法搜嗦真优秀,最终纠错结果为开放搜索真优秀
  3. 一个query可以有多个包含匹配的干预生效

注意

  1. 只要有用户干预,那么本次拼写检查的可信度就为高。
  2. 对于干预匹配成功的词条,系统会将干预词条替换后的query走纠错模型,在保留用户纠错干预的前提下,对未干预的部分进行纠错。
    Eg. 干预词条:手机冲电器->手机充电器, query:手机冲电器哪个排子好
    干预后结果:手机充电器哪个排子好,将这个query再进行系统模型的纠错,在保证手机冲电器->手机充电器干预生效的前提下,系统会进行进一步纠错,得到结果手机充电器哪个牌子好

    使用介绍

目前支持对系统内置的拼写纠错词典进行人工干预。用户实现干预操作的过程通常有以下四步:

  1. 创建拼写纠错干预词典。用户进入到查询分析干预词典页后,点击页面右上角的“创建词典”。选择了词典类型后,为词典命名,干预词典创建完成,词典会出现在页面的词典列表中。
  2. 新增和管理干预词典内的干预词条。词典创建完成后,在列表中点击词典名称或点击词典对应的“管理”,即可进入到干预词典的详情页。用户可在详情页内进行干预词条的新增和管理。
    用户可对Query进行两种类型的干预,
    -添加纠正词:对一个Query添加纠正词,系统在查询Query时会改写成添加的纠正词进行结果召回。
    -屏蔽纠正词:对一个Query屏蔽纠正词,系统在查询Query时不再会改写成屏蔽的纠正词进行结果召回。
  3. 使用干预词典。创建并填充完成拼写纠错词干预词典后,可在任意应用的查询规则内选择使用。
  4. 干预词典效果测试和上线。查询分析规则使用了干预词典后,在应用到线上前建议先进行搜索效果测试,评估效果是否符合干预预期。

实战演示

  • 业务场景:某电商导购类业务在OpenSearch的应用实例中配置使用了查询分析规则,规则包含拼写纠错功能,但是在线上发现了badcase,于是决定使用干预功能。
  • Badcase:用户搜索Query“海澜之谜”,返回的结果不多,但是都完整包含了“海澜之谜”关键词,实际上该查询的相关结果有很多都没有召回。
  • 问题诊断:用户的输入Query错误,正确的写法应该是“海蓝之谜”,系统的拼写纠错没有识别出错误写法。
  • 解决方案:新建拼写纠错干预词典,在Query“海澜之谜”下干预添加纠正词“海蓝之谜”,再将该拼写纠错词典应用在线上使用的查询分析规则中。
  • 配置流程

1.点击控制台首页干预功能:查询分析干预词典。

2.创建一个拼写纠错干预词典,命名为”pinxietest”。

3.在”pinxietest”里新增干预词条,Query栏填写“海澜之谜”,纠正词栏填写“海蓝之谜”,干预类型选择“添加”。

4.在app中把干预词典先应用在一个未上线的查询分析规则中,以便进行搜索效果测试。

5

5.搜索测试是否符合预期效果。发现搜索结果召回了改写成“海蓝之谜”的结果,符合预期。

注意事项

  1. 词典类型和名称在创建后均不可修改。
  2. 新增干预词条时,填写的Query不应与干预列表内已干预过的Query重复。
  3. 新增或修改干预词条后,生效状态如果持续是“正在生效”,可以点击刷新按钮获取生效状态的同步。
  4. 同一干预词典可以被多个查询分析规则使用。
  5. 由于目前的干预词典是基于系统内置词典的补丁式干预,所以词典使用时会默认勾选使用系统内置词典。
  6. 被任一查询规则(不论是否上线)使用的干预词典不能被删除,想要删除需要首先解除使用。

功能限制

  1. 拼写纠错干预词典一共可以创建10个。
  2. 每次新增拼写纠错干预词条时,Query只支持填写一个,同一Query下纠正词只支持填写一个。
  3. 每个拼写纠错干预词典最多可创建500个干预词条。
  4. 拼写纠错干预词条按照干预的Query与查询Query精准匹配才生效。例如,为Query“武汗”添加了拼写纠错词“武汉”,那么查询“武汗”时会改写为“武汉”进行召回,但是查询“去武汗”时,不会被改写,仍然按照原Query进行召回。
  5. 添加的干预内容均会进行大小写和全半角归一化处理,其中大写字母会归一化为小写,全角会归一化为半角。