Nlp 在Spacy中创建和加载自定义管道
我需要在多页文档上运行NLP管道。文本分类器对前N个句子进行操作,并基于文本分类器输出,需要向管道中添加新的自定义元素。当然,我可以用新元素重新启动管道,但这需要从一开始就重新运行所有内容(标记器、sentenizer等) 是否可以捕获管道的状态(例如,文档对象),修改管道,并在新管道及其新元素离开的地方继续 对于这种情况,推荐的方法是什么Nlp 在Spacy中创建和加载自定义管道,nlp,pipeline,spacy,Nlp,Pipeline,Spacy,我需要在多页文档上运行NLP管道。文本分类器对前N个句子进行操作,并基于文本分类器输出,需要向管道中添加新的自定义元素。当然,我可以用新元素重新启动管道,但这需要从一开始就重新运行所有内容(标记器、sentenizer等) 是否可以捕获管道的状态(例如,文档对象),修改管道,并在新管道及其新元素离开的地方继续 对于这种情况,推荐的方法是什么 谢谢 < p>我不认为你可以在流水线的中间创建一个没有标记器或停止/启动的流水线,但是因为所有的非令牌组件都需要修改和修改 doc/,你可以加载一个流水线,
谢谢
< p>我不认为你可以在流水线的中间创建一个没有标记器或停止/启动的流水线,但是因为所有的非令牌组件都需要修改和修改<代码> doc/<代码>,你可以加载一个流水线,你可以使用所有的组件,然后根据需要调用每个组件:nlp = spacy.load('en')
# nlp.make_doc() is equivalent to nlp.tokenizer()
doc = nlp.make_doc("This is a sentence.")
# there are shortcuts for default model components
nlp.tagger(doc)
nlp.parser(doc)
nlp.ner(doc)
# but you can access any component with nlp.get_pipe(), also "tagger", etc.
nlp.get_pipe("your_component_name")(doc)
nlp.get_pipe("tagger")(doc)
API不会阻止您尝试,但您不希望应用作为不同管道的一部分加载的组件,而不是用于创建
Doc
,因为如果您正在寻找资源进行尝试,当Doc
和组件不共享相同的vocab
,您可能会遇到问题,也请参阅此