18个最热深度学习Github项目逐一介绍

来源:互联网 发布:斐讯k2端口转发 编辑:程序博客网 时间:2024/04/28 22:49

链接:http://blog.csdn.net/huixingshao/article/details/44559833

摘要: 前几天meta-guide.com列出了100个深度学习的源代码项目,但其中大部分都不活跃。这里我们精选出18个最活跃的项目,每个都制作了信息卡片,一目了然,方便比较和转贴。 ...

活跃的项目,每个都制作了信息卡片,一目了然,方便比较和转贴。 ...


  前几天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


2LPxDwwRmbOZVYsWTTO0c3uM07nTuQE8uzjfKDI5YhpztVrMoJqKHB76zJH6dbxz_6437c21a93afdb4465cd6307c85109741838c1df9c8713c3b78eb92825dc3013.jpeg 

  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


Ubf9ntS6Oe3SQG0mlb7oFx2nsFMSvGF2eaxh9R1sWDAi4qtqb4i7vlrGuD2y25cc_edb2f95eb876f221a42ba24bbc07efcfaa5f962c35c2946f1bcdd5d17391c862.jpeg 

  16)宗师Hinton的代码,23星,是Matlab的。实现了autoencoder,Restricted Boltzmann Machine(RBM) 。这个应用在图像领域。宗师出品,重要性不用解释。 http://bigdata.memect.com/?p=10294


ptBpotne2jWCFrXEFtQoCj8dFdSKeq6f7EF0W5rhPV615QDnVJu4NfJJuV9nEeq6_f479f92e0dc9a38b6e2fdac8b5bccf52b6536fed9e9594ddd8d7c95caf0b3f04.jpeg


  15) stanford_dl_ex  这是另一个斯坦福深度学习公开课的习题解答,24星,作者Andrew Maas 和Sameep Tandon。语言是Matlab。同样适合入门学习。http://bigdata.memect.com/?p=10303


nEtYv4m40NtVVAouK3I5QJgQovQnQmr0FNnyXa9E8hNZmpPzqHkZxMp1uq6WtZls_0e40007ee0e5c0f0e330f5edcd1c627e258df1157370d14ae5fa034f9ba53e58.jpeg

  14)DeepLearningBenchmarks  29星, 比较了Theano和其他几个实现的性能:eblearn, Python numpy, torch5, torch 7。 不过列表有些老,都是2011年前的,新的项目没有加进去。http://bigdata.memect.com/?p=10190


jIELONFry85ar88CVPQlA0NQbDfepvbE44vH0SV6qHfhhWKUkT2RiJ8Imnu24P29_c6664e58633c0e6975403fbfbffbacea5e12bec35c94f37ef3bfa2d96f74c3e5.jpeg

  13)deeplearning-class-2011 这个也是 UFLDF课程的一个实现,31星,语言是Octave,Matlab和Python (NumPy) http://bigdata.memect.com/?p=10339


m20VxnrYEEFvM9Ii5sFSvzSTc6Z8it0WDQ5W3OeNkUNi1epFUSDmffHj743xVUbQ_552812af6bdfb5a0c151b1dfda89149cd8c83e1f266023811ed8fb680c56a7db.jpeg

  12) medal=Matlab Environment for Deep Architecture Learning,37星,是一个Matlab的示范库,也实现了RBM,DBN, CRNM等主流的模型。 http://bigdata.memect.com/?p=10390

dMKF74lGhfG1TjjL1XJPgYN25lNfJpsyZN7umHsEWDLgEC2HmiXNlLRx5oNaBnoY_47f4c76b9039fd5fffe75de5d5bf9cf70753fcc55f11d523ba575b7ae1f9c66d.jpeg




  11)kaggle-blackbox ,作者Zając,53星 ,这是2013年Kaggle无监督学习竞赛的一个实现 。它实现了一个随机森林算法和一个稀疏滤波算法。语言是Matlab,也可以用Octave跑。文档和说明参见 http://bigdata.memect.com/?tag=kaggle-blackbox


c1h5nTS86q1lIaosj0pmIgW5hs32H1NQCuvc15BsrihoVVthYMBJ6XBr1j5RwbhC_8fb40c295e07cdf75757f33f2f4372fe94eb260da4c1208fc22fa6073b20bfed.jpeg

  10) libdeep 这是个C的实现,目前54星。在Linux上可以安装到系统库,然后就可以在其他项目里调用了。如果追求性能,这是个好选择。http://bigdata.memect.com/?p=10462


Qwrw5LxufI6Mcr4oOc6vZYqy1SpyVpuoW50D0m2Rgk9Ao6XSJy16mIeeDHaAfgiH_39808d3777eb419ce06ea2e16008321b1b49d9b0f63d7b60ffef5bd5faed17a5.jpeg


  9) OpenDL  这是个很新的实现, 是基于Spark的。语言是Java。除了spark还用到了Mallet机器学习包和JBlas线性代数包。http://bigdata.memect.com/?p=10345 更多spark参考请看大数据精华区的专题 http://memect.co/FUdsSH9 。


yYI8526TDkYsw9b7tFcb9eH2hw617eWSz7kIG09elGy85i2s2AjV7gByRV40jDTA_62f9159453513643b3bf8b909006ecc2dda50aa3a5ffef7c39add2f280846a69.jpeg


  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。

8kTIyfotoF6auIcwzbPbyqB5CYwv7o0FhZqEjxo5OOahiNShbE21bFkGlYHaSs89_2b4ed0c866c03b7fcd8e2f3721ddaa4c94321416b0197a04b6231f6e222d4dc6.jpeg

 

  7) rbm-mnist   这个是hinton matlab代码( http://memect.co/r12f-q6 )的C++改写,189星。它还实现了Rasmussen的共轭梯度Conjugate Gradient算法。http://bigdata.memect.com/?p=10327

MCgoBeBspUWL727RtJuOEkGELMC9yHAMZ1VCvisAIByIY7SGWWfWN4g6BcPEsGoB_b18ae897bcec85bbbcdcd989369eba2fd61883278058e84c09b997b7c8491f2b.jpeg





  6) neural-networks-and-deep-learning,243星 ,这是作者的书Neural Networks and Deep Learning的配套代码,语言是Python。http://bigdata.memect.com/?p=10468 这本书是免费的,不过还没有写完,可以预览前几章 http://memect.co/2utGmkY


M5bURwvFHo1BvpnwyeZB07d2sPZfnQePYNZHObHYNoUvLXHOFTXSib5Lkm1yFPyP_9f60674b1b0c1d426ee4e88e7dd2d9728ae7709babb233d9993c2b1b5e7b799f.jpeg


  5) deepnet ,这个是GPU实现的深度学习算法,前向网络,RBM,DBN,Autoencoder, DBM, CNN包括了,底层用的CUDA 。目前282星。实现语言是Python,做到了简洁性与计算性能的良好结合,特别推荐。http://bigdata.memect.com/?p=10342

AkqfwGYemlVwrH1PyYpzpgWyLwtnzdDlRX8njb6mq31rnpU6EtvgR0QV44Hgub8t_54bd72d85d550117b44fec9ddc2a6aa341aeb84373d714c46c1ac9ad663fb9a1.jpeg

  4) Lisa Lab的DeepLearningTutorials,也就是deeplearning.net上的教程和源代码。Python实现,是基于pylearn2和Theano的。目前500多星,非常火爆。http://bigdata.memect.com/?p=10941 他们的wiki上很不错的资源列表,如论文和数据集 http://memect.co/koF-C2P

UTf1Wj0AZ3tFTscj3ijuXC2TCH9VyaY8eUMyiKJkuVGKeFsMm7dGIKB2Xj7aMnHJ_cbab421687ebe3d402b84a561e974f238590659303e66f3626a912666b737b32.jpeg

  3) Yusuke Sugomori(巣籠悠輔)的深度学习实现  。这个是特别热门的一个库,有近600星。从算法和实现语言覆盖面上都是一网打尽,学习深度学习代码的必读之一,提供了5种语言的实现:Python, C/C++, Java, Scala,囊括了各种主流深度学习算法:DBN, CDBN,RBM, CRBM,dA, SdA, LR等。http://bigdata.memect.com/?p=10441

IEPVewoKWI6Cxq1qUEgN8f4XXApffzcrTLp9gb0KntaYMBaqe12JBeu33BkFroEl_a4e72032cf4c55ff30ca89cee49b08daa6c4793f23ff3327f158a41fbd4a43a9.jpeg




  2) DeepLearnToolbox ,Matlab实现中最热门的库,700多星,囊括了CNN, DBN, SAE, CAE等主流模型。非常简单好用。用Matlab做深度学习快速实验这个库可能是最好的 http://bigdata.memect.com/?p=10348


RcrRRpF1cmWLmPQbt88fZKkjmIWSA6p87MLlSwVmhwnNqluv6v2jjjyCrAdktcIy_d8737d14012f87c3cdf54bc2d9898c694a7b58b985cc1aa04646773523014e50.jpeg

  1) convnetjs  这个是目前最火的项目,有1300+颗星,实现了卷积神经网络,可以用来做分类,回归,强化学习等。可以直接npm install convnetjs。convnetjs上有很多很酷的可视化演示 http://bigdata.memect.com/?p=10453


nGBJSRdtt8CVI2veNAPq4t68xsQLLj9OPzNRhBqgdoveNlZ0oBpPku1vQssPIrbe_82c9070643eacec0ad3842bedfe4d3f70742145dcb3b0e63082457eb4eb81ec7.jpeg
0 0