stanford CoreNLP 命名实体识别NER学习笔记
Posted 一休Q_Q
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stanford CoreNLP 命名实体识别NER学习笔记相关的知识,希望对你有一定的参考价值。
简介
识别文本的命名实体,如人名和机构名称等。每种语言识别出的实体是相互独立的,英文的识别集合比其他语言更为丰富。再NERClassifierCombiner中,会执行多个命名实体识别,然后将结果组合起来。
识别类别
在英文中,命名实体识别能识别的名字包括:人名、地名、机构名、MISC;数字:钱、数字、序号、百分比;时间:日期,时间、持续序列、集合等实体。命名实体的识别使用组合的三个CRF标注序列在不同语料上训练的,如ACE和MUC评测会议的评测语料。数字实体识别使用基于规则的系统实现,同时,数字实体需要进行规范化,如dates,被规范化为NormalizedNamedEntityTagAnnotation.
CoreNLP 的中文命名实体识别NER模块,基于CRF模型实现。
调用方法
//设置自己存放模型的地址
String basedir = "D:/WorkSpaceIntelliJ/coreNLP/Stanfordnlp-CoreNLP-master/data/models/";
CRFClassifier<CoreLabel> classifier = new CRFClassifier<>();
classifier.loadClassifierNoExceptions(basedir + "ner/chinese.misc.distsim.crf.ser.gz");
List<List<CoreLabel>> out = classifier.classify("我 和 李刚 在 中国 北京大学 的 图书馆。");
for (List<CoreLabel> sentence : out)
for (CoreLabel word : sentence)
System.out.print(word.word() + '/' + word.get(CoreAnnotations.AnswerAnnotation.class) + ' ');
System.out.println();
模型的主要内容包括
1.类别
主要识别8种类型:
(1) O;
(2) MISC;
(3) LOCATION;
(4) GPE;
(5) FACILITY
(6) ORGANIZATION
(7) DEMONYM
(8) PERSON
2.CRF特征索引
public Index<String> featureIndex,;大小:401518
3.工厂方法
// NERFeatureFactory, public List<FeatureFactory<IN>> featureFactories;
4.权重
double[][] weights,大小:401518
5.Set<String> lcWords
以上是关于stanford CoreNLP 命名实体识别NER学习笔记的主要内容,如果未能解决你的问题,请参考以下文章
运行 Stanford.NLP.CoreNLP 示例时出现 TypeInitializationException