我从下载了最新的Stanford POS Tagger,然后使用以下代码获取句子的pos标签:
jar = './stanford_postagger/stanford-postagger-3.9.1.jar'
model = './stanford_postagger/models/english-left3words-distsim.tagger'
pos_tagger = StanfordPOSTagger(model, jar)
text = nltk.word_tokenize('How much did the Dow rise?')
stanford_pos = pos_tagger.tag(text)
此句子的输出为:
[('How','WRB'),('much','RB'),('did','VBD'),('the','DT'),('Dow',' NNP'),('rise','NN'),('?','。')]
这是错误的输出-将最后一个动词解释为名词。
但是https://nlp.stanford.edu/software/tagger.html处的在线解析器提供了正确的pos标签:
如何/ WRB 多/ JJ 做/ VBD / DT 陶氏/ NN 上升/ VB ?/。
有人可以告诉我为什么这两个给出不同的结果吗?