值得我们深度学习的十大开源框架

值得我们深度学习的十大开源框架

本周早些时候 Google 开源了 TensorFlow(GitHub),此举在深度学习领域影响巨大,因为 Google 在人工智能领域的研发成绩斐然,有着雄厚的人才储备,而且 Google 自己的 Gmail 和搜索引擎都在使用自行研发的深度学习工具。

无疑,来自 Google 军火库的 TensorFlow 必然是开源深度学习软件中的明星产品,登陆 GitHub 当天就成为最受关注的项目,当周获得评星数就轻松超过 1 万个。

值得我们深度学习的十大开源框架

对于希望在应用中整合深度学习功能的开发者来说,GitHub 上其实还有很多不错的开源项目值得关注,首先我们推荐目前规模人气最高的 TOP3:

一、Caffe。源自加州伯克利分校的 Caffe 被广泛应用,包括 Pinterest 这样的 web 大户。与 TensorFlow 一样,Caffe 也是由 C++ 开发,Caffe 也是 Google 今年早些时候发布的 DeepDream 项目(可以识别喵星人的人工智能神经网络)的基础。

二、Theano。2008 年诞生于蒙特利尔理工学院,Theano 派生出了大量深度学习 Python 软件包,最著名的包括 Blocks 和 Keras。

三、Torch。Torch 诞生已经有十年之久,但是真正起势得益于去年 Facebook 开源了大量 Torch 的深度学习模块和扩展。Torch 另外一个特殊之处是采用了不怎么流行的编程语言 Lua(该语言曾被用来开发视频游戏)。

除了以上三个比较成熟知名的项目,还有很多有特色的深度学习开源框架也值得关注:

四、Brainstorm。来自瑞士人工智能实验室 IDSIA 的一个非常发展前景很不错的深度学习软件包,Brainstorm 能够处理上百层的超级深度神经网络——所谓的公路网络 Highway Networks。

五、Chainer。 来自一个日本的深度学习创业公司 Preferred Networks,今年 6 月发布的一个 Python 框架。Chainer 的设计基于 define by run 原则,也就是说,该网络在运行中动态定义,而不是在启动时定义,这里有 Chainer 的详细文档。

六、Deeplearning4j。 顾名思义,Deeplearning4j 是”for Java”的深度学习框架,也是首个商用级别的深度学习开源库。Deeplearning4j 由创业公司 Skymind 于 2014 年 6 月发布,使用 Deeplearning4j 的不乏埃森哲、雪弗兰、博斯咨询和 IBM 等明星企业。

DeepLearning4j 是一个面向生产环境和商业应用的高成熟度深度学习开源库,可与 Hadoop 和 Spark 集成,即插即用,方便开发者在 APP 中快速集成深度学习功能,可应用于以下深度学习领域:

人脸/图像识别

语音搜索

语音转文字(Speech to text)

垃圾信息过滤(异常侦测)

电商欺诈侦测

七、Marvin。是普林斯顿大学视觉工作组新推出的 C++ 框架。该团队还提供了一个文件用于将 Caffe 模型转化成语 Marvin 兼容的模式。

八、ConvNetJS。这是斯坦福大学博士生 Andrej Karpathy 开发浏览器插件,基于万能的 JavaScript 可以在你的游览器中训练神经网络。Karpathy 还写了一个 ConvNetJS 的入门教程,以及一个简洁的浏览器演示项目。

九、MXNet。出自 CXXNet、Minerva、Purine 等项目的开发者之手,主要用 C++ 编写。MXNet 强调提高内存使用的效率,甚至能在智能手机上运行诸如图像识别等任务。

十、Neon。由创业公司 Nervana Systems 于今年五月开源,在某些基准测试中,由 Python 和 Sass 开发的 Neon 的测试成绩甚至要优于 Caffeine、Torch 和谷歌的 TensorFlow。