一、jieba分词
1、精确模式(默认):试图将句子最精确地切开,适合文本分析;
seg = jieba.cut(“这是一段中文字符”, cut_all = False)
不加cut_all 为默认的精确模式
2、全模式,把句子中所有的可以成词的词语都扫描出来,但是不能解决歧义;
seg = jieba.cut(“这是一段中文字符”, cut_all = True)
3、搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,该方法适合用于搜索引擎构建倒排索引的分词,粒度比较细。
seg =jieba.cut_for_search(“这是一段关于结巴分词的中文句子”)
注意:jieba.cut以及jieba.cut_for_search返回的结构都是一个可迭代的 generator,并不是一个list列表
4、结巴的优点:
- 支持三种分词模式
- 支持繁体分词
- 支持自定义词典
- MIT 授权协议
**
二、THULAC分词
**
由清华大学自然语言处理与社会人文计算实验室研制推出的一套中文词法分析工具包 。THULAC的接口文档很详细,简单易上手。
THULAC分词的优点:
- 能力强。利用规模最大的人工分词和词性标注中文语料库(约含5800万字)训练而成,模型标注能力强大。
- 准确率高。该工具包在标准数据集Chinese Treebank(CTB5)上分词的F1值可达97.3%,词性标注的F1值可达到92.9%
- 速度较快。同时进行分词和词性标注速度为300KB/s,每秒可处理约15万字。只进行分词速度达到1.3MB/s,速度比jieba慢
**
三、哈工大LTP
**
1、LTP在docker中的使用
- 在github上下载Dockerfile文件
- 直接new一个ltp
file,new一个Dockerfile文件
把github上的Dockerfile 内容直接粘贴下来
2、运行docker build -t ltp/ltp .
注意要在ltp文件夹中run terminal
3、在配置中给docker运行给予足够大的内存。
采用默认的配置,未进行内存设置
4、使用如下命令启动容器
5、使用如下命令测试服务器是否部署成功。
测试成功后按照文档使用即可
2、源码的编译安装
1、下载源码和model
注意源码要和模型的版本对应
存放的路径要注意(我直接把模型提取到源码的文件夹中)
2、安装cmake
cmake的安装在linux下建议直接
pip install cmake
(cmake官网下载安装时出现了错误)
3、直接在根目录中运行
./configure
make
4、然后参考文档
使用ltp_test \ltp_server
以及各种命令行 xxx_cmdline
3、python 调用封装好的pyltp
注意安装时python3.7会失败
from pyltp import 各个模块的功能
**
四、中科院NLPIR
**
1、直接使用封装好的nlpir
- pip install nlpir 就可以安装好
- 直接import nlpir 就可以调用
- 缺点:功能少,不如直接用jieba
2、使用NLPIR接口
- 利用官方文档,要在电脑上搭建swig
(了解比较少)
**
五、总结
**
jieba最为简洁,python中的使用最为方便,可以满足基本的分词需求
nlp功能较多,文档完善,除分词外还具有词性分析等功能,但是源码、模型版本较多,安装起来复杂
nlpir直接调用的功能少,不如直接用jieba分词;搭建swig,了解不多
————————————————
版权声明:本文为CSDN博主「zhaoze13」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42326230/article/details/89848010