前几天meta-guide.com列出了100个深度学习的源代码项目,但其中大部分都不活跃。这里我们精选出18个最活跃的项目,每个都制作了信息卡片,一目了然,方便比较和转贴。 所有18个项目的列表见 http://bigdata.memect.com/?tag=superhot+deeplearning (meta-guide.com原完整项目列表见 http://memect.co/punt6PW ) 18) @丕子 的PG_DEEP 这是一个C++实现的Demo,目前有20星。代码相对简单,非常适合入门学习。http://bigdata.memect.com/?p=10354 17) n42 ,21星,一个nodejs的实现,可以直接npm install n42。实现了4个算法:Newral Network,Logistics Regressio,Stacked denoised Autoencodern,Deep Belief Nets。代码不长,适合学习。虽然nodejs并不适合计算密集型任务,作为教学例子还是很不错的,特别是需要在浏览器里做深度学习的可视化时 (Javascript也参convnetjs,见后) http://bigdata.memect.com/?p=10402 16)宗师Hinton的代码,23星,是Matlab的。实现了autoencoder,Restricted Boltzmann Machine(RBM) 。这个应用在图像领域。宗师出品,重要性不用解释。 http://bigdata.memect.com/?p=10294 15) stanford_dl_ex 这是另一个斯坦福深度学习公开课的习题解答,24星,作者Andrew Maas 和Sameep Tandon。语言是Matlab。同样适合入门学习。http://bigdata.memect.com/?p=10303 14)DeepLearningBenchmarks 29星, 比较了Theano和其他几个实现的性能:eblearn, python numpy, torch5, torch 7。 不过列表有些老,都是2011年前的,新的项目没有加进去。http://bigdata.memect.com/?p=10190 13)deeplearning-class-2011 这个也是 UFLDF课程的一个实现,31星,语言是Octave,Matlab和Python (NumPy) http://bigdata.memect.com/?p=10339
12) medal=Matlab Environment for Deep Architecture Learning,37星,是一个Matlab的示范库,也实现了RBM,DBN, CRNM等主流的模型。 http://bigdata.memect.com/?p=10390
11)kaggle-blackbox ,作者Zając,53星 ,这是2013年Kaggle无监督学习竞赛的一个实现 。它实现了一个随机森林算法和一个稀疏滤波算法。语言是Matlab,也可以用Octave跑。文档和说明参见 http://bigdata.memect.com/?tag=kaggle-blackbox 10) libdeep 这是个C的实现,目前54星。在Linux上可以安装到系统库,然后就可以在其他项目里调用了。如果追求性能,这是个好选择。http://bigdata.memect.com/?p=10462 9) OpenDL 这是个很新的实现, 是基于spark的。语言是Java。除了spark还用到了Mallet机器学习包和JBlas线性代数包。http://bigdata.memect.com/?p=10345 更多spark参考请看大数据精华区的专题 http://memect.co/FUdsSH9 。 8) UFLDL-tutorial ,作者Dan Luu,94星 ,这是斯坦福深度学习公开课和 Andrew Ng’s UFLDL(无监督特征学习和深度学习)教程的所有练习的解答。代码是Matlab的,作者声称对Octave兼容,所以理论上甚至可以从python调用。非常适合入门。http://bigdata.memect.com/?p=10423 UFLDL教程 @邓侃 曾组织翻译成了中文,入门必读http://deeplearning.stanford.edu/wiki/index.php/UFLDL%E6%95%99%E7%A8%8B。
7) rbm-mnist 这个是hinton matlab代码( http://memect.co/r12f-q6 )的C++改写,189星。它还实现了Rasmussen的共轭梯度Conjugate Gradient算法。http://bigdata.memect.com/?p=10327 6) neural-networks-and-deep-learning,243星 ,这是作者的书Neural Networks and Deep Learning的配套代码,语言是Python。http://bigdata.memect.com/?p=10468 这本书是免费的,不过还没有写完,可以预览前几章 http://memect.co/2utGmkY 5) deepnet ,这个是GPU实现的深度学习算法,前向网络,RBM,DBN,Autoencoder, DBM, CNN包括了,底层用的CUDA 。目前282星。实现语言是Python,做到了简洁性与计算性能的良好结合,特别推荐。http://bigdata.memect.com/?p=10342 4) Lisa Lab的DeepLearningTutorials,也就是deeplearning.net上的教程和源代码。Python实现,是基于pylearn2和Theano的。目前500多星,非常火爆。http://bigdata.memect.com/?p=10941 他们的wiki上很不错的资源列表,如论文和数据集 http://memect.co/koF-C2P 3) Yusuke Sugomori(巣籠悠輔)的深度学习实现 。这个是特别热门的一个库,有近600星。从算法和实现语言覆盖面上都是一网打尽,学习深度学习代码的必读之一,提供了5种语言的实现:Python, C/C++, Java, Scala,囊括了各种主流深度学习算法:DBN, CDBN,RBM, CRBM,dA, SdA, LR等。http://bigdata.memect.com/?p=10441 2) DeepLearnToolbox ,Matlab实现中最热门的库,700多星,囊括了CNN, DBN, SAE, CAE等主流模型。非常简单好用。用Matlab做深度学习快速实验这个库可能是最好的 http://bigdata.memect.com/?p=10348 1) convnetjs 这个是目前最火的项目,有1300+颗星,实现了卷积神经网络,可以用来做分类,回归,强化学习等。可以直接npm install convnetjs。convnetjs上有很多很酷的可视化演示 http://bigdata.memect.com/?p=10453 |