GitHub上最受欢迎的57个深度学习开源项目
来源:Top Deep Learning Projects
深度学习在各个领域大放异彩,让很多人尝到了人工智能的甜头。本文向大家推荐github上最受欢迎的57款开源深度学习项目,你可以根据自己的需求和喜好试玩,也许会发现开启新世界的大门的钥匙。在下面的介绍中,将按照项目的star数量进行排列,当然随着时间的变化,排名可能会有差异。
TensorFlow
https://github.com/tensorflow/tensorflow
作为谷歌的第二代机器学习系统,TensorFlow在过去的一年里成为了github上当之无愧的最受欢迎项目。按照谷歌所说,在某些基准测试中,TensorFlow 的表现比第一代的 DistBelief 快了2倍。
TensorFlow 内建深度学习的扩展支持,任何能够用计算流图形来表达的计算,都可以使用 TensorFlow。任何基于梯度的机器学习算法都能够受益于 TensorFlow 的自动分 化(auto-differentiation)。通过灵活的 Python 接口,要在 TensorFlow 中表达想法也会很容易。
Caffe
https://github.com/BVLC/caffe
Caffe是一个高效的开源深度学习框架。由表达式,速度和模块化组成。Caffe给出了模型的定义、最优化设置以及预训练的权重,方便立即上手。Caffe能够运行很棒的模型和海量的数据,可以使用Caffe提供的各层类型来定义自己的模型。
Neural style
https://github.com/jcjohnson/neural-style
Torch实现的神经网络算法。Neural style 是让机器模仿已有画作的绘画风格来把一张图片重新绘制的算法。
deepdream
https://github.com/google/deepdream
Deep Dream是一款图像识别工具。一个原本用来将图片分类的AI,让我们看到不一样的世界~在把一张图片喂入之后,选择某一层神经网路(Google 的神经网路有 10-30 层)进行重复处理的次数和变形的程度,就能获得一张非常后现代的「画作」。
Keras
https://github.com/fchollet/keras
一款Python实现的深度学习库,包括卷积神经网络、递归神经网络等。运行在Theano和TensorFlow之上。
Keras是一个极简的、高度模块化的神经网络库,采用Python(Python 2.7-3.5.)开发,能够运行在TensorFlow和Theano任一平台,好项目旨在完成深度学习的快速开发。
RocAlphaGo
https://github.com/Rochester-NRT/RocAlphaGo
学生主导的一个独立项目,从新实现了 DeepMind在2016 Nature发表的内容, 《用深度神经网络和树搜索学习围棋》 (Nature 529, 484-489, 28 Jan 2016)。
TensorFlow Models
https://github.com/tensorflow/models
基于TensorFlow开发的模型。这个库包含了各种机器学习模型在TensorFlow实践。
Neural Doodle
https://github.com/alexjc/neural-doodle
运用深度神经网络将涂鸦变为优雅的艺术品,从照片生成无缝纹理,转变图片风格,进行基于实例的提升,等等…还有更多!(语义风格传递的实现)
CNTK
https://github.com/Microsoft/CNTK
深度学习工具包 。来自微软公司的CNTK工具包的效率,“比我们所见过的都要疯狂”。 这部分归功于CNTK可借助图形处理单元(GPU)的能力,微软自称是唯一公开“可扩展GPU”功能的公司。(从单机上的1个、延伸至超算上的多个) 在与该公司的网络化GPU系统(称之为Azure GPU Lab)匹配之后,它将能够训练深度神经网络来识别语音,让Cortana虚拟助理的速度达到以前的十倍。
TensorFlow Examples
https://github.com/aymericdamien/TensorFlow-Examples
适合初学者的 TensorFlow 教程和代码示例,作者已经做了相关笔记和代码解释。
ConvNet JS
https://github.com/karpathy/convnetjs
ConvNetJS 是用 JavaScript 实现的神经网络,同时还有基于浏览器的 demo。
Torch
https://github.com/torch/torch7
Torch7 是一个科学计算框架,支持机器学习算法。易用而且提供高效的算法实现,得益于 LuaJIT 和一个底层的 C 实现。
OpenFace
https://github.com/cmusatyalab/openface
基于深度学习网络的面部识别。Openface是一个基于深度神经网络的开源人脸识别系统。该系统基于谷歌的paper《FaceNet: A Unified Embedding for Face Recognition and Clustering》。Openface是卡内基梅隆大学的 Brandon Amos主导的。
MXNet
https://github.com/dmlc/mxnet
轻巧、便携、灵活的分布式/移动深度学习框架,支持Python, R, Julia, Scala, Go, Javascript等等语言。
MXNet是一款设计为效率和灵活性的深度学习框架。它允许你混合符号编程和命令式编程,从而最大限度提高效率和生产力。在其核心是一个动态的依赖调度,它能够自动并行符号和命令的操作。一个图形优化层,使得符号执行速度快,内存使用高效。这个库便携,轻量,而且能够扩展到多个GPU和多台机器。
Theano
https://github.com/Theano/Theano
Theano 是一个 Python 库,用来定义、优化和模拟数学表达式计算,用于高效的解决多维数组的计算问题。
Leaf
https://github.com/autumnai/leaf
是一个开放的机器学习框架,为黑客建立经典,深或混合机器学习应用。它的灵感来自于TensorFlow Torch, Caffe, Rust和众多的研究论文,并提出模块化、性能和便携性的深度学习。
Char RNN
https://github.com/karpathy/char-rnn
多层递归神经网络的字符级别语言模型,基于Torch开发。它实现了多层递归神经网络(RNN,LSTM、和GRU)字符级语言模型的训练/采样。如果你是Torch/Lua/Neural Nets新手,那么这对于你去理解它们有很大的帮助。
Neural Talk
https://github.com/karpathy/neuraltalk
NeuralTalk是一个Python+numpy项目,用多模式递归神经网络描述图像。
deeplearning4j
https://github.com/deeplearning4j/deeplearning4j
基于Hadoop 和 Spark的Java, Scala & Clojure深度学习工具。
Deeplearning4j(简称DL4J)是为Java和Scala编写的首个商业级开源分布式深度学习库。DL4J与Hadoop和Spark集成,为商业环境(而非研究工具目的)所设计。Skymind是DL4J的商业支持机构。
Deeplearning4j 技术先进,以即插即用为目标,通过更多预设的使用,避免太多配置,让非研究人员也能够进行快速的原型制作。DL4J同时可以规模化定制。DL4J遵循Apache 2.0许可协议,一切以其为基础的衍生作品均属于衍生作品的作者。
TFLearn
https://github.com/tflearn/tflearn
深度学习库,包括高层次的TensorFlow接口。它是被设计来在加速试验提供了一个更高级别的API,并且和其他的部分完全兼容。
TensorFlow Playground
https://github.com/tensorflow/playground
神经网络模型示例。TensorFlow Playground是一个神经网络的交互式可视化,这是使用d3.js写的。
OpenAI Gym
https://github.com/openai/gym
一种用于开发和比较强化学习算法的工具包。
Magenta
https://github.com/tensorflow/magenta
Magenta: 音乐和艺术的生成与机器智能。
Google Brain团队的一组研究人员发布了一个项目Project Magenta,其主要目标是利用机器学习创作艺术和谱写曲子。Project Magenta使用了 TensorFlow系统,研究人员在GitHub上开源了他们的模型和工具。
研究人员称,机器生成的音乐已经存在了许多年,但它们在都缺乏长的叙事艺术。Project Magenta就试图将故事作为机器生成音乐的重要部分。Google公布了一个DEMO(MP3)表现Magenta项目的成果。
Colornet
https://github.com/pavelgonchar/colornet
用神经网络模型给灰度图上色。
Synaptic
https://github.com/cazala/synaptic
基于node.js和浏览器的免架构神经网络库。
Neural Talk 2
https://github.com/karpathy/neuraltalk2
Torch开发的图像简介生成代码,运行在GPU上。
Image Analogies
https://github.com/awentzonline/image-analogies
使用神经匹配和融合生成相似图形。
TensorFlow Tutorials
https://github.com/pkmital/tensorflow_tutorials
Tensorflow,从基础原理到应用。
Lasagne
https://github.com/Lasagne/Lasagne
基于Theano训练和构建神经网络的轻型函数库。
PyLearn2
https://github.com/lisa-lab/pylearn2
基于Theano的机器学习库。
LISA-lab Deep Learning Tutorials
https://github.com/lisa-lab/DeepLearningTutorials
深度学习教程笔记和代码。详情参见wiki页面。
Neon
https://github.com/NervanaSystems/neon
Nervana™开发的一款快速、可扩展、易上手的Python深度学习框架。
neon 是 Nervana System 的深度学习软件。根据Facebook一位研究者的基准测试,Nervana的软件比业界知名的深度学习工具性能都要高,包括Facebook自己的Torch7和Nvidia的cuDNN。
Matlab Deep Learning Toolbox
https://github.com/rasmusbergpalm/DeepLearnToolbox
Matlab/Octave的深度学习工具箱。包括深度信念网络、自动编码机、卷积神经网络、卷积自动编码机和vanilla神经网络等。每种方法都有入门示例。
Deep Learning Flappy Bird
https://github.com/yenchenlin1994/DeepLearningFlappyBird
使用深度强化学习破解Flappy Bird游戏(深度 Q-学习)。
dl-setup
https://github.com/saiprashanths/dl-setup
在深度学习机上设置软件说明。
Chainer
https://github.com/pfnet/chainer
一款灵活的深度学习神经网络框架。
Chainer是深度学习的框架,Chainer在深度学习的理论算法和实际应用之间架起一座桥梁。它的特点是强大、灵活、直观,被认为是深度学习的灵活框架。
Neural Story Teller
https://github.com/ryankiros/neural-storyteller
看图讲故事的递归神经网络模型。
DIGITS
https://github.com/NVIDIA/DIGITS
深度学习GPU训练系统。
Deep Jazz
https://github.com/jisungk/deepjazz
基于Keras和Theano生成jazz的深度学习模型!
Tiny DNN
https://github.com/tiny-dnn/tiny-dnn
仅引用头文件,无依赖且使用 C ++ 11 的深度学习框架。
Brainstorm
https://github.com/IDSIA/brainstorm
快速、灵活、有趣的神经网络。
dl-docker
https://github.com/saiprashanths/dl-docker
一个用于深度学习的一体化 Docker 镜像。 包含所有流行的 DL 框架(TensorFlow,Theano,Torch,Caffe等)。
Darknet
https://github.com/pjreddie/darknet
C语言版本的开源神经网络。
Theano Tutorials
https://github.com/Newmu/Theano-Tutorial
基于Theano的机器学习入门教程,从线性回归到卷积神经网络。
RNN Music Composition
https://github.com/hexahedria/biaxial-rnn-music-composition
一款生成古典音乐的递归神经网络工具。
Blocks
https://github.com/mila-udem/blocks
用于构建和训练神经网络模型的Theano框架
TDB
https://github.com/ericjang/tdb
TensorFlow的交互式、节点调试和可视化的工具。
TensorDebugger (TDB) 是深度学习调试器,使用断点和计算机图形化实时数据流可视化扩展 TensorFlow(谷歌的深度学习框架)。特别的是,TDB 是一个 Python 库和 一个 Jupyter Notebook 扩展的结合,构建 Google 的 TensorFlow 框架。
Scikit Neural Net
https://github.com/aigamedev/scikit-neuralnetwork
深度神经网络入门工具,类似scikit-learn的分类器和回归模型。
Veles
https://github.com/samsung/veles
分布式机器学习平台(Python, CUDA, OpenCL)。
VELES 是分布式深度学习应用系统,用户只需要提供参数,剩下的都可以交给 VELES。VELES 使用 Python 编写,使用 OpenCL 或者 CUDA,利用基于 Flow 的编程。它是三星开发的另一个 TensorFlow。
Deep Detect
https://github.com/beniz/deepdetect
基于C++11的深度学习接口和服务器,与Python绑定并支持Caffe。
TensorFlow DeepQ
https://github.com/nivwusquorum/tensorflow-deepq
基于Google Tensorflow的深度Q学习演示。
Caffe on Spark
https://github.com/yahoo/CaffeOnSpark
基于Spark的Caffe。
雅虎认为,深度学习应该与现有的支持特征工程和传统(非深度)机器学习的数据处理管道在同一个集群中,创建CaffeOnSpark意在使得深度学习训练和测试能被嵌入到Spark应用程序中。CaffeOnSpark被设计成为一个Spark深度学习包。
Nolearn
https://github.com/dnouri/nolearn
神经网络库的抽象,著名的Lasagne。
DCGAN TensorFlow
https://github.com/carpedm20/DCGAN-tensorflow
Stars:568
基于tensorflow实现的深度卷积生成对抗网络。
MatConvNet
https://github.com/vlfeat/matconvnet
MATLAB CNN 计算机视觉应用工具箱。
DeepCL
https://github.com/hughperkins/DeepCL
用于训练深度卷积神经网络模型的OpenCL库。
Visual Search Server
https://github.com/AKSHAYUBHAT/VisualSearchServer
可视化搜索服务器。一个简单使用TensorFlow,InceptionV3模型和AWS GPU实例实现的视觉搜索服务器。
代码实现两个方法,一个处理图像搜索的服务器和一个提取pool3功能的简单索引器。 最近邻搜索可以使用近似(更快)或使用精确方法(更慢)以近似方式执行。