使用 Spacy 提取短语

Phrase extraction with Spacy

我想知道 spacy 是否有一些 API 可以像使用 word2phrase 或来自 [=13= 的 Phrases class 那样提取短语* ].谢谢。

PS。短语在语言学上也叫搭配。

我想知道您是否看到了 SpaCy 的 PyTextRank or spacycaKE 扩展?

两者都可以帮助提取短语, 使用 SpaCy。

spaCy 的 noun chunks 功能是一种有用的短语提取形式,尽管与 gensim 的短语或 word2phrase 有很大不同。

import spacy

nlp = spacy.load("en_core_web_sm")
doc = nlp("Autonomous cars shift insurance liability toward manufacturers")
for chunk in doc.noun_chunks:
    print(chunk.text, chunk.root.text, chunk.root.dep_,
            chunk.root.head.text)

输出:

Autonomous cars cars nsubj shift
insurance liability liability dobj shift
manufacturers manufacturers pobj toward

您还可以使用 rule-based matchers 获取由词性序列、依存关系或其他规范定义的其他类型的短语。