首页 > 解决方案 > spaCy retokenizer 是否再次进行依赖解析?

问题描述

我正在重新标记一些 spaCy 文档,然后我需要它们的依赖关系树("parser"管道组件)。

但是,我不确定 spaCy 是否正确处理了这个问题。我在文档和 spacy 教程中找不到任何关于 retokenizer 如何工作的信息。我发现的唯一一件事是原始的 retokenizer cython 源代码,它们确实处理了依赖关系,但是看起来它们只是解决了它们,它们不再进行分析。

所以我需要知道我是否可以相信我可以进行任何奇怪的重新标记,或者我必须再次创建依赖树。

标签: pythonnlpspacy

解决方案


不,重新标记不会重新运行任何管道组件。

默认情况下,合并保留合并跨度中根节点的依赖关系,但如果需要,您可以覆盖它以及任何其他属性。对于拆分,如果要设置它们,则需要在属性中提供 head 和 deps。除非您提供拆分标记中的第一个标记,否则其他属性也不会设置,它保留了一些原始注释。

如果您不需要解析来决定要重新标记什么,那么将重新标记组件放在管道中的解析器之前可能是最简单的。否则,您可以在重新标记后再次运行解析器。任何现有的句子开头都将被保留,但其他所有内容都可能被修改

请注意,解析器在重新标记化的文本上可能表现不佳,因为它仅使用默认标记化进行了训练。


推荐阅读