【问题标题】:Extract compounds and dobj from Dependency tree using Spacy使用 Spacy 从依赖树中提取化合物和 dobj
【发布时间】:2019-09-30 08:01:38
【问题描述】:

对于诸如“更换碳酸化器浮子开关和减压阀”这样的句子。

我想提取以下内容: {更换碳酸化器浮子开关},{更换减压阀}

在使用 Spacy 作为语言模型时,我对该句子的依赖树是:

所以我知道carbonator是Replaced(动词)的直接宾语(djob),但是: 1. 碳酸化器不是靠自身,而是三重名词“碳酸化器浮子开关”的一部分,而且“减压阀”也被更换过,它们也应该是被更换的直接对象。

有什么想法吗?

【问题讨论】:

    标签: nlp spacy


    【解决方案1】:

    似乎问题不在于从树中提取化合物,而在于解析本身:它是不正确的。可能,Spacy 依赖解析器只是没有接受过诸如“碳酸化器浮动开关”和“减压阀”之类的技术术语的培训,并且不知道它们是如何组合在一起的。

    也许您需要寻找其他依赖解析器(例如Stanford CoreNLP - 它会进行正确的解析,如图所示)。或者如果你真的需要 Spacy,你可能想要收集和标记你自己的训练数据,并在上面微调 Spacy 解析器。

    【讨论】:

    • 使用斯坦福CoreNLP官方python模块(stanfordnlp),我如何提取我需要的部分?我试过: doc = nlp("更换了碳酸化器浮子开关和泄压阀。") doc.sentences[0].print_dependencies() 但不确定如何进行。有什么想法吗?
    猜你喜欢
    • 2016-08-05
    • 1970-01-01
    • 2018-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-17
    • 2016-02-17
    相关资源
    最近更新 更多