【问题标题】:Stanford CoreNLP - Unknown variable WORKDAY斯坦福 CoreNLP - 未知变量 WORKDAY
【发布时间】:2021-11-13 14:38:52
【问题描述】:

我正在处理一些文档,并且收到许多 WORKDAY 消息,如下所示。 WEEKDAY 发布了here 的类似问题。有谁知道如何处理这个消息。我在 Windows 上的 Java 服务器中运行 corenlp,并使用 Juypyter Notebook 和 Python 代码访问它。

[pool-2-thread-2] INFO edu.stanford.nlp.ling.tokensregex.types.Expressions - Unknown variable: WORKDAY
[pool-2-thread-2] INFO edu.stanford.nlp.ling.tokensregex.types.Expressions - Unknown variable: WORKDAY
[pool-2-thread-2] INFO edu.stanford.nlp.ling.tokensregex.types.Expressions - Unknown variable: WORKDAY
[pool-1-thread-7] WARN CoreNLP - java.util.concurrent.ExecutionException: java.lang.RuntimeException: Error making document

【问题讨论】:

    标签: stanford-nlp


    【解决方案1】:

    这是当前 SUTime 规则文件中的一个错误(实际上已经有好几个版本了)。如果您想立即修复它,您可以执行以下操作。或者我们将在下一个版本中修复它。这些是 Unix 命令,但除了引用和创建文件夹的方式之外,其他地方也可以使用相同的东西。

    sutime/english.sutime.txt 中找到这一行并将其删除。保存文件。

    { (/workday|work day|business hours/) => WORKDAY }

    然后将文件移动到jar文件中要替换的正确位置,然后在jar文件中进行替换。在 CoreNLP 发行版的根目录中执行以下操作(假设您在该目录中还没有 edu 文件/文件夹):

    mkdir -p edu/stanford/nlp/models/sutime
    cp sutime/english.sutime.txt edu/stanford/nlp/models/sutime
    jar -uf stanford-corenlp-4.2.0-models.jar edu/stanford/nlp/models/sutime/english.sutime.txt
    rm -rf edu
    

    【讨论】:

    • 非常感谢克里斯托弗!就我而言,在我彻底清理文件后,它们就消失了。在使用 coreNLP 处理文档之前,文档到底应该有多干净?我的文件是从 pdf 报告中读取的。
    • CoreNLP 试图相当健壮地处理任何测试,所以事情不必过于干净。这是英语 sutime 规则中的真正错误。当你得到大量没有任何句子结尾的单词时,在非常不清楚的文本上运行的最常见问题是任意长的“句子”。在这种情况下,您通常需要将“maxlen”传递给某些注释器。
    猜你喜欢
    • 2019-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多