jieba是优秀的中文分词第三方库,由于中文文本之间每个汉字都是连续书写的,我们需要通过特定的手段来获得其中的每个词组,这种手段叫做分词,我们可以通过jieba库来完成这个过程。
jieba库的分词原理是利用了一个中文词库,将待分词的内容与分词词库对比,通过图结构和动态规则划分方法找到最大概率的词组。除了分词,jieba还提供增加自定义中文单词的功能。
将句子最精确地分开,适合文本分析;
把句子中所有可以成词的词语都扫描出来,速度非常快,但是不能解决歧义;
在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词
注:对中文分词来说,jieba库只需要一行代码即可。英文文本不存在分词问题
函数 | 描述 |
---|---|
jieba.lcut(s) | 精确模式,返回一个列表值 |
jieba.lcut(s,cut_all=True) | 全模式,返回一个列表值 |
jieba.lcut_for_search(s) | 搜索引擎模式,返回一个列表值 |
jieba.add_word(w) | 向分词词典中增加新词w |
首先你需要安装jieba库
pip install jieba
jieba.lcut(s)是最常用的中文分词函数,用于精确模式,将字符串分割成等量的中文词组。
import jieba ls = jieba.lcut("我愿意穿过璀璨繁星") print(ls)
jieba.lcut(s,cut_all=True)用于全模式,将字符串的所有分词可能列出来,冗余最大。
import jieba ls = jieba.lcut("人面不知何处去,桃花依旧笑春风", cut_all=True) print(ls)
jieba.lcut_for_search该模式首先执行精确模式,然后在对其中长词进一步分获得最终结果
import jieba ls1 = jieba.lcut("仰天大笑出门去我辈岂是蓬蒿人") ls = jieba.lcut_for_search("仰天大笑出门去我辈岂是蓬蒿人") print(ls1) print(ls)
import jieba ls = jieba.lcut_for_search("仰天大笑出门去我辈岂是蓬蒿人") print(ls) jieba.add_word("蓬蒿人") ls1 = jieba.lcut("仰天大笑出门去我辈岂是蓬蒿人") print(ls1)
小结:精确模式因为不产生冗余,最为常用。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理