TextExtract(3)NLP Token Name Finder
All the models in http://opennlp.sourceforge.net/models-1.5/
For Name Finders, we have things as follow:
Date name finder model en-ner-date.bin
Location name finder model en-ner-location.bin
Money name finder model en-ner-money.bin
Organization name finder model en-ner-organization.bin
Percentage name finder model en-ner-percentage.bin
Person name finder model en-ner-person.bin
Time name finder model en-ner-time.bin
package com.sillycat.resumeparse;
import java.io.IOException;
import java.io.InputStream;
import opennlp.tools.namefind.NameFinderME;
import opennlp.tools.namefind.TokenNameFinderModel;
import opennlp.tools.util.Span;
public class OpenNLPPersonNameMain {
public static void main(String[] args) {
String[] data = new String[] { "John", "Smith", "works", "for", "the",
"United", "Nations", "." };
InputStream modelIn = OpenNLPParserMain.class.getClassLoader()
.getResourceAsStream("models/en-ner-person.bin");
TokenNameFinderModel model = null;
try {
model = new TokenNameFinderModel(modelIn);
} catch (IOException e) {
e.printStackTrace();
} finally {
if (modelIn != null) {
try {
modelIn.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
NameFinderME tokenNameFinder = new NameFinderME(model);
Span[] spans = tokenNameFinder.find(data);
double[] probs = tokenNameFinder.probs();
for (int i = 0; i < spans.length; i++) {
int start = spans[i].getStart();
int end = spans[i].getEnd();
StringBuilder buffer = new StringBuilder();
for (int j = start; j < end; j++) {
buffer.append(data[j]);
if (j != (end - 1)) {
buffer.append(' ');
}
}
String value = buffer.toString();
System.out.println(value + " " + probs[i] + " ");
}
}
}
The results will be John Smith 0.789394314903262
References:
http://sillycat.iteye.com/admin/blogs/2248952
分享到:
相关推荐
本科毕业设计——自然语言处理+NLP+中文文本分类实战——垃圾短信识别本科毕业设计——自然语言处理+NLP+中文文本分类实战——垃圾短信识别本科毕业设计——自然语言处理+NLP+中文文本分类实战——垃圾短信识别本科...
自然语言处理(NLP)是计算机科学领域与人工智能的一个重要分支,主要研究如何处理和理解人类的自然语言,包括但不限于英语、汉语等。NLP旨在让计算机能够理解、生成、处理和生成这些语言,以便更好地服务于信息处理...
自然语言处理(NLP)是计算机科学领域的一个重要分支,它专注于使计算机能够理解、解析、生成和操作人类自然语言。这些课件涵盖了NLP的多个核心主题,为学习者提供了一个全面的学习路径。 首先,"L1 - Introduction...
自然语言处理(NLP)是计算机科学领域的一个关键分支,主要涉及如何使计算机理解、解析、生成和操作人类语言。哈工大的智能技术与自然语言处理技术课程提供了一个全面的NLP学习路径,从基础到高级,涵盖了多个关键...
《NLP汉语自然语言处理原理与实践》是郑捷撰写的一本深入探讨自然语言处理(NLP)在汉语环境中的应用和技术的书籍。NLP作为人工智能的一个重要分支,旨在让计算机理解和生成人类语言,这对于信息检索、机器翻译、...
Python自然语言处理(NLP)是人工智能领域的一个关键分支,主要目标是使计算机能够理解和处理人类的自然语言。在Python中,NLP的实现离不开强大的工具包,其中最常用的就是Natural Language Toolkit(NLTK)。NLTK是...
NLP汉语自然语言处理原理与实践是一本研究汉语自然语言处理方面的基础性、综合性书籍,涉及NLP的语言理论、算法和工程实践的方方面面,内容繁杂。 本书包括NLP的语言理论部分、算法部分、案例部分,涉及汉语的发展...
自然语言处理(NLP)是计算机科学领域的一个重要分支,它专注于使计算机能够理解、解析、生成和操作人类自然语言。这个"自然语言处理NLP课程资料合集-74份.zip"压缩包包含了丰富的学习资源,旨在帮助学生和研究人员...
自然语言处理作业基于Flask+自然语言处理NLP文本摘要网页demo源码+文档说明自然语言处理作业基于Flask+自然语言处理NLP文本摘要网页demo源码+文档说明自然语言处理作业基于Flask+自然语言处理NLP文本摘要网页demo...
《NLP汉语自然语言处理原理与实践》是郑捷撰写的一本深入探讨自然语言处理(NLP)在汉语环境中的应用和技术的书籍。NLP,全称为自然语言处理,是计算机科学领域的一个分支,旨在理解和生成人类语言,使得机器能够...
国科大自然语言处理作业-基于Flask+自然语言处理NLP文本摘要网页demo源码+文档说明国科大自然语言处理作业-基于Flask+自然语言处理NLP文本摘要网页demo源码+文档说明国科大自然语言处理作业-基于Flask+自然语言处理...
分享一套自然语言处理NLP企业级项目视频教程:《自然语言处理NLP企业级项目课程合集》,3个NLP经典任务 + 2个真实商业项目:实体关系抽取+情感分析+新闻文本分类+火车票识别+命名实体识别!提供课程配套的源码+PDF...
NLP汉语自然语言处理原理与实践_郑捷(著)_1
自然语言处理(NLP)是一门涉及计算机与人类语言交互的学科,而机器学习则是NLP中的关键工具,用于让计算机自动从数据中学习模式。本课程“北大语言学 自然语言处理课程 NLP系列课程”由北大计算语言学研究所提供,...
**Python-sparknlp:Spark上的自然语言处理库** `spark-nlp` 是一个强大的工具,专为Apache Spark设计,用于执行大规模的自然语言处理任务。这个库将Apache Spark的分布式计算能力与高效的自然语言处理算法相结合,...
自然语言处理(Natural Language Processing, NLP)是计算机科学领域的一个重要分支,它涉及人工智能、计算机科学、语言学等多个学科,旨在使计算机能够理解和生成人类自然语言,从而实现人机之间的有效沟通。...
1、资源内容:NLP期末大作业-深度学习与自然语言处理+源代码+文档说明 2、代码特点:内含运行结果,不会运行可私信,参数化编程、参数可方便更改、代码编程思路清晰、注释明细,都经过测试运行成功,功能ok的情况下...
自然语言处理(NLP)、Transformer、Yolo 等相关技术的资源 自然语言处理(NLP)是一种人工智能技术,旨在让计算机能够理解、处理和生成人类语言。Transformer 是一种基于自注意力机制的深度学习模型,广泛应用于...