当前位置:   article > 正文

分词Hanlp的介绍和在Java中基本使用_java hanlp

java hanlp

Hanlp

简介:

HanLP 是一系列模型与算法组成的NLP工具包,目标是普及自然语言处理在生产环境中的应用。

功能:
中文分词:

HMM-Bigram(速度与精度最佳平衡;一百兆内存)

最短路分词、N-最短路分词

由字构词(侧重精度,全世界最大语料库,可识别新词;适合NLP任务)

感知机分词、CRF分词

词典分词(侧重速度,每秒数千万字符;省内存)

极速词典分词

所有分词器都支持:

索引全切分模式

用户自定义词典

兼容繁体中文

训练用户自己的领域模型

词性标注:

HMM词性标注(速度快)

感知机词性标注、CRF词性标注(精度高)

命名实体识别:

基于HMM角色标注的命名实体识别 (速度快)

中国人名识别、音译人名识别、日本人名识别、地名识别、实体机构名识别

基于线性模型的命名实体识别(精度高)

感知机命名实体识别、CRF命名实体识别

关键词提取:

TextRank关键词提取

自动摘要:

TextRank自动摘要

短语提取:

基于互信息和左右信息熵的短语提取

拼音转换:

多音字、声母、韵母、声调

简繁转换:

简繁分歧词(简体、繁体、臺灣正體、香港繁體)

文本推荐:

语义推荐、拼音推荐、字词推荐

依存句法分析:

基于神经网络的高性能依存句法分析器

基于ArcEager转移系统的柱搜索依存句法分析器

文本分类:

情感分析

文本聚类:

KMeans、Repeated Bisection、自动推断聚类数目k

word2vec:

词向量训练、加载、词语相似度计算、语义运算、查询、KMeans聚类

使用:

1.导入依赖

<dependency>
    <groupId>com.hankcs</groupId>
    <artifactId>hanlp</artifactId>
    <version>portable-1.8.3</version>
</dependency>

2.全部功能需要下载词典和模型。

需要在配置文件中进行引入。

部分api
1.基本分词
// 创建分词器 
Segment segment = HanLP.newSegment();
// 对文本进行分词 
List<Term> termList = segment.seg("HanLP分词器的使用非常方便"); 
// 遍历分词结果 
for (Term term : termList) {    System.out.println(term.word); }
2.词性标注
// 创建分词器
Segment segment = HanLP.newSegment();
// 对文本进行分词并进行词性标注 
List<Term> termList = segment.seg("HanLP词性标注的例子"); 
// 遍历分词结果,输出词汇和词性 
for (Term term : termList) {    System.out.println(term.word + " " + term.nature); }
3.关键词提取
// 对文本进行关键词提取
List<String> keywordList = HanLP.extractKeyword("HanLP关键词提取的例子", 5); 
// 输出关键词列表 System.out.println(keywordList);
4.自定义词典的使用
1.添加自定义词汇:

使用 CustomDictionary.add(word, nature) 方法向自定义词典中添加词汇。word 参数是要添加的词汇,nature 参数是该词汇的词性。

CustomDictionary.add("自定义词汇", "custom_nature");

这样就向自定义词典中添加了一个词汇 "自定义词汇",并指定了它的词性为 "custom_nature"。

2.删除自定义词汇:

如果需要删除自定义词典中的某个词汇,可以使用 CustomDictionary.remove(word) 方法。

CustomDictionary.remove("自定义词汇");
3.分词时使用自定义词典:

在分词时,可以通过 Segment 对象使用自定义词典。

String sentence = "我喜欢使用自定义词典"
Segment segment = HanLP.newSegment();
List<Term> termList = segment.seg(sentence);
for (Term term : termList) {
    System.out.println(term.word + " " + term.nature);
}

在这个例子中,分词的结果将包含自定义词典中添加的词汇。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/473936
推荐阅读
相关标签
  

闽ICP备14008679号