人工智能的10个最佳框架和库

人工智能已经存在了很长时间。然而,由于该领域的巨大改进,近年来它已成为流行语。人工智能曾经被称为总体书呆子和天才的领域,但由于各种图书馆和框架的发展,它已成为一个更友好的IT领域,并有很多人进入它。

在本文中,我们将研究用于人工智能的高质量库,它们的优缺点以及它们的一些功能。让我们潜入并探索这些AI库的世界!

1. TensorFlow

“使用数据流图进行可扩展机器学习的计算。”

语言:C ++或Python。

进入AI时,您会听到的第一个框架是Google的TensorFlow。

TensorFlow是一个开源软件,用于使用数据流图进行数值计算。该框架以具有允许在任何CPU或GPU上进行计算的架构而闻名,无论是桌面,服务器还是移动设备。该框架以Python编程语言提供。

TensorFlow对称为节点的数据层进行排序,并根据获取的任何信息做出决策。看看吧

优点

  • 使用易于学习的语言(Python)。
  • 使用计算图形抽象。
  • TensorBoard可用于可视化。

缺点

  • 它很慢,因为Python不是最快的语言。
  • 缺乏许多预先训练过的模型。
  • 不是完全开源的。

2.Microsoft CNTK

“一个开源深度学习工具包。”

语言:C ++。

我们可以将此微软的回应称为谷歌的TensorFlow。

Microsoft的Computational Network ToolKit是一个增强模块化和维护分离计算网络的库,提供学习算法和模型描述。

在需要大量服务器进行操作的情况下,CNTK可以同时利用许多服务器。

它据说与谷歌的TensorFlow功能相近; 但是,它有点快。在这里了解更多

优点

  • 它非常灵活。
  • 允许分布式培训。
  • 支持C ++,C#,Java和Python。

缺点

  • 它以新语言网络描述语言(NDL)实现。
  • 缺乏可视化。

3. Theano

“一个数值计算库。”

语言:Python。

作为TensorFlow的强大竞争对手,Theano是一个功能强大的Python库,允许涉及具有高效率的多维数组的数值运算。

该库透明地使用GPU来执行数据密集型计算而不是CPU,从而提高了运算效率。

出于这个原因,Theano已被用于为大规模计算密集型操作提供动力大约十年。

然而,2017年9月宣布,Theano的主要开发项目将在2017年11月发布的1.0版本发布后停止。

这并不意味着它在任何方面都是一个功能较弱的库。您仍然可以随时使用它进行深度学习研究。在这里了解更多

优点

  • 针对CPU和GPU进行了适当优化。
  • 高效的数字任务。

缺点

  • 与其他图书馆相比,原始Theano略低。
  • 需要与其他库一起使用才能获得高级抽象。
  • AWS上有点儿马车。

4. Caffe

“快速,开放的深度学习框架。”

语言:C ++。

Caffe是一个强大的深度学习框架。

与此列表中的其他框架一样,它对于深度学习研究来说非常快速有效。

使用Caffe,您可以非常轻松地构建用于图像分类的卷积神经网络(CNN)。Caffe在GPU上工作得很好,这有助于它在运营期间的速度。查看主页以获取更多信息

Caffe主要课程:

优点

  • 可以使用Python和MATLAB的绑定。
  • 很好的表现;很好的绩效。
  • 允许在不编写代码的情况下训练模型。

缺点

  • 经常性网络不好。
  • 新架构并不是很好。

5. Keras

“为人类深入学习。”

语言:Python。

Keras是一个用Python编写的开源神经网络库。

与TensorFlow,CNTK和Theano不同,Keras并不是一个端到端的机器学习框架。

相反,它充当接口并提供高级抽象,这使得无论其所处的框架如何,都可以轻松配置神经网络。

谷歌的TensorFlow目前支持Keras作为后端,微软的CNTK将在很短的时间内完成相同的工作。在这里了解更多

优点

  • 它用户友好。
  • 它很容易扩展。
  • 在CPU和GPU上无缝运行。
  • 与Theano和TensorFlow无缝协作。

缺点

  • 无法有效地用作独立框架。

6. Torch

“一个开源机器学习库。”

语言:C

Torch是一个用于科学和数值运算的开源机器学习库。

这是一个基于 - 不,不是Python - Lua编程语言的库。

通过提供大量算法,它可以使深度学习研究更容易,并提高效率和速度。它具有强大的N维数组,有助于切片和索引等操作。它还提供线性代数例程和神经网络模型。看看吧

优点

  • 非常灵活。
  • 高水平的速度和效率。
  • 提供大量预先训练的模型。

缺点

  • 文件不清楚。
  • 缺少即插即用代码,可立即使用。
  • 它基于一种不那么流行的语言Lua。

7. Accord.NET

“用于.NET的机器学习,计算机视觉,统计和通用科学计算。”

语言:C#。

这是C#程序员的一个机器学习框架。

Accord.NET框架是一个.NET机器学习框架,可以轻松实现音频和图像处理。

该框架可以有效地处理数值优化,人工神经网络甚至可视化。除此之外,Accord.NET在计算机视觉和信号处理方面也很强大,并且可以轻松实现算法。查看主页面

优点

  • 它拥有一支庞大而活跃的开发团队。
  • 非常好的文档框架。
  • 质量可视化。

缺点

  • 不是一个非常流行的框架。
  • 与TensorFlow相比较慢。

8. Spark MLlib

“可扩展的机器学习库。”

语言:Scala。

Apache的Spark MLlib是一个可扩展的机器学习库。

它非常适用于Java,Scala,Python甚至R等语言。它非常高效,因为它可以与库Python和R库中的numpy进行互操作。

MLlib可以轻松插入Hadoop工作流程。它提供机器学习算法,如分类,回归和聚类。

在处理大规模数据时,这个功能强大的库非常快。了解更多信息

优点

  • 对于大规模数据来说非常快。
  • 有多种语言版本。

缺点

  • 陡峭的学习曲线。
  • 即插即用仅适用于Hadoop。

9. Sci-kit Learn

“Python中的机器学习。”

语言:Python。

Sci-kit learn是一个非常强大的机器学习Python库,主要用于构建模型。

使用其他库(如numpy,SciPy和matplotlib)构建,对于统计建模技术(如分类,回归和聚类)非常有效。

Sci-kit learn具有监督学习算法,无监督学习算法和交叉验证等功能。看看吧

优点

  • 许多主要算法的可用性。
  • 高效的数据挖掘。

缺点

  • 不是建造模型的最佳选择。
  • 使用GPU效率不高。

10. MLPack

“可扩展的C ++机器学习库。”

语言:C ++。

MLPack是一个用C ++实现的可扩展的机器学习库。因为它是用C ++编写的,所以你可以猜测它对于内存管理很有用。

MLPack以极快的速度运行,因为高质量的机器学习算法与库一起出现。该库对新手友好,并提供简单的API供使用。看看吧

优点

  • 非常可扩展。
  • Python和C ++绑定可用。

缺点

  • 不是最好的文档。

结论

本文中讨论的库非常有效,并且随着时间的推移已经证明具有高质量。像Facebook,谷歌,雅虎,苹果和微软这样的大公司利用其中一些库进行深度学习和机器学习项目,你为什么不试试呢?

原文标题《10 Best Frameworks and Libraries for AI》

作者: Anton Shaleynikov

译者:February

不代表云加社区观点,更多详情请查看原文链接

原文链接:https://dzone.com/articles/progressive-tools10-best-frameworks-and-libraries

原文作者:Anton Shaleynikov

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器之心

业界 | 英特尔开源nGraph编译器:从多框架到多设备轻松实现模型部署

选自ai.intel 作者:Scott Cyphers 机器之心编译 参与:刘晓坤、李亚洲 近日,英特尔的人工智能产品团队宣布开源 nGraph,这是一个面向各...

41180
来自专栏机器之心

重磅 | 谷歌发布TPU研究论文,神经网络专用处理器是怎样炼成的?

选自Google Cloud Platform 作者:Norm Jouppi 机器之心编译 在去年的谷歌 I/O 开发者大会上,谷歌宣布发布了一款新的定制化硬...

34690
来自专栏机器之心

伯克利星际争霸II AI「撞车」腾讯,作者:我们不一样

深度强化学习已经成为获取有竞争力游戏智能体的有力工具,在 Atari(Mnih et al. 2015)、Go(Silver et al. 2016)、Mine...

12220
来自专栏社区的朋友们

使用结构化分解的线性模型预测 dau

把dau分解为老用户与新增用户后,就可以采用简单的线性模型对dau进行较为有效的预测,预测误差大部分都能控制在4%以内,并且整个建模过程在excel里就能解决。

2.5K00
来自专栏ATYUN订阅号

【工具】学AI必须接触的12样工具,你知道吗?

随着近年来科技的发展,人工智能的利用率也是越来越高,我们需要随时了解人工智能的哪些工具、库、平台,以及提供的功能,哪些更加适合你。下面介绍的一些AI工具、库和平...

38850
来自专栏新智元

盘点 | TOP49人工智能常用 API

【新智元导读】作者Geethika Bhavya Peddibhotla列出了49个人工智能领域常用的API,包括机器学习和预测、人脸和图像识别、文本和情感分析...

49990
来自专栏AI研习社

我是这样从零开始用深度学习做狗脸识别 iOS App 的

我是一个初创公司的软件工程师。曾经有段时间在谷歌工作,做谷歌财经图表和Multiple inboxes,并主管谷歌地图的业务。最近,我开了一家叫Spring的购...

24820
来自专栏专知

Seq2seq强化学习实战 (Pytorch, Tensorflow, Theano)

【导读】本文是Kirti Bakshi在1月14日写的关于其强化学习课程的一个介绍,作者首先简单介绍了机器学习的缺点,以及为什么使用深度学习。然后讲述了其开设的...

46650
来自专栏机器之心

观点 | TensorFlow sucks,有人吐槽TensorFlow晦涩难用

选自nicodjimenez 机器之心编译 参与:李泽南、刘晓坤 作为当今最流行的深度学习框架,TensorFlow 已经出现了两年之久。尽管其背后有着谷歌这样...

357100
来自专栏机器之心

最适合中国开发者的深度学习框架:走向成熟的PaddlePaddle 1.0

自深度学习以分层逐步学习的奇思妙想崛起以来,深度学习框架就在不停地发展。在 AlexNet 还没有携带深度学习亮相 ImageNet 之前,由蒙特利尔大学 LI...

10830

扫码关注云+社区

领取腾讯云代金券