我在基于lucene的搜索中搜索一个单词,我想在java中将“吃”,“吃”等字符串转换为“吃”。我搜索并发现了词形还原作为解决方案,但我遇到的所有英语词形变换器工具都使用wordlist或字典查找。是否存在避免字典查找并提供高效率的词形变换器,可能是基于规则的词形变换器。是的,我不是在寻找“干扰者”。或者是否有任何方法(不重要的准备使用库,任何算法,方法等)来获得root /原始单词。
答案 0 :(得分:1)
英语中没有基于规则的词形变换器工具,因为很多单词都不可能构建常规规则,例如:所有不规则动词或复数名词,如儿童/儿童或男/男。如果您正在寻找高度有效的解决方案,我可以建议您查看项目English/Russian morphology for Lucene。它的速度大约为每秒80万字,消耗少量内存 - 几兆字节,并为未知单词的标准化提供了一些启发式方法。