1. 程式人生 > >各種語言的機器學習框架

各種語言的機器學習框架

C++

計算機視覺

·       CCV—基於C語言/提供快取/核心的機器視覺庫,新穎的機器視覺庫

·       OpenCV—它提供C++, C, Python, Java 以及 MATLAB介面,並支援Windows, Linux, Android and MacOS作業系統。

通用機器學習

·       DLib

·       ecogg

·       shark

Closure

通用機器學習

Go

自然語言處理

·       go-porterstemmer—一個Porter詞幹提取演算法的原生Go語言淨室實現

·       paicehusk—Paice/Husk詞幹提取演算法的Go語言實現

·       

snowball—Go語言版的Snowball詞幹提取器

通用機器學習

·       Go Learn— Go語言機器學習庫

·       go-pr—Go語言機器學習包.

·       bayesian—Go語言樸素貝葉斯分類庫。

·       go-galib—Go語言遺傳演算法庫。

資料分析/資料視覺化

·       SVGo—Go語言的SVG生成庫。

Java

自然語言處理

·       CoreNLP—斯坦福大學的CoreNLP提供一系列的自然語言處理工具,輸入原始英語文字,可以給出單詞的基本形式(下面Stanford開頭的幾個工具都包含其中)。

·       Tregex, Tsurgeon and Semgrex

—用來在樹狀資料結構中進行模式匹配,基於樹關係以及節點匹配的正則表示式(名字是“tree regular expressions”的縮寫)。

·       Stanford Phrasal:最新的基於統計短語的機器翻譯系統,java編寫

·       Stanford SPIED—在種子集上使用模式,以迭代方式從無標籤文字中學習字元實體

·       MALLET -—基於Java的統計自然語言處理、文件分類、聚類、主題建模、資訊提取以及其他機器學習文字應用包。

·       OpenNLP—處理自然語言文字的機器學習工具包。

·       LingPipe—使用計算機語言學處理文字的工具包。

通用機器學習

·       Mahout—分散式的機器學習庫

·       Weka—Weka是資料探勘方面的機器學習演算法集。

·       ORYX—提供一個簡單的大規模實時機器學習/預測分析基礎架構。

資料分析/資料視覺化

·       Hadoop—大資料分析平臺

·       Spark—快速通用的大規模資料處理引擎。

·       Impala—為Hadoop實現實時查詢

Javascript

自然語言處理

·       NLP.js—javascript及coffeescript編寫的NLP工具

·       natural—Node下的通用NLP工具

·       Knwl.js—JS編寫的自然語言處理器

資料分析/資料視覺化

·       D3.js

·       dc.js

通用機器學習

·       Convnet.js—訓練深度學習模型的JavaScript庫。

·       Clustering.js—用JavaScript實現的聚類演算法,供Node.js及瀏覽器使用。

·       Decision Trees—Node.js實現的決策樹,使用ID3演算法。

·       Node-fann—Node.js下的快速人工神經網路庫。

·       Kmeans.js—k-means演算法的簡單Javascript實現,供Node.js及瀏覽器使用。

·       LDA.js—供Node.js用的LDA主題建模工具。

·       Learning.js—邏輯迴歸/c4.5決策樹的JavaScript實現

·       Node-SVM—Node.js的支援向量機

·       Brain—JavaScript實現的神經網路

·       Bayesian-Bandit—貝葉斯強盜演算法的實現,供Node.js及瀏覽器使用。

Julia

通用機器學習

·       PGM—Julia實現的概率圖模型框架。

·       DA—Julia實現的正則化判別分析包。

·       Regression—迴歸分析演算法包(如線性迴歸和邏輯迴歸)。

·       Naive Bayes—樸素貝葉斯的簡單Julia實現

·       Mixed Models—(統計)混合效應模型的Julia

·       Simple MCMC—Julia實現的基本mcmc取樣器

·       Distance—Julia實現的距離評估模組

·       Neural—Julia實現的神經網路

·       MCMC—Julia下的MCMC工具

·       GLM—Julia寫的廣義線性模型包

·       GLMNet—GMLNet的Julia包裝版,適合套索/彈性網模型。

·       Clustering—資料聚類的基本函式:k-means, dp-means等。

·       SVM—Julia下的支援向量機。

·       NMF—Julia下的非負矩陣分解包

·       ANN—Julia實現的神經網路

自然語言處理

資料分析/資料視覺化

·       Graph Layout—純Julia實現的圖佈局演算法。

·       Julia Data—處理表格資料的Julia

·       Data Read—從Stata、SAS、SPSS讀取檔案

·       Gladfly—Julia編寫的靈巧的統計繪圖系統。

·       Stats—Julia編寫的統計測試函式包

·       RDataSets—讀取R語言中眾多可用的資料集的Julia函式包。

·       DataFrames—處理表格資料的Julia庫。

·       Data Arrays—元素值可以為空的資料結構。

·       Time Series—Julia的時間序列資料工具包。

·       Sampling—Julia的基本取樣演算法包

雜項/簡報

·       DSP—數字訊號處理

·       Images—Julia的圖片庫

Lua

通用機器學習

§ cephes—Cephes數學函式庫,包裝成Torch可用形式。提供幷包裝了超過180個特殊的數學函式,由Stephen L. Moshier開發,是SciPy的核心,應用於很多場合。

§ graph—供Torch使用的圖形包。

§ randomkit—從Numpy提取的隨機數生成包,包裝成Torch可用形式。

§ signal—Torch-7可用的訊號處理工具包,可進行FFT, DCT, Hilbert, cepstrums, stft等變換。

§ nn—Torch可用的神經網路包。

§ nngraph—為nn庫提供圖形計算能力。

§ nnx—一個不穩定實驗性的包,擴充套件Torch內建的nn庫。

§ optim—Torch可用的優化演算法庫,包括 SGD, Adagrad, 共軛梯度演算法, LBFGS, RProp等演算法。

§ unsup—Torch下的非監督學習包。提供的模組與nn(LinearPsd, ConvPsd, AutoEncoder, …)及獨立演算法 (k-means, PCA)等相容。

§ svm—Torch的支援向量機庫。

§ lbfgs—將liblbfgs包裝為FFI介面。

§ vowpalwabbit—老版的vowpalwabbit對torch的介面。

§ OpenGM—OpenGM是C++編寫的圖形建模及推斷庫,該binding可以用Lua以簡單的方式描述圖形,然後用OpenGM優化。

§ sphagetti—MichaelMathieu為torch7編寫的稀疏線性模組。

§ LuaSHKit—將區域性敏感雜湊庫SHKit包裝成lua可用形式。

§ cutorch—torch的CUDA後端實現

§ cunn—torch的CUDA神經網路實現。

§ imgraph—torch的影象/圖形庫,提供從影象建立圖形、分割、建立樹、又轉化回影象的例程

§ videograph—torch的視訊/圖形庫,提供從視訊建立圖形、分割、建立樹、又轉化回視訊的例程

§ saliency—積分影象的程式碼和工具,用來從快速積分直方圖中尋找興趣點。

§ stitch—使用hugin拼合影象並將其生成視訊序列。

§ sfm—運動場景束調整/結構包

§ fex—torch的特徵提取包,提供SIFT和dSIFT模組。

§ OverFeat—當前最高水準的通用密度特徵提取器。

·       Lunum

演示及指令碼

§ 線性迴歸、邏輯迴歸

§ 人臉檢測(訓練和檢測是獨立的演示)

§ 基於mst的斷詞器

§ train-a-digit-classifier

§ train-autoencoder

§ optical flow demo

§ train-on-housenumbers

§ train-on-cifar

§ tracking with deep nets

§ kinect demo

§ 濾波視覺化

§ saliency-networks

§ BSR 500

§ CIFAR-10

§ COIL

§ Street View House Numbers

§ MNIST

§ NORB

·       Atari2600—在Arcade Learning Environment模擬器中用靜態幀生成資料集的指令碼。

Matlab

計算機視覺

·       Contourlets—實現輪廓波變換及其使用函式的MATLAB原始碼

·       Shearlets—剪下波變換的MATLAB原始碼

·       Curvelets—Curvelet變換的MATLAB原始碼(Curvelet變換是對小波變換向更高維的推廣,用來在不同尺度角度表示影象。)

·       Bandlets—Bandlets變換的MATLAB原始碼

自然語言處理

·       NLP—一個Matlab的NLP庫

通用機器學習

·       Spider—Matlab機器學習的完整面向物件環境。

·       LibSVM—支援向量機程式庫

·       Machine Learning Module—M. A .Girolami教授的機器學習課程,包括PDF,講義及程式碼。

·       Caffe—考慮了程式碼清潔、可讀性及速度的深度學習框架

資料分析/資料視覺化

·       gamic—影象演算法純Matlab高效實現,對MatlabBGL的mex函式是個補充。

.NET

計算機視覺

·       OpenCVDotNet—包裝器,使.NET程式能使用OpenCV程式碼

·       Emgu CV—跨平臺的包裝器,能在Windows, Linus, Mac OS X,iOS, 和Android上編譯。

自然語言處理

·       Stanford.NLP for .NET—斯坦福大學NLP包在.NET上的完全移植,還可作為NuGet包進行預編譯。

通用機器學習

·       Accord.MachineLearning—支援向量機、決策樹、樸素貝葉斯模型、K-means、高斯混合模型和機器學習應用的通用演算法,例如:隨機抽樣一致性演算法、交叉驗證、網格搜尋。這個包是Accord.NET框架的一部分。

·       Vulpes—F#語言實現的Deepbelief和深度學習包,它在Alea.cuBase下利用CUDAGPU來執行。

·       Encog—先進的神經網路和機器學習框架,包括用來建立多種網路的類,也支援神經網路需要的資料規則化及處理的類。它的訓練採用多執行緒彈性傳播。它也能使用GPU加快處理時間。提供了圖形化介面來幫助建模和訓練神經網路。

·       Neural Network Designer—這是一個數據庫管理系統和神經網路設計器。設計器用WPF開發,也是一個UI,你可以設計你的神經網路、查詢網路、建立並配置聊天機器人,它能問問題,並從你的反饋中學習。這些機器人甚至可以從網路蒐集資訊用來輸出,或是用來學習。

資料分析/資料視覺化

·       numl—numl這個機器學習庫,目標就是簡化預測和聚類的標準建模技術。

·       Math.NET Numerics— Math.NET專案的數值計算基礎,著眼提供科學、工程以及日常數值計算的方法和演算法。支援 Windows, Linux 和 Mac上的 .Net 4.0, .Net 3.5 和 Mono ,Silverlight 5, WindowsPhone/SL 8, WindowsPhone 8.1 以及裝有 PCL Portable Profiles 47 及 344的Windows 8, 裝有 Xamarin的Android/iOS 。

·       Sho— Sho是資料分析和科學計算的互動式環境,可以讓你將指令碼(IronPython語言)和編譯的程式碼(.NET)無縫連線,以快速靈活的建立原型。這個環境包括強大高效的庫,如線性代數、資料視覺化,可供任何.NET語言使用,還為快速開發提供了功能豐富的互動式shell。

Python

計算機視覺

·       SimpleCV—開源的計算機視覺框架,可以訪問如OpenCV等高效能運算機視覺庫。使用Python編寫,可以在Mac、Windows以及Ubuntu上執行。

自然語言處理

·       NLTK—一個領先的平臺,用來編寫處理人類語言資料的Python程式

·       Pattern—Python可用的web挖掘模組,包括自然語言處理、機器學習等工具。

·       TextBlob—為普通自然語言處理任務提供一致的API,以NLTK和Pattern為基礎,並和兩者都能很好相容。

·       jieba—中文斷詞工具。

·       loso—另一箇中文斷詞庫。

·       genius—基於條件隨機域的中文斷詞庫。

·       nut—自然語言理解工具包。

通用機器學習

·       graphlab-create—包含多種機器學習模組的庫(迴歸,聚類,推薦系統,圖分析等),基於可以磁碟儲存的DataFrame

·       BigML—連線外部伺服器的庫。

·       pattern—Python的web挖掘模組

·       NuPIC—Numenta公司的智慧計算平臺。

·       Pylearn2—基於Theano的機器學習庫。

·       hebel—Python編寫的使用GPU加速的深度學習庫。

·       gensim—主題建模工具。

·       PyBrain—另一個機器學習庫。

·       Crab—可擴充套件的、快速推薦引擎。

·       Bolt—線上學習工具箱。

·       CoverTree—cover tree的Python實現,scipy.spatial.kdtree便捷的替代。

·       nilearn—Python實現的神經影像學機器學習庫。

·       Shogun—機器學習工具箱。

·       Caffe—考慮了程式碼清潔、可讀性及速度的深度學習框架

·       breze—深度及遞迴神經網路的程式庫,基於Theano

資料分析/資料視覺化

·       SciPy—基於Python的數學、科學、工程開源軟體生態系統。

·       NumPy—Python科學計算基礎包。

·       Numba—Python的低階虛擬機器JIT編譯器,Cython and NumPy的開發者編寫,供科學計算使用

·       NetworkX—為複雜網路使用的高效軟體。

·       Pandas—這個庫提供了高效能、易用的資料結構及資料分析工具。

·       Open Mining—Python中的商業智慧工具(Pandasweb介面)。

·       PyMC—MCMC取樣工具包。

·       zipline—Python的演算法交易庫。

·       PyDy—全名Python Dynamics,協助基於NumPy, SciPy, IPython以及 matplotlib的動態建模工作流。

·       SymPy—符號數學Python庫。

·       statsmodels—Python的統計建模及計量經濟學庫。

·       astropy—Python天文學程式庫,社群協作編寫

·       matplotlib—Python的2D繪相簿。

·       bokeh—Python的互動式Web繪相簿。

·       plotly—Python and matplotlib的協作web繪相簿。

·       vincent—將Python資料結構轉換為Vega視覺化語法。

·       d3py—Python的繪相簿,基於D3.js。

·       ggplot—和R語言裡的ggplot2提供同樣的API。

·       Kartograph.py—Python中渲染SVG圖的庫,效果漂亮。

·       pygal—Python下的SVG圖表生成器。

雜項指令碼/iPython筆記/程式碼庫

·       Sarah Palin LDA—Sarah Palin關於主題建模的電郵。

·       Scipy Tutorials—SciPy教程,已過時,請檢視scipy-lecture-notes

·       Crab—Python的推薦引擎庫。

·       BayesPy—Python中的貝葉斯推斷工具。

·       group-lasso—座標下降演算法實驗,應用於(稀疏)群套索模型。

·       mne-python-notebooks—使用 mne-python進行EEG/MEG資料處理的IPython筆記

·       pandas cookbook—使用Python pandas庫的方法書。

·       climin—機器學習的優化程式庫,用Python實現了梯度下降、LBFGS、rmsprop、adadelta等演算法。

Kaggle競賽原始碼

·       wiki challange—Kaggle上一個維基預測挑戰賽 Dell Zhang解法的實現。

·       kaggle insults—Kaggle上”從社交媒體評論中檢測辱罵“競賽提交的程式碼

·       kaggle-cifar—Kaggle上CIFAR-10競賽的程式碼,使用cuda-convnet

·       kaggle-blackbox—Kaggle上blackbox賽程式碼,關於深度學習。

·       kaggle amazon—Kaggle上給定員工角色預測其訪問需求競賽的程式碼

·       kaggle-bestbuy_big—Kaggle上根據bestbuy使用者查詢預測點選商品競賽的程式碼(大資料版)

·       kaggle-bestbuy_small—Kaggle上根據bestbuy使用者查詢預測點選商品競賽的程式碼(小資料版)

·       Kaggle Gender—Kaggle競賽:從筆跡區分性別

·       Kaggle Merck—Kaggle上預測藥物分子活性競賽的程式碼(默克製藥贊助)

·       Kaggle Stackoverflow—Kaggle上 預測Stack Overflow網站問題是否會被關閉競賽的程式碼

Ruby

自然語言處理

·       Treat—文字檢索與註釋工具包,Ruby上我見過的最全面的工具包。

·       Ruby Linguistics—這個框架可以用任何語言為Ruby物件構建語言學工具。包括一個語言無關的通用前端,一個將語言程式碼對映到語言名的模組,和一個含有很有英文語言工具的模組。

·       Stemmer—使得Ruby可用 libstemmer_c中的介面。

·       Ruby Wordnet—WordNet的Ruby介面庫。

·       Raspel—aspell繫結到Ruby的介面

·       UEA Stemmer—UEALite Stemmer的Ruby移植版,供搜尋和檢索用的保守的詞幹分析器

·       Twitter-text-rb—該程式庫可以將推特中的使用者名稱、列表和話題標籤自動連線並提取出來。

通用機器學習

·       jRuby Mahout—精華!在JRuby世界中釋放了ApacheMahout的威力。

資料分析/資料視覺化

·       rsruby - Ruby – R bridge

·       ruby-plot—將gnuplot包裝為Ruby形式,特別適合將ROC曲線轉化為svg檔案。

·       

相關推薦

各種語言機器學習框架

C++計算機視覺·       CCV—基於C語言/提供快取/核心的機器視覺庫,新穎的機器視覺庫·       OpenCV—它提供C++, C, Python, Java 以及 MATLAB介面,並支援Windows, Linux, Android and MacOS作業系

八大機器學習框架對比及Tensorflow的優勢

同時 ++ 容易 得到 智能 模型訓練 並且 gpu 動態 八大機器學習框架的對比: (1) TensorFlow:深度學習最流行的庫之一,是谷歌在深刻總結了其 前身 DistBelief 的經驗教訓上形成的;它不僅便攜、高效、可擴 展,還能再不同計算機上運行:小到智能

深度學習機器學習框架對比摘要

評估 shu soar OS oschina detail 深度 china blog 對比深度學習十大框架:TensorFlow 並非最好? TensorFlow與主流深度學習框架對比 五大主流深度學習框架對比:MXNET是最好選擇 主流開源深度學習框架對比分析

一個開源的,跨平臺的.NET機器學習框架ML.NET

例子 觀察 bin OS ron feature mean 參考 移動應用 微軟在Build 2018大會上推出的一款面向.NET開發人員的開源,跨平臺機器學習框架ML.NET。 ML.NET將允許.NET開發人員開發他們自己的模型,並將自定義ML集成到他們的應用程序中,而

TensorFlow機器學習框架-學習筆記-001

imp bsp con `` ant In session 框架 constant # TensorFlow機器學習框架-學習筆記-001 ### 測試TensorFlow環境是否安裝完成-----------------------------```import ten

[Xcode10 實際操作]七、檔案與資料-(20)CoreML機器學習框架:檢測和識別圖片中的物體

本文將演示機器學習框架的使用,實現對圖片中物體的檢測和識別。 首先訪問蘋果開發者網站關於機器學習的網址: https://developer.apple.com/cn/machine-learning/ 點選右側的滾動條,跳轉到模型知識區域。 點選頁面最下方的【Learn about working

13個機器學習框架

轉:https://blog.csdn.net/zuochao_2013/article/details/77852442 1. Apache Spark MLlib Apache Spark 最為人所知的是它是Hadoop家族的一員,但是這個記憶

矽谷IT大牛推薦10種機器學習框架,程式設計師跳槽漲薪攻略!

人工智慧已經存在了很長時間。 然而,由於該領域的巨大改進,近年來它已成為流行語。 人工智慧曾經被稱為總體書呆子和天才的領域,但由於各種庫和框架的發展,它已成為一個更友好的IT領域,並有很多人進入它。   在本文中,我們將研究用於人工智慧的高質量庫,它們的優缺點以及它們的一些功

R語言機器學習模型評價指標+(轉)模型出錯的四大原因及如何糾錯

筆者寄語:機器學習中交叉驗證的方式是主要的模型評價方法,交叉驗證中用到了哪些指標呢?交叉驗證將資料分為訓練資料集、測試資料集,然後通過訓練資料集進行訓練,通過測試資料集進行測試,驗證集進行驗證。模型預測

DMLC深度機器學習框架MXNet的編譯安裝

http://www.cnblogs.com/simplelovecs/p/5145305.html  這篇文章將介紹MXNet的編譯安裝。   MXNet的編譯安裝分為兩步: 首先,從C++原始碼編譯共享庫(libmxnet.so fo

R語言機器學習模型評估方案(以隨機森林演算法為例)

      筆者寄語:本文中大多內容來自《資料探勘之道》,本文為讀書筆記。在剛剛接觸機器學習的時候,覺得在監督學習之後,做一個混淆矩陣就已經足夠,但是完整的機器學習解決方案並不會如此草率。需要完整的評價模型的方式。      常見的應用在監督學習演算法中的是計算平均絕對誤差(

GitHub上Top20個 Python 語言機器學習專案

1. Scikit-learn www.github.com/scikit-learn/scikit-learn Scikit-learn 是基於Scipy為機器學習建造的的一個Python模組,他的特色就是多樣化的分類,迴歸和聚類的演算法包括支援向量機,邏輯迴歸,樸

google機器學習框架tensorflow學習筆記(十)

訓練集和測試集 (Training and Test Sets):拆分資料 上一單元介紹了將資料集分為兩個子集的概念: 訓練集 - 用於訓練模型的子集。 測試集 - 用於測試訓練後模型的子集。 您可以想象按如下方式拆分單個數據集:

google機器學習框架tensorflow學習筆記(九)

泛化 (Generalization):過擬合的風險 本單元將重點介紹泛化。為了讓您直觀地理解這一概念,我們將展示 3 張圖。假設這些圖中的每個點代表一棵樹在森林中的位置。圖中的兩種顏色分別代表以下含義: 藍點代表生病的樹。 橙點代表健康的樹。

google機器學習框架tensorflow學習筆記(八)

合成特質和離群值 學習目標: 建立一個合成特徵,即另外兩個特徵的比例 將此新特徵用作線性迴歸模型的輸入 通過識別和擷取(移除)輸入資料中的離群值來提高模型的有效性 我們來回顧下之前的“使用 TensorFlow 的基本步驟”練習中的模型。 首先,我們將

google機器學習框架tensorflow學習筆記(四)

使用TensorFlow的基本步驟 tensorflow是一個可用於構建機器學習模型的平臺,但其實它的用途很廣泛。它是一種基於圖表的通用計算框架,可用來編寫你能想出的任何東西。事實上tensorflow.org的API頁面中提供了可在程式碼中使用的低階tensorflo

google機器學習框架tensorflow學習筆記(三)

降低損失:迭代法 迭代學習其實就是一種反饋的結果,有點類似於猜數遊戲,首先你隨便猜一個數,對方告訴你大了還是小了,接著你根據對方提供的資訊進行調整,繼續往正確的方向猜測,如此往復,你通常會越來越接近要猜的數。 這個遊戲真正棘手的地方在於儘可能高效地找到最佳模型。 下圖

google機器學習框架tensorflow學習筆記(二)

線性迴歸 人們早就知曉 ,相比涼爽的天氣,蟋蟀在較為炎熱的天氣裡鳴叫更為頻繁。數十年來,專業和業餘昆蟲學者已將每分鐘的鳴叫聲和溫度方面的資料編入目錄。Ruth 阿姨將她喜愛的蟋蟀資料庫作為生日禮物送給您,並邀請您自己利用該資料庫訓練一個模型,從而預測鳴叫聲與溫度的關係。如果把資料

google機器學習框架tensorflow學習筆記(七)

使用Tensorflow的基本步驟 第五步: 訓練模型 現在,我們可以在 linear_regressor 上呼叫 train() 來訓練模型。我們會將 my_input_fn 封裝在 lambda

google機器學習框架tensorflow學習筆記(六)

使用Tensorflow的基本步驟 設定 首先載入必要的庫 import math from IPython import display from matplotlib import cm from matplotlib import gridspec fr