个性化阅读
专注于IT技术分析

人工智能世界的9大框架热门推荐

本文概述

人工智能被认为是虚构的时代已经一去不复返了。

从机器人到Google Siri, 再到新的Google Duplex的推出, 人工智能似乎已经取得了长足的进步, 变得越来越人性化。

对机器学习和AI的需求呈指数增长。此外, 社区本身也因此增加了, 这导致了一些AI框架的发展, 这些框架使学习AI变得更加容易。

在本文中, 我们将讨论一些最佳框架, 以帮助你开始进行AI开发。

Tensor Flow

人工智能世界的9大框架2

Tensor Flow来自Google家族, 被证明是一个强大的开源框架, 支持深度学习, 甚至可以从移动设备访问。

Tensor Flow被认为是用于统计程序开发的合适工具。由于它提供了分布式训练, 因此可以在用户喜欢的任何抽象级别上更有效地训练机器模型。

特征

  • 可扩展的多重编程界面, 易于编程
  • 强大的增长动力, 强大的开源社区
  • 为人们提供广泛且文档齐全的手册

优点

  • Tensor Flow使用的语言是Python, 它在当今非常流行。
  • 该框架具有很高的计算能力。因此, 它可以在任何CPU或GPU上使用。
  • 使用计算图抽象来创建机器模型

缺点

  • 为了做出决定或预测, 框架将输入数据通过多个节点传递。这可能很耗时。
  • 它还缺少许多AI的预训练模型。

Microsoft CNTK

人工智能世界的9大框架4

Microsoft CNTK是一种基于神经网络的更快, 通用的开源框架, 该神经网络支持文本, 消息和语音重塑。

由于对机器模型进行了更快的整体评估, 同时又保证了准确性, 因此它提供了有效的缩放环境。

Microsoft CNTK与主要的海量数据集集成在一起, 使其成为Skype, Cortana等大型公司采用的领先选择, 并且具有易于表达的易于使用的体系结构。

特征

  • 高度优化以提供效率, 可扩展性, 速度和高级集成
  • 具有内置组件, 例如超参数调整, 监督学习模型, 强化, CNN, RNN等。
  • 资源被利用以提供最佳效率。
  • 可以高效表达的自有网络, 例如高级和低级的完整API

优点

  • 由于该框架支持Python和C ++, 因此可以同时与多个服务器一起使用, 从而使学习过程更快。
  • 考虑到AI世界的最新发展而开发。 Microsft CNTK的体系结构支持GAN, RNN和CNN。
  • 它允许进行分布式培训来有效地训练机器模型。

缺点

  • 它缺少可视化板和移动ARM支持。

Caffe

人工智能世界的9大框架6

Caffe是深度学习网络, 它与预先加载的一组经过训练的神经网络一起提供。如果你的截止日期临近, 这应该是你的首选。

以其图像处理功能而闻名, 该框架还扩展了对MATLAB的支持。

特征

  • 其所有模型均以纯文本模式编写
  • 由于已经预先加载, 因此可以提供巨大的速度和高效的工作。
  • 一个活跃的开源社区, 用于讨论和协作代码。

优点

  • 互连C, C ++和Python, 它还支持CNN(卷积神经网络)的建模
  • 由于其速度快, 因此在计算数字任务时效率很高。

缺点

  • Caffe无法处理复杂数据, 但是在处理图像的视觉处理时相对较快。

Theano

人工智能世界的9大框架8

该框架使用GPU代替CPU, 支持深度学习研究, 并能够为需要高计算能力的网络提供准确性。例如, 多维数组的计算需要高功率, 而Theano能够做到。

Theano基于python, 这是一种经过验证的编程语言, 可以实现更快的处理和响应。

特征

  • 由于动态代码生成, 表达式的求值速度更快
  • 即使值很小, 也能提供极好的精度。
  • 单元测试是Theano的重要功能, 因为它允许用户自我验证其代码以及轻松检测和诊断错误。

优点

  • Theano为所有数据密集型应用程序提供了有效的支持, 但需要与其他库结合使用。
  • 针对CPU和GPU进行了有效的优化

缺点

  • Theano的当前版本将没有更多更新或添加功能。

Amazon机器学习

人工智能世界的9大框架10

作为AI社区的新加入者, Amazon机器学习为自学习工具的开发提供了高端支持。

该框架已经在其多种服务(例如AWS, S3和Amazon Redshift)中拥有现有的用户群。这是Amazon的一项托管服务, 对模型执行了三个操作, 分别是数据分析, 模型训练和评估。

特征

  • 即使你是初学者, 数据科学家或开发人员, 也可以针对AWS的各个级别的体验量身定制工具
  • 安全至关重要, 因此所有数据均已加密
  • 提供用于数据分析和理解的广泛工具
  • 与所有主要数据集的整合

优点

  • 你无需使用此框架编写大量代码。相反, 它使你可以通过API与基于AI的框架进行交互。
  • 数据科学家, 开发人员和ML研究人员通常使用。

缺点

  • 它缺乏灵活性, 因为整个框架都是抽象的, 因此, 如果你想选择特定的规范化或机器学习算法, 则不能。
  • 它还缺乏数据可视化。

Torch

人工智能世界的9大框架12

Torch是可以支持数字运算的开源框架。它提供了许多算法, 可加快深度学习网络的发展速度。

它在Facebook和Twitter的AI实验室中得到广泛使用。有一个称为PyTorch的基于python的框架, 事实证明它更简单, 更可靠。

特征

  • 具有许多例程, 可使用N维数组模型进行索引, 切片和转置
  • 存在优化例程, 主要是基于神经网络模型的数字
  • GPU支持非常高效
  • 与iOS和Andriod轻松集成

优点

  • 在语言和集成方面具有很高的灵活性
  • 高水平的速度和GPU利用率
  • 已有模型可用于训练数据。

缺点

  • 文档对用户不是很清楚, 因此呈现了更陡峭的学习曲线
  • 缺少立即使用的代码, 因此需要时间。
  • 它最初是基于一种称为Lua的编程语言, 并且很少有人知道它。

Accord.Net

人工智能世界的9大框架14

Accord.net是基于C#的框架, 可帮助开发用于音频和图像处理的神经网络。

应用程序也可以在商业上使用它来产生计算机视觉应用程序, 信号处理以及统计应用程序。

特征

  • 成熟, 经过良好测试的代码库, 始于2012年
  • 提供全面的样本模型和数据集, 以快速启动你的应用程序

优点

  • 它由一个活跃的开发团队不断支持。
  • 这个文档齐全的框架可有效处理数字密集型计算和可视化
  • 利用该框架可以方便地执行算法和信号处理。
  • 它可以轻松处理数值优化和人工神经网络。

缺点

  • 与其他框架相比, 它不是很为人所知。
  • 与其他框架相比, 其性能较慢。

Apache Mahout

Apache Mahout是一个开放源代码框架, 旨在开发可伸缩的机器学习框架。它不处理API, 但可以帮助数据科学家和工程师实施新的机器学习算法。

人工智能世界的9大框架16

特征

  • 以Scala DSL闻名, 它在数学上非常具有表现力
  • 将支持扩展到分布式的多个后端。

优点

  • 它有助于聚类, 协作过滤和分类。
  • 它的计算操作使用Java库, 速度更快。

缺点

  • 在此框架下, Python库不如Java库兼容。
  • 它的计算操作比Spark MLib慢。

Spark MLib

R, Scala, Java和Python支持Apache的Spark MLib框架。可以将其与Hadoop工作流一起加载, 以提供机器学习算法, 例如分类, 回归和聚类。

除了Hadoop, 它还可以与云, Apache甚至独立系统集成。

特征

  • 高性能是关键要素之一, 据说比MapReduce快100倍
  • Spark具有多种用途, 可在多种计算环境中运行

优点

  • 由于它可以进行迭代计算, 因此可以快速处理大量数据。
  • 它有多种语言版本, 并且易于插入。
  • 它轻松地循环进行大规模数据处理。

缺点

  • 它只能插入Hadoop。
  • 没有同一个框架的大量工作, 很难理解这个框架的机制。

AI框架比较

构架 语言 开源? 建筑特色
Tensor Flow C ++或Python 使用数据结构
Microsoft CNTK C ++ 基于GPU / CPU。它支持RNN, GNN和CNN。
Caffe C ++ 它的架构支持CNN
Theano python 灵活的架构使其可以部署在任何GPU或CPU中
Amazon机器学习 多种语言 来自亚马逊, 它使用AWS。
Torch 它的体系结构允许强大的计算。
Accord.Net C# 能够进行科学计算和模式识别。
Apache Mahout Java, Scala 无需编程即可使机器学习
Spark MLib R, Scala, Java和Python 驱动程序和执行程序在其处理器中运行。水平或垂直群集。

我希望以上内容可以帮助你为下一个现代应用程序开发选择AI框架。

如果你是一名开发人员, 并希望学习深度学习以进入AI, 那么你可以考虑使用Coursera开设的这门专业在线课程。

赞(0)
未经允许不得转载:srcmini » 人工智能世界的9大框架热门推荐

评论 抢沙发

评论前必须登录!