阅读更多

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~

  • 基于Django花卉商城系统的设计与实现-2885fb37-.zip

    基于Django花卉商城系统的设计与实现_2885fb37--.zip

  • 102页-智慧农业解决方案.pdf

    智慧农业,作为现代农业的新篇章,正引领着农业生产的革命性变革。本解决方案以物联网、云计算、大数据等先进技术为核心,为农业生产打造了一套全面、智能的管理系统。 想象一下,从温室大棚到广袤田野,智能传感器遍布每个角落,它们能实时感知空气温湿度、土壤水分、光照强度等环境参数,仿佛为农作物装上了“眼睛”和“耳朵”。这些数据通过物联网技术传输到云端,经过大数据分析,为农民提供精准的种植建议,如何时灌溉、施肥、防虫,让农业生产变得更加科学、高效。 更有趣的是,通过智慧农业平台,农民可以远程监控作物生长情况,甚至用手机就能控制温室大棚的遮阳板、通风设备等,实现“指尖上的农业”。此外,方案还包含了农产品可追溯系统,从田间到餐桌,每一步都可追溯,让消费者吃得放心。而智慧农业电商平台,则让农产品销售更加便捷,农民直接对接市场,收益倍增。 总之,这套智慧农业解决方案不仅让农业生产变得更加智能、高效,还提升了农产品的质量和安全,为农民带来了实实在在的收益,开启了农业现代化的新篇章。 对于想要投身智慧农业领域的你来说,这不仅仅是一套解决方案,更是一把开启现代农业大门的钥匙,引领你走向更加辉煌的未来。

  • 【人工智能模型部署】DeepSeek本地部署与WebUI可视化:环境搭建、模型启动及界面开发指南文档的主要内容

    内容概要:本文档详细介绍了DeepSeek本地部署与WebUI可视化的一般步骤。本地部署方面,涵盖了环境准备(硬件要求如多核CPU、8GB以上内存或带适当显存的NVIDIA GPU,软件环境涵盖操作系统如Ubuntu 20.04及以上版本、Python环境及依赖库如PyTorch或TensorFlow)、获取DeepSeek模型代码和权重(通过官方仓库克隆代码,从指定渠道下载权重)、模型配置与启动(配置模型参数,运行启动脚本以初始化模型和服务)。WebUI可视化部分则推荐了Streamlit和Gradio两种框架,介绍了它们的安装、使用方法(通过编写脚本调用DeepSeek API构建交互界面),以及集成与部署(确保WebUI与模型服务之间的数据正确传递,在本地运行后可通过浏览器访问)。 适合人群:对深度学习模型部署有一定了解的技术人员,尤其是那些希望将DeepSeek模型应用于本地环境并提供用户友好界面的研发人员。 使用场景及目标:①为希望在本地环境中运行DeepSeek模型的研究者或开发者提供详细的部署指南;②帮助用户快速搭建一个带有图形化操作界面的DeepSeek应用,降低使用门槛,提高用户体验。 阅读建议:在阅读时,应根据自己的操作系统环境和硬件条件调整相应的配置要求,同时注意按照官方文档的具体指引操作,确保各组件版本兼容,以便顺利完成部署和可视化工作。

Global site tag (gtag.js) - Google Analytics