TensorFlow vs Theano vs Torch 与 Keras:深度学习库

人工智能自 2016 年以来越来越受欢迎,20% 的大公司在其业务中使用人工智能(麦肯锡 报告,2018 年)。根据同一报告,人工智能可以为各个行业创造巨大价值。例如,在银行业,人工智能的潜力估计为 $300 亿,零售业数字飙升至 $600亿

为了释放人工智能的潜在价值,公司必须选择正确的深度学习框架。在本教程中,您将了解可用于执行深度学习任务的不同库。一些库已经存在多年,而像 TensorFlow 这样的新库近年来才出现。

8 个最佳深度学习库/框架

在此列表中,我们将比较顶级的深度学习框架。它们都是开源的,在数据​​科学家社区中很受欢迎。我们还将比较流行的 ML 即服务提供商

Torch

Torch 是一个老牌开源机器学习库,它于 15 年前首次发布。它的主要编程语言是 Lua,但也提供了 C 语言的实现。与 Py 相比Tor与 TensorFlow 相比,它支持庞大的机器学习算法库,包括深度学习。它还支持 CUDA 实现,可用于并行计算。

Torch深度学习工具被大多数领先的实验室使用,例如Facebook。 Google例如 Twitter、Nvidia 等。 Torch 有一个库 Python 名字叫 Pytorch。

推理网

Infer.net 由以下公司开发和维护 Microsoft。Infer.net 是一个主要关注贝叶斯统计的库。Infer.net 是一个深度学习可视化工具,旨在为从业者提供最先进的概率建模算法。该库包含 分析工具 例如贝叶斯分析、隐马尔可夫链、聚类。

Keras

Keras 是一个 Python 深度学习框架。这是一个方便构建任何深度学习算法的库。Keras 的优点是它使用相同的 Python 代码可以在 CPU 或 GPU 上运行。此外,编码环境是纯净的,可以训练最先进的计算机视觉、文本识别等算法。

Keras是由弗朗索瓦·肖莱(François Chollet)开发的,他是……的一名研究员。 GoogleKeras 被 CERN、Yelp、Square 等知名机构使用。 Google, Netflix和优步。

Keras

茶野

Theano 是蒙特利尔大学于 2007 年开发的深度学习库。与 TensorFlow 相比,Theano 提供快速计算,可在 CPU 和 GPU 上运行。Theano 已被开发用于训练深度神经网络算法。

Microsoft 认知工具包(CNTK)

Microsoft 工具包,以前称为 CNTK,是由 Microsoft。 根据 Microsoft,该库是市场上最快的库之一。 Microsoft toolkit 是一个开源库,尽管 Microsoft 正在广泛地将其应用于其产品中,例如 Skype、Cortana、Bing 和 Xbox。该工具包提供 Python 和 C++.

MX网

MXnet 是一个最新的深度学习库。它可以通过多种编程语言访问,包括 C++朱莉娅, Python 和 R。MXNet 可以配置为在 CPU 和 GPU 上工作。MXNet 包括最先进的深度学习架构,如卷积神经网络和长短期记忆。MXNet 是为在 harmony 具有动态云基础设施。MXNet 的主要用户是 Amazon

咖啡

Caffe 是贾扬清在伯克利读博士时建立的一个库。比较 Caffe 和 TensorFlow,Caffe 是用 C++ 并且可以在 CPU 和 GPU 上执行计算。Caffe 的主要用途是卷积神经网络。不过,在 2017 年,Facebook 扩展了 Caffe,增加了更多深度学习架构,包括循环神经网络。Caffe 不仅被学术界和初创公司使用,还被雅虎等一些大公司使用。

TensorFlow

TensorFlow 是 Google 开源项目。TensorFlow 是目前最著名的深度学习库。它于 2015 年底向公众发布。

TensorFlow

TensorFlow 是在 C++ 并具有便捷 Python API,尽管 C++ API 也可用。像空客这样的知名公司, Google, IBM 等都在使用TensorFlow制作深度学习算法。

TensorFlow 与 Theano 的比较 Torch、Keras、infer.net、CNTK、MXNet 和 Caffe 的区别:主要差异

图书馆 平台 写入 库达支持 并行执行 拥有训练有素的模型 RNN CNN
Torch Linux中, macOS, Windows LUA
推理网络 Linux中, macOS, Windows Visual Studio中 没有 没有 没有 没有 没有
Keras Linux中, macOS, Windows Python
茶野 跨平台 Python
TensorFlow Linux中, macOS, Windows, Android C++, Python, CUDA
微软认知工具包 Linux中, Windows,使用 Docker 的 Mac C++
咖啡 Linux中, macOS, Windows C++
MX网 Linux中, Windows, macOS, Android,IOS, Javascript C++

总结

TensorFlow 是最好的库,因为它是为所有人而构建的。Tensorflow 库结合了不同的 API,可以构建大规模深度学习架构,如 CNN 或 RNN。TensorFlow 基于图形计算,它允许开发人员使用可视化神经网络的构造 TensorBoad。此工具有助于调试程序。最后,Tensorflow 可以大规模部署。它在 CPU 和 GPU 上运行。

Tensorflowtrac与其他深度学习库相比,它在 GitHub 上拥有最高的受欢迎程度。

比较机器学习即服务

以下是 4 个流行的 DL 服务提供商

Google Cloud ML

Google 为开发者提供 Cloud AutoML 中预训练的模型。此解决方案适用于没有深厚 AutoML 背景的开发者。 机器学习开发人员可以使用最先进的 Google该公司使用其数据预训练了模型。这使得任何开发人员都可以在短短几分钟内训练和评估任何模型。

Google 目前提供用于计算机视觉、语音识别、翻译和自然语言处理的 REST API。

Google Cloud ML

运用 Google Cloud,您可以训练基于 TensorFlow、Scikit-learn、XGBoost 或 Keras 构建的机器学习框架。 Google Cloud 机器学习将通过云端训练模型。

使用的优势 Google 云计算简化了机器学习在生产环境中的部署。无需设置 Docker 容器。此外,云平台负责基础设施,它能够合理分配 CPU、GPU 和 TPU 等资源,并通过并行计算加快训练速度。

AWS SageMaker

主要竞争对手 Google Cloud is Amazon 云计算, AWS. Amazon 已经开发 Amazon SageMaker 允许数据科学家和开发人员构建、训练和投入生产任何机器学习模型。
SageMaker 提供 Jupyter Notebook 包含最常用的机器学习库,TensorFlow、MXNet、Scikit-learn 等。使用 SageMaker 编写的程序会自动在 Docker 容器中运行。 Amazon 处理资源分配以优化训练和部署。

AWS SageMaker

Amazon 为开发人员提供 API,以便为其应用程序添加智能。在某些情况下,如果云端有强大的预训练模型,则无需重新发明轮子,从头开始构建新模型。 Amazon 为计算机视觉、对话聊天机器人和语言服务提供 API 服务:

三个主要可用的 API 是:

  • Amazon 重新认识: 为应用程序提供图像和视频识别
  • Amazon 理解: 执行文本挖掘和神经语言处理,例如,自动检查财务文件合法性
  • Amazon Lex: 将聊天机器人添加到应用程序

Azure 机器学习工作室

机器学习最友好的方法之一可能是 Azure 机器学习工作室。该解决方案的显著优势在于无需任何编程知识。

Microsoft Azure Machine Learning Studio 是一款拖放式协作工具,用于创建、训练、评估和部署机器学习解决方案。该模型可以高效地部署为 Web 服务,并在 Excel 等多个应用程序中使用。

Azure 机器学习界面是交互式的,用户只需拖放即可构建模型。ping 快速添加元素。

Azure 机器学习工作室

当模型准备就绪后,开发人员可以保存并推送至 Azure 精彩图库 or Azure 卖场。

Azure 机器学习可以集成到 R 或 Python 他们定制的内置包。

IBM Watson ML

Watson Studio 可以通过简化的流程简化数据项目,从而实现……trac从数据中挖掘价值和洞见,帮助企业更智能、更快速地发展。Watson Studio 提供了一个易于使用的协作式数据科学和机器学习环境,用于构建和训练模型、准备和分析数据以及共享洞见,所有操作都集中在一个平台上完成。Watson Studio 使用简单,只需拖放代码即可。

IBM Watson ML

Watson Studio 支持一些最流行的框架,如 Tensorflow、Keras、Pytorch、Caffe,并可以在 Nvidia 最新的 GPU 上部署深度学习算法,以帮助加速建模。

总结

在我们看来, Google 云解决方案是最受推荐的方案。 Google 云解决方案在数据存储和机器学习解决方案方面比 AWS 的价格至少低 30%。 Google 在人工智能普及化方面做得非常出色。它开发了一种开源语言 TensorFlow,并进行了优化。 数据仓库 该连接提供了从数据可视化、数据分析到机器学习的强大工具。此外, Google Console 符合人体工程学,而且比 AWS 或 Console 的功能更全面。 Windows.

总结一下这篇文章: