Stanford NLP如何确定语义图的根

问题描述 投票:1回答:1

我对SemanticGraphroot元素有疑问。如何指定(确定)?我敢肯定它不必总是动词。我正在尝试使用该图,但我不知道它可能具有什么形式。

一只稀有的黑松鼠已经成为郊区花园的常客。

-> become/VBN (root)
  -> squirrel/NN (nsubj)
    -> A/DT (det)
    -> rare/JJ (amod)
    -> black/JJ (amod)
  -> has/VBZ (aux)
  -> visitor/NN (xcomp)
    -> a/DT (det)
    -> regular/JJ (amod)
  -> garden/NN (prep_to)
    -> a/DT (det)
    -> suburban/JJ (amod)

vs。

比尔是一个诚实的人。

-> man/NN (root)
  -> Bill/NNP (nsubj)
  -> is/VBZ (cop)
  -> an/DT (det)
  -> honest/JJ (amod)

谢谢

graph root stanford-nlp
1个回答
0
投票

一段时间后,我找到了解决问题的方法。据我了解,有两种类型的ROOT元素。 Normal动词和动词BE

正如斯坦福类型依赖项手册(http://nlp.stanford.edu/software/dependencies_manual.pdf第4.7节中所写)那样,它们被称为Copula werbs,为避免在根中使用动词,您需要使用-makeCopulaHead标志。

如何添加标志:

  1. Activate makeCopulaHead in Stanford CoreNLP parser

  2. 使用java:

    Properties props = new Properties();
    props.put("parse.flags", "-makeCopulaHead");
    

比尔是一个诚实的人的结果。

-> is/VBZ (root)
  -> Bill/NNP (nsubj)
  -> man/NN (xcomp)
    -> an/DT (det)
    -> honest/JJ (amod)
© www.soinside.com 2019 - 2024. All rights reserved.