我在本地运行Stanford Core NLP,并将结果与http://http://corenlp.run/的网络界面进行比较。对于测试句,"去年经济增长了2%",网络界面识别去年"去年"作为日期实体。 NER
但我的本地实例未能及时认识到#34;去年"作为约会:
{'after': ' ',
'before': ' ',
'characterOffsetBegin': 23,
'characterOffsetEnd': 27,
'index': 7,
'lemma': 'last',
'ner': **'O'**,
'originalText': 'Last',
'pos': 'JJ',
'word': 'Last'},
{'after': '',
'before': ' ',
'characterOffsetBegin': 28,
'characterOffsetEnd': 32,
'index': 8,
'lemma': 'year',
'ner': **'O'**,
'originalText': 'Year',
'pos': 'NN',
'word': 'Year'}
奇怪的是,如果我改变了#34;去年"上个月","上个月"我的本地实例会将其识别为日期。
{'after': ' ',
'before': ' ',
'characterOffsetBegin': 23,
'characterOffsetEnd': 27,
'index': 7,
'lemma': 'last',
'ner': **'DATE'**,
'normalizedNER': 'Last Month ',
'originalText': 'Last',
'pos': 'JJ',
'word': 'Last'},
{'after': '',
'before': ' ',
'characterOffsetBegin': 28,
'characterOffsetEnd': 33,
'index': 8,
'lemma': 'Month',
'ner': **'DATE'**,
'normalizedNER': 'Last Month ',
'originalText': 'Month',
'pos': 'NNP',
'word': 'Month'}
帮助理解和解决这个问题将不胜感激!!
答案 0 :(得分:0)
如果我使用GitHub中的最新代码和最新型号,并运行此命令:
java -Xmx8g edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,ner -file example-1.txt -outputFormat text
在你的例子中,我发现"去年"标记为日期。我认为这也适用于3.8.0。