littlebot
Published on 2025-04-11 / 0 Visits
0

【源码】基于Java的HanLP自然语言处理工具包

项目简介

HanLP是一个由一系列模型与算法组成的Java工具包,旨在普及自然语言处理在生产环境中的应用。它功能完善、性能高效、架构清晰、语料时新且可自定义,提供了中文分词、词性标注、命名实体识别、关键词提取等多种自然语言处理功能。

项目的主要特性和功能

分词功能

  • 支持最短路分词、N - 最短路分词等多种分词算法。
  • 允许用户自定义词典,提高分词准确性。

词性标注

对分词结果进行词性标注,提供丰富语义信息。

命名实体识别

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

关键词提取

基于TextRank算法提取文本中的关键词。

自动摘要

基于TextRank算法生成文本的自动摘要。

短语提取

基于互信息和左右信息熵提取文本中的短语。

拼音转换

处理多音字的拼音转换,提供声母、韵母和声调的转换功能。

简繁转换

支持繁体中文的分词,处理简繁体之间的分歧词。

文本推荐

提供语义、拼音和字词的文本推荐。

依存句法分析

基于最大熵模型和条件随机场进行依存句法分析。

语料库工具

包括分词语料预处理、词频词性词典制作等多种语料处理和评测工具。

安装使用步骤

方式一:Maven

  1. 在项目的pom.xml文件中添加以下依赖: xml <dependency> <groupId>com.hankcs</groupId> <artifactId>hanlp</artifactId> <version>portable-1.2.2</version> </dependency>
  2. 零配置即可使用基本功能(除CRF分词、依存句法分析外的全部功能)。若有自定义需求,可参考方式二,使用hanlp.properties进行配置。

方式二:下载jar、data、hanlp.properties

  1. 下载hanlp.properties,并修改第一行的root路径为data的父目录。例如,如果data目录是/Users/hankcs/Documents/data,则root=/Users/hankcs/Documents/
  2. HanLP.properties放入classpath中,对于Eclipse,一般是$Project/bin

调用方法

HanLP几乎所有的功能都可以通过工具类HanLP快捷调用。推荐始终通过工具类HanLP调用,便于将来HanLP升级后无需修改调用代码。

示例代码

以下是部分功能的调用示例: ```java // 第一个Demo System.out.println(HanLP.segment("你好,欢迎使用HanLP汉语处理包!"));

// 标准分词 List termList = StandardTokenizer.segment("商品和服务"); System.out.println(termList);

// 更多示例代码可参考项目总结中的对应部分 ```

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】