当前位置:首页 >娱乐 >12种自然语言处理的开源工具 在过去的言处几年里

12种自然语言处理的开源工具 在过去的言处几年里

2024-06-30 20:14:36 [百科] 来源:避面尹邢网

12种自然语言处理的种自开源工具

作者:Dan Barker 开发 开发工具 开源 自然语言处理 在过去的几年里,自然语言处理(NLP)推动了聊天机器人、然语语音助手、言处文本预测等这些渗透到我们的开源日常生活中的语音或文本应用程技术的发展。目前有着各种各样开源的工具 NLP 工具,所以我决定调查一下当前开源的种自 NLP 工具来帮助你制定开发下一个基于语音或文本的应用程序的计划。

[[316046]]

让我们看看可以用在你自己的然语 NLP 应用中的十几个工具吧。

12种自然语言处理的开源工具 在过去的言处几年里

在过去的言处几年里,自然语言处理(NLP)推动了聊天机器人、开源语音助手、工具文本预测等这些渗透到我们的种自日常生活中的语音或文本应用程技术的发展。目前有着各种各样开源的然语 NLP 工具,所以我决定调查一下当前开源的言处 NLP 工具来帮助你制定开发下一个基于语音或文本的应用程序的计划。

12种自然语言处理的开源工具 在过去的言处几年里

尽管我并不熟悉所有工具,开源但我将从我所熟悉的工具编程语言出发来介绍这些工具(对于我不熟悉的语言,我无法找到大量的工具)。也就是说,出于各种原因,我排除了三种我熟悉的语言之外的工具。

12种自然语言处理的开源工具 在过去的言处几年里

R 语言可能是没有被包含在内的最重要的语言,因为我发现的大多数库都有一年多没有更新了。这并不一定意味着它们没有得到很好的维护,但我认为它们应该得到更多的更新,以便和同一领域的其他工具竞争。我还选择了最有可能用在生产场景中的语言和工具(而不是在学术界和研究中使用),而我主要是使用 R 作为研究和发现工具。

我也惊讶地发现 Scala 的很多库都没有更新了。我上次使用 Scala 已经过去了两年了,当时它非常流行。但是大多数库从那个时候就再没有更新过,或者只有少数一些有更新。

最后,我排除了 C++。 这主要是因为我上次使用 C++ 编写程序已经有很多年了,而我所工作的组织还没有将 C++ 用于 NLP 或任何数据科学方面的工作。

Python 工具

自然语言工具包(NLTK)

毋庸置疑,自然语言工具包(NLTK)是我调研过的所有工具中功能最完善的一个。它几乎实现了自然语言处理中多数功能组件,比如分类、令牌化、词干化、标注、分词和语义推理。每一个都有多种不同的实现方式,所以你可以选择具体的算法和方式。同时,它也支持不同的语言。然而,它以字符串的形式表示所有的数据,对于一些简单的数据结构来说可能很方便,但是如果要使用一些高级的功能来说就可能有点困难。它的使用文档有点复杂,但也有很多其他人编写的使用文档,比如这本很棒的书。和其他的工具比起来,这个工具库的运行速度有点慢。但总的来说,这个工具包非常不错,可以用于需要具体算法组合的实验、探索和实际应用当中。

SpaCy

SpaCy 可能是 NLTK 的主要竞争者。在大多数情况下都比 NLTK 的速度更快,但是 SpaCy 的每个自然语言处理的功能组件只有一个实现。SpaCy 把所有的东西都表示为一个对象而不是字符串,从而简化了应用构建接口。这也方便它与多种框架和数据科学工具的集成,使得你更容易理解你的文本数据。然而,SpaCy 不像 NLTK 那样支持多种语言。它确实接口简单,具有简化的选项集和完备的文档,以及用于语言处理和分析各种组件的多种神经网络模型。总的来说,对于需要在生产中表现出色且不需要特定算法的新应用程序,这是一个很不错的工具。

TextBlob

TextBlob 是 NLTK 的一个扩展库。你可以通过 TextBlob 用一种更简单的方式来使用 NLTK 的功能,TextBlob 也包括了 Pattern 库中的功能。如果你刚刚开始学习,这将会是一个不错的工具,可以用于对性能要求不太高的生产环境的应用。总体来说,TextBlob 适用于任何场景,但是对小型项目尤佳。

Textacy

这个工具是我用过的名字最好听的。先重读“ex”再带出“cy”,多读“Textacy”几次试试。它不仅仅是名字读起来好,同时它本身也是一个很不错的工具。它使用 SpaCy 作为它自然语言处理核心功能,但它在处理过程的前后做了很多工作。如果你想要使用 SpaCy,那么最好使用 Textacy,从而不用去编写额外的附加代码就可以处理不同种类的数据。

PyTorch-NLP

PyTorch-NLP 才出现短短的一年,但它已经有一个庞大的社区了。它适用于快速原型开发。当出现了最新的研究,或大公司或者研究人员推出了完成新奇的处理任务的其他工具时,比如图像转换,它就会被更新。总体来说,PyTorch 的目标用户是研究人员,但它也能用于原型开发,或使用最先进算法的初始生产载荷中。基于此基础上的创建的库也是值得研究的。

Node.js 工具

Retext

Retext 是 Unified 集合的一部分。Unified 是一个接口,能够集成不同的工具和插件以便它们能够高效的工作。Retext 是 Unified 工具中使用的三种语法之一,另外的两个分别是用于 Markdown 的 Remark 和用于 HTML 的 Rehype。这是一个非常有趣的想法,我很高兴看到这个社区的发展。Retext 没有涉及很多的底层技术,更多的是使用插件去完成你在 NLP 任务中想要做的事情。拼写检查、字形修复、情绪检测和增强可读性都可以用简单的插件来完成。总体来说,如果你不想了解底层处理技术又想完成你的任务的话,这个工具和社区是一个不错的选择。

Compromise

Compromise 显然不是最复杂的工具,如果你正在找拥有最先进的算法和最完备的系统的话,它可能不适合你。然而,如果你想要一个性能好、功能广泛、还能在客户端运行的工具的话,Compromise 值得一试。总体来说,它的名字(“折中”)是准确的,因为作者更关注更具体功能的小软件包,而在功能性和准确性上有所折中,这些小软件包得益于用户对使用环境的理解。

Natural

Natural 包含了常规自然语言处理库所具有的大多数功能。它主要是处理英文文本,但也包括一些其它语言,它的社区也欢迎支持其它的语言。它能够进行令牌化、词干化、分类、语音处理、词频-逆文档频率计算(TF-IDF)、WordNet、字符相似度计算和一些变换。它和 NLTK 有的一比,因为它想要把所有东西都包含在一个包里头,但它更易于使用,而且不一定专注于研究。总的来说,这是一个非常完整的库,目前仍在活跃开发中,但可能需要对底层实现有更多的了解才能完全发挥效力。

Nlp.js

Nlp.js 建立在其他几个 NLP 库之上,包括 Franc 和 Brain.js。它为许多 NLP 组件提供了一个很好的接口,比如分类、情感分析、词干化、命名实体识别和自然语言生成。它也支持一些其它语言,在你处理英语之外的语言时能提供一些帮助。总之,它是一个不错的通用工具,并且提供了调用其他工具的简化接口。在你需要更强大或更灵活的工具之前,这个工具可能会在你的应用程序中用上很长一段时间。

Java 工具

OpenNLP

OpenNLP 是由 Apache 基金会管理的,所以它可以很方便地集成到其他 Apache 项目中,比如 Apache Flink、Apache NiFi 和 Apache Spark。这是一个通用的 NLP 工具,包含了所有 NLP 组件中的通用功能,可以通过命令行或者以包的形式导入到应用中来使用它。它也支持很多种语言。OpenNLP 是一个很高效的工具,包含了很多特性,如果你用 Java 开发生产环境产品的话,它是个很好的选择。

Stanford CoreNLP

Stanford CoreNLP 是一个工具集,提供了统计 NLP、深度学习 NLP 和基于规则的 NLP 功能。这个工具也有许多其他编程语言的版本,所以可以脱离 Java 来使用。它是由高水平的研究机构创建的一个高效的工具,但在生产环境中可能不是最好的。此工具采用双许可证,具有可以用于商业目的的特定许可证。总之,在研究和实验中它是一个很棒的工具,但在生产系统中可能会带来一些额外的成本。比起 Java 版本来说,读者可能对它的 Python 版本更感兴趣。同样,在 Coursera 上最好的机器学习课程之一是斯坦福教授提供的,点此访问其他不错的资源。

CogCompNLP

CogCompNLP 由伊利诺斯大学开发的一个工具,它也有一个相似功能的 Python 版本。它可以用于处理文本,包括本地处理和远程处理,能够极大地缓解你本地设备的压力。它提供了很多处理功能,比如令牌化、词性标注、断句、命名实体标注、词型还原、依存分析和语义角色标注。它是一个很好的研究工具,你可以自己探索它的不同功能。我不确定它是否适合生产环境,但如果你使用 Java 的话,它值得一试。 

责任编辑:庞桂玉 来源: Linux中国 自然语言开源工具

(责任编辑:百科)

    推荐文章
    • 云南省国资委印发《关于加快推进绿色国资建设的实施意见》 推进示范引领

      云南省国资委印发《关于加快推进绿色国资建设的实施意见》 推进示范引领为推动国资国企坚定不移走生态优先、绿色发展之路,以绿色国资建设助力国资国企高质量发展,云南省国资委印发《关于加快推进绿色国资建设的实施意见》(以下简称《意见》)。《意见》强调,全云南国资国企要全面践行 ...[详细]
    • 螃蟹可以放水里养着吗

      螃蟹可以放水里养着吗螃蟹放水里能活多久-九州醉餐饮网活一个月都没有问题,但是不要放太多水螃蟹买回来暂时不吃要不要养在水里?在买回来活螃蟹之后,可以将它们养在水里,而且短时间之内要食用的话,也不用进行喂食,在桶里装上一些清 ...[详细]
    • 秋天的风是什么歌

      秋天的风是什么歌前言:答:歌曲秋天的风开头的歌曲是《今天的爱人是谁》,具体信息如下:歌曲:今天的爱人是谁歌手:陈慧娴作词:潘源良作曲:松田良歌词:秋天的风身边轻轻吹象对我说声也许就算以往爱得多累仍然愿意与你再聚多少痴 ...[详细]
    • 你们不要再打了啦是什么梗

      你们不要再打了啦是什么梗不要打了啦什么梗?不要打了,意思是:你们不要打了,有话好好说嘛。都是大人,都是懂道理的人,你们就不要打了,有话就好好说嘛。大家都不要互相的怨恨对方,有事好好商量,不要打...你们不要吵啦什么梗?台湾一 ...[详细]
    • 北交所开市在即!11月13日进行通关测试 首批星宿股达81家

      北交所开市在即!11月13日进行通关测试 首批星宿股达81家自官宣设立北京证券交易所(以下简称“北交所”)后,各项筹备工作紧锣密鼓,相关工作亦衔枚疾进。11月11日,北交所在官网发布通知表示,将于11月13日开展开市通关测试。伴随北交所 ...[详细]
    • 如何释放被子的静电

      如何释放被子的静电被子起静电怎么办?被子全是静电可以采用以下方法进行处理。1.将有静电的被子放置在太阳下晒1-3小时。2.用喷雾在被子上撒上适量的水,后用加热毯,加热40-60分钟。3.将被子用清。被子上有静电,怎么弄 ...[详细]
    • 室内最有效的驱蚊方法

      室内最有效的驱蚊方法家居灭蚊的好办法有哪些?一个是土蚊香灭蚊,就是在室内点燃蚊香灭蚊。一个是洋蚊香灭蚊,就是电蚊香灭蚊。两个效果都不错。2、熏。家里最好的驱蚊灭蚊的方法有哪些?2,最常用,最有效的方法,就是使用蚊香。睡前 ...[详细]
    • 为什么运动不出汗

      为什么运动不出汗前言:为什么运动不流汗运动不出汗的原因:流汗只是调节身体温度的机制,与运动效果没有直接关系。天气热也会流汗,不代表运动量充足。长时间但太过温和的运动,消耗的热量或脂肪比不上短时间而有一定强度的运动。运 ...[详细]
    • 智升集团控股(08370.HK)发布业绩公告:全年公司拥有人应占亏损2700万元

      智升集团控股(08370.HK)发布业绩公告:全年公司拥有人应占亏损2700万元智升集团控股(08370.HK)发布至2020年12月31日止年度全年业绩公告,集团于报告期间实现收入约人民币8240万元,较去年同期增加约69.6%。公司报告期间拥有人应占的年内亏损约人民币2700 ...[详细]
    • 侑开始了什么梗

      侑开始了什么梗求推荐百合动漫?曾有争议的百合神作。苍井渚砂因为家庭关系不得不转到圣米雅特尔女学园。在学院中,苍井渚砂认识了花园静马和凉水玉青,在发生了一系列的故事后,花园静马察觉到...脑残的来源,以及简称?脑残, ...[详细]
    热点阅读