2

我正在基于 lucene 的搜索中搜索一个单词,并且我想在 java 中将诸如“eating”、“eats”之类的字符串转换为“eat”。我搜索并找到了词形还原作为解决方案,但是我遇到的所有英语词形还原工具都使用词表或字典查找。是否有任何可以避免字典查找并提供高效率的词形还原器,可能是基于规则的词形还原器。是的,我不是在寻找“词干”。或是否有任何方法(不重要的准备使用库、任何算法、方法等)来获取根/原始单词。

4

1 回答 1

1

英语没有基于规则的词形还原工具,因为对于很多单词来说不可能构建规则规则,例如所有不规则动词或一些复数名词,如 child/children 或 men/man。如果您正在寻找高度有效的解决方案,我可以建议您查看Lucene 的项目英语/俄语形态。它的速度约为每秒 800 000 个单词,消耗少量内存 - 几兆字节,并为未知单词的规范化提供了一些启发式方法。

于 2015-11-30T10:08:39.690 回答