谷歌镜像 伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

控制词干提取 | Elasticsearch: 权威指南 | Elastic

来源:网络转载 浏览:44277次 时间:2023-09-19
请注意:
本书基于 Elasticsearch 2.x 版本,有些内容可能已经过时。 Elasticsearch: 权威指南 » 处理人类语言 » 将单词还原为词根 » 控制词干提取 «  选择一个词干提取器     原形词干提取  »

控制词干提取编辑

开箱即用的词干提取方案永远也不可能完美。 尤其是算法提取器,他们可以愉快的将规则应用于任何他们遇到的词,包含那些你希望保持独立的词。 也许,在你的场景,保持独立的 skiesskiing 是重要的,你不希望把他们提取为 ski (正如 english 分析器那样)。

语汇单元过滤器 keyword_markerstemmer_override 能让我们自定义词干提取过程。

阻止词干提取编辑

语言分析器(查看 配置语言分析器)的参数 stem_exclusion 允许我们指定一个词语列表,让他们不被词干提取。

在内部,这些语言分析器使用 keyword_marker 语汇单元过滤器 来标记这些词语列表为 keywords ,用来阻止后续的词干提取过滤器来触碰这些词语。

例如,我们创建一个简单自定义分析器,使用 porter_stem 语汇单元过滤器,同时阻止 skies 的词干提取:

PUT /my_index
{
  "settings": {
    "analysis": {
      "filter": {
        "no_stem": {
          "type": "keyword_marker",
          "keywords": [ "skies" ] 
        }
      },
      "analyzer": {
        "my_english": {
          "tokenizer": "standard",
          "filter": [
            "lowercase",
            "no_stem",
            "porter_stem"
          ]
        }
      }
    }
  }
}

参数 keywords 可以允许接收多个词语。

使用 analyze API 来测试,可以看到词 skies 没有被提取:

GET /my_index/_analyze?analyzer=my_english
sky skies skiing skis 

返回: sky, skies, ski, ski

虽然语言分析器只允许我们通过参数 stem_exclusion 指定一个词语列表来排除词干提取, 不过 keyword_marker 语汇单元过滤器同样还接收一个 keywords_path 参数允许我们将所有的关键字存在一个文件。 这个文件应该是每行一个字,并且存在于集群的每个节点。查看 更新停用词(Updating Stopwords) 了解更新这些文件的提示。

自定义提取编辑

在上面的例子中,我们阻止了 skies 被词干提取,但是也许我们希望他能被提干为 sky 。 The stemmer_override 语汇单元过滤器允许我们指定自定义的提取规则。 与此同时,我们可以处理一些不规则的形式,如:mice 提取为 mousefeetfoot

PUT /my_index
{
  "settings": {
    "analysis": {
      "filter": {
        "custom_stem": {
          "type": "stemmer_override",
          "rules": [ 
            "skies=>sky",
            "mice=>mouse",
            "feet=>foot"
          ]
        }
      },
      "analyzer": {
        "my_english": {
          "tokenizer": "standard",
          "filter": [
            "lowercase",
            "custom_stem", 
            "porter_stem"
          ]
        }
      }
    }
  }
}

GET /my_index/_analyze?analyzer=my_english
The mice came down from the skies and ran over my feet 

规则来自 original=>stem

stemmer_override 过滤器必须放置在词干提取器之前。

返回 the, mouse, came, down, from, the, sky, and, ran, over, my, foot

正如 keyword_marker 语汇单元过滤器,规则可以被存放在一个文件中,通过参数 rules_path 来指定位置。

«  选择一个词干提取器     原形词干提取  »

Getting Started Videos

  • Starting Elasticsearch
  • Introduction to Kibana
  • Logstash Starter Guide

官方地址:https://www.elastic.co/guide/cn/elasticsearch/guide/current/controlling-stemming.html

  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net