赞
踩
HanLP 是一系列模型与算法组成的NLP工具包,目标是普及自然语言处理在生产环境中的应用。
HMM-Bigram(速度与精度最佳平衡;一百兆内存)
最短路分词、N-最短路分词
由字构词(侧重精度,全世界最大语料库,可识别新词;适合NLP任务)
感知机分词、CRF分词
词典分词(侧重速度,每秒数千万字符;省内存)
极速词典分词
所有分词器都支持:
索引全切分模式
用户自定义词典
兼容繁体中文
训练用户自己的领域模型
HMM词性标注(速度快)
感知机词性标注、CRF词性标注(精度高)
基于HMM角色标注的命名实体识别 (速度快)
中国人名识别、音译人名识别、日本人名识别、地名识别、实体机构名识别
基于线性模型的命名实体识别(精度高)
感知机命名实体识别、CRF命名实体识别
TextRank关键词提取
TextRank自动摘要
基于互信息和左右信息熵的短语提取
多音字、声母、韵母、声调
简繁分歧词(简体、繁体、臺灣正體、香港繁體)
语义推荐、拼音推荐、字词推荐
基于神经网络的高性能依存句法分析器
基于ArcEager转移系统的柱搜索依存句法分析器
情感分析
KMeans、Repeated Bisection、自动推断聚类数目k
词向量训练、加载、词语相似度计算、语义运算、查询、KMeans聚类
1.导入依赖
<dependency> <groupId>com.hankcs</groupId> <artifactId>hanlp</artifactId> <version>portable-1.8.3</version> </dependency>
2.全部功能需要下载词典和模型。
需要在配置文件中进行引入。
// 创建分词器 Segment segment = HanLP.newSegment(); // 对文本进行分词 List<Term> termList = segment.seg("HanLP分词器的使用非常方便"); // 遍历分词结果 for (Term term : termList) { System.out.println(term.word); }
// 创建分词器 Segment segment = HanLP.newSegment(); // 对文本进行分词并进行词性标注 List<Term> termList = segment.seg("HanLP词性标注的例子"); // 遍历分词结果,输出词汇和词性 for (Term term : termList) { System.out.println(term.word + " " + term.nature); }
// 对文本进行关键词提取 List<String> keywordList = HanLP.extractKeyword("HanLP关键词提取的例子", 5); // 输出关键词列表 System.out.println(keywordList);
使用 CustomDictionary.add(word, nature)
方法向自定义词典中添加词汇。word
参数是要添加的词汇,nature
参数是该词汇的词性。
CustomDictionary.add("自定义词汇", "custom_nature");
这样就向自定义词典中添加了一个词汇 "自定义词汇",并指定了它的词性为 "custom_nature"。
如果需要删除自定义词典中的某个词汇,可以使用 CustomDictionary.remove(word)
方法。
CustomDictionary.remove("自定义词汇");
在分词时,可以通过 Segment
对象使用自定义词典。
String sentence = "我喜欢使用自定义词典" Segment segment = HanLP.newSegment(); List<Term> termList = segment.seg(sentence); for (Term term : termList) { System.out.println(term.word + " " + term.nature); }
在这个例子中,分词的结果将包含自定义词典中添加的词汇。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。