大数据文摘作品
编译:惊蛰、什锦甜、蒋宝尚
深度学习是一种基于对数据进行表证学习的机器学习方法,近些年不断发展并广受欢迎。
作为一个相对较新的概念,对于无论是想要进入该领域的初学者,还是已经熟知方法的老手来说,触手可及的学习资源太丰富了。
为了不被日新月异的技术和潮流所淘汰,积极参与深度学习社区中开源项目的学习和互动是个很好的方法。
在本文中文摘菌将为大家详细介绍16种GitHub中最受欢迎的深度学习开源平台和开源库,除此之外,还有些比较不错的平台和框架虽然没有进入榜单,文摘菌也列了出来,供大家参考。
GitHub收藏和贡献率最高的16个开源深度学习框架,圆圈的颜色越偏绿色表示框架越新,颜色越偏蓝色表明框架的时间越早。
从上图可知,TensorFlow高居榜首,第二名和第三名的是分别是Keras和Caffe。下面文摘菌就将这些资源分享给大家。
16个最棒的深度学习开源框架和平台
1. TensorFlow
TensorFlow最初由谷歌的Machine Intelligence research organization 中Google Brain Team的研究人员和工程师开发的。这个框架旨在方便研究人员对机器学习的研究,并简化从研究模型到实际生产的迁移的过程。
收藏: 96655, 贡献人数: 1432, 程序提交次数: 31714, 建立日期: 2015年11月1日。
链接:https://github.com/tensorflow/tensorflow
2 Keras
Keras是用Python编写的高级神经网络的API,能够和TensorFlow,CNTK或Theano配合使用。
收藏: 28385, 贡献人数: 653, 程序提交次数: 4468, 建立日期: 2015年3月22日。
链接:https://github.com/keras-team/keras
3. Caffe
Caffe是一个重在表达性、速度和模块化的深度学习框架,它由Berkeley Vision and Learning Center(伯克利视觉和学习中心)和社区贡献者共同开发。
收藏: 23750, 贡献人数: 267, 程序提交次数: 4128, 建立日期: 2015年9月8日。
链接:https://github.com/BVLC/caffe
4. Microsoft Cognitive Toolkit
Microsoft Cognitive Toolkit(以前叫做CNTK)是一个统一的深度学习工具集,它将神经网络描述为一系列通过有向图表示的计算步骤。
收藏: 14243, 贡献人数: 174, 程序提交次数: 15613, 建立日期: 2014年7月27日。
链接:https://github.com/Microsoft/CNTK
5. PyTorch
PyTorch是与Python相融合的具有强大的GPU支持的张量计算和动态神经网络的框架。
收藏: 14101, 贡献人数: 601, 程序提交次数: 10733, 建立日期: 2012年1月22日。
链接:https://github.com/pytorch/pytorch
6. Apache MXnet
Apache MXnet是为了提高效率和灵活性而设计的深度学习框架。它允许使用者将符号编程和命令式编程混合使用,从而最大限度地提高效率和生产力。
收藏: 13699, 贡献人数: 516, 程序提交次数: 6953, 建立日期: 2015年4月26日。
链接:https://github.com/apache/incubator-mxnet
7. DeepLearning4J
DeepLearning4J和ND4J,DataVec,Arbiter以及RL4J一样,都是Skymind Intelligence Layer的一部分。它是用Java和Scala编写的开源的分布式神经网络库,并获得了Apache 2.0的认证。
收藏:8725, 贡献人数: 141, 程序提交次数: 9647, 建立日期: 2013年11月24日。
链接:https://github.com/deeplearning4j/deeplearning4j
8. Theano
Theano可以高效地处理用户定义、优化以及计算有关多维数组的数学表达式。 但是在2017年9月,Theano宣布在1.0版发布后不会再有进一步的重大进展。不过不要失望,Theano仍然是一个非常强大的库足以支撑你进行深度学习方面的研究。
收藏: 8141, 贡献人数: 329, 程序提交次数:27974, 建立日期: 2008年1月6日。
链接:https://github.com/Theano/Theano
9. TFLearn
TFLearn是一种模块化且透明的深度学习库,它建立在TensorFlow之上,旨在为TensorFlow提供更高级别的API,以方便和加快实验研究,并保持完全的透明性和兼容性。
收藏: 7933, 贡献人数: 111, 程序提交次数: 589, 建立日期:2016年3月27日。
链接:https://github.com/tflearn/tflearn
10. Torch
Torch是Torch7中的主要软件包,其中定义了用于多维张量的数据结构和数学运算。此外,它还提供许多用于访问文件,序列化任意类型的对象等的实用软件。
收藏: 7834, 贡献人数: 133, 程序提交次数: 1335, 建立日期:2012年1月22日。
链接:https://github.com/torch/torch7
11. Caffe2
Caffe2是一个轻量级的深度学习框架,具有模块化和可扩展性等特点。它在原来的Caffe的基础上进行改进,提高了它的表达性,速度和模块化。
收藏: 7813, 贡献人数: 187, 程序提交次数: 3678, 建立日期:2015年1月21日。
链接:https://github.com/caffe2/caffe2
12. PaddlePaddle
#p#分页标题#e#PaddlePaddle(平行分布式深度学习)是一个易于使用的高效、灵活、可扩展的深度学习平台。它最初是由百度科学家和工程师们开发的,旨在将深度学习应用于百度的众多产品中。
收藏: 6726, 贡献人数: 120, 程序提交次数: 13733, 建立日期:2016年8月28日。
链接:https://github.com/PaddlePaddle/Paddle
13. DLib
DLib是包含机器学习算法和工具的现代化C ++工具包,用来基于C ++开发复杂的软件从而解决实际问题。
收藏: 4676, 贡献人数: 107, 程序提交次数: 7276, 建立日期:2008年4月27日。
链接:https://github.com/davisking/dlib
14. Chainer
Chainer是基于python用于深度学习模型中的独立的开源框架,它提供灵活、直观、高性能的手段来实现全面的深度学习模型,包括最新出现的递归神经网络(recurrent neural networks)和变分自动编码器(variational auto-encoders)。
收藏: 3685, 贡献人数: 160, 程序提交次数: 13700, 建立日期: 2015年4月12日。
链接:https://github.com/chainer/chainer
15. Neon
Neon是Nervana开发的基于Python的深度学习库。它易于使用,同时性能也处于最高水准。
收藏: 3466, 贡献人数: 77, 程序提交次数: 1112, 建立日期: 2015年5月3日。
链接:https://github.com/NervanaSystems/neon
16. Lasagne
Lasagne是一个轻量级的库,可用于在Theano上建立和训练神经网络。
收藏: 3417, 贡献人数:64, 程序提交次数: 1150, 建立日期:2014年9月7日。
链接:https://github.com/Lasagne/Lasagne
其他选择
H2O.ai:https://github.com/h2oai/h2o-3
PyLearn:https://github.com/lisa-lab/pylearn2
BigDL:https://github.com/intel-analytics/BigDL
Shogun:https://github.com/shogun-toolbox/shogun
Apache SINGA:https://github.com/apache/incubator-singa
Blocks:https://github.com/mila-udem/blocks
Mocha:https://github.com/pluskid/Mocha.jl
相关报道:https://www.kdnuggets.com/2018/04/top-16-open-source-deep-learning-libraries.html
【本文是51CTO专栏机构大数据文摘的原创译文,微信公众号“大数据文摘( id: BigDataDigest)”】
戳这里,看该作者更多好文
【编辑推荐】
如何从零开始构建深度学习项目?这里有一份详细的教程
简述表征句子的3种无监督深度学习方法
10个例子带你了解机器学习中的线性代数
人人都能用的深度学习:当前三大自动化深度学习平台简介
外媒速递:阻碍机器学习项目成功的九大常见陷阱