必须做好一些是LINUX平台,甚至没有教材根本需要摸索学习的准备,如果有那个变成为在线服务的请第一时间通知我们

截止到 2017年 5月14日,Github 最受欢迎的深度学习项目 TOP 20 是哪些吧(统计难免不完善,欢迎评论补充)。我们的这份榜单也会持续更新。

1. TensorFlow

Star:56,796

Github 地址:https://github.com/tensorflow/tensorflow

TensorFlow是一个开源软件库,使用数据流图(data flow graph)进行数值计算。图中的节点表示数学运算,而图形边缘表示在它们之间流动的多维数据阵列(张量)。 这种灵活的架构让人能将计算部署到桌面、服务器或移动设备中的一个或多个CPU或GPU,而无需重写代码。TensorFlow 还有一个数据可视化工具包 TensorBoard。

TensorFlow 由 Google Brain 团队研究人员和工程师开发,用于进行机器学习和深层神经网络研究。不久前发布了 TensorFlow 1.0 版本。

2. scikit-learn

Star:18,516

Github 地址:https://github.com/scikit-learn/scikit-learn

scikit-learning是一个用于机器学习的 Python 模块,建立在 SciPy 之上,并按照 3-Clause BSD 许可证分发。该项目于 2007 年由 David Cournapeau 开始,作为“Google夏季代码”项目,此后,许多志愿者做出了贡献。目前由志愿者团队维护。

志愿者的力量是强大的。

3. Caffe(Caffe2)

Star:17,795

Github 地址:https://github.com/BVLC/caffe

Caffe 是一个深刻的学习框架,设计时注重表达(expression)、速度和模块化。根据 Github 介绍,Caffe 由伯克利 AI(BAIR)/伯克利视觉与学习中心(BVLC)及社区贡献者开发。Caffe 有一个非常活跃的开发者社区。

去年 11 月,Caffe 主要作者、Facebook 研究科学家贾扬清在 Facebook 官往发文,介绍了 Caffe2go,一款规模更小、训练速度更快、对计算性能要求较低的机器学习框架,在手机上也能运行神经网络模型。但令人震惊,Caffe2go 截止发稿前 Github 星级为 0。

今年 4月,Facebook 宣布开源跨平台的深度学习框架 Caffe2,轻量级、模块化,在移动端和云上都做了优化。同时提供的还有 C++ 和 Python API,以及模型库 Caffe2 Model Zoo,里面有视觉、语音、翻译等预训练模型,方便开发人员和研究者直接使用。Caffe2 目前在 Github 星级为 4602。

Caffe2 Github 地址:https://github.com/caffe2/caffe2

4. Keras

Star:15,515

GitHub 地址:https://github.com/fchollet/keras

Keras是一个高级神经网络 API,用 Python 编写,能够运行在 TensorFlow 或者 Theano 上。Keras 的开发重点是实现快速实验,能够用尽可能少的延迟从理念到结果,是进行良好研究的关键,也是 Keras 受欢迎的一大原因。

5. Show and Tell:神经图说生成器

Star:14,620(去年 8 月 10,563)

GitHub 地址:https://github.com/tensorflow/models/tree/master/im2txt

这是 Oriol Vinyals et. al.(2016)的论文“Show and Tell: Lessons learned from the 2015 MSCOCO Image Captioning Challenge”的用TensorFlow实现的 image-to-text 图片说明生成模型。

Show and Tell 模型是一个学习如何描述图片的深度神经网络。生成的图片说明是一个完整的句子,下面是一些例子:

5. Neural Style

Star:13,673(去年 8 月为 10,148)

Github 地址:https://github.com/jcjohnson/neural-style

这个项目是用 Torch 对 Leon A. Gatys, Alexander S. Ecker, 和 Matthias Bethge 等人的论文“A Neural Algorithm of Artistic Style”的一个实现。论文中提出一种算法,用卷积神经网络将一幅图像的内容与另一幅图像的风格进行组合。下面是一个将梵高《星夜》的艺术风格转移到斯坦福大学校园夜景的照片中的效果:

将不同的艺术风格应用到同样一幅图像中会得出有趣的效果。论文中提供了各种风格的德国宾根大学图像:

6. CNTK

Star:10,673

Github 地址:https://github.com/Microsoft/CNTK

CNTK 是微软的开源深度学习框架,支持大部分流行的神经网络。2015 年 2 月,官方报道了一个基准性能测试结果,针对一个 4 层全连接神经网络,CNTK 与 Caffe、TensorFlow、Theano 和 Torch 对比,速度要快上 1.5 倍。

去年 10 月,微软提供了 CNTK 升级版。本次升级最大的亮点在于增加了 Python 绑定。另外,新版本工具包跨服务器处理能力也得到了提升,能有效加快处理速度,并支持增强学习的实践。

7. Tesseract

Star:10,370

Github 地址:https://github.com/tesseract-ocr/tesseract

Tesseract 支持 unicode(UTF-8),可以直接识别超过 100 种语言,也可以在训练后识别其他语言。

Tesseract 支持各种输出格式:plain-text、hocr(html)和 pdf。

Tesseract 最初是惠普实验室开发的,2005 年开源。2006 年以后由谷歌开发。

8. Deep Dream

Star:10,156(去年 8 月 9042)

Github 地址:https://github.com/tesseract-ocr/tesseract

需要说明,这不是谷歌官方 Deep Dream 的 Github 库。这个库里包含了有示例代码的 IPython Notebook,补充了 Google Research 官方博客关于 Neural Network Art 的博文。

很多开发人员使用这个库里描述的技术制作了脑洞大开的图像。我们也期待你的尝试。对了,如果你将图像发布到 Google+,Facebook 或 Twitter,请务必使用 #deepdream 做上标记,方便其他研究人员查看。

9. MXNet

Star:9615

Github 地址:https://github.com/dmlc/mxnet

MXNet 是一个旨在提高效率和灵活性的深度学习框架。因得到亚马逊的大力而成为常用深度学习框架的黑马。MXNet 可以混合符号和命令式编程,从而最大限度地提高效率和生产力。在其核心,MXNet 包含一个动态依赖调度程序(dynamic dependency scheduler),可以自动将符号运算和命令运算并行。顶部的图形优化层使 MXNet 符号执行速度快,记忆效率高。此外,MXNet 是便携式和轻量级的,可有效扩展到多颗 GPU 和多台机器。

10. RocAlphaGo

Star:8065(去年 8 月 7734)

Github 地址:https://github.com/Rochester-NRT/RocAlphaGo

这个项目是有学生主导的一个独立项目,使用 Python 和 Keras 重新实现了 DeepMind 在2016年发表的论文 "Mastering the game of Go with deep neural networks and tree search"(《用深度神经网络和树搜索学习围棋》)。使用 Python 和 Keras 的这个选择优先考虑了代码清晰度,至少在早期阶段是如此。

这个项目目前仍在进行中,还不是 AlphaGo 的完全实现。项目先期关注 DeepMind AlphaGo 中神经网络的训练方面,而且已经得到论文中树搜索算法的一个简单单线程的实现,虽然速度上无法与 DeepMind 相比。

11. Neural Doodle

Star:7763(去年 8 月 7306)

Github 地址:https://github.com/alexjc/neural-doodle

使用深度神经网络把你的二流涂鸦变成艺术一般的作品!这个项目是 Champandard(2016)的论文 “Semantic Style Transfer and Turning Two-Bit Doodles into Fine Artworks”的一个实现,基于 Chuan Li 和 Michael Wand(2016)在论文“Combining Markov Random Fields and Convolutional Neural Networks for Image Synthesis”中提出的 Neural Patches 算法。这篇文章中深入解释了这个项目的动机和灵感来源:https://nucl.ai/blog/neural-doodles/

doodle.py 脚本通过使用1个,2个,3个或4个图像作为输入来生成新的图像,输入的图像数量取决于你希望生成怎样的图像:原始风格及它的注释(annotation),以及带有注释(即你的涂鸦)的目标内容图像(可选)。该算法从带风格图像中提取 annotated patches,然后根据它们匹配的紧密程度用这些 annotated patches 渐进地改变目标图像的风格。

11. Open Face

Star:7122(去年 8 月 6072)

Github 地址:https://github.com/cmusatyalab/openface

OpenFace 是一个使用深度神经网络,用 Python 和 Torch 实现人脸识别的项目。神经网络模型基于 Google Florian Schroff 等人的 CVPR 2015 论文“FaceNet: A Unified Embedding for Face Recognition and Clustering” ,Torch 让网络可以在 CPU 或 CUDA 上运行。

这是CMU的一个使用深度神经网络进行人脸识别的免费、开源项目。该项研究得到美国国家科学基金会(NSF)的支持,以及英特尔、谷歌、 Vodafone、英伟达和 Conklin Kistler 的额外支持。这个 Github 库中包含 batch-represent、real-time web、compare.py、vis-outputs.lua、classifier.py 等的 demo 和测试、训练、评估等的代码。

12. Torch

Star:6843

Github 地址:https://github.com/torch/torch7

PyTorch是一个提供两个高级功能的 python 包:① 具有强 GPU 加速度的张量计算(如numpy);②深度神经网络建立在基于磁带的自动调整系统(tape-based autograd system)Torch 也是常用深度学习框架之一,是 Torch7 中的 main package,其中定义了用于多维张量和数学运算的数据结构。此外,Torch 提供了很多实用功能,比如访问文件的实用程序,序列化任意类型的对象和其他有用的实用程序。

13. Neural Enhance:深度学习做图像高分辨率

Star:6557

Github 地址:https://github.com/alexjc/neural-enhance

见过刑侦剧里将模糊图片变清晰的情节吗?由于深度学习和 #NeuralEnhance,你也可以训练一个神经网络把图像放大 2 倍乃至 4 倍而且高清。增加神经元的数量或使用类似于低分辨率图像的数据集进行训练,还可以获得更好的结果。具体怎么做?去看 Github 介绍吧。

14. PyTorch

Star:4988

Github 地址:https://github.com/pytorch/pytorch

PyTorch是一个提供两个高级功能的 python 包:①具有强 GPU 加速度的张量计算(如numpy);②深度神经网络建立在基于磁带的自动调整系统(tape-based autograd system)。考虑到它的发布时间,PyTorch 大有潜力。

你可以重用你喜欢的 python 软件包(如 numpy,scipy 和 Cython),在有需要时对 PyTorch 进行扩展。

就在 5 月 4 日,PyTorch 发布了最新版,API 有一些变动,增加了一系列新的特征,多项运算或加载速度提升,而且修改了大量 bug。官方文档也提供了一些示例。

15. Sonnet:DeepMind 内部开源深度学习框架

Star:4691

Github 地址:https://github.com/deepmind/sonnet

DeepMind 研究人员发现 TensorFlow 的灵活性和适应性适合于为特定目的构建更高级别的框架,于是他们就写了一个这样的框架,可以用 TensorFlow 快速构建神经网络模块,也就是 Sonnet 框架。

开源 Sonnet,可以使 DeepMind 创建的其他模型轻松地与社区共享,DeepMind 表示他们希望开发者社区能够使用 Sonnet 进行自己的研究。Sonnet 被专门设计用于与 TensorFlow 协同工作,不会阻止访问底层细节,如 Tensors 和可变范围等。Sonnet 编写的模型可以与原始的 TensorFlow 代码以及其他高级库中的模型自由混合。

Sonnet 将定期更新。

16. srez

Star:4288(去年 8 月 3951)

Github 地址:https://github.com/david-gpu/srez

srez(super-resolution through deep learning),即通过深度学习实现图像超分辨率。这个项目是利用深度学习将 16x16 的图像分辨率增加 4 倍,基于用来训练神经网络的数据集,所得到的图像具有鲜明的特征。

下图是这个网络所能做到的一个随机、没有特意挑选的示例。从左到右,第一列是 16x16 的输入图像,第二列是利用标准的双三次插值算法(bicubic interpolation)所能得到的结果,第三列是我们的神经网络的结果,然后最右列是原本的真实图像。

如你所见,神经网络能够产生与原始的人脸非常相似的图像。由于用于训练的数据集主要由面朝正前方而且光线良好的人脸图像组成,所以当脸的朝向不是正前方、光线不足或脸被眼镜或手遮住了部分时,输出的效果会比较差。

17. CycleGAN

Star:3773

Github 地址:https://github.com/junyanz/CycleGAN

由于微信图片上传大小限制,更清晰的图片请到 Github 查看

伯克利视觉组的研究,用于学习没有输入-输出对的图像到图像转换(即 pix2pix)的 Torch 实现,例如:

此外,另一项相关研究也十分不错:

pix2pix

Star:2965

Github 地址:https://github.com/phillipi/pix2pix

18. open_nsfw

Star:3338(去年 8 月 3076)

Github 地址:https://github.com/yahoo/open_nsfw

这是雅虎构建的用于检测图片是否包含不适宜工作场所(NSFW)内容的深度神经网络项目,GitHub 库中包含了网络的 Caffe 模型的代码。检测具有攻击性或成人内容的图像是研究人员进行了几十年的一个难题。随着计算机视觉技术和深度学习的发展,算法已经成熟,雅虎的这个模型能以更高的精度分辨色情图像。

由于 NSFW 界定其实是很主观的,有的人反感的东西可能其他人并不觉得如何。雅虎的这个深度神经网络只关注NSFW内容的一种类型,即色情图片,所以该模型不适用于检测素描、文字、动画、暴力图片等内容。

19. NeuralTalk2

Star:3337(去年 8 月 3010)

Github 地址:https://github.com/karpathy/neuraltalk2

循环神经网络(RNN)可以用于给图像取标题。NeuralTalk2 比原始版本的 NeuralTalk 更快而且性能更好。与原来的 NeuralTalk 相比,NeuralTalk2 的实现是批量的,可以使用 Torch 在 GPU上运行,并且支持 CNN 微调。这些都使得语言模型(~100x)的训练速度大大加快,但由于我们还有一个 VGGNet,因此总体上的提升没有很多。但是这仍然是个好模型,可以在 2~3 天里训练好,而且表现出的性能非常好。

Google Brain 2016年9月22日发布了 Vinyals et al.(2015)的图说模型(前文介绍的Show and Tell 模型)。它的核心模型与 NeuralTalk2(一个CNN后面跟着RNN)非常相似,但由于 Google 有更好的CNN,加上一些小技巧和更细致的工程,Google 发布的模型应该比 NeuralTalk2 的效果更好。这个项目里用 Torch 实现的代码将作为教育目的保留。

20. Colornet

Star:3093(去年 8 月 2956)

Github 地址:https://github.com/pavelgonchar/colornet

Colornet 是一个给灰度图像自动上色的神经网络。效果如上图所示。

以下则为上次入选,这次却没有进入TOP20 的项目(Star 低于 2000 的项目就不纳入统计了):

image-analogies

Star:2893(去年 8 月 2769)

GitHub 地址:https://github.com/awentzonline/image-analogies

“神经图像类比”(neural image analogies)这个项目基本上是 A. Hertzmann et. al(2001)的论文“Image Analogies”的一个实现。在这个项目中,我们使用了 VGG16 的特征,利用 Chuan Li, Michael Wand (2016) 的论文“Combining Markov Random Fields and Convolutional Neural Networks for Image Synthesis”中描述的方法进行patch的匹配和混合。初始代码改编自 Keras 的“神经风格迁移”示例。

DeepLearningFlappyBird

Star:2866(去年 8 月 2143)

Github 地址:https://github.com/yenchenlin/DeepLearningFlappyBird

这个项目使用深度Q网络(Deep Q-Network,DQN)学习玩 Flappy Bird 游戏。

只能说,FlappyBird 的风潮已经过去了……

这个项目灵感来自使用深度增强学习玩 Atari 游戏(Mnih, Volodymyr, et al. "Playing atari with deep reinforcement learning." 2013),论文中提出深度Q学习算法(Deep Q Learning algorithm),我们发现这个算法可以推广到 Flappy Bird 游戏上。

DQN 是一个卷积神经网络,用 Q-learning 的变体进行训练,其输入是原始像素,输出是一个预估未来的奖励的价值函数。由于DQN的训练的每个时间步骤都需要观察屏幕中的原始像素值,Kevin Chen 发现删除原始游戏中的背景可以让收敛更快。这个过程如下图所示:

作者:wotacid
链接:https://www.jianshu.com/p/555f50987be4
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

【深度学习】Github 最受欢迎的深度学习项目 TOP 20相关推荐

  1. Github 最受欢迎的 35 个项目一览

    文章目录 Github 最受欢迎的 35 个项目一览 搜索 Github 仓库分析 社区 JavaScript 领域 CSS 领域 Python 领域 杂项 学习资料.面试资料.职业生涯指引.设计指南 ...

  2. 看看数据科学家们都在用什么:Github上的十大深度学习项目

    本文作者Matthew May是一位正在进行并行式机器学习算法研究的计算机硕士研究生,同时Matthew也是一位数据挖掘研习者,数据发烧友,热忱的机器学习科学家.开源工具在数据科学工作流中起到了愈发重 ...

  3. 28款GitHub最流行的开源机器学习项目,推荐GitHub上10 个开源深度学习框架

    20 个顶尖的 Python 机器学习开源项目 机器学习 2015-06-08 22:44:30 发布 您的评价: 0.0 收藏 1收藏 我们在Github上的贡献者和提交者之中检查了用Python语 ...

  4. 【github】机器学习(Machine Learning)深度学习(Deep Learning)资料

    转自:https://github.com/ty4z2008/Qix/blob/master/dl.md# <Brief History of Machine Learning> 介绍:这 ...

  5. 深度学习Github排名,很不错的介绍

    今天看到这篇文章,把深度学习github排名靠前的项目,介绍了一下,很不错: https://blog.csdn.net/yH0VLDe8VG8ep9VGe/article/details/81611 ...

  6. 【githubdailyshare】微软最近在 GitHub 上开源了一个 AI 音乐项目,基于深度学习,可自动完成音乐创作

    微软最近在 GitHub 上开源了一个 AI 音乐项目:Muzic,基于深度学习,可自动完成音乐创作. 创作过程主要分为两步,一是音乐理解(符号分类.声音识别),二是音乐合成(歌曲歌词创作.音乐旋律生 ...

  7. 一文弄懂元学习 (Meta Learing)(附代码实战)《繁凡的深度学习笔记》第 15 章 元学习详解 (上)万字中文综述

    <繁凡的深度学习笔记>第 15 章 元学习详解 (上)万字中文综述(DL笔记整理系列) 3043331995@qq.com https://fanfansann.blog.csdn.net ...

  8. 视频教程-深度学习与TensorFlow 2入门实战-深度学习

    深度学习与TensorFlow 2入门实战 新加坡国立大学研究员 龙良曲 ¥399.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+技术好课免费看 APP订阅课程,领取优惠,最少立减5 ...

  9. TensorFlow 深度学习笔记 TensorFlow实现与优化深度神经网络

    TensorFlow 深度学习笔记 TensorFlow实现与优化深度神经网络 转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnote ...

最新文章

  1. dom文档对象手册_DOM总结
  2. 【C语言】一文搞定如何计算结构体的大小----结构体内存对齐规则
  3. sourcetree 卡顿_Android卡顿性能监测方案对比
  4. cudnn问题 cudnnCreate 延时长 见效慢 要卡十几分钟才能过 如何解决?(229)
  5. c语言中的字符变量用什么保留字来说明,第1、2章C语言基础练习题
  6. python中的timeit模块的用法
  7. linux下新建一个脚本文件,linux下新建并启动脚本文件
  8. 【Code Tools】AB性能测试工具(二)
  9. 全国行政区划代码(json版)
  10. Java编程之从零开始学Java——初始java
  11. 【NOIP2016普及组复赛模拟赛】买装备(equipment)
  12. 10大城市硬科技指数发布,“硬科技+在大西安”高峰论坛圆满落幕
  13. e430c更换光盘托架_如何处理PC上未使用的光盘驱动器托架
  14. 二次函数回归方程_高三专题||【导数专题四】利用导数研究函数图形专项习题...
  15. opencv 轮廓提取文字
  16. phpmywind 子菜单调用
  17. uni-app:uni-icons的使用及如何自定义图标
  18. 矩阵求和 c语言 简单易懂
  19. 认识Excel的第三天(字数满格自动换行、插入一行/列单元格、修改边框样式)
  20. echars基本使用

热门文章

  1. 自增(increment)、自减(decrement)操作符前缀形式与后缀形式的区别
  2. MascotCapsule手机游戏引擎简介
  3. 线性代数 --- 什么叫线性组合 Linear Combination(个人笔记扫描版)
  4. 中点画线法c语言程序,计算机图形学 :中点画圆法
  5. 浅谈AWD攻防赛的生存攻略
  6. 基于angularjs的单页面实例_angularjs实例网站
  7. android6.0获取通讯录权限
  8. JavaScript生成字符画(ASCII Art)
  9. error LNK2001: 无法解析的外部符号 __imp____iob_func
  10. arcgis栅格计算器:将栅格图层指定值设置为Nodata及栅格图层求交