KDnuggets热门深度学习工具排行:Pylearn2 居首,Caffe第二
如今深度学习是AI和机器学习领域最热门的学习趋势。我们来审查为深度学习而开发的软件,包括Caffe,CUDA convnet,Deeplearning4j,Pylearn2,Theano和Torch。
深度学习是现在人工智能(Artificial Intelligence)和机器学习(Machine Learning)最热门的的趋势,每天的报刊都在报道令人惊异的新成就,比如在IQ测试中超越了人类( doing better than humans on IQ test )。
2015 KDnuggets Software Poll 中添加了一个深度学习工具的新类别,民意调查最流行的工具的结果显示如下。
- Pylearn2 (55 users)
- Caffe (29)
- Torch (27)
- Cuda-convnet (17)
- Deeplearning4j (12)
- Other Deep Learning Tools (106)
我没有使用过所有的工具,所以这是基于这些流行工具的主页和教程的简要概述。
Theano&Pylearn2:
Theano和Pylearn2都是在Montreal大学开发出来的,都是由Yoshua Bengio带领的大部分来自于LISA的开发人员参与研发。Theano是一个Python库,你也可以把它看成一个数学表达式编译器。这对于从零开始生成算法是有益的。 这里 是Theano培训的一个直观的例子。
如果我们要使用标准算法,我们可以写Pylearn2插件作为Theano表达式,并且Theano会优化和稳定这个表达式。它包括多层感知器/RBM/Stacked Denoting Autoencoder/ ConvNets所需的所有的东西。这里是一个 快速入门教程 来引导您完成Pylearn2的一些基本思路的学习。
Caffe:
Caffe是由Berkeley Vision and Learning Center开发的,由贾扬清创建,Evan Shelhamer带领完成。它是一种C ++中ConvNets的快速的和可读的实现。如图所示在其官方页面上, Caffe使用一个单一的NVIDIA GPU K40与AlexNet可以每天处理超过60M的图像。它是一个可用于图像分类的工具包,不擅长其他的深度学习应用程序,如文字或语音。
Torch & OverFeat:
Lua 非死book AI是用Lua编写的,并且为 NYU,非死book AI实验室和Google DeepMind Torch使用。它要求为机器学习算法提供一个类似于MATLAB的环境。为什么他们选择Lua/ LuaJIT而不是更流行的Python呢?他们在Torch7的说明中这样解释,“Lua容易和C结合,所以在几个小时内的工作中,任何C或C ++库都可以成为一个Lua库。”Lua是用纯ANSI C编写的,所以它可以很容易地编译任意目标。
OverFeat是一个在ImageNet数据集中使用Torch7训练的特征提取器,同样很容易入门。
Cuda:
毫无疑问,最近GPU加速了深度学习的研究。有关GPU的新闻尤其是NVIDIA CUDA遍及互联网。Cuda-convnet/CuDNN支持所有主流软件,例如Caffe,Torch和Theano,都是容易实现的。
Deeplearning4j:
不像上述工具是作为一种研究工具,Deeplearning4j为在商业环境中使用而设计。正如其介绍,DL4J是一种“基于Java的,聚焦工业,商业支持的,分布式的深度学习框架。”
对比
这些工具似乎在速度和易用性方面表示出友好的竞争性。
Caffe的开发者说,“Caffe是最快的可用的convnet实现工具。”
Torch7被证明在大多数基准中比Theano要快,如Torch7指南中所示。
Soumith给出了所有开源实现的 convnet基准 。
Caffe指南中列出了一些流行的深度学习工具的对照表。
有Reddit上有一个关于“ 最适合深度神经网络的框架 ”的讨论。 DL4J在其网站上也给出了 DL4J vs. Torch vs. Theano vs. Caffe 的比较。
原文链接 : Popular Deep Learning Tools – a review (翻译/王辉 责编/周建丁)