我一直在研究德语复合词的问题,想知道是否有人对这个问题有现代的方法。
许多德语单词实际上是许多单词的组合,例如Baumhaus由单词Baum和Haus 组成。现在,要实现良好的搜索效果,必须可以按每个单词进行搜索。
通过使用此处显示的字典方法。这种方法可能是我测试过的最精确的解决方案。然而,字典还远未完成,因此会产生很多不想要的结果。
我尝试的第二种方法以插件的形式利用预建的Compact Patricia Tries,弥补了字典的不足。然而,它当然也会导致很多不希望的结果。
我发现和测试的两种方法都有效,但远非完美。两者结合使用多路复用器令牌过滤器创建了一个不错的结果。
我的第一次尝试是使用N-gram token filter。然而,这提出了一个关键问题。虽然搜索Haus应该返回Baumhaus 上的匹配,但搜索Baumhaus不应该只匹配Haus。
由于提到的两个解决方案都相当陈旧,组合时会影响性能,并且不再真正积极维护,我觉得必须有另一种方法来解决这个问题。
任何输入表示赞赏;)