2020年最具潜力44个顶级开源项目涵盖11类AI学习框架、平台(值得收藏)

雷锋网 AI 开发者按:工欲善其事必先利其器,这也是大部分开发者在日常工作中最重要开发原则。选择与开发内容相匹配的工具,常常会使我们事半功倍。但面对人工智能的多个领域,如:机器学习、深度学习、NLP等等,多样的工具有时也让我们也无从选择。

就在最近,一个基于 javascript 的可视化库 D3js(treemap 可视化)对 json 文件生成的技术图,给开发者提供了详细的各领域工具清单,内容涵盖了 11 种极具潜力的 AI 工具类型,雷锋网 AI 开发者将其整理如下,强烈建议大家收藏~

一个基于 PyTorch 的 NLP 研究库,利用深度学习来进行自然语言理解,通过处理低层次的细节、提供高质量的参考实现,能轻松快速地帮助研究员构建新的语言理解模型。

此前,OpenAI 官方宣布了「全面转向 PyTorch」的消息,计划将自家平台的所有框架统一为 PyTorch,也进一步体现了 PyTorch 在深度学习方面的潜力。

尤其在监督学习部分,Scikit-learn 提供了广义线性模型、支持向量机、最近邻算法、高斯过程、朴素贝叶斯、决策树和集成方法等算法教程,同时还介绍了特征选择、随即梯度下降算法、线性与二次判别分析等在监督学习中非常重要的概念;而在半监督学习中的标签传播算法和无监督学习中的聚类与降维算法方面,也有非常多的教程。

从1月29日住院,一家人在病房里生活了半个多月。

MXNet 是一个功能齐全,可编程和可扩展的深入学习框架,支持最先进的深入学习模式(https://mxnet.apache.org/)。

刚刚1岁的小宝,是病房里所有护士的“宝”。自从小宝住进来之后,护士们都操心他的吃喝。“宝宝的主食是奶粉,但也喜欢和大人一起吃饭。”阳阳说,病房的护士还特别联系医院的营养师,“给小宝专门煮一碗软一点的面条”“给小宝单独来一份煮鸡蛋”……护士们还会经常给小宝带来水果,苹果、橘子……“小宝最喜欢吃护士阿姨带来的大苹果,特别甜!”阳阳说。

DL4J 的基本特性包括:DL4J 中的神经网络训练通过簇的迭代并行计算;整个过程由 Hadoop 和 Spark 架构支持;使用 Java 允许开发者在 Android 设备的程序开发周期中使用。

MXNet 提供了混合编程模型(命令式和声明式)和大量编程语言的代码(包括 Python、C++、R、Scala、Julia、Matlab 和 JavaScript)的能力,是一个易安装易上手的开源深度学习工具,它提供了一个 python 接口 gluon,能够让开发者迅速搭建起神经网络,并进行高效训练。

fastText 的核心是使用「词袋」的方式,不管文字的顺序;但它不是线性的,而是使用分层分类器来将时间复杂度降低到对数级别,并且在具有更高分类数量的大数据集上更高效。

作为 TensorFlow 强有力竞争对手的 PyTorch,也是目前较为主流的深度学习工具之一。

它已经成为 Python 中最广泛使用的工业级自然语言库之一,它提供了当前最佳的准确性和效率,并且有一个活跃的开源社区支持。

婆婆成为疑似病例被隔离的第二天,阳阳家所在区的疾控部门上门来为一家人采集咽拭子,同时嘱咐他们一家都要居家隔离。这天晚上,1岁的小宝发烧了,超过39℃。

2月14日,一家三口收到了出院通知。下午2点,雪渐渐停了。在医院大门口,阳阳连声感谢北京佑安医院,感谢所有的医护人员。“我们全家康复了,这都是医护人员精心治疗的结果。”阳阳说。

探亲,老人途经武汉抵京

BERT 是一个基于双向 Transformer 的大规模预训练语言模型,用于对大量未标记的文本数据进行预训练,以学习一种语言表示形式,这种语言表示形式可用于对特定机器学习任务进行微调。

ReAgent 由三部分组成:生成决策并接收决策反馈的模型、用于评估新模型部署前性能的模块及快速迭代的服务平台。同时,ReAgent 也是创建基于 AI 的推理系统的最全面、模块化开源平台,并且是第一个包含策略评估的平台,将会加速相关决策系统的部署。

随后,两位老人也确诊了。一家五口人全部“中招”。

适用于语音识别的工具

scikit-learn 是一种强大的基于 Python 语言的机器学习算法库(https://scikit-learn.org/stable/)。其中,包含了算法预处理,模型参数择优,回归与分类等算法,官方文档包含了每一种算法的例子,代码简洁优美,可视化了每一种算法结果,即能学习 python,也是帮助开发者更好理解机器学习算法的便利工具。

一款简单易用的 Python NLP 库,允许将当前最优自然语言处理(NLP)模型应用于文本,如命名实体识别(NER)、词性标注(PoS)、词义消歧和分类。

一家三口出院,医护人员为他们送上鲜花。花圣烨摄

这类任务需要「记忆」,下一个句子必须与前一个句的上下文相关联(这是相当关键的),以免丢失重要的信息。通过将 attention 应用到正在使用的单词上,则可以解决当句子太长的时,RNN 或 CNN 无法跟踪上下文和内容的问题。

PyTorch 是一个开源的机器学习框架,提供了两个高级功能,包括:具有强有力的 GPU 加速度的张量计算(如 NumPy),以及基于磁带自动调整系统构建的深度神经网络;可加快从研究原型到生产部署的过程。

两天后,阳阳的公公发烧了。服用感冒药后,老人的症状减轻了。第二天,阳阳的婆婆也发烧了,阳阳估摸着是家里的厨房温度有点低,婆婆做饭的时候冻感冒了,于是给婆婆也吃了感冒药,当天晚上婆婆的体温就下降了。又过了一天,婆婆再次发烧。到医院就诊后医生判断为疑似病例,需要隔离。

BERT 被称为是 NLP 领域中里程碑的进展;目前,BERT 也是 NLP 深度学习中的重要组成部分,很多之后的自然语言处理模型都是在此基础上优化与改进而得。

一款基于 Tensorflow 的框架,旨在为新手和经验丰富的强化学习研究人员提供兼具灵活性、稳定性和可重复性的新工具。

万幸,全家症状都不重

该框架的灵感来源于大脑中奖励-动机行为的主要成分「多巴胺受体」,这反映了神经科学与强化学习研究之间的强大的历史联系,是一个强化学习算法快速原型的研究框架。

FastText 是 Facebook 人工智能研究实验室(FAIR)开源的一个文本处理库,他是一个专门用于文本分类和外文本表示的库,用于高效文本分类和表示学习。

它具有工具、库、社区资源全面且灵活的生态系统,提供稳定的 Python 和 C ++ API,以及其他语言的非保证向后兼容 API;能够帮助开发者们在 ML 领域的研究与发展,并使开发人员轻松构建和部署 ML 支持的应用程序。

这是一个具有工业强度级的 Python 自然语言处理工具包。

这是一个面向科学家的深度学习和强化学习库。TensorLayer 由底层到上层可以分为三大模块:神经网络模块、工作流模块、应用模块。

该语音识别工具包使用了 C ++编写,研究开发人员利用 Kaldi 可以训练出语音识别神经网路模型,但如果需要将训练得到的模型部署到移动端设备上,通常需要大量的移植开发工作。

适用于强化学习的工具

DL4J 是采用 java 和 jvm 编写的开源深度学习库,支持各种深度学习模型。DL4J 最重要的特点是支持分布式,可以在 Spark 和 Hadoop 上运行,它支持分布式 CPU 和 GPU 运行,并可以利用 Spark 在多台服务器多个 GPU 上开展分布式的深度学习模型训练,让模型运行更快。

适用于深度学习的工具

今年1月20日,阳阳的公公婆婆专程从湖北老家来到北京,一是来过春节,二是来替换一下在家里帮忙带了半年孩子的亲家公亲家母。老两口从老家出发时,疫情蔓延的消息已经引起阳阳夫妻的关注,他们特地嘱咐好两位老人,一路上都要戴着口罩。两位老人戴着口罩到了武汉,在汉口火车站停留了两个小时。赶上饭点,两位老人在火车站吃了一顿简餐。然后戴着口罩,一路到了北京。

Transformers 是神经机器翻译中使用的一种神经网络,它主要涉及将输入序列转换为输出序列的任务,这些任务包括语音识别和文本转换语音。

它可用于构建生产级计算机视觉、计算机试听、信号处理和统计应用程序甚至用于商业用途的完整框架,并为.NET 的应用程序提供了统计分析、机器学习、图像处理、计算机视觉相关的算法。

它无需对 agent 的先验知识,并且采用 python 作为主要开发语言,因此可以简单的和 TensorFlow 等深度学习库进行开发集成,同时直观的将学习结果用画面直观的展示出来。Gym 库中包含许多可以用于制定强化学习算法的测试问题(即环境),这些环境有共享接口,允许编写通用的算法。

揪心,一家五口全感染

Kaldi 是目前使用广泛的开发语音识别应用的框架。

适用于经典机器学习的工具

Sonnet 主要用于让 DeepMind 开发的其它模型更容易共享,Sonnet 可以在内部的其它子模块中编写模块,或者在构建新模块时传递其它模型作为参数;同时,Sonnet 提供实用程序来处理这些任意层次结构,以便于使用不同的 RNN 进行实验,整个过程无需繁琐的代码改写。

“我还记得那是后半夜1点多。”阳阳说,着急的一家人先后拨打了社区电话和急救电话,最后按照工作人员指引,一家人开车来到定点医疗机构佑安医院。此时,一家人采集的咽拭子检验结果还没出来,但小宝很快确诊了。1月29日凌晨2点半,一家三口住进了佑安医院的隔离病房。很快,阳阳和爱人的检查结果也出来了:阳性。

目录: Ⅰ、经典机器学习(1-3) Ⅱ、深度学习(4-8) Ⅲ、强化学习(9-12) Ⅳ、自然语言处理(13-18) Ⅴ、语音识别(19-21) Ⅵ、计算机视觉(22-26) Ⅶ、分布式训练(27-31) Ⅷ、自动建模(32-35) Ⅸ、IDEs系统(36-38) Ⅹ、平台(39-41) Ⅺ、评分推理系统(42-43)

适用于自然语言处理的工具

AllenNLP 能让设计和评估新的深度学习模型变得简单,几乎适用于任何 NLP 问题,通过利用一些基础组件,你可以轻松地在云端或是你自己的笔记本上跑模型。

与 Keras 和 Pytorch 相比,TensorLayer 提高了神经网络模块的抽象化设计,同时实现了降低使用现有层和开发新层的工作量。

Facebook 推出的一个构建决策推理系统的模块化端到端平台,用于推理系统(强化学习、上下文管理等), 可以显著简化推理模型构建过程。

小宝已经换了一批玩具,他最喜欢会唱歌的电话机,还有能跑的小汽车,“这些玩具都是佑安医院的医生护士送给他的。”阳阳说。

30岁出头的阳阳(化名)是一名开朗阳光的程序员,她的先生也是一名程序员。两个人在北京生活了10多年,成家立业,去年家里多了新成员:儿子小宝。今年春节前,孩子的爷爷奶奶途经武汉来京探亲,结果老老少少三代五口人全部感染新型冠状病毒。2月14日,阳阳小家三口人从佑安医院出院了!“一定要相信科学,相信医院,相信医生,新冠肺炎能治好,抗击疫情一定会胜利!”阳阳说。

幸运的是,每个人的症状都不重。小宝自始至终没有出现肺部感染的情况,“两天后就退烧了。”阳阳既不发烧也不咳嗽,自我感觉和平时没有区别,但胸部CT显示肺部有感染。阳阳的先生有些低烧,持续了一周之后也迅速好转。“他现在已经有一周没发烧了,只是有一点点轻微的干咳。”阳阳说。在同一家医院住院的婆婆,症状稍微重一点,但现在已经基本康复。公公在另外一家医院住院,基本上也好利落了。

Flair 基于 Pytorch 的 NLP 框架,它的接口相对更简单,允许用户使用和结合不同的词嵌入和文档嵌入,包括 Flair 嵌入、BERT 嵌入和 ELMo 嵌入。

XGBoost 最大的特点在于,它能够自动利用 CPU 的多线程进行并行,同时在算法上加以改进提高了精度。它是经过优化的分布式梯度提升库,可扩展性强,高效、灵活且可移植。

Back To Top