我正在寻找一个弹性搜索中的过滤器,它可以让我将英语复合词分解成它们的组成部分,例如对于像这样的术语eyewitness,eye witness并且eyewitness查询都会匹配eyewitness.我注意到了复合词过滤器,但这需要明确定义一个单词列表,这是我自己无法想出的.
首先,你需要问自己是否真的需要分解复合词。考虑一种更简单的方法,例如使用“边缘 n 元语法”来命中前缘或后缘。它会产生松散地击中“ey”等片段的副作用,但也许这对于您的情况是可以接受的。
如果您确实需要分解复合词,并且想要显式索引单词片段,则需要获取单词列表。您可以下载英语单词列表, 这里有一个示例。字典单词列表用于了解复合词的哪些片段实际上是单词本身。这会增加索引的开销,因此请务必对其进行测试。这里有一个显示用法的示例。
如果您的文本是德语,请考虑https://github.com/jprante/elasticsearch-analysis-decompound
| 归档时间: |
|
| 查看次数: |
1647 次 |
| 最近记录: |