如何将依赖模式与 spaCy 匹配?

use*_*885 3 python nlp spacy

有没有办法在依赖序列上使用 spaCy 基于规则的模式匹配器(或类似的库),例如由 返回的令牌列表token.ancestors

例如,我将一个名词复数,现在我需要检查从属动词以修正动词一致性中的任何错误。

因此,一种模式(许多模式)是匹配属于父动词的“auxpass”动词,该动词是名词的关系从句。

aab*_*aab 5

我有点犹豫要推荐一些还没有任何文档的东西,但如果你喜欢冒险,你可以尝试相对较新的 DependencyMatcher。查看测试套件中的示例以了解其工作原理:

https://github.com/explosion/spaCy/blob/bae0455f91c375681868f3f21a9de84136f9a561/spacy/tests/matcher/test_matcher_api.py#L271-L346

运算符类似于:

https://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/semgraph/semgrex/SemgrexPattern.html

从 github 中的相关问题来看,它可能还不是很有效,如果你遇到一两个错误,我不会感到惊讶,所以在依赖它来处理任何重要的事情之前,请仔细测试一下。