波特词干词元过滤器 #
波特词干(porter_stem
)词元过滤器会将单词还原为其基本(或词干)形式,并去除单词中常见的后缀,这有助于通过单词的词根来匹配相似的单词。例如,单词“running”会被词干提取为“run”。此词元过滤器主要用于英语,并基于
波特词干提取算法进行词干提取操作。
参考样例 #
以下示例请求创建了一个名为 my_stem_index
的新索引,并配置了一个带有波特词干提取过滤器的分词器。
PUT /my_stem_index
{
"settings": {
"analysis": {
"filter": {
"my_porter_stem": {
"type": "porter_stem"
}
},
"analyzer": {
"porter_analyzer": {
"tokenizer": "standard",
"filter": [
"lowercase",
"my_porter_stem"
]
}
}
}
}
}
产生的词元 #
使用以下请求来检查使用该分词器生成的词元:
POST /my_stem_index/_analyze
{
"text": "running runners ran",
"analyzer": "porter_analyzer"
}
返回内容包含产生的词元
{
"tokens": [
{
"token": "run",
"start_offset": 0,
"end_offset": 7,
"type": "<ALPHANUM>",
"position": 0
},
{
"token": "runner",
"start_offset": 8,
"end_offset": 15,
"type": "<ALPHANUM>",
"position": 1
},
{
"token": "ran",
"start_offset": 16,
"end_offset": 19,
"type": "<ALPHANUM>",
"position": 2
}
]
}