全部产品
云市场

查询分析——实体识别(NEW)

更新时间:2019-07-26 10:40:38

功能基本介绍

实体识别,全称命名实体识别(Named Entity Recognition,简称NER),指对查询词中的具有特定意义的语义实体进行识别。查询分析根据识别的结果,依据实体类型的权重对查询词进行改写,使得召回的文档符合查询的意图。
目前,OpenSearch的实体识别只支持电商行业。主要实体类型如下:

类别/英文 类别/英文 类别/英文 类别/英文
普通词/common 材质/material 风格/style 款式元素/element
颜色/color 品牌/brand 功能功效/function 尺寸规格/size
品质成色/quality 场景/scenario 人群/people 套装/suit
时间季节/season 型号/model 新品/new-release 系列/series
营销服务/marketing 地点地域/region 人名/name 文娱书文曲/entertainment
机构实体/organization 影视名称/movie 游戏名称/game 数字/number
单位/unit 品类/category 新词/new-word 修饰/adjective
专有名词/proper-noun 品类修饰词/category-modifier 符号/symbol 前缀/prefix
后缀/suffix 赠送/gift 否定/negative 代理/agent

实体识别作用

在查询分析中,实体识别主要的作用于query改写和类目预测查询中。

Query改写

OpenSearch的查询分析最多改写出来两个query,第一个Query相比第二个Query会更精准,第二个query减少了参与召回的term,旨在当更精确的召回结果数不足时,用第二个query进行扩大召回。
Query改写主要根据实体的重要性,对query进行改写,召回时保留重要性高的实体词,对重要性低的部分不影响召回,只影响算法排序。实体的重要性目前分为3档,分别是高、中、低。
Query改写的规则如下:

  1. 重要性高的实体,其优先级完全一样,肯定会参与召回;
  2. 重要性低的实体,始终不参与召回;
  3. 重要性中的实体,其优先级按其在查询分析中配置的顺序依次递减,改写规则:
    1. 当query中有重要性高的实体时,重要性中的实体在第一个query中参与召回,第二个query不参与召回;
    2. 当query中没有重要性高的实体时,重要性中的实体在第一个query中参与召回,在第二个query中,优先级最高的那个实体类型的词会参与召回,其他的都不参与召回。
  4. 当query中没有重要性高和中的实体时,query改写不参照实体识别的结果;
  5. 当query只有重要性高或者只有重要性高和低的实体时,改写后只会得到一个query。

示例

假设实体重要性设置为:

  1. 高:品类
  2. 中:品牌 材质 款式元素 风格 颜色
  1. 包含重要性高和中的实体

    1. query=default:'杨幂同款耐克修身连衣裙包邮'
    2. 实体识别的结果:杨幂(人名)同款(后缀)耐克(品牌)修身(款式元素)连衣裙(品类)包邮(营销服务)
    3. 改写后的Query
    4. Query1 (default:'耐克' AND default:'修身' AND default:'连衣裙' RANK default:'杨幂' RANK default:'包邮' RANK default:'同款')
    5. Query2 (default:'连衣裙' RANK default:'杨幂' RANK default:'耐克' RANK default:'包邮' RANK default:'同款' RANK default:'修身')
  2. 包含重要性高和低的实体

    1. query=default:'连衣裙包邮'
    2. 实体识别的结果:连衣裙(品类)包邮(营销服务)
    3. 改写后的Query
    4. Query1 (default:'连衣裙' RANK default:'包邮')
  3. 仅包含重要性高的实体

    1. query=default:'连衣裙'
    2. 实体识别的结果:连衣裙(品类)
    3. 改写后的Query
    4. Query1 (default:'连衣裙')
  4. 包含重要性中和低的实体

    1. query=default:'耐克修身包邮'
    2. 实体识别的结果:耐克(品牌)修身(款式元素)包邮(营销服务)
    3. 改写后的Query
    4. Query1 (default:'耐克' AND default:'修身' RANK default:'包邮')
    5. Query2 (default:'耐克' RANK default:'修身' RANK default:'包邮')
  5. 仅包含重要性低的实体

    1. query=default:'杨幂同款包邮'
    2. 实体识别的结果:杨幂(人名)同款(后缀)包邮(营销服务)
    3. 无根据实体识别改写的query

类目预测

Query中不同的实体对类目的影响是不一样的,因此,当原query没有类目预测的结果时,会根据一定的规则,去掉query中和类目意图无关或者相关度低的词后,进行类目预测。这对长尾query的类目预测会有很大的帮助。
保留的实体词包括:

  1. 品类
  2. 人群
  3. 时间季节
  4. 款式种类
  5. 风格

    示例

    对于query 杨幂(人名)同款(后缀)春季(时间季节)修身(款式元素)连衣裙(品类),丢词后的query按照优先级排序分别为:
  • 春季修身连衣裙
  • 春季连衣裙
  • 修身连衣裙
  • 连衣裙

系统会按照上述顺序依次查询类目预测的结果。

功能使用流程

点击应用管理,选择高级配置中的查询意图理解配置查询分析的相关功能。点击右上角的添加规则开始配置。1

输入规则名称,选择相应索引范围,行业类型选择电商,在功能选择中选择实体识别。在实体类型主要性设置中增删实体类型,默认使用系统内置词典,如果系统识别的实体存在badcase, 可以使用干预词典进行人为干预。

23

规则创建完毕后,可以进行搜索效果测试,选择设置默认规则,搜索测试无误后,勾选为默认规则后对线上查询生效。3

4