一、常用到的第三发工具
NLP常用基本工具
• jieba:
• https://github.com/fxsjy/jieba
• HanLP:
• http://hanlp.com/
• https://github.com/hankcs/pyhanlp
• snowNLP:
• http://github.com/isnowfy/snownlp
• ltp:
• http://ltp.ai/demo.html
http://ltp-cloud.com
• https://github.com/HIT-SCIR/ltp
• NLTK:
以上几个工具均可以分词
• gensim
• https://radimrehurek.com/gensim/
• jiagu
• https://github.com/ownthink/Jiagu
1、jieba 分词
Jieba常用的一种Python语言的中文分词和词性标注工具;算法基 于前缀词典实现高效的词图扫描,生成句子中汉字所有可能
成词情况所构成的有向无环图,然后采用动态规划查找最大概率路径, 找出基于词频的最大切分组合;对于未登录词/新词
和词性标注使 用HMM的Viterbi算法来进行构造。
(1)安装
• 安装方式: pip install jieba
(2)jieba 分词的功能
• 基础功能:
• 1. 分词
• 前缀字典匹配、HMM模型Viterbi算法
• 2. 自定义词典添加
• 3. 关键词抽取
• TF-IDF、TextRank
• 4. 词性标注
• HMM模型Viterbi算法
• 5. 并行分词
• 当前版本不支持windows
(3)结巴分词的特点
1、结巴分词特点:
词典为主,统计为辅助
hanlp 分词的特点:
统计为主,词典为辅助
2、
(4)jieba 使用方式
pass
2、hanlp
(1)安装方式
pass
(2)hanlp 功能
https://github.com/hankcs/HanLP -------- hanlp
HanLP提供下列功能:
中文分词
HMM-Bigram(速度与精度最佳平衡;一百兆内存)
最短路分词、N-最短路分词
由字构词(侧重精度,全世界最大语料库,可识别新词;适合NLP任务)
感知机分词、CRF分词
词典分词(侧重速度,每秒数千万字符;省内存)
极速词典分词
所有分词器都支持:
索引全切分模式
用户自定义词典
兼容繁体中文
训练用户自己的领域模型 ----------------------- hanlp 支持 自己训练模型
词性标注
HMM词性标注(速度快)
感知机词性标注、CRF词性标注(精度高)
命名实体识别
基于HMM角色标注的命名实体识别 (速度快)
中国人名识别、音译人名识别、日本人名识别、地名识别、实体机构名识别
基于线性模型的命名实体识别(精度高)
感知机命名实体识别、CRF命名实体识别
关键词提取
TextRank关键词提取
自动摘要
TextRank自动摘要
短语提取
基于互信息和左右信息熵的短语提取
拼音转换
多音字、声母、韵母、声调
简繁转换
简繁分歧词(简体、繁体、臺灣正體、香港繁體)
文本推荐
语义推荐、拼音推荐、字词推荐
依存句法分析 -------------------------- hanlp句法分析效果不错,不支持语义分析,ltp支持语义分析
基于神经网络的高性能依存句法分析器
基于ArcEager转移系统的柱搜索依存句法分析器
文本分类
情感分析
文本聚类
KMeans、Repeated Bisection、自动推断聚类数目k
word2vec
词向量训练、加载、词语相似度计算、语义运算、查询、KMeans聚类
文档语义相似度计算
语料库工具
部分默认模型训练自小型语料库,鼓励用户自行训练。所有模块提供训练接口,语料可参考98年人民日报语料库。
在提供丰富功能的同时,HanLP内部模块坚持低耦合、模型坚持惰性加载、服务坚持静态提供、词典坚持明文发布,使用非常
方便。默认模型训练自全世界最大规模的中文语料库,同时自带一些语料处理工具,帮助用户训练自己的模型。