jieba 词性标注 & 并行分词

jieba 词性标注

# 新建自定义分词器
jieba.posseg.POSTokenizer(tokenizer=None)
# 参数可指定内部使用的 jieba.Tokenizer 分词器。 jieba.posseg.dt 为默认词性标注分词器。
# 标注句子分词后每个词的词性,采用和 ictclas 兼容的标记法。

jieba 并行分词

将目标文本按行分隔后,把各行文本分配到多个 Python 进程并行分词,然后归并结果,从而获得分词速度的可观提升。

基于 python 自带的 multiprocessing 模块,目前暂不支持 Windows

jieba.enable_parallel(4) - 开启并行分词模式,参数为并行进程数。
jieba.disable_parallel() - 关闭并行分词模式

并行分词仅支持默认分词器jieba.dtjieba.posseg.dt

Tokenize:返回词语在原文的起止位置,输入参数只接受 unicode

import jieba
import jieba.analyse
result = jieba.tokenize(u'冷酷是个很酷的网站')
for tk in result:
    print("word %s\t\t start: %d \t\t end:%d" % (tk[0],tk[1],tk[2]))

搜索模式:

result = jieba.tokenize(u'冷酷是个前途无量的网站', mode='search')
for tk in result:
    print("word %s\t\t start: %d \t\t end:%d" % (tk[0],tk[1],tk[2]))

延迟加载

jieba 采用延迟加载,import jiebajieba.Tokenizer() 不会立即触发词典的加载,一旦有必要才开始加载词典构建前缀字典。如果想初始 jieba,也可以手动初始化。

import jieba
# 手动初始化
jieba.initialize()

词典文件:

jieba.set_dictionary('data/dict.txt.big')
本作品采用《CC 协议》,转载必须注明作者和本文链接
不要试图用百米冲刺的方法完成马拉松比赛。
本帖由 Galois 于 3个月前 解除加精
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!