如何在斯坦福信息提取中的代码中设置标志

时间:2018-07-25 23:35:53

标签: stanford-nlp information-extraction

使用斯坦福信息提取,我们具有以下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);

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

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

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

谢谢!

2 个答案:

答案 0 :(得分:1)

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

public CRFClassifier(SeqClassifierFlags flags)

代替致电

public CRFClassifier(Properties props)

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

答案 1 :(得分:1)

您几乎是正确的。您应该这样做:

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