|
手艺频道
|
51CTO旗下网站
|
|
挪动端
金沙前面带@118

用于自然语言处置惩罚的12大开源东西

自然语言处置惩罚(NLP),在已往几年中曾经有了长足的生长。本文为人人推荐一些开源NLP东西,资助人人计划基于语音或文本的应用程序。

作者:云智时期泉源:|2019-03-25 22:03
6165l.com

自然语言处置惩罚(NLP),为所有谈天机器人,语音助理,展望文本和其他渗出到我们生涯中的语音/文本运用供应支撑的手艺,在已往几年中曾经有了长足的生长。本文为人人推荐一些开源NLP东西,资助人人计划基于语音或文本的应用程序。

一、Python东西

1. 自然语言工具包(NLTK)

自然语言工具包(NLTK)是最全功能的东西。它险些实现了您需求的任何NLP组件,如分类,符号化,剖析和语义推理。而且每种要领一般都有多个实现,因而您能够选择想要运用的切实算法或要领。它借支撑多种言语。然则它以字符串的情势示意所有数据,那关于简朴的架构很好,然则很易运用某些初级功用。与其他东西比拟,它的生长点缓。总的来说,那是一个很好的工具包,适用于需求特定算法组合的实行,探究和应用程序。

87374香港金沙妙手

2. SpaCy

SpaCy是NLTK的重要竞争对手。在大多数情况下它速度更快,但每一个NLP组件只要一个实现。另外,它将所有内容示意为工具而不是字符串,那简化了构建应用程序的界面。那也有助于它取很多其他框架和数据科学东西集成,因而您能够在更好天明白文本数据后实行更多操纵。然则,SpaCy不支持取NLTK一样多的言语。它确切有一个简朴的界面,一组简化的选择和优异的文档,和言语处置惩罚和剖析的种种组件的多个神经模子。总的来说,关于需求在消费中具有下机能而且不需要特定算法的新应用程序来讲,那是一个很好的东西。

SpaCy

3. TextBlob

TextBlob是NLTK的扩大。能够经由过程TextBlob以简化体式格局接见很多NLTK函数,TextBlob借包含Pattern库中的功用。若是您刚刚开始,那能够是进修时运用的好东西,它能够在消费顶用于不需要过分实行的应用程序。总的来说,TextBlob在所有中央皆运用,异常合适小型项目。

4. Textacy

Textacy也是一个很棒的东西。它运用SpaCy作为其中心NLP功用,但它处置惩罚了处置惩罚前后的大量事情。若是您计划运用SpaCy,也能够运用Textacy,如许便能够轻松天引入很多范例的数据,而无需编写分外的资助代码。

5. PyTorch-NLP

PyTorch-NLP曾经推出了一段时间了,但它曾经有了一个重大的社区。它是快速原型建造的绝佳东西。它也常常经由过程最新的研讨停止更新,顶级公司和研究人员曾经公布了很多其他东西去停止种种惊人的处置惩罚,比方图象变更。整体而言,PyTorch针对的是研究人员,但它也能够用于原型和初始消费事情负载,并提供最先辈的算法。在它之上建立的库也能够值得研讨。

二、Node东西

6. Retext

Retext是unified collective的一部分。Unified是一个许可多个东西和插件有用集成和协同事情的界面。Retext是同一东西运用的三种语法之一;其他是Markmark的Remark和HTML的Rehype。Retext没有公然它的很多底层手艺,而是运用插件去实现您可能用NLP对准的效果。那很容易做一些事变,好比搜检拼写,修复排版,检测感情,或确保简朴的插件能够读取文本。总的来说,若是您只需求完成某些事情而无需相识底层流程中的所有内容,那么那是一个精彩的东西和社区。

7. Compromise

Compromise一定不是最庞大的东西。若是您正在寻觅最先辈的算法或最完好的体系,那能够不适合您。然则,若是想要一个具有普遍功用而且能够在客户端运转的下机能东西,那么您应当看看Compromise。

8. Natural

Natural包含您在一样平常NLP库中能够希冀的大多数功用。它重要偏重于英语,但其他一些言语曾经供应,社区对其他孝敬持开放立场。它支撑符号化,词干化,分类,语音,术语频次——顺文档频次,WordNet,字符串相似性和一些变形。它能够取NLTK最具可比性,由于它试图将所有内容皆包含在一个包中,但它更易于运用,而且不一定集中在研讨上。总的来说,那是一个异常完好的库,但它仍处于主动开辟阶段,能够需求分外的底层实现常识才气完整有用。

9. Nlp.js

Nlp.js竖立在其他几个NLP库之上,包孕Franc和Brain.js。它为NLP的很多组件供应了一个很好的界面,如分类,情绪剖析,词干,定名实体辨认和自然语言天生。它借支撑多种言语,若是您企图运用非英语之外的其他言语,那将异常有效。总的来说,那是一个很棒的通用东西,它简化了与其他几个东西的接口。在您需求更壮大或更天真的功用之前,那可能会在您的应用程序中长期运用。

三、Java东西

10. OpenNLP

OpenNLP由Apache Foundation托管,因而很容易将其集成到其他Apache项目中,如Apache Flink,Apache NiFi和Apache Spark。它是一个通用的NLP东西,涵盖了NLP的所有常见处置惩罚组件,能够从命令行或应用程序顶用做库。它借普遍支撑多种言语。整体而言,OpenNLP是一个功能强大的东西,具有很多功用,而且若是您运用Java,则能够为生产事情负载做好预备。

11. StanfordNLP

Stanford CoreNLP是一组东西,供应统计NLP,深度进修NLP和基于划定规矩的NLP功用。曾经建立了很多其他编程言语绑定,因而能够在Java以外运用此东西。它是一个由精英研讨机构建立的异常壮大的东西,但它能够不是消费事情负载的最好选择。此东西具有两重允许,具有贸易用处的特别允许。总的来说,那是一个很好的研讨和实行东西,但它可能会在消费体系中发生分外的本钱。

12. CogCompNLP

由伊利诺伊大学开辟的CogCompNLP也有一个具有相似功用的Python库。它能够用于当地或近程体系上的文本处置惩罚,那能够消弭当地装备的伟大肩负。它供应处置惩罚功用,比方符号化,词性符号,分块,定名实体符号,词形复原,依靠和选区剖析和语义脚色符号。总的来说,那是一个很好的研讨东西,它有许多您能够探究的组件。我不确定它关于消费事情负载是不是很好,但若是您计划运用Java,那么值得实验。

【编纂推荐】

【责任编辑:赵宁宁 TEL:(010)68476606】

点赞 0
  •     
分享:
www.9932.com
人人皆在看
猜您喜好

编纂推荐

头条
热点
存眷
头条
头条
24H热文
一周话题
本月最赞

定阅专栏

共章 |

人定阅进修

共章 |

人定阅进修

视频课程

讲师:939人进修过

讲师:8583人进修过

讲师:27364人进修过

CTO品牌
87374香港金沙妙手
87374香港金沙妙手

最新专题

精选博文
论坛热帖
下载排行

读 书

本书是关于Acegi、CAS的威望教程,是Java/Java EE安全性开发者的必备参考书。无论是Java EE安全性编程模子的配景和基础知识,照样Acegi、CA...

定阅51CTO邮刊

51CTO服务号

金沙前面带@118

51CTO播客