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

是一個開放的機器學習框架,為黑客建立經典,深或混合機器學習應用。它的靈感來自於TensorFlowTorch, 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功能的簡單索引器。 最近鄰搜索可以使用近似(更快)或使用精確方法(更慢)以近似方式執行。


推薦閱讀:

【乾貨】Facebook剛剛開源DrQA項目,手把手教你做一個問答系統
怎樣參與到全世界優秀的開源項目中?
Github 預測:2018 你必須關注的開源項目
測試分類 --- 根據項目流程階段和代碼可見度劃分
GitHub上火爆的Python項目小匯總

TAG:學習 | 開源項目 | GitHub | 開源 | 項目 | 深度學習 | 深度 | 歡迎 |