可靠纠正破碎的单词

时间:2017-07-12 15:20:01

标签: nltk

我有一个文本作为插入文本,而且只是偶像上的文字。

NLTK或类似的函数是否可以将输出返回为

I have a text as an input, where there are occassionaly broken words.

1 个答案:

答案 0 :(得分:2)

你不会在一个函数中获得所有东西,但你可以在Pyenchant库的帮助下检查单词的拼写。您可以执行以下步骤:

  1. 取句
  2. 使用nltk字标记器标记单词
  3. 检查pyEnchant提供的字典中的每一个
  4. 如果该单词在字典中,则表示单词是正确的,否则使用pyEnchant提供的函数获取与该单词相关的建议单词
  5. 计算不正确的单词和每个建议单词之间的最小编辑距离(levenshtein距离)
  6. 以最小距离取词
  7. 是的,我不会说它有效地执行,因为pyEnchant字典包含许多似乎不合法的单词,但它在某些情况下有效。

    上面的方法是使用Levenshtein距离,你也可以使用Ngrams进行拼写校正,jaccard系数也是如此。

    我已经实现了这个任务,你可以查看我的gitHub链接(https://github.com/rameshjesswani/Semantic-Textual-Similarity/blob/master/nlp_basics/nltk/string_similarity.ipynb