我的语料库中有一些短语需要spacy来忽略(希望避免过度匹配)。它们是相当简单的正则表达式公式,我也可以用Spacy's基于规则的匹配like here的格式来编写。
在进入NER和TextCat管道之前,我希望在我的模型中将匹配标记为停用词。我看到了如何编写匹配器,但我不确定如何将其合并到我的模型中?我只是将其添加为管道吗?
谢谢!
发布于 2019-01-26 09:14:14
聪明的想法。在管道中添加规则匹配器应该相当简单。自定义组件只是将doc对象作为参数并返回可能修改过的doc对象的函数。所以基本上,你可以这样做: def my_component( doc ):# matcher work So here return doc
但是请记住,Token的is_stop属性是不可写的,这只是意味着您无法更改它。当然,您可以设置自定义令牌扩展,但这绝不会被考虑用于NER标签预测。
解决这个问题的一种更简单的方法是在创建doc对象之前忽略这些单词。如果您说表达式只是正则表达式,那么Matcher不会对您做任何进一步的好处。
希望它能有所帮助:)
https://stackoverflow.com/questions/48951471
复制相似问题