Jieba是比较常用的一种中文文本分词系统,是一个开源框架,提供中文分词、关键词提取、词性标注等功能。目前有多种编程语言的实现,如Python、C++、R等。Jieba提供了三种分词模式:
(1)精确模式:试图将句子最精确地切开,适合文本分析。
(2)全模式:把句子中所有可以成词的词语都扫描出来,速度非常快,但是不能解决歧义。
(3)搜索引擎模式:在精确模式的基础上,对长词再次切分,提高查全率,适合用于搜索引擎分词。
1.常用的函数
1)jieba.cut(str)
功能:精确模式分词。
参数:
str:待分词的字符串。
2)jieba.cut(str,cut_all=True)
功能:全模式分词。
参数:
str:待分词的字符串。
cut_all:参数用来控制是否采用全模式。
3)jieba.cut_for_search(str)
功能:搜索引擎模式分词。
参数:
str:待分词的字符串
4)jieba.lcut(str)
功能:精确模式分词,直接生成一个list。
参数:
str:待分词的字符串
5)jieba.lcut(str,cut_all=True)(www.xing528.com)
功能:全模式分词,直接生成一个list。
参数:
str:待分词的字符串。
cut_all:参数用来控制是否采用全模式。
6)jieba.lcut_for_search(str)
功能:搜索引擎模式分词,直接生成一个list。
参数:
str:待分词的字符串。
2.实例
采用不同的分词模式进行文本分词效果对比分析。
其不同模式下的分词结果如下:
注意:我们可以看到,在全模式下,jieba分词会将所有可能的词都分解出来,实际上在分词过程中,精确模式就可满足我们的基本要求。
在一些特定的领域,为了实现更精确的分词,需要用户定义词典,jieba提供了加载用户自定义词典的方法:load_userdict()。
jieba支持用户自定义字典,一词占一行,有词语、词频、词性三个部分,例如:
(1)大数据3 n。
(2)云计算n。
(3)分布式。
其中,词频和词性都可以省略。
例如:
结果如下:
可以看出,词“云计算”和“大数据”都能被正确切分。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。