首页 > 解决方案 > 如何在斯坦福信息提取中的代码中设置标志

问题描述

使用斯坦福信息提取,我们有以下java代码

Properties props = new Properties();
props.put("annotators", "tokenize,ssplit,pos,lemma,ner,entitymentions,depparse,natlog,openie");
props.put("tokenize.options", "latexQuotes=false");
props.put("openie","triple.extract=false,triple.all_nominals=false")
pipeline = new StanfordCoreNLP(props);

我想在这里设置一些可用的 OpenIE 标志(在道具或类似的东西中)。例如,标志 -triple.strict=false 和 -triple.all_nominals=true。我采取的方法如上所示,是

props.put("openie","triple.extract=false,triple.all_nominals=false")

目前尚不清楚这是否正确或有效。假设这些出现在道具中,它们是如何设置在那里的?如果没有,我如何在代码中设置它们?

谢谢!

标签: stanford-nlpinformation-extraction

解决方案


您可以在代码中的 SeqClassifierFlags 对象中设置这些属性,然后使用此对象调用 CRFClassifier 的构造函数,如下所示:

public CRFClassifier(SeqClassifierFlags flags)

而不是打电话

public CRFClassifier(Properties props)

来自:https ://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/ie/crf/CRFClassifier.html


推荐阅读