前端时间看了一下openNLP,用了一下,把自己的体会写下来。。
首先,openNLP是关于自然语言处理的开源项目,可以用eclipse作为第三方插件,去它的官方网站http://incubator.apache.org/opennlp/index.html下载需要的包,或者直接去http://sourceforge.net/projects/opennlp/ 下载。导入三个包:maxent-3.0.0.jar,jwnl-1.3.3.jar,opennlp-tools-1.5.0.jar
下面说一下分词:
openNLP使用了不同的模型实现诸如分词,分句,标注。所以在使用之前需要下载对应的模型http://opennlp.sourceforge.net/models-1.5/
包括了六种语言。分词上我下的英文:en-token.bin加到项目中就可以了
分词的代码:
import java.io.*;
import opennlp.tools.tokenize.Tokenizer;
import opennlp.tools.tokenize.TokenizerME;
import opennlp.tools.tokenize.TokenizerModel;
/*
*输入:需要分词的字符串
*输出:字符串数组
*/
public String[] Token(String str){
try{
InputStream modelIn = new FileInputStream("en-token.bin");
TokenizerModel model = null;
try {
model = new TokenizerModel(modelIn);
}
catch (IOException e) {
e.printStackTrace();
}
finally {
if (modelIn != null) {
try {
modelIn.close();
}
catch (IOException e) {
}
}
}
Tokenizer tokenizer = new TokenizerME(model);
String tokens[] = tokenizer.tokenize(str);
return tokens;
}
catch(FileNotFoundException e){return null;}
}
-----------------------------------------------------------------------------
了解的不深入,希望多多指教
分享到:
相关推荐
初学openNLP分词,代码初步实现了opennlp的相关方法
OpenNLP效率和使用便捷度较好。另外其针对Java开发提供开源的API。维基百科:ApacheOpenNLP库是一个基于机器学习的自然语言文本处理的开发工具包,它支持自然语言处理中一些共有的任务,例如:标记化、句子分割、...
1_自然语言处理概论 共48页.pdf 2_机器学习与自然语言处理 共33页.pdf 3_n元模型 共33页.pdf 4_数据平滑技术 共39页.pdf 5_汉语分词 共34页.pdf 6_隐马尔科夫模型 共40页.pdf 7_词类标注 共32页.pdf 8_ME&CRF 共48页...
基于OpenNLP + Neo4j + Spark朴素贝叶斯分类器实现石油相关论文的智能分析问答系统.zip 底层功能实现是操作cypher语句,前台的业务: 1.汉语分词器HanLP将原始语句分词 2.语句抽象化(提高匹配问题模板标签准确率...
ideaseg 是 Indexea 推出的一个基于最新的 HanLP 自然语言处理工具包实现的中文分词器, 包含了最新的模型数据,同时移除了 HanLP 所包含的非商业友好许可的 NeuralNetworkParser 相关代码和数据。
语料/数据集、变量命名神器、分词语料库+代码、任务型对话英文数据集、ASR 语音数据集 + 基于深度学习的中文语音识别系统、笑声检测器、Microsoft多语言数字/单位/如日期时间识别包、中华新华字典数据库及api(包括...
基于自然语言处理医学知识 软件架构 1.医学辞典构建 2.医学分词 3.医学新词发现 4.医学词向量构建 5.医学命名体识别 6.医学语句分类 7.医学句子关系抽取
TihuanWords.txt文档格式 注意:同一行的词用单个空格隔开,每行第一个词为同行词的替换词。 年休假 年假 年休 ... for line in open(TihuanWords.txt, r, encoding='utf-8'): seperate_word = line.str
ideaseg 是一个基于NLP 技术实现的中文分词插件,准确度比常用的分词器高太多,同时提供 ElasticSearch 和 OpenSearch 插件。
NLP课程文本预处理语言模型n元语法时序数据的采样循环神经网络从零开始实现循环神经网络 文本预处理 文本是一类序列数据,一篇文章可以看作是字符或单词的序列,本节将介绍文本数据的常见预处理步骤,预处理通常包括...
GPT全称为Generative Pre-trained Transformer,是一种基于Transformer架构的神经网络模型,由OpenAI开发。GPT是自然语言处理(NLP)领域的一种语言生成模型,可用于生成文本、回答问题、摘要生成、翻译等应用。 ...
锈蚀使用rust-bert和tch-rs的句子转换器的 Rust ...您可以使用使用不同分词器的不同版本的模型:// To use Hugging Face tokenizerlet sbert_model= SBertHF::new (home.to_str ().unwrap ());// To use Rust-tokenizer
它是 textgenrnn 和 gpt-2-simple 的继承者,充分利用了这两个软件包的优点:在 OpenAI 的预训练 124M GPT-2 模型上进行微调……或者创建您自己的 GPT-2 模型 + 分词器并从头开始训练! 生成文本比 gpt-2-simple ...
chopPython 中文分词工具包欢迎GitHub: Pypi:依赖Python3使用说明代码对 Python 3 兼容全自动安装: easy_install chop 或者 pip install chop / pip3 install chop接口from chop.hmm import Tokenizer as ...
LTP(Language Technology Platform) 提供了一系列中文自然语言处理工具,用户可以使用这些工具对于中文文本进行分词、词性标注、句法分析等等工作。 If you use any source codes included in this toolkit in ...
LTP(语言技术平台)提供了多种中文自然语言处理工具,用户可以使用这些工具针对中文文本进行分词,词性标注,句法分析等等工作。 如果您在工作中使用此工具包中包含的任何源代码,请引用以下文章。 下面列出了...