java - 在 CoreNLP 管道中,是否可以将 Coref 工具(dcoref)与新的依赖解析器工具(depparse)一起使用?

标签 java stanford-nlp

这是您通常初始化管道以在某些文本上运行的方式:

//stanford NLP
static Properties props = new Properties();
static StanfordCoreNLP pipeline;    
static void initStanfordPipeline() {
    // creates a StanfordCoreNLP object, with POS tagging, lemmatization, NER, parsing, and coreference resolution
    props.put("annotators", "tokenize, ssplit, pos, lemma, ner, parse, dcoref"); // depparse is an option for using a new dependency parsing model
    pipeline = new StanfordCoreNLP(props);
}

当我尝试将“depparse”而不是“parse”作为管道中的选项时出现以下错误:

Exception in thread "main" java.lang.IllegalArgumentException: annotator "dcoref" requires annotator "parse"

最佳答案

好问题!这目前在管道中是不可能的,尽管它确实应该是。我会在我们的下一次开发 session 上提出来。

现在,如果您知道您的管道不需要选区解析,您可以通过在管道标志中设置一个属性来轻松解决这个问题:-enforceRequirements false

但是,看起来您正在使用 dcoref,它确实需要选区解析 --- 因此不幸的是,没有办法绕过使用 parse 注释器。

关于java - 在 CoreNLP 管道中,是否可以将 Coref 工具(dcoref)与新的依赖解析器工具(depparse)一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28303398/

相关文章:

java - 从另一个类运行 GUI

java - 为什么 Java 中的同步可以保留多个线程更新的状态的可见性

java - Tomcat 中的连接池 Scanario

java - for 循环计数 java 的项数

nlp - 使用句子级相似度的释义识别

python - 是否有基于斯坦福神经网络的依赖解析器的 Python 包装器?

python - 在 Python 中加速 Stanford 依赖解析

java - Stanford POS Tagger-Windows和MapReduce之间的依赖关系(Linux)

java - 复合用户类型的聚合函数

java - 斯坦福解析器问题