内容简介:继续中文分词在线PK之旅,上文《
继续中文分词在线PK之旅,上文《 五款中文分词工具在线PK: Jieba, SnowNLP, PkuSeg, THULAC, HanLP 》我们选择了5个中文分词开源工具,这次再追加3个,分别是FoolNLTK、哈工大LTP(pyltp, ltp的 python 封装)、斯坦福大学的CoreNLP(stanfordcorenlp is a Python wrapper for Stanford CoreNLP),测试一下中文分词:我爱自然语言处理:
以下是在Python3.x & Ubuntu16.04 的环境下测试及安装这些中文分词器:
6) FoolNLTK : https://github.com/rockyzhengwu/FoolNLTK
特点
可能不是最快的开源中文分词,但很可能是最准的开源中文分词
基于BiLSTM模型训练而成
包含分词,词性标注,实体识别,都有比较高的准确率
用户自定义词典
可训练自己的模型
批量处理
定制自己的模型
get clone https://github.com/rockyzhengwu/FoolNLTK.git
cd FoolNLTK/train
详细训练步骤可参考文档
仅在linux Python3环境测试通过
安装,依赖TensorFlow, 会自动安装:
pip install foolnltk
中文分词示例:
In [1]: import fool
In [2]: text = "我爱自然语言处理"
In [3]: print(fool.cut(text))
[['我', '爱', '自然', '语言', '处理']]
In [4]: print(' '.join(fool.cut(text)[0]))
我 爱 自然 语言 处理
7) LTP: https://github.com/HIT-SCIR/ltp
pyltp : https://github.com/HIT-SCIR/pyltp
pyltp 是 语言技术平台(Language Technology Platform, LTP) 的 Python 封装。
安装 pyltp
注:由于新版本增加了新的第三方依赖如dynet等,不再支持 windows 下 python2 环境。
使用 pip 安装
使用 pip 安装前,请确保您已安装了 pip
$ pip install pyltp
接下来,需要下载 LTP 模型文件。
下载地址 - `模型下载 http://ltp.ai/download.html`_
当前模型版本 - 3.4.0
注意在windows下 3.4.0 版本的 语义角色标注模块 模型需要单独下载,具体查看下载地址链接中的说明。
请确保下载的模型版本与当前版本的 pyltp 对应,否则会导致程序无法正确加载模型。
从源码安装
您也可以选择从源代码编译安装
$ git clone https://github.com/HIT-SCIR/pyltp
$ git submodule init
$ git submodule update
$ python setup.py install
安装完毕后,也需要下载相应版本的 LTP 模型文件。
这里使用"pip install pyltp"安装,安装完毕后在LTP模型页面下载模型数据: http://ltp.ai/download.html ,我下载的是 ltp_data_v3.4.0.zip ,压缩文件有600多M,解压后1.2G,里面有不同NLP任务的模型。
中文分词示例:
In [5]: from pyltp import Segmentor
In [6]: segmentor = Segmentor()
# 分词模型路径,依据你下载后放得位置而定
In [7]: segmentor.load('./data/ltp/ltp_data_v3.4.0/cws.model')
In [8]: print(' '.join(segmentor.segment('我爱自然语言处理')))
我 爱 自然 语言 处理
8) Stanford CoreNLP : https://stanfordnlp.github.io/CoreNLP/
stanfordcorenlp : https://github.com/Lynten/stanford-corenlp
这里用的是斯坦福大学CoreNLP的python封装:stanfordcorenlp
stanfordcorenlp is a Python wrapper for Stanford CoreNLP. It provides a simple API for text processing tasks such as Tokenization, Part of Speech Tagging, Named Entity Reconigtion, Constituency Parsing, Dependency Parsing, and more.
安装很简单,pip即可:
pip install stanfordcorenlp
但是要使用中文NLP模块需要下载两个包,在CoreNLP的下载页面下载模型数据及jar文件,目前官方是3.9.1版本:
https://nlp.stanford.edu/software/corenlp-backup-download.html
第一个是:stanford-corenlp-full-2018-02-27.zip
第二个是:stanford-chinese-corenlp-2018-02-27-models.jar
前者解压后把后者也要放进去,否则指定中文的时候会报错。
中文分词使用示例:
In [11]: from stanfordcorenlp import StanfordCoreNLP
In [12]: stanford_nlp = StanfordCoreNLP('./data/corenlp/stanford-corenlp-full-201
...: 8-02-27', lang='zh')
In [13]: seg_results = stanford_nlp.word_tokenize('我爱自然语言处理')
In [14]: print(' '.join(seg_results))
我爱 自然 语言 处理
最后再说一下,原本计划加上对NLPIR中文分词器的支持,但是发现它的license需要定期更新,对于长久放server端测试不太方便就放弃了;另外之所以选择python,因为我用了Flask restful api框架,也欢迎推荐其他的中文分词开源框架,如果它们有很好的Python封装的话,这里可以继续添加。
注:原创文章,转载请注明出处及保留链接“我爱自然语言处理”: http://www.52nlp.cn
本文链接地址: 中文分词工具在线PK新增:FoolNLTK、HITLTP、StanfordCoreNLP http://www.52nlp.cn/?p=11770
以上所述就是小编给大家介绍的《中文分词工具在线PK新增:FoolNLTK、HITLTP、StanfordCoreNLP》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 中文分词工具在线PK新增:FoolNLTK、LTP、StanfordCoreNLP
- HanLP 1.7.0 发布,新增文本聚类、流水线分词
- HanLP 1.7.0 发布,新增文本聚类、流水线分词
- 基于海量公司分词ES中文分词插件
- 北大开源全新中文分词工具包:准确率远超THULAC、结巴分词
- 复旦大学提出中文分词新方法,Transformer连有歧义的分词也能学
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
算法交易:制胜策略与原理
[美]欧内斯特·陈(Ernest P. Chan) / 高闻酉、黄蕊 / 机械工业出版社 / 49.00
本书是一本引人入胜、信息量大、覆盖各类交易策略的图书。无论个人投资者,还是机构投资者,都可以借鉴和使用其中的策略。本书中的策略大致可分为均值回归系统和动量系统两大类。书中不仅介绍了如何使用每种类别的交易策略,更解释了各种策略之所以有效的原因。本书始终以简单、线性的交易策略为重心,因为复杂的交易策略容易受到过度拟合及数据窥探的侵害。数学和软件是算法交易的两条腿。本书用到了一定程度的数学知识,使其对各......一起来看看 《算法交易:制胜策略与原理》 这本书的介绍吧!