GithubHelp home page GithubHelp logo

zhaozengbin / mynlp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mayabot/mynlp

0.0 2.0 0.0 23.9 MB

一个高性能、模块化、可扩展的中文NLP工具包(中文分词 词性标注 命名实体识别 新词发现 文本分类 拼音简繁转换)

License: Apache License 2.0

Java 78.97% Kotlin 21.03%

mynlp's Introduction

MYNLP 中文NLP工具包

License Maven Central Latest release

一个高性能、模块化、可扩展的中文NLP工具包

更多使用介绍阅读Wiki文档

微信jimichan,备注mynlp,加入微信交流群。

mynlp是一个高性能、模块化、可扩展的中文NLP工具包。内容如下:

  • 中文分词

    • CORE分词

      • 二元语言模型 + viterbi解码算法 + 基础规则(数字、英文、日期..。_
      • 高性能:速度200万+字/秒(2.6GHz Intel i7)
    • CWS分词

      基于感知机序列标注算法 + 基础规则。_

    • CRF分词

      高性能CRF解码器 + 基础规则。

    • 人名识别

      基于感知机实现,高准确率,高性能,自动排除歧义。

    • NER命名实体识别

    • 自定义功能

      自定义词库、分词纠错

    • 柔性API和PIPELINE设计模式

      自由组合和扩展分词逻辑需求

  • 词性标注

    基于感知机的词性标注

  • 新词发现(未发布)

    可小内存上运行大数据集,完美超高性能

  • 拼音转换

    文字转拼音,好用的API

  • 文本分类

    基于fastText Java原生实现

  • 简繁体转换

  • 感知机通用接口

    提供一个通用的感知机基础API

  • 文本摘要

    简单的文本摘要实现

  • 基础架构

    • 统一资源加载
    • 可扩展的资源加载API
    • 基于GUICE的IOC实现可插拔的组件开发
    • 高性能、易扩展的基础数据结构
  • 词典和语料库资源

    • 二元模型
      • 二元模型词数量达20万+
      • 二元接续词配对数量485万+(Hanlp对应资源大概290万+)
    • 感知机模型
      • 训练语料库字数7000万+
    • 词性标注
      • 训练语料库字数3000万+
    • 人名识别
      • 训练语料库字数3000万+
    • 地名、组织机构名
      • 训练语料库字数3000万+
    • 语料库来源
      • 公开语料库
        • 收集的互联网资源
      • 自建语料库
        • 数据为人民日报2014,通过Hanlp、中科院等多种分词器自动切分对比差异,再经过10人5个月时间修复、校验 后获得的分词语料库。(准备在mynlp具备一定用户量之后再开源)

Getting Started

非常易用,只需要1分钟你就可以体验mynlp。没有配置,无需手动下载资源文件,只需要依赖添加依赖包,写两行代码。

Requirements

您需要 JAVA1.8+ 运行环境

Installation

mynlp的jar已经发布到Maven**仓库,在您的项目中依赖mynlp-all.jar最新版本。

GRADLE

    compile 'com.mayabot.mynlp:mynlp-all:2.0.0'

或者MAVEN

<dependency>
  <groupId>com.mayabot.mynlp</groupId>
  <artifactId>mynlp-all</artifactId>
  <version>2.0.0</version>
</dependency>

中文分词示例

MynlpTokenizer tokenizer = Tokenizers.coreTokenizer();
Sentence sentence = tokenizer.parse("mynlp是mayabot开源的中文NLP工具包。");
System.out.println(sentence.asWordList());

输出:

[mynlp/x, 是/v, mayabot/x, 开源/v, 的/u, 中文/nz, nlp/x, 工具包/n, 。/w]
mynlp的发行jar里面是不包含资源文件的,在运行时如果发现本地mynlp.data目录夹没有对应资源时会自动从cdn上下载资源JAR文件,
所以第一次运行需要您电脑可以访问互联网。
默认mynlp.data文件夹的位置在~/.mynlp.data,mac系统下为隐藏文件夹,可以通过Command+Shift+G访问。

详细文档请移步WIKI

联系和交流

MYNLP的发展和持续离不开大家的支持,所以建立了微信群方便大家及时沟通交流,有需要的同学可以添加我微信jimichan,备注mynlp。

声明和致谢

mynlp开发之初是对Hanlp和ansj项目的重构整理,通过多次迭代和项目需求驱动实践,逐渐发展为目前自有的架构体系。 向HanLP和ansj在中文NLP开源中做出的贡献致敬!

mynlp项目参考了以下项目:

mynlp's People

Contributors

jimichan avatar xswds123 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.