在Python中查找主题词

时间:2017-02-10 08:55:53

标签: python nlp stanford-nlp

我需要提取句子的首字(更具体地说,是句子中最高名词短语的首字)。我通过py-corenlp使用Stanford CoreNLP服务器来注释我的句子。该套件修改了Michael Collin的头部查找算法,但我没有找到任何通过服务器使用它的方法。我想避免重新发明轮子,那么有什么方法可以用Python中的现有工具来实现这一点吗?

示例:

  

1摩尔物质中的基本实体的数量被称为什么?

(ROOT
  (S
    (NP
      (NP (DT The) (NN number))
      (PP (IN of)
        (NP
          (NP (JJ elementary) (NNS entities))
          (PP (IN in)
            (NP
              (NP (CD 1) (NN mole))
              (PP (IN of)
                (NP (DT a) (NN substance))))))))
    (VP (VBZ is)
      (VP (VBN known)
        (PP (IN as)
          (NP (WP what)))))
    (. ?)))

" 1摩尔物质中的基本实体数量"是最高的名词短语。

"数"是这个短语的首字,我想提取。

编辑:添加了示例。

1 个答案:

答案 0 :(得分:0)

看起来使用类型化的依赖项而不是语法分析可能更容易。您的句子将使用动词进行ROOT,然后找到该动词的依赖关系nsubj或nsubjpas。 例如:

First Meaningful Paint