【问题标题】:Penn Discourse Tree Bank (PDTB) ParserPenn Discourse Tree Bank (PDTB) 解析器
【发布时间】:2015-11-04 14:01:39
【问题描述】:

我目前正在尝试运行以下项目 (https://github.com/ilija139/PDTB-Parser)。我用来运行项目的文本文件是wsj_2300.txt,可以在“输出”目录中找到。不幸的是没有任何成功。该项目基于斯坦福 CoreNLP。到目前为止我发现了什么:

  1. 我不能使用 CoreNLP 版本 3.5.2(最新版本),因为该项目基于旧的依赖项。通过使用通用依赖项,我收到以下错误消息“No head rule defined for MWE using class edu.stanford.nlp.trees.SemanticHeadFinder in (MWE (JJ such) (IN as))”。但是,以下来自 Stackowerflow (PrintTree - No head rule defined for MWE - Bug with version 3.5.2) 的关于相同问题的回答无法解决问题!如果有人知道如何解决它,请告诉我。
  2. 尽管如此,由于 PDTB 解析器最后一次更新是在 1 年前,我只使用了 2 个旧版本(3.5.1 和 3.4.1),希望项目按照 Thematrixme (@987654323) 的说法运行@)。不幸的是,只解决了第一个问题,又出现了另一个问题。函数“buildDependencyTrees”中有一个简单的“字符串索引超出范围:-1 ()”,因为在依赖项中找不到“根”。

我试图通过简单地排除节点已构建来解决问题,但随后我在下一个依赖项中得到一个“indexOutOfBoundsException”,因为找不到孩子...有谁知道我需要做什么或哪个我需要使用 CoreNLP 版本/模型来让该程序按照手册中的说明正确运行?

非常感谢

【问题讨论】:

    标签: java parsing stanford-nlp


    【解决方案1】:

    我不确定您是如何使用解析器的。但是,您可以通过在用于创建管道的 Properties 对象中将“parse.originalDependencies”设置为“true”来让 Stanford CoreNLP 3.5.2 创建较旧的 Stanford Dependencies。或者,如果您从命令行运行,只需包含标志“-parse.originalDependencies”如果您使用神经网络依赖解析,您将使用斯坦福依赖模型,而不是将属性“depparse.model”设置为“edu /stanford/nlp/models/parser/nndep/english_SD.gz"

    如果您让我知道您创建解析的具体程度,我可以准确地告诉您使用什么设置来获取较旧的依赖项。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-04
      • 2020-09-04
      • 2011-07-27
      • 1970-01-01
      • 2012-10-13
      • 1970-01-01
      • 2021-02-05
      • 2021-11-28
      相关资源
      最近更新 更多