最大编辑距离和基于词频的建议

时间:2011-05-02 13:51:34

标签: c# c++ nlp spell-checking hunspell

我需要一个符合以下规范的拼写检查器:

  • 非常可扩展。
  • 能够为建议的字词设置最大编辑距离。
  • 根据提供的单词频率(最常见的单词)得到建议。

我看了看Hunspell:
我在man中找到了参数MAXDIFF,但似乎没有按预期工作。也许我用错了方法

文件 t.aff

MAXDIFF 1 

档案 dico.dic

5  
rouge  
vert  
bleu  
bleue  
orange  

-

NHunspell.Hunspell h = new NHunspell.Hunspell("t.aff", "dico.dic");
List<string> s = h.Suggest("bleuue");

返回同样的事情t.aff是空的:

bleue
bleu

2 个答案:

答案 0 :(得分:3)

我们决定使用Apache Solr,这完全符合我们的需求 http://wiki.apache.org/solr/SpellCheckComponent#spellcheck

答案 1 :(得分:0)

一个maxdiff应该返回一些,但仍然可以返回多个。

即使max_iff为零可以提供多个结果,但它应该降低更改。这取决于n-gram。尝试maxdiff减少零结果,但这仍然不能保证你会得到一个建议。

对于您要求对最常用单词进行排序的要求,Google ngram corpus是公开可用的。