基於 10 大程式語言的 30 個深度學習庫
本文介紹了包括 Python、Java、Haskell等在內的一系列程式語言的深度學習庫。
Python
Theano 是一種用於使用數列來定義和評估數學表達的 Python 庫。它可以讓 Python 中深度學習演算法的編寫更為簡單。很多其他的庫是以 Theano 為基礎開發的:
Caffe 是一種以表達清晰、高速和模組化為理念建立起來的深度學習框架。它是由伯克利視覺和學習中心(BVLC)和網上社群貢獻者共同開發的。谷歌的 DeepDream 人工智慧影像處理程式正是建立在 Caffe 框架之上。這個框架是一個 BSD 許可的帶有 Python 介面的 C++庫。
nolearn 包含大量其他神經網路庫中的包裝器和抽象(wrappers and abstractions),其中最值得注意的是 Lasagne,其中也包含一些機器學習的實用模組。
Genism 是一個部署在 Python 程式語言中的深度學習工具包,用於通過高效的演算法處理大型文字集。
Chainer 連線深度學習中的演算法與實現,它強勁、靈活而敏銳,是一種用於深度學習的靈活的框架。
deepnet 是一種基於 GPU 的深度學習演算法的 Python 實現,比如:前饋神經網路、受限玻爾茲曼機、深度信念網路、自編碼器、深度玻爾茲曼機和卷積神經網路。
Hebel 是一個在 Python 中用於帶有神經網路的深度學習的庫,它通過 PyCUDA 使用帶有 CUDA 的 GPU 加速。它可實現大多數目前最重要的神經網路模型,提供了多種不同的啟用函式和訓練方式,如動量,Nesterov 動量,退出(dropout)和 前期停止(early stopping)。
CXXNET 是一種快速,簡明的分散式深度學習框架,它以 MShadow 為基礎。它是輕量級可擴充套件的 C++/CUDA 神經網路工具包,同時擁有友好的 Python/Matlab 介面,可供機器學習的訓練和預測使用。
DeepPy 是一種建立在 Mumpy 之上的 Python 化的深度學習框架。
DeepLearning 是一個用 C++和 Python 開發的深度學習庫。
Neon 是 Nervana 公司基於 Python 開發的深度學習框架。
C++
eblearn 是一個機器學習的開源 C++庫,由紐約大學機器學習實驗室的 Yann LeCun 牽頭研發。尤其是,按照 GUI、演示和教程來部署的帶有基於能量的模型的卷積神經網路。
SINGA 被設計用來進行已有系統中分散式訓練演算法的普通實現。它由 Apache Software Foundation 提供支援。
NVIDIA DIGITS 是一個新的用於開發、訓練和視覺化神經網路系統。它把深度學習放進了基於瀏覽器的介面中,讓資料分析師和研究人員可以快速設計最好的深度學習神經網路(DNN)來獲取實時的網路行為視覺化資料。
Intel® Deep Learning Framework 為英特爾的平臺提供了統一的框架來加速深度卷積神經網路。
Java
N-Dimensional Arrays for Java (ND4J) 是一種為 JVM 設計的科學計算庫。它們被應用在生產環境中,這就意味著路徑被設計成可以最小的 RAM 記憶體需求來快速執行。
Deeplearning4j 是第一個為 Java 和 Scala 編寫的消費級開元分散式深度學習庫。它被設計成在商業環境中使用,而非研究工具。
Encog 是一種先進的機器學習框架,支援支援向量機(Support Vector Machines),人工神經網路(Artificial Neural Networks),基因程式設計(Genetic Programming),貝葉斯網路(Bayesian Networks),隱馬爾科夫模型(Hidden Markov Models)和 遺傳演算法(Genetic Algorithms)。
JavaScript
Convent.js 是一種 Javascript 中用於深度學習模型(主要是神經網路)的庫。完全在瀏覽器中使用,不需要開發工具,不需要編譯器,不需要安裝,也不需要 GPU 的支援,簡單易用。
Lua
Torch 是一種科學計算框架,可支援多種計算機學習演算法。
Julia
Mocha 用於 Julia 的一種深度學習框架,其靈感來源於 C++框架 Caffe。在 Mocha 中通用的隨機梯度求解器和公共層的有效實現可以被用於訓練深度/淺層(卷積)神經網路,其帶有通過(堆疊的)自動解碼器的(可選的)無監督的預訓練。其最大特點包括:帶有模組化架構、 高層面的介面、便攜性與速度、相容性等等。
Lisp
Lush(Lisp Universal Shell)是一種為研究人員、試驗者以及對大規模數值和圖形應用感興趣的工程師設計的、物件導向的程式語言。它帶有豐富的作為機器學習庫一部分的深度學習庫。
Haskell
DNNGraph 是一個用 Haskell 編寫的深度神經網路生成 DSL。
.NET
Accord.NET 是一種.NET 機器學習框架,包含聲音和影像處理庫,它完全由 C# 編寫。它是一種為開發生產級的計算機視覺、計算機聽覺、訊號處理和統計應用而設計的完整框架。
R
darch 包可以用於建立多層神經網路(深層結構)。其中的訓練方式包括使用對比發散法進行提前訓練,或使用通常的訓練方法(如反向傳播和共軛梯度)進行一些微調。
deepnet 實現了一些深度學習架構和神經網路演算法,包括 BP、RBM、DBN、深度自編碼器等等。
相關文章
- 用於數學的 10 個優秀程式語言
- 【電腦科學】【2020.05】【含原始碼】基於GO語言的深度學習原始碼Go深度學習
- 基於圖深度學習的自然語言處理方法和應用深度學習自然語言處理
- 又一個基於JVM的程式語言:FlixJVM
- 基於深度學習的單通道語音增強深度學習
- 基於go語言學習工廠模式Go模式
- c語言程式基礎學習筆記C語言筆記
- 基於課程學習(Curriculum Learning)的自然語言理解
- 10個python常用且好用的機器學習及深度學習庫!Python機器學習深度學習
- 1 分鐘學會 30 種程式語言
- c語言基礎學習C語言
- 基於pytorch的深度學習實戰PyTorch深度學習
- 基於TensorFlow的深度學習實戰深度學習
- 再見Python!Yann LeCun警告:深度學習需要新程式語言PythonYann LeCun深度學習
- 有誰能把這個基於JAM的程式語言做出來
- 基於深度學習的時間序列分類[含程式碼]深度學習
- 【機器學習基礎】關於深度學習的Tips機器學習深度學習
- 30天學習編寫30個Swift小程式Swift
- 學習哪個程式語言呢?Python和C#哪個好學?PythonC#
- 語料庫基礎學習
- Solidity語言學習筆記————30、函式過載Solid筆記函式
- 深度學習|基於MobileNet的多目標跟蹤深度學習演算法深度學習演算法
- Solidity語言學習筆記————36、 庫Solid筆記
- Dart程式語言入門學習Dart
- 這些程式語言值得學習
- C語言學習的幾個階段C語言
- 《深度學習案例精粹:基於TensorFlow與Keras》案例集用於深度學習訓練深度學習Keras
- 基於深度學習的影象語義分割技術概述之背景與深度網路架構深度學習架構
- 基於深度學習的醫學影像配準學習筆記2深度學習筆記
- 普通視訊轉高清:10個基於深度學習的超解析度神經網路深度學習神經網路
- go語言學習-基礎知識Go
- 實戰 | 基於深度學習模型VGG的影象識別(附程式碼)深度學習模型
- 《深度學習進階:自然語言處理》中的網址深度學習自然語言處理
- java是最值得學習的程式語言嗎?Java
- 到底該學習什麼程式語言
- 如何學習多個國家語言?
- 深度解密Go語言之關於 interface 的10個問題解密Go
- 基於深度學習模型Wide&Deep的推薦深度學習模型IDE