A segmentation and postagging tool package


License
MIT
Install
pip install spseg==1.0.8

Documentation

分词工具Python接口文档

一、工具安装和更新

支持Python2.7和Python3.6

pip install spseg --index-url=https://pypi.python.org/simple --upgrade --user

二、简单示例

import spseg
from spseg import SegmentorFactory, TaskMode

factory = SegmentorFactory("config.dat")
segmentor1 = factory.newInstance()
segmentor2 = factory.newInstance()

segmentor1.setMode(TaskMode.SEGMENTATION_REFERING_TO_LEXICON)
segmentor2.setMode(TaskMode.POSTAG_ACCORDING_TO_MODEL)

segmentor1.addUserWord("是个")

print(segmentor1.seg("这是个测试"))
print(segmentor2.seg("这是个测试"))

SegmentorFactory对应创建分词工厂类实例,实例管理分词模型和词典资源,由配置文件指定资源路径。

1、配置文件格式

{
"default_lexicon_path":"user.lexicon.dat",
"segmentation_model_path":"people.model.big.0_1_1_20.dat20"
}

Segmentor对应分词实例,只由SegmentorFactory中newInstance方法创建,实例管理增删用户动态词汇、设置工作模式以及负责分词调用。

2、设置工作模式

纯模型词性标注    POSTAG_ACCORDING_TO_MODEL
参考词典词性标注  POSTAG_REFERING_TO_LEXICON
纯词典词性标注    POSTAG_ACCORDING_TO_LEXICON

纯模型分词        SEGMENTATION_ACCORDING_TO_MODEL
参考词典分词      SEGMENTATION_REFERING_TO_LEXICON
纯词典分词        SEGMENTATION_ACCORDING_TO_LEXICON

纯模型全切分      FULL_SEGMENTATION_ACCORDING_TO_MODEL
参考词典全切分    FULL_SEGMENTATION_REFERING_TO_LEXICON
纯词典全切分      FULL_SEGMENTATION_ACCORDING_TO_LEXICON

**“参考词典”的解释:**保留模型结果的同时,按用户词典对模型结果进行切分和合并,避免“纯词典”模式会把非词典词拆分成单字。

三、效率建议

每个SegmentorFactory实例之间的资源相互隔离,由相同SegmentorFactory实例创建的分词实例都共享资源。

因此,如无必要不应创建过多的SegmentorFactory实例和Segmentor实例,避免内存浪费。