xmnlp自然语言处理包

author:xuming(shibing624)

environment:jdk 1.6

  1. add the rule chinese word segmentation: 2016.06.21
    • 正向最大匹配法
    • 逆向最大匹配法
    • 双向最大匹配法
  2. add jieba segmentation java 2016.07.06
    • 基于 trie 树结构实现高效词图扫描
    • 生成所有切词可能的有向无环图 DAG
    • 采用动态规划算法计算最佳切词组合
    • 基于 =HMM= 模型,采用 =Viterbi= (维特比)算法实现未登录词识别
  3. add hanlp to xmnlp 2016.07.23
    • 基于双数组 trie 树结构实现高效词图扫描存储词典
    • 最短路径分词,最短路求解采用Viterbi算法
    • 添加人名识别功能:中文人名,日本人名,音译人名识别功能
  4. alter jdk from 1.7 to 1.6 2016.07.24
    • 兼容jdk1.6版本,把所有用jdk1.7甚至1.8的写法用1.6重写了
  5. add organization recognition, place recognization ,ahocorasick algoritm and tire tree 20160724 xuming
    • 机构名识别功能
    • 地名识别
    • trie词典树,基于贝尔实验室的 Aho-Corasick 白皮书完成,将来可以改为双数组trie数提高效率
  6. add pinyin to xmnlp 2016.07.24 xuming
    • 汉字转拼音功能:结果可以显示为数字音调,符号音调,无音调,声调,声母,韵母,输入法头
    • 汉字拼音可以作为分词属性之一

xmnlp是由一系列模型与算法组成的Java工具包,目标是普及自然语言处理在生产环境中的应用。xmnlp具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。

xmnlp提供下列功能:

  • 中文分词
  • 最短路分词
  • N-最短路分词
  • CRF分词
  • 索引分词
  • 极速词典分词
  • 用户自定义词典
  • 词性标注
  • 命名实体识别
  • 中国人名识别
  • 音译人名识别
  • 日本人名识别
  • 地名识别
  • 实体机构名识别
  • 关键词提取
  • TextRank关键词提取
  • 自动摘要
  • TextRank自动摘要
  • 短语提取
  • 基于互信息和左右信息熵的短语提取
  • 拼音转换
  • 多音字
  • 声母
  • 韵母
  • 声调
  • 简繁转换
  • 繁体中文分词
  • 简繁分歧词
  • 文本推荐
  • 语义推荐
  • 拼音推荐
  • 字词推荐
  • 依存句法分析
  • 基于神经网络的高性能依存句法分析器
  • MaxEnt依存句法分析
  • CRF依存句法分析
  • 语料库工具
  • 分词语料预处理
  • 词频词性词典制作
  • BiGram统计
  • 词共现统计
  • CoNLL语料预处理

在提供丰富功能的同时,xmnlp内部模块坚持低耦合、模型坚持惰性加载、服务坚持静态提供、词典坚持明文发布,使用非常方便,同时自带一些语料处理工具,帮助用户训练自己的语料。


支持中文分词模式

特性

如何获取

调用方法

xmnlp几乎所有的功能都可以通过工具类Xmnlp快捷调用,当你想不起来调用方法时,只需键入Xmnlp.,IDE应当会给出提示,并展示xmnlp完善的文档。

推荐用户始终通过工具类Xmnlp调用,这么做的好处是,将来xmnlp升级后,用户无需修改调用代码。

所有Demo都位于org.xm.xmnlp.demo下,比文档覆盖了更多细节,强烈建议运行一遍。

如何使用

算法

性能评估

许可证

许可证为ApacheLicence 2.0

    Copyright (C) 2016 xm Inc

    Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.