2019独角兽企业重金招聘Python工程师标准>>>

学习自然语言这一段时间以来接触和听说了好多开源的自然语言处理工具,在这里做一下汇总方便自己以后学习,其中有自己使用过的也有了解不是很多的,对于不甚了解的工具以后学习熟悉了会做更新的。

1.IKAnalyzer

IK Analyzer是一个开源的,基于Java语言开发的轻量级的中文分词工具包。从2006.12推出1.0版本开始,IK Analyzer已经推出了多个版本,当前最新版本为2012 u6,最初基于Luence,从3.0开始成为面向Java的公用分词组件,独立于Luence,下载地址为:http://code.google.com/p/ik-analyzer/。IK支持细粒度和智能分词两种切分模式,支持英文字母、数字、中文词汇等分词处理,兼容韩文、日文字符。可以支持用户自定义的词典,通过配置IKAnalyzer.cfg.xml文件来实现,可以配置自定义的扩展词典和停用词典。词典需要采用UTF-8无BOM格式编码,并且每个词语占一行。配置文件如下所示:

[html] view plaincopy

  1. <properties>

  2. <comment>IK Analyzer 扩展配置</comment>

  3. <!--用户可以在这里配置自己的扩展字典-->

  4. <entry key="ext_dict">ext.dic;</entry>

  5. <!--用户可以在这里配置自己的扩展停止词字典-->

  6. <entry key="ext_stopwords">stopword.dic;chinese_stopword.dic</entry>

  7. </properties>

IK部署很简单,只需要把IKAnalyzer2012_u6.jar部署于项目的lib中,同时将IKAnalyzer.cfg.xml文件以及词典文件置于src中,即可通过API的方式开发调用。

示例代码:

[java] view plaincopy

  1. /**

  2. * IK分词功能实现

  3. * @return

  4. */

  5. public String spiltWords(String srcString){

  6. StringBuffer wordsBuffer = new StringBuffer("");

  7. try{

  8. IKSegmenter ik=new IKSegmenter(new StringReader(srcString), true);

  9. Lexeme lex=null;

  10. while((lex=ik.next())!=null){

  11. //              System.out.print(lex.getLexemeText()+" ");

  12. wordsBuffer.append(lex.getLexemeText()).append(" ");

  13. }

  14. }catch(Exception e){

  15. logger.error(e.getMessage());

  16. }

  17. return wordsBuffer.toString();

  18. }

IK简单、易于扩展,分词结果较好并且采用Java编写,因为我平时的项目以Java居多,所以是我平时处理分词的首选工具。

2.中科院ICTCLAS

ICTCLAS是由中科院计算所历经数年开发的分词工具,采用C++编写。最新版本命名为ICTCLAS2013,又名为NLPIR汉语分词系统,官网为:http://ictclas.nlpir.org/。主要功能包括中文分词、词性标注、命名实体识别、用户词典功能,同时支持GBK编码、UTF8编码、BIG5编码,新增微博分词、新词发现与关键词提取。可以可视化界面操作和API方式调用。

转载于:https://my.oschina.net/u/1397325/blog/233739

开源的自然语言处理工具相关推荐

  1. Python自然语言处理工具

    Python 自然语言处理(NLP)工具汇总 NLTK 简介: NLTK 在使用 Python 处理自然语言的工具中处于领先的地位.它提供了 WordNet 这种方便处理词汇资源的接口,以及分类.分词 ...

  2. python自然语言处理库_Python自然语言处理工具库(含中文处理)

    自然语言处理(Natural Language Processing,简称 NLP),是研究计算机处理人类语言的一门技术.随着深度学习在图像识别.语音识别领域的大放异彩,人们对深度学习在 NLP 的价 ...

  3. 这个自然语言处理“工具”,玩得停不下来

    今天推荐一个有趣的自然语言处理公众号「AINLP」,关注后玩得根本停不下来!AINLP的维护者是我爱自然语言处理(52nlp)博主,他之前在腾讯从事NLP相关的研发工作,目前在一家创业公司带技术团队. ...

  4. 苹果回应iPhone邮件漏洞;GitHub连续3天爆严重宕机情况;腾讯开源Transformer推理加速工具| 极客头条...

    整理 | 屠敏 头图 | CSDN 下载自东方 IC 快来收听极客头条音频版吧,智能播报由标贝科技提供技术支持. 「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦 ...

  5. 阿里巴巴开源的免费数据库工具Chat2DB

    Chat2DB 是一款由阿里巴巴开源的免费数据库工具,它为开发人员提供了一个强大且易于使用的平台,用于存储和查询数据.与传统的数据库工具相比,Chat2DB 具有以下特点和优势: 多数据库支持:Cha ...

  6. Facebook开源多款AI工具,支持游戏、翻译等

    翻译 | 林椿眄 编辑 | 阿司匹林 出品 | AI科技大本营(公众号ID:rgznai100) 近日,Facebook 在年度开发者大会 F8 上宣布开源多款 AI 工具,除了 PyTorch.Ca ...

  7. Jeff Dean:一年开源12款新工具,谷歌负责任AI原则落地生根

    https://www.toutiao.com/a6707804358597149191/ [新智元导读]自从谷歌宣布AI原则开始,已经过了一年时间.如今Jeff Dean和Kent Walker对原 ...

  8. soapui工具_基于开源的API测试工具!不再为web服务负载测试而发愁

    通过一个可视化.拖拽式的界面,LoadUI允许您实时.交互式地创建.配置和重分配负载测试.在单一测试环境下,LoadUI提供完整的测试覆盖,支持所有标准的协议和技术.它功能强大,能从任意数量的本地和远 ...

  9. Android开源项目第二篇——工具库篇

    本文为那些不错的Android开源项目第二篇--开发工具库篇,主要介绍经常使用的开发库,包含依赖注入框架.图片缓存.网络相关.数据库ORM建模.Android公共库.Android 高版本号向低版本号 ...

最新文章

  1. hihocoder offer收割编程练习赛11 B 物品价值
  2. 在MFC对话框中快速集成三维控件
  3. 终于不用手撸了,解放你的双手,教你用数学建模的方式对答题卡进行有效识别
  4. 使用关键字SCAN ABAP-SOURCE对ABAP源代码进行语法扫描
  5. 通过源码将git升级到最新版
  6. 计数方法应用于PTB数据集
  7. c语言延时函数delay_STM32中精确延时函数的实现
  8. vim 基础命令大全
  9. mysql中导出sql文件_MySQL中导入导出sql文件
  10. 【前端_React】React小书
  11. linux系统开启端口命令
  12. 判断浏览器版本,当浏览器版本过低时提示升级浏览器,不显示原来页面内容
  13. ocr识别身份证护照阅读器
  14. SpringCloud详细教程(上)
  15. 网易有数BI在数据可视化领域的优势地位因何受到挑战?
  16. DELPHI 控件的相对坐标与屏幕坐标转换
  17. java计算机毕业设计淮安城市开放大学实习实训管理系统源码+mysql数据库+系统+lw文档+部署
  18. OpenCV - 计算相机和视频的帧速率FPS
  19. Windows打印机驱动删除不了,怎么办?
  20. “药药切克闹”系列-基于STM32触摸屏的超级无敌智能电子密码锁(仿手机键盘26键设计,密码支持英文大写+英文小写+数字)

热门文章

  1. php sub pos,PHP pos() 函数
  2. 织梦dedecms小说网站源码|带采集+搭建方式
  3. Spring Boot中常见注解诠释
  4. 网盘工具比较,以及自己开发的网盘工具[转]
  5. MySQL入门 (六) : 字元集与资料库
  6. 想说爱你不容易,浏览器缓存浅谈
  7. MongoDB 教程一: 安装和使用 (Mongodb启动命令mongod参数说明)
  8. magento 输出关联产品
  9. 常用JavaScript函数 47 - 58(自我总结)
  10. C++ win32控制台显示月历