【发布时间】:2016-07-01 04:35:00
【问题描述】:
我正在使用 Stanford NLP Parser (http://sergey-tihon.github.io/Stanford.NLP.NET/StanfordParser.html) 来分析句子。
问题是库的结果和在线演示页面的结果存在差异(http://nlp.stanford.edu:8080/parser/index.jsp)
问题在于下面这句话:
舞台。另外,他
当我在线运行时,这是我得到的输出:
(ROOT(NP(DT))(NN阶段)(..)))
(根 (NP (NP(NNP加)) (, ,) (NP (PRP he))))
请注意Plus 被标识为NNP
问题是同一个句子被lib处理时产生的输出略有不同:
{(ROOT(FRAG(FRAG(NP(DT))(NN阶段))(..))(:Plus)(FRAG(, ,) (NP (PRP he)))))}
如您所见,Plus现在被标识为:
如何强制库返回 NNP?
代码如下:
var sent = "the stage. Plus, he";
var lp = LexicalizedParser.loadModel(modelsDirectory + @"\lexparser\englishPCFG.ser.gz");
var f = PTBTokenizer.factory(new CoreLabelTokenFactory(), "");
var s = new java.io.StringReader(sent);
var w = f.getTokenizer(s).tokenize();
s.close();
var t = lp.apply(w);
【问题讨论】:
标签: stanford-nlp