Stanford nlp Stanford分类器换行问题

Stanford nlp Stanford分类器换行问题,stanford-nlp,Stanford Nlp,我使用Stanford NER和3类模型来识别文件中的人员、位置和组织。它可以正常工作,除非有名称用换行符分隔: 无名氏 无名氏 简·史密斯 NER工具认为这三个名字是一个大名,而不是三个名字。如果我在每个名字后面加一个逗号,它会把三个名字都取出来。我如何告诉工具使用换行符来分隔这三个名称?如果名称在同一个“句子”中以连续标记结束,则会发生这种情况。您可以做的主要事情是将系统标记化/句子在换行符上拆分,然后您将为每个名称获得一个单独的句子,这样一切都会正常工作。一般来说,如果文本的格式为每行一段

我使用Stanford NER和3类模型来识别文件中的人员、位置和组织。它可以正常工作,除非有名称用换行符分隔:
无名氏
无名氏
简·史密斯


NER工具认为这三个名字是一个大名,而不是三个名字。如果我在每个名字后面加一个逗号,它会把三个名字都取出来。我如何告诉工具使用换行符来分隔这三个名称?

如果名称在同一个“句子”中以连续标记结束,则会发生这种情况。您可以做的主要事情是将系统标记化/句子在换行符上拆分,然后您将为每个名称获得一个单独的句子,这样一切都会正常工作。一般来说,如果文本的格式为每行一段(与现代文本一样,采用软换行),这将很好,但如果文本具有硬换行符(不在句子/段落边界),则效果会很差,因为系统会错误地将每行视为一个句子。直接调用Stanford NER和通过CoreNLP调用Stanford NER的命令如下:


java edu.stanford.nlp.pipeline.StanfordCoreNLP-注释器“标记化、ssplit、pos、引理、ner”-文件taylorswift.txt-输出格式conll-ssplit.newlineIsSentenceBreak


java edu.stanford.nlp.ie.crf.crfclassizer-loadClassifier edu/stanford/nlp/models/ner/english.all.3class.distsim.crf.ser.gz-textFile taylorswift.txt-TokenizeOptions tokenizeNLs=true