4

我有一些要解析的句子。这是我拥有的和需要的:我有这样的句子:

我在医院。

我从家里去加拿大。

我想知道“in the hospital”、“from home”和“to Canada”这几个词组的头。

我正在使用 Berkley 解析器,但它给我的是所有句子的解析结果,如果我想手动提取短语的头部,我应该开发另一个解析器!我要解析的文件是一个很大的文件,所以如果我自己开发一个解析器,它可能会有很多错误。有没有任何解析器可以给我我正在寻找的结果?

顺便说一下,由于单独解析短语,可能会导致与句子解析不同的解析,我坚持先解析句子,然后提取短语头。

4

2 回答 2

6

S tanford ParserOpenNLP解析器将为您提供词性和依赖信息,您可以使用这些信息来确定短语的头部

例如,使用斯坦福解析器,你会得到:

(S
  (NP (PRP I))
  (VP (VBD was)
      (PP (IN in)
          (NP (DT the)
              (NN hospital)))))

这告诉您句子(S)由一个名词短语(NP)和一个动词短语(VP)组成;动词短语是动词(V*)+介词短语(PP),是介词in和名词短语;第二个名词短语是限定词(DT)和名词(NN)。

如果我正确理解了这个问题,那么您正在寻找名词短语(可能还有动词短语)的头部。您已经可以从此信息中识别头部,但解析器也会为您提供以下依赖信息:

nsubj(was, I)
prep_in(was, hospital)
det(hospital, the)

这告诉您单词wasI处于名义-主语nsubj关系(I是动词was的主语);washospital这两个词处于“in”介词(prep-in)关系;“hospital”和“the”这两个词是限定词(det)关系。使用前面的解析和依赖信息,你可以知道第一个名词短语的头部是“I”(琐碎),第二个名词短语的头部是“医院”(因为那是“顶部”名词短语中的关系元素)

于 2012-05-26T16:45:36.867 回答
3

正如 Attila 的回答中所概述的那样,在短语中找到中心词的问题并非微不足道。Michael Collins 教授有一个寻找中心词的启发式列表(他的启发式基于 Penn Tree 银行数据集),这些启发式的实现可在斯坦福 CoreNLP 套件中找到(我在 20140104 版本中查看)。

此处给出的回复有更多关于斯坦福 CoreNLP 中为您找到核心词的课程的详细信息。

于 2014-04-04T03:12:14.010 回答