Pure python NLP toolkit
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
demo
test
yaya
.gitignore
LICENSE
README.md
setup.py

README.md

YaYaNLP: Chinese Language Processing

YaYaNLP是一个纯python编写的中文自然语言处理包,取名于“牙牙学语”。 YaYaNLP提供以下功能:

  • 中文分词
  • 词性标注
  • 命名实体识别
  • 人名识别
  • 地名识别
  • 组织机构识别
  • 简繁转换

项目

项目主页:https://github.com/Tony-Wang/YaYaNLP

我的主页:www.huangyong.me

安装

直接下载源码包,解压后运行

python setup.py install

下载字典与模型文件

YaYaNLP使用了与HanLP兼容的字典数据,而编译后的字典数据保存的扩展名为.ya 可以直接从hanLP项目下载,data-for-1.2.4.zip

配置数据文件路径

yaya/config.py修改自己的数据文件路径

DATA_ROOT = "/your/data/path"

特性

人名识别

    # 识别人名
    text = u"签约仪式前,秦光荣、李纪恒、仇和等一同会见了参加签约的企业家。"
    terms = segment.seg(text)
    print_terms(terms)
签约/vi
仪式/n
前/f
,/w
秦光荣/nr
、/w
李纪恒/nr
、/w
仇和/nr
等/udeng
一同/d
会见/v
了/ule
参加/v
签约/vi
的/ude1
企业家/nnt
。/w

歧意词识别

    # 识别歧意词
    text = u"龚学平等领导说,邓颖超生前杜绝超生"
    terms = segment.seg(text)
    print_terms(terms)
龚学平/nr
等/udeng
领导/n
说/v
,/w
邓颖超/nr
生前/t
杜绝/v
超生/vi

地名识别

    # 识别地名
    text = u"蓝翔给宁夏固原市彭阳县红河镇黑牛沟村捐赠了挖掘机"
    terms = segment.seg(text)
    print_terms(terms)
蓝翔/nt
给/p
宁夏/ns
固原市/ns
彭阳县/ns
红河镇/ns
黑牛沟村/ns
捐赠/v
了/ule
挖掘机/n

组织名识别

    # 组织名识别
    text = u"济南杨铭宇餐饮管理有限公司是由杨先生创办的餐饮企业"
    terms = segment.seg(text)
    print_terms(terms)
济南杨铭宇餐饮管理有限公司/nt
是/vshi
由/p
杨先生/nr
创办/v
的/ude1
餐饮企业/nz

简繁转换

    # 简繁转换
    text = u"以后等你当上皇后,就能买草莓庆祝了"
    print segment.simplified_to_traditional(text)
以後等妳當上皇后,就能買士多啤梨慶祝了
    # 繁简转换
    text = u"用筆記簿型電腦寫程式HelloWorld"
    print segment.traditional_to_simplified(text)
用笔记本电脑写程序HelloWorld

感谢

本项目参考了hanck/HanLP项目实现原理并使用了该项目的字典和模型文件。

版权

  • Apache License Version 2.0
  • 任何使用了YaYaNLP的全部或部分功能、词典、模型的项目、产品或文章等形式的成果必须显式注明YaYaNLP及此项目主页。