NLPIR 汉语分词系统 (PyNLPIR) 学习手札

1 关于NLPIR

最近在做一些NLP相关的任务,其中一个关键的子任务就是如何对汉语进行分词?关于分词的方式,有很多很多,也是很多学习者的练手任务(比如我们当时的期末作业就有这个)。但是,轮子还是要搬来用,自己写的分词只能说是去了解这个方式(了解某个算法),做出来的都是能看不能用,毕竟模型、算法、语料库等一座座大山等着我们攻克。

所以,我找了一些资料,看到一个不错的教程,他用了NLPIR,所以我也跟着使用NLPIR,并且在这里留下手札,方便自己后续查阅,也希望能够再帮助其他人理解。

在这篇手札当中,我选择的是Python的版本,也就是PyNLPIR

NLPIR的官网是:http://ictclas.nlpir.org/
其Python版本文档(英文)地址:http://pynlpir.readthedocs.io/en/latest/
本篇手札的首要参考博客:http://www.shareditor.com/blogshow/?blogId=74

关于NLPIR 其官网的介绍是:

NLPIR汉语分词系统(又名ICTCLAS2013),主要功能包括中文分词;词性标注;命名实体识别;用户词典功能;支持GBK编码、UTF8编码、BIG5编码。新增微博分词、新词发现与关键词提取;张华平博士先后倾力打造十余年,内核升级10次。

全球用户突破20万,先后获得了2010年钱伟长中文信息处理科学技术奖一等奖,2003年国际SIGHAN分词大赛综合第一名,2002年国内973评测综合第一名。

2 PyNLPIR 安装

PyNLPIR的安装很简单,首先你要保证你安装了PIP,这个工具在我的博客的各个手札当中出现过很多次,没有安装的可以看看之前的博客。

使用PIP我们可以非常快速的安装完成,终端执行如下的指令,等待安装完成即可(如果权限不够,请在前面加sudo):

$ pip install pynlpir

安装完成后,我们验证一下是否成功了,启动Python解释器,敲入如下的代码,引入pynlpir,如果回车后没有问题,就证明安装成功

import pynlpir

3 分词与词性标注

首先我们试验一下分词,这里贴出了源代码,安装完成PyNLPIR后,大家自己运行一下这个代码就可以。

需要注意的是,使用pynlpir的时候,首先要初始化,也就是需要先open(pynlpir.open()),当执行完成后需要对应的关闭(pynlpir.close())

# coding:utf-8

import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )

import pynlpir

pynlpir.open()
s = '因为我比较懒,所以我就只是修改了这句话,代码还是原博客的'
segments = pynlpir.segment(s)
for segment in segments:
    print segment[0], '\t', segment[1]

pynlpir.close()

如果运行成功,那么应该会给出如下的结果

因为  preposition
我   pronoun
比较  adverb
懒   adjective
,   punctuation mark
所以  conjunction
我   pronoun
就   adverb
只   adverb
是   verb
修改  verb
了   particle
这   pronoun
句   classifier
话   noun
,   punctuation mark
代码  noun
还   adverb
是   verb
原   distinguishing word
博客  noun
的   particle

Process finished with exit code 0

NLPIR还可以更加详细的输出词性信息,做如下修改:

segments = pynlpir.segment(s)
改为:
segments = pynlpir.segment(s,pos_names='all')
你可以在segment时同时配置如下参数,调整结果,请自行选择:
pos_names='all' / 'child' / 'parent' #默认是parent, 表示获取该词性的最顶级词性,child表示获取该词性的最具体的信息,all表示获取该词性相关的所有词性信息,相当于从其顶级词性到该词性的一条路径
pos_english=False # 词性标注结果以中文的形式显示
pos_tagging=False # 只做分词,而不显示词性

运行后可以得到更加详细的结果:

因为  preposition
我   pronoun:personal pronoun
比较  adverb
懒   adjective
,   punctuation mark:comma
所以  conjunction
我   pronoun:personal pronoun
就   adverb
只   adverb
是   verb:verb 是
修改  verb
了   particle:particle 了/喽
这   pronoun:demonstrative pronoun:predicate demonstrative pronoun
句  
  • 12
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值