从TensorFlow到PyTorch:九大深度学习框架哪款最适合你?
开源的深度学习神经网络正步入成熟,而现在有许多框架具备为个性化方案提供先进的机器学习和人工智能的能力。那么如何决定哪个开源框架最适合你呢?本文试图通过对比深度学习各大框架的优缺点,从而为各位读者提供一个参考。你最看好哪个深度学习框架呢?
现在的许多机器学习框架都可以在图像识别、手写识别、视频识别、语音识别、目标识别和自然语言处理等许多领域大展身手,但却并没有一个完美的深度神经网络能解决你的所有业务问题。所以,本文希望下面的图表和讲解能够提供直观方法,帮助读者解决业务问题。
下图总结了在 GitHub 中最受欢迎的开源深度学习框架排名,该排名是基于各大框架在 GitHub 里的收藏数,这个数据由 Mitch De Felice 在 2017 年 5 月初完成。

TensorFlow
地址: https://www.tensorflow.org/
TensorFlow 最开始是由谷歌一个称之为 DistBelief V2 的库发展而来,它是一个公司内部的深度神经网络库,隶属于谷歌大脑项目。有一些人认为 TensorFlow 是由 Theano 彻底重构而来。
谷歌开源 TensorFlow 后,立即吸引了一大批开发爱好者。TensorFlow 可以提供一系列的能力,例如图像识别、手写识别、语音识别、预测以及自然语言处理等。2015 年 11 月 9 号,TensorFlow 在 Apache 2.0 协议下开源发布。
TensorFlow 1.0 版本已于 2017 年 2 月 15 日发布,这个版本是之前 8 个版本的优化改进版,其致力于解决 Tensorflow 之前遇到的一系列问题以及完善一些核心能力。TensorFlow 获得成功的因素有:
TensorFlow 提供了如下工具http://aomenyonli.cn/:
TensorBoard:对于网络模型和效果来说是一个设计优良的可视化工具。
TensorFlow Serving:可以保持相同的服务器架构和 API,使得部署新算法和实验变得简单。TensorFlow Serving 提供了与 TensorFlow 模型开箱即用的整合,但同时还能很容易扩展到其它类型的模型和数据。
TensorFlow 编程接口支持 Python 和 C++。随着 1.0 版本的公布,Java、Go、R 和 Haskell API 的 alpha 版本也将被支持。此外,TensorFlow 还可在谷歌云和亚马孙云中运行。
随着 0.12 版本的发行,TensorFlow 将支持 Windows 7、 Windows 10 和 Server 2016。由于 TensorFlow 使用 C++ Eigen 库,所以库可在 ARM 架构上编译和优化。这也就意味着你可以在各种服务器和移动设备上部署你的训练模型,而无需执行单独的模型解码器或者加载 Python 解释器。
TensorFlow 支持细粒度的网格层,而且允许用户在无需用低级语言实现的情况下构建新的复杂的层类型。子图执行操作允许你在图的任意边缘引入和检索任意数据的结果。这对调试复杂的计算图模型很有帮助。
分布式 TensorFlow(Distributed TensorFlowhttp://dajinnylee.cn/)被加进了 0.8 版本,它允许模型并行,这意味着模型的不同部分可在不同的并行设备上被训练。
自 2016 年 3 月,斯坦福大学、伯克利大学、多伦多大学和 Udacity 都将这个框架作为一个免费的大规模在线开放课程进行教授。
TensorFlow 的缺点如下:
TensorFlow 的每个计算流都必须构造为一个静态图,且缺乏符号性循环(symbolic loops),这会带来一些计算困难。
没有对视频识别很有用的三维卷积(3-D convolution)。
尽管 TensorFlow 现在比起始版本(v0.5)快了 58 倍,,但在执行性能方面依然落后于竞争对手。
Caffe
地址:
Caffe 是贾扬清的杰作,目前他在 Facebook AI 平台担任首席工程师。Caffe 可能是自 2013 年底以来第一款主流的工业级深度学习工具包。正因为 Caffe 优秀的卷积模型,它已经成为计算机视觉界最流行的工具包之一,并在 2014 年的 ImageNet 挑战赛中一举夺魁。Caffe 遵循 BSD 2-Clause 协议。
Caffe 的快速使其完美应用于实验研究和商业部署。Caffe 可在英伟达单个 K40 GPU 上每天处理 6000 万张图像。这大概是 1 毫秒预测一张图片,4 毫秒学习一张图片的速度,而且最新的版本处理速度会更快。
Caffe 基于 C++,因此可在多种设备上编译。它跨平台运行,并包含 Windows 端口。Caffe 支持 C++、Matlab 和 Python 编程接口。Caffe 拥有一个庞大的用户社区,人们在其中为被称为「Model Zoo(https://github.com/BVLC/caffe/wiki/Model-Zoo)」的深度网络库做贡献。AlexNet 和 GoogleNet 就是社群用户构建的两个流行网络
从TensorFlow到PyTorch:九大深度学习框架哪款最适合你?的更多相关文章
- 从TensorFlow 到 Caffe2:盘点深度学习框架
机器之心报道 本文首先介绍GitHub中最受欢迎的开源深度学习框架排名,然后再对其进行系统地对比 下图总结了在GitHub中最受欢迎的开源深度学习框架排名,该排名是基于各大框架在GitHub里的收藏数 ...
- 深度学习框架Keras与Pytorch对比
对于许多科学家.工程师和开发人员来说,TensorFlow是他们的第一个深度学习框架.TensorFlow 1.0于2017年2月发布,可以说,它对用户不太友好. 在过去的几年里,两个主要的深度学习库 ...
- TensorFlow与主流深度学习框架对比
引言:AlphaGo在2017年年初化身Master,在弈城和野狐等平台上横扫中日韩围棋高手,取得60连胜,未尝败绩.AlphaGo背后神秘的推动力就是TensorFlow--Google于2015年 ...
- tensorflow(深度学习框架)详细讲解及实战
还未完全写完,本人会一直持续更新!~ 各大深度学习框架总结和比较 各个开源框架在GitHub上的数据统计,如下表: 主流深度学习框架在各个维度的评分,如下表: Caffe可能是第一个主流的工业级深度学 ...
- 转:TensorFlow和Caffe、MXNet、Keras等其他深度学习框架的对比
http://geek.csdn.net/news/detail/138968 Google近日发布了TensorFlow 1.0候选版,这第一个稳定版将是深度学习框架发展中的里程碑的一步.自Tens ...
- ArXiv最受欢迎开源深度学习框架榜单:TensorFlow第一,PyTorch第四
[导读]Kears作者François Chollet刚刚在Twitter贴出最近三个月在arXiv提到的深度学习框架,TensorFlow不出意外排名第一,Keras排名第二.随后是Caffe.Py ...
- 金玉良缘易配而木石前盟难得|M1 Mac os(Apple Silicon)天生一对Python3开发环境搭建(集成深度学习框架Tensorflow/Pytorch)
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_189 笔者投入M1的怀抱已经有一段时间了,俗话说得好,但闻新人笑,不见旧人哭,Intel mac早已被束之高阁,而M1 mac已经 ...
- 转:【AI每日播报】从TensorFlow到Theano:横向对比七大深度学习框架
http://geek.csdn.net/news/detail/139235 说到近期的深度学习框架,TensorFlow火的不得了,虽说有专家在朋友圈大声呼吁,不能让TensorFlow形成垄断地 ...
- 7大python 深度学习框架的描述及优缺点绍
Theano https://github.com/Theano/Theano 描述: Theano 是一个python库, 允许你定义, 优化并且有效地评估涉及到多维数组的数学表达式. 它与GPUs ...
随机推荐
- WPF Blend 脑洞大开的问题:如何用Blend得到或画出一个凹槽、曲面。
原文:WPF Blend 脑洞大开的问题:如何用Blend得到或画出一个凹槽.曲面. 目标图: 步骤一(放置一个矩形,填充蓝色): 步骤二(复制该矩形,并调整边角,填充粉红色): 第三部:让图形部分重 ...
- Ionic app 通知在Moto 360 Watch上显示通知(2)
在前一篇文章中,我们已经将Wtach的环境测试成功,下面进入我们自己消息的接收. 1.安装JPush插件在我们的App中,这个具体步骤可以参考 Ionic 安装JPush过程 2.在App上的登录模块 ...
- pandas:解决groupby().apply()方法打印两次
对于以下dataframe执行dataframe.groupby(['name', 'course']).apply(lambda x: test(x)) 操作 其中test(x)函数为: def t ...
- FreeRTOS 任务与调度器(1)
前言: Task.c和Task.h文件内是FreeRTOS的核心内容,所有任务和调度器相关的API函数都在这个文件中,它包括下图这些内容FreeRTOS文件如下: Task.c和Task.h文件内是F ...
- 手机H5移动端WEB资源整合之meta标签
一.相关网站使用meta的实例 youku首页的Meta设置: <meta charset="utf-8"> <meta http-equiv="X-U ...
- Vue中axios访问 后端跨域问题
public class AllowOriginFilter implements Filter { @SuppressWarnings("unused") public void ...
- GlusterFS分布式存储数据的恢复机制(AFR)的说明
GlusterFSFS恢复数据都是基于副本卷来说的,GlusterFSFS复制卷是采用镜像的方式做的,并且是同步事务性操作.简单来说就是,某一个客户要写文件时,先把这个文件锁住,然后同时写两个或多个副 ...
- cf946d 怎样逃最多的课dp
来源:codeforces D. Timetable Ivan is a student at Berland ...
- D. Vasya and Triangle
传送门 [http://codeforces.com/contest/1030/problem/D] 题意 在第一象限,x,y得坐标上限是n,m,再给你个k,让你找3个整数点,使得围成面积等于(n*m ...
- 1013 B. And
链接 [http://codeforces.com/contest/1013/problem/B] 题意 给你一个n和x,再给n个数,有一种操作用x&a[i]取代,a[i],问使其中至少两个数 ...