阅读更多

1顶
0踩

开源软件

Genius

Genius是一个开源的python中文分词组件,采用 CRF(Conditional Random Field)条件随机场算法。

Feature

  • 支持python2.x、python3.x以及pypy2.x。
  • 支持简单的pinyin分词
  • 支持用户自定义break
  • 支持用户自定义合并词典
  • 支持词性标注

Source Install

  • 安装git: 1) ubuntu or debian apt-get install git 2) fedora or redhat yum install git
  • 下载代码:git clone https://github.com/duanhongyi/genius.git
  • 安装代码:python setup.py install

Pypi Install

  • 执行命令:easy_install genius或者pip install genius

Algorithm

  • 采用trie树进行合并词典查找
  • 基于wapiti实现条件随机场分词
  • 可以通过genius.loader.ResourceLoader来重载默认的字典

功能 1):分词genius.seg_text方法

  • genius.seg_text函数接受5个参数:
  • text第一个参数为需要分词的字符
  • use_break代表对分词结构进行打断处理
  • use_combine代表是否使用字典进行词合并
  • use_tagging代表是否进行词性标注
  • use_pinyin_segment代表是否对拼音进行分词处理

代码示例( 全功能分词 )  

#encoding=utf-8
import genius
text = u"""昨天,我和施瓦布先生一起与部分企业家进行了交流,大家对中国经济当前、未来发展的态势、走势都十分关心。"""
seg_list = genius.seg_text(
    text,
    use_combine=True,
    use_pinyin_segment=True,
    use_tagging=True,
    use_break=True
)
print('\n'.join(['%s\t%s' % (word.text, word.tagging) for word in seg_list]))

 

功能 2):面向索引分词

  • genius.seg_keywords方法专门为搜索引擎索引准备,保留歧义分割。
  • text第一个参数为需要分词的字符
  • use_break代表对分词结构进行打断处理
  • use_tagging代表是否进行词性标注
  • use_pinyin_segment代表是否对拼音进行分词处理
  • 由于合并操作与此方法有意义上的冲突,此方法并不提供合并功能;并且如果采用此方法做索引时候,检索时不推荐genius.seg_text使用use_combine=True参数。

代码示例

#encoding=utf-8
import genius

seg_list = genius.seg_keywords(u'南京市长江大桥')
print('\n'.join([word.text for word in seg_list]))

其他说明 3):

  • 目前分词语料出自人民日报1998年1月份,所以对于新闻类文章分词较为准确。
  • CRF分词效果很大程度上依赖于训练语料的类别以及覆盖度,若解决语料问题分词和标注效果还有很大的提升空间。
1
0
评论 共 7 条 请登录后发表评论
7 楼 hity 2013-10-08 11:30
方世玉 写道
请问一下语料库如何增加,怎么通过训练增加准确度



library.zip文件下crf_seg_model.txt这个是训练后的分词model,自己训练一个覆盖即可。

训练方法可以使用crf工具,如wapiti或者是crf++,训练pattern在template文件夹里面可以找到。
6 楼 方世玉 2013-10-08 11:01
请问一下语料库如何增加,怎么通过训练增加准确度
5 楼 hity 2013-09-27 14:29
ansjsun 写道
额又一个分词。。。


哈哈,分词元年。
4 楼 ansjsun 2013-09-27 12:40
额又一个分词。。。
3 楼 IT技术观察员 2013-09-26 11:35
好吧!我没有恶意,随便说说!我一开始很兴奋,以为终于又有被翻译过来的新东西了
hity 写道
IT技术观察员 写道
唉!直接从github上抄来的,还发啥?我以为是翻译过来的呢!

不应该算抄吧?反正那个也是我写的,只是想跟大家分享一下自己的开源项目。

2 楼 hity 2013-09-26 11:01
IT技术观察员 写道
唉!直接从github上抄来的,还发啥?我以为是翻译过来的呢!

不应该算抄吧?反正那个也是我写的,只是想跟大家分享一下自己的开源项目。
1 楼 IT技术观察员 2013-09-26 10:36
唉!直接从github上抄来的,还发啥?我以为是翻译过来的呢!

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • Python-genius基于条件随机域的中文断词库

    Genius是一个开源的python中文分词组件,采用 CRF(Conditional Random Field)条件随机场算法。

  • 条件随机场python实现_Genius:基于条件随机场算法的python分词组件

    Python-genius基于条件随机域的中文断词库Genius是一个开源的python中文分词组件,采用 CRF(Conditional Random Field)条件随机场算法。【中文分词】条件随机场CRF之前介绍的MMEM存在着label bias问题,因此Lafferty...

  • Python中文分词工具大合集:安装、使用和测试

    转自:AINLP这篇文章事实上整合了之前文章的相关介绍,同时添加一些其他的Python中文分词相关资源,甚至非Python的中文分词工具,仅供参考。首先介绍之前测试过的8...

  • 玩转Python必备:史上最全的Python库,【值得收藏,事半功倍】

    库名称 简介 Chardet字符编码探测器,可以自动检测文本、网页、xml的编码。...difflib,[Python]标准库,计算文本差异 Levenshtein,快速计算字符串相似度。 fuzzywuzzy,字符串模糊匹配。 esmre,正则表达式...

  • python文本分析的开源工具_共有11款Python 中文分词库开源软件

    "哑哈"中文分词,更快或更准确,由你来定义。通过简单定制,让分词模块更适用于你的需求。 "Yaha" You can custom your Chinese Word Segmentation ... 更多Yaha信息jieba "结巴"中文分词:做最好的Python中文...

  • Python库详解。python有那些库你都知道了嘛?

    difflib,[Python]标准库,计算文本差异Levenshtein,快速计算字符串相似度。 fuzzywuzzy 字符串模糊匹配。 esmre 正则表达式的加速器。 shortuuid 一组简洁URL/UUID函数库。 ftfy,Unicode文本工具7 unidecode,...

  • Python常用库汇总

    Python常用的库简单介绍一下 fuzzywuzzy ,字符串模糊匹配。 esmre ,正则表达式的加速器。 colorama 主要用来给文本添加各种颜色,并且非常简单易用。 Prettytable 主要用于在终端或浏览器端构建格式...

  • genius-master

    Genius是一个开源的python中文分词组件,采用 CRF(Conditional Random Field)条件随机场算法。

  • NLP(2) | 中文分词分词的概念分词方法分类CRFHMM分词

    NLP(1) | 词向量one hot编码词向量编码思想 分词的概念 简单来说就是把词进行分开,分词的难点: 1.如何避免歧义,如:“白开水不如果汁甜”。如何让机器避免将“如果”分到一起。 2....基于...

  • jieba分词并做分析

    安装、简述和示例 pip install genius genius 是一款开源中文分词器,其基于条件随机场(CRF)算法的。 (这部分下次再写) import re from collections import Counter import jieba def cut_word(datapath): with...

  • NLP中几种分词库的简单使用(Python)

    几种分词方法的简单使用: ... pip install jieba,jieba分词的语料是基于人民日报。 分词示例 1 import jieba 2 3 str1 ='江州市长江大桥' 4 word_object = jieba.cut(str1) # 生成一个生成器对象 5 f...

  • python:库文件整理

    python库文件 库名称 简介 Chardet 字符编码探测器,可以自动检测文本、网页、xml的编码。 colorama 主要用来给文本添加各种颜色,并且非常简单易用。 Prettytable 主要用于在终端或浏览器端构建格式化...

  • 常用的中文分词框架

    首先介绍之前测试过的8款中文分词工具,这几款工具可以直接在AINLP公众号后台在线测试,严格的说,它们不完全是纯粹的中文分词工具,例如SnowNLP, Thulac, HanLP,LTP,CoreNLP都是很全面的(中文)自然语言处理工具...

  • 【Python】所有常用Python库和功能查询表

    所有常用Python库和功能查询表

  • 1000+常用Python库一览

    ‍‍来源:法纳斯特这次给大家总结整理了1000+常用Python库,主要分为以下部分????文本处理、文件处理、图像处理、游戏和多媒体、大数据和科学计算、人工智能和机器学习、系统与命令行、...

  • 转载:Python库

    库名称简介 Chardet 字符编码探测器,可以自动检测文本、网页、xml的编码...difflib,[Python]标准库,计算文本差异Levenshtein,快速计算字符串相似度。 fuzzywuzzy 字符串模糊匹配。 esmre 正则表达式的加速器...

  • 所有的Python库,我都整理在这里了

    加班加点整理出来的Python库,希望看到此篇文章的各位小伙伴,都可以学好Python~

  • chromedriver-win64_116.0.5840.0.zip

    chromedriver-win64_116.0.5840.0.zip

  • 基于Java Servlet实现的灾情控制系统.zip

    该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

  • 计算机毕业设计-求职与招聘.zip

    计算机毕业设计资源包含(项目部署视频+源码+LW+开题报告等等),所有项目经过助教老师跑通,有任何问题可以私信博主解决,可以免费帮部署。

Global site tag (gtag.js) - Google Analytics