使用sysmepll进行拼写更正的spacy管道组件。
spacy-symspell的Python项目详细描述
#Spacy符号拼写 ##通过symspell在spacy中实现拼写更正
这个包是一个[spacy 2.0扩展名](https://spacy.io/usage/processing-pipelines#section-extensions),它通过syms拼将sentnee/拼写更正添加到spacy的文本处理管道中。
##安装
pip安装spacy\u符号拼写
##注释 此包仍在alpha中,可能存在无法预料的错误。词典加载时间也很重要,在速度较慢的机器上可能需要30秒。
##用法
将组件添加到处理管道相对简单:
import spacy from spacy_symspell import SpellingCorrector
nlp = spacy.load(‘en_core_web_sm’) corrector = SpellingCorrector() nlp.add_pipe(corrector) doc = nlp(‘What doyuoknowabout antyhing’)
- for s in doc._.suggestions:#iterable
- print(s) #What doyon about anything
doc._.segmentation #::segmented_string - What doyouk now about antyhing ::corrected_string - that dook now about anything
spacy_symspell操作doc和spanspacy对象。当在doc或span上调用时,对象被赋予两个属性:suggestions(找到的所有拼写建议的列表)和segmentation(在使用ommitted spaces的情况下是正确的句子)。
##待办事项 通过提取和分析得到的n个字符,并与符号拼写结果中的字符组中可扣除的n个字符进行交叉引用,可以借助SPAcy提高符号拼写的准确性。例如,更正后的“that dook now”给我们留下了一个无动词的句子,仔细分析后会发现,字符组“now”与动词“know”相关,动词“know”与n-gram“you know”相关。
##在引擎盖下 [spacy_symspell](https://github.com/xwiz/spacy_symspell)当前是[symspell](https://github.com/wolfgarbe/SymSpell)的[python端口(https://github.com/mammothb/symspellpy)的包装。有关其他详细信息,请参见链接的项目页面。