hanlp分词
hanlp分词
介绍
HanLP是由一系列模型与算法组成的Java工具包,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。
HanLP有如下功能:
- 中文分词
- 词性标注
- 命名实体识别
- 依存句法分析
- 关键词提取新词发现
- 短语提取
- 自动摘要
- 文本分类
- 拼音简繁
安装方法
pip install pyhanlp
安装后在第一次使用时,当运行from pyhanlp import *时,会下载hanlp的数据文件,这个文件比较大,一般都会下载失败,推荐手动下载并放到要求的路径下。
data文件下载地址:https://file.hankcs.com/hanlp/data-for-1.7.5.zip
然后把下载的文件放到D:\Anaconda3\Lib\site-packages\pyhanlp\static (选择自己的python环境地址)目录下
再执行from pyhanlp import *,完成自动解压。
pyhanlp的参考文档:https://github.com/hankcs/pyhanlp
使用方式
pyhanlp实现的分词器有很多,同时pyhanlp获取hanlp中分词器也有两种方式
第一种是直接从封装好的hanlp类中获取,这种获取方式一共可以获取五种分词器,而现在默认的就是第一种维特比分词器
-
维特比(viterbi):效率和效果的最佳平衡。也是最短路分词,HanLP最短路求解采用Viterbi算法
-
双数组trie树 (dat):极速词典分词,千万字符每秒(可能无法获取词性,此处取决于你的词典)
-
条件随机场(crf):分词、词性标注与命名实体识别精度都较高,适合要求较高的NLP任务
-
感知机(perceptron):分词、词性标注与命名实体识别,支持在线学习
-
N最短路 (nshort):命名实体识别稍微好一些,牺牲了速度
第二种方式是使用JClass直接获取java类,然后使用。这种方式除了获取上面的五种分词器以外还可以获得一些其他分词器,如NLP分词器,索引分词,快速词典分词等等