本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

报码:开源深度学习平台 TensorFlow、Caffe、MXNet……哪个最适合你

时间:2016-11-30 17:01来源:本港台直播 作者:118开奖 点击:
:COO、执行总编、主编、高级编译、主笔、运营总监、客户经理、咨询总监、行政助理等 9 大岗位全面开放。 简历投递:j [email protected] HR 微信: 13552313024 新智元为COO和执行总编提供

  :COO、执行总编、主编、高级编译、主笔、运营总监、客户经理、咨询总监、行政助理等 9 大岗位全面开放。

  简历投递:j[email protected]

  HR 微信:13552313024

  新智元为COO和执行总编提供最高超百万的年薪激励;为骨干员工提供最完整的培训体系、高于业界平均水平的工资和金。

  加盟新智元,与人工智能业界领袖携手改变世界。

  【新智元导读】本文选自开源深度学习项目 Deeplearning4j (DL4J)博客,文章虽然着重介绍自家产品,但内容仍然值得借鉴。与其他项目相比,DL4J 在编程语言和宗旨两方面都独具特色。本文同时收录其他开源深度学习框架介绍,包括最近被亚马逊选中而备受关注的 MXNet。

  Deeplearning4j (简称 DL4J)不是第一个开源的深度学习项目,但与此前的其他项目相比,DL4J 在编程语言和宗旨两方面都独具特色。DL4J 是基于 JVM、聚焦行业应用且提供商业支持的分布式深度学习框架,其宗旨是在合理的时间内解决各类涉及大量数据的问题。它与 Hadoop 和 Spark 集成,可使用任意数量的 GPU 或 CPU 运行。

  目录

TensorFlow

Theano、Pylearn2 及其生态系统

Torch

Caffe

CNTK

DSSTNE、MXNet

许可

速度

DL4J:为什么用 Java?

DL4J:生态系统

DL4S:基于 Scala 语言的深度学习

PaddlePaddle 等机器学习框架

  TensorFlow

  目前 TensorFlow 还不支持所谓的“内联(inline)”矩阵运算,必须要复制矩阵才能对其进行运算。复制非常大的矩阵会导致成本全面偏高。TF 运行所需的时间是最新深度学习工具的四倍。谷歌表示正在解决这一问题。

  和大多数深度学习框架一样,TensorFlow 是用一个 Python API 编写的,通过 C/C++ 引擎加速。这种解决方案并不适合 Java 和 Scala 用户群。

  TensorFlow 的用途不止于深度学习。TensorFlow 其实还有支持强化学习和其他算法的工具。

  谷歌似乎也已承认 TF 的目标是招募人才。众所周知,他们最近公布了为期一年的谷歌大脑(Google Brain)人才培训项目。真是明智的举措。

  TensorFlow 不提供商业支持,而谷歌也不太可能会从事支持开源企业软件的业务。谷歌的角色是为研究者提供一种新工具。

  和 Theano 一样,TensforFlow 会生成计算图(如一系列矩阵运算,例如 z = simoid(x),其中 x 和 z 均为矩阵),自动求导。自动求导很重要,否则每尝试一种新的神经网络设计就要手动编写新的反向传播算法,没人愿意这样做。在谷歌的生态系统中,这些计算图会被谷歌大脑用于高强度计算,但谷歌还没有开放相关工具的源代TensorFlow 可以算是谷歌内部深度学习解决方案的一半。从企业的角度看,许多公司需要思考的问题在于是否要依靠谷歌来提供这些工具。

  TensorFlow 的利与弊

(+) Python + NumPy

(+) 与 Theano 类似的计算图抽象化

(+) 编译时间比 Theano 快很多

(+) 用 TensorBoard 进行可视化

(+) 同时支持数据并行和模型并行

(-) 速度比其他框架慢

(-) 比 Torch 笨重许多;更难理解

(-) 已预定型的模型不多

(-) 计算图纯粹基于 Python,所以速度较慢

  Theano及其生态系统

  深度学习领域的学术研究者大多依赖 Theano,Theano 是深度学习框架中的元老,用 Python 编写。Theano 和 NumPy 一样,是处理多维数组的学习库。Theano 可与其他学习库配合使用,非常适合数据探索和研究活动。

  现在已有大量基于 Theano 的开源深度学习库,包括 Keras、 Lasagne 和 Blocks。这些学习库试着在 Theano 有时不够直观的界面之上添加一层便于使用的 API。

  相比之下,Deeplearning4j 的目标是成为深度学习领域的 Scikit-learn,力求以可扩展、多个 GPU 或 CPU 并行的方式让尽可能多的控制点实现自动化,在需要时与 Hadoop 和 Spark 集成。

  Theano 的 利与弊

(+) Python + NumPy

(+) 计算图是良好的抽象化方式

(+) RNN 与计算图匹配良好

(+) 高级的包装界面(Keras、Lasagne)减少了使用时的麻烦

(-) 原始的 Theano 级别偏低

(-) 错误信息可能没有帮助

(-) 大型模型的编译时间可能较长

(-) 比 Torch 笨重许多;更难理解

(-) 对已预定型模型的支持不够完善

  Torch

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容