1. 程式人生 > >最全的機器學習資料

最全的機器學習資料

原文

機器學習(Machine Learning, ML)是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、演算法複雜度理論等多門學科。專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的效能。機器學習牽涉的程式語言十分之廣,包括了MATLAB、Julia、R、Perl、Python、Clojure、Ruby等等。

為了讓開發者更加廣泛、深入地瞭解機器學習,雲棲社群組織翻譯了GitHub Awesome Machine Learning 資源,涵蓋24種程式語言的機器學習的框架、庫以及其他相關資料。

目錄

C

通用機器學習

  • Recommender – 一個C語言庫,利用協同過濾(CF)進行產品推薦/建議;
  • Darknet -是一個用C和CUDA編寫的開源神經網路框架,它速度快,易於安裝,並支援CPU和GPU計算。

計算機視覺

  • CCV -基於C語言、快取記憶體的核計算機視覺庫,是一個現代化的計算機視覺庫;
  • VLFeat -開放、可便攜的計算機視覺演算法庫,內有matlab工具箱。

語音識別

  • HTK -隱馬爾可夫模型工具包(HTK)是一個行動式工具包,用於構建和操作隱馬爾可夫模型。

C++

計算機視覺

  • OpenCV -OpenCV自帶C ++、C、Python、Java和MATLAB介面,並支援Windows、Linux、Android版和Mac OS等系統;
  • DLib -DLib有C ++和Python介面,用於人臉檢測和訓練通用的目標探測器;
  • EBLearn -Eblearn是一種面向物件的C++庫,能夠實現各種機器學習模型;
  • VIGRA -VIGRA是通用跨平臺的C++計算機視覺和機器學習庫,能夠用Python繫結任意維度的體積。

通用機器學習

  • mlpack -可擴充套件的C++機器學習庫;
  • DLib -ML工具套件,能夠很容易嵌入到其他應用程式中;
  • shark
  • Vowpal Wabbit (VW) -一個快速的核外(out-of-core )學習系統;
  • Shogun -Shogun機器學習工具箱;
  • Caffe -基於清潔度、可讀性和速度考慮而開發的深度學習框架。[深度學習]
  • CXXNET -另一個深度學習框架,其核心程式碼少於1000行;[深度學習]
  • XGBoost -一種並行、優化、通用的梯度推進庫;
  • CUDA -利用C++ / CUDA快速實現卷積;[深度學習]
  • Stan -一種概率性的程式語言,能夠實現Hamiltonian Monte Carlo抽樣的全貝葉斯統計推斷;
  • BanditLib -一個簡單、有多重保護的Bandit庫;
  • Timbl :一個軟體包/ C ++庫,能夠實現多種基於記憶體的學習演算法,其中有IB1-IG–k-最近鄰分類的實現、IGTree–IB1-IG的決策樹近似值;常用於NLP;
  • Disrtibuted Machine learning Tool Kit (DMTK) -微軟開發的分散式機器學習(引數伺服器)框架,能夠在多臺機器的大型資料集上實現訓練模型,與它捆綁的現有工具包括:LightLDA和分散式(多感測)字嵌入;
  • Warp-CTC -在CPU和GPU上快速並行地實現連線時域分類(Connectionist Temporal Classification,CTC);
  • CNTK -微軟研究院開發的計算網路工具包(CNTK),它作為一系列計算步驟,通過有向圖來描述神經網路,是統一的深度學習工具包;
  • DeepDetect -一個機器學習API,伺服器用C++11編寫,它使機器學習的狀態易於工作,並容易整合到現有應用程式;
  • Fido -一個高度模組化的C++機器學習庫,用於嵌入式電子產品和機器人中。
  • CRF++ -條件隨機域(Conditional Random Fields,CRFs)的開源實現,用於分割/標記序列資料及其他自然語言處理任務;
  • CRFsuite -條件隨機域(CRFs)的實現,用於標記序列資料;
  • BLLIP Parser -BLLIP自然語言解析器(也稱為Charniak-Johnson解析器);
  • colibri-core -是C++庫、命令列工具,和Python繫結用於提取與使用基本的語言結構,例如用快速和高效儲存的方式實現n-grams和skipgrams模型;
  • ucto -是一種工具和C++庫,基於支援各種語言的編譯器,內含統一字元標準及規則表示式;支援FoLiA格式;
  • libfolia -支援FoLiA格式的C++庫;
  • frog -為Dutch開發的基於記憶體的NLP套件:POS標籤、歸類分析、依存句法分析、NER、淺層句法分析、形態分析;

語音識別

  • Kaldi -Kaldi是用於語音識別的工具包,用C++編寫,由Apache許可證V2.0協議授權,專門給語音識別的研究人員使用。

序列分析

  • ToPS -這是一種面向物件的框架,便於在使用者定義的字母序列中整合概率模型。

手勢檢測

  • grt -手勢識別工具包(GRT)是一個跨平臺、開源的C++機器學習庫,用於實時的手勢識別。

Common Lisp

通用機器學習

  • mgl -神經網路(玻耳茲曼機,前饋和迴圈網路)以及高斯過程;
  • cl-libsvm -LIBSVM支援向量機庫的包裝。

Clojure

自然語言處理

  • Clojure-openNLP – Clojure中自然語言處理的工具包(openNLP);
  • Infections-clj – Clojure和Clojure中類似於Rails的inflection庫。

通用機器學習

  • Touchstone – Clojure A/B 測試庫;
  • Clojush – Clojure中的Push程式語言和PushGP遺傳程式設計系統;
  • Infer – Clojure中分析和機器學習的工具;
  • Clj-ML – Clojure中基於Weka及其相關環境的深度學習庫;
  • Encog – 在Clojure中封裝成Encog (v3) (專門研究神經網路的機器學習框架);
  • Fungp – Clojure中的遺傳程式設計例項庫;
  • Statistiker – Clojure中基礎機器學習演算法;
  • clortex -採用Numenta’s Cortical 學習演算法的通用機器學習庫;
  • comportex – 採用Numenta’s Cortical 學習演算法的功能組合的機器學習庫。

資料分析/資料視覺化

  • Incanter – Incanter是基於 Clojure,類似R的統計計算與製圖平臺;
  • PigPen – Clojure中的Map-Reduce;
  • Envision – 基於Statistiker和D3Clojure 資料視覺化庫。

Erlang

通用機器學習

  • Disco– Erlang中的Map Reduce模型。

Go

自然語言處理

  • go-porterstemmer – 一個用於實現Porter詞幹提取演算法的原生Go語言淨室;
  • paicehusk – Go語言中用於實現Paice/Husk詞幹提取演算法;
  • snowball – Go語言中的Snowball 詞幹提取器;
  • go-ngram -記憶體N-gram索引壓縮 。

通用機器學習

  • Go Learn – Go語言中的機器學習庫;
  • go-pr – Go語言中的模式識別包;
  • go-ml – 線性/邏輯迴歸、神經網路、協同過濾和多元高斯分佈;
  • bayesian – Go語言中樸素貝葉斯分類庫;
  • go-galib – Go語言版的遺傳演算法庫;
  • gobrain – GO語言版的神經網路;
  • GoNN – GoNN 是用Go語言實現的神經網路,它包括BPNN、RBF、PCN ;
  • MXNet – 輕量級、行動式、靈活的分散式/深度學習系統,可對動態的、突變資料流排程部署,同時也支援Python、R、Julia、Go、Javascript 等程式語言。

資料分析/資料視覺化

  • SVGo – Go語言的SVG生成庫;
  • RF – Go語言的隨機森林庫;

Haskell

通用機器學習

  • haskell-ml – Haskell 語言實現的各種深度學習演算法 ;
  • HLearn – 根據代數結構解釋其深度模型的庫;
  • hnn – Haskell語言的神經網路庫;
  • hopfield-networks – Haskell中用於無監督學習的Hopfield網路;
  • caffegraph – 一種用於深度神經網路的領域特定語言(DSL);
  • LambdaNet – Haskell中的可配置的神經網路。

Java

自然語言處理

  • Cortical.io – 像人腦一樣快速、精確處理複雜的NLP(自然語言處理)操作(如消歧、分類、流文字過濾等操作)的Retina API;
  • CoreNLP – 斯坦福大學的CoreNLP提供的一系列的自然語言處理工具,該工具可以根據輸入原始英語文字,給出單詞的基本形式;
  • Stanford Parser – 一種自然語言分析器,可以分析語句的語法結構;
  • Tregex, Tsurgeon and Semgrex – Tregex基於樹關係以及節點匹配的正則表示式,用於在樹狀資料結構中進行模式匹配(名字是“tree regular expressions”的縮寫) ;
  • Stanford English Tokenizer – Stanford Phrasal 用Java寫成的最新的基於統計短語的機器翻譯系統;
  • Stanford Tokens Regex – 一個分解器,可以將文字大致分成一系列對應於“詞”的符號;
  • Stanford SPIED -在種子集上使用模式,以迭代方式從無標籤文字中進行學習實體;
  • MALLET – 基於Java的統計自然語言處理、文件分類、聚類、主題建模、資訊提取以及其他機器學習的文字應用包;
  • OpenNLP – 基於機器學習的自然語言文字處理工具包;
  • LingPipe – 一個使用計算機語言學文字處理的工具包;
  • ClearTK – 在Java中ClearTK為開發統計語言處理元件提供了一個框架,該框架是基於Apache UIMA;
  • Apache cTAKES – Apache cTAKES是一個開源自然語言處理系統,用於從臨床電子病歷的自由文字中提取資訊;
  • ClearNLP – ClearNLP工程為自然語言處理提供了軟體和資源提供了。該專案最早在計算機癒合和教育研究中心啟動,目前由Emory 大學的語言和資訊研究中心繼續開發。該專案遵循Apache 2 license。

通用機器學習

  • aerosolve – 是由Airbnb設計的定價建議系統的機器學習庫;
  • Datumbox -應對機器學習和統計應用快速發展的機器學習框架;
  • ELKI – 用於資料探勘的Java工具包(無監督:聚類、異常檢測等等);
  • Encog – 一種先進的神經網路和機器學習框架。 Encog包含用於建立各類網路的類,同時也支援為神經網路規範和處理資料的類。它的訓練採用多執行緒彈性傳播。它也能使用GPU加快處理時間。提供了圖形化介面來幫助建模和訓練神經網路。
  • EvA2 – 包含遺傳演算法、差分進化、協方差自適應進化策略等等的進化演算法框架;
  • H2O – 深度學習引擎,支援在Hadoop、Spark 或者通過R、Python、Scala 、REST/JSONML 的APIs連到的筆記本上進行分散式學習;
  • htm.java – 採用Numenta Cortical 學習演算法的通用機器學習庫 ;
  • java-deeplearning – Java、Clojure、Scala的分散式深度學習平臺;
  • JAVA-ML – 包含所有Java演算法的通用介面的通用深度學習庫;
  • JSAT – 用於分類、迴歸、聚類的機器學習演算法集合;
  • Mahout – 分散式的機器學習庫;
  • Meka – MEKA提供了一個面向多標籤學習和評價方法的開源實現(擴充套件成Weka);
  • Neuroph – Neuroph 是輕量級的Java神經網路框架;
  • ORYX – 採用Apache Spark和Apache Kafka的Lambda 結構框架,專門用於實時大規模機器學習;
  • Samoa – SAMOA 是一個包含用於分散式機器學習資料流的框架,同時為資料流流入不同的流處理平臺提供了介面;
  • RankLib – RankLib是一個排序學習演算法庫;
  • rapaio – Java中用於統計、資料探勘和機器學習的工具箱;
  • RapidMiner – RapidMiner integration into Java code
  • Stanford Classifier – 斯坦福大學分類器是一種機器學習工具,它可以將資料項歸置不同的類別中;
  • SystemML – 靈活、可擴充套件的機器學習語言;
  • WalnutiQ – 人腦部分面向物件模型;
  • Weka – Weka是資料探勘方面的機器學習演算法集 。

語音識別

  • CMU Sphinx – CMU Sphinx 是基於Java 語音識別庫,用於純語音識別開源工具包。

資料分析/資料視覺化

  • Flink – Apache Flink是一個面向分散式資料流處理和批量資料處理的開源計算平臺;
  • Hadoop – 大資料分析平臺;
  • Spark – Spark是一個快速通用的大規模資料處理引擎;
  • Storm – Storm是一個分散式實時計算系統;
  • Impala – 為Hadoop實現實時查詢
  • DataMelt – 用於數字計算、統計、符號計算、資料分析和資料視覺化的數學軟體;

深度學習

數 Javascript

自然語言處理

  • Twitter-text – Twitter文字處理庫中使用JavaScript的實現;
  • NLP.js – 使用JavaScript和CoffeeScript的NLP實用工具;
  • natural – 用於節點的通用自然語言工具;
  • Knwl.js – JS中的自然語言處理器;
  • Retext -用於分析和處理自然語言的可擴充套件系統;
  • TextProcessing -情感分析,詞幹和詞形還原,部分詞性標註和組塊,短語提取和命名實體識別;

資料分析/資料視覺化

  • D3.js
  • dc.js
  • D3xter –直接建立在D3上的繪圖;
  • statkit – JavaScript的統計工具;
  • datakit – JavaScript的輕量級資料分析框架;
  • science.js – JavaScript中的科學統計計算;
  • Z3d – 在Three.js上輕鬆地繪製互動式3D圖;
  • Sigma.js – JavaScript庫,專門用於圖形繪製;
  • C3.js – 基於D3.js的定製庫,能夠輕鬆繪製圖表;
  • ZingChart – Vanilla JS編寫的庫,用於大資料視覺化;
  • cheminfo – 資料視覺化和分析的平臺,使用視覺化專案。

通用機器學習

  • Convnet.js – ConvNetJS是一個JavaScript庫,用於訓練深度學習模型[深度學習];
  • Clusterfck – 為Node.js和瀏覽器,用Javascript實現的凝聚層次聚類;
  • Clustering.js – Javascript為Node.js和瀏覽器實現的聚類演算法;
  • Decision Trees -使用ID3演算法實現NodeJS決策樹;
  • figue – K-均值、模糊C均值和凝聚聚類;
  • Node-fann -Node.js繫結的快速人工神經網路庫(Fast Artificial Neural Network Library,FANN);
  • Kmeans.js – K-均值演算法用JavaScript的簡單實現,用於Node.js和瀏覽器;
  • LDA.js – Node.js的LDA主題建模;
  • Learning.js –用Javascript實現邏輯迴歸/ c4.5決策樹;
  • Node-SVM – Node.js的支援向量機;
  • Brain – JavaScript中的神經網路[已棄用];
  • Synaptic – 用於Node.js和瀏覽器的無架構神經網路庫;
  • kNear – JavaScript實現的k個最近鄰演算法,用於監督學習;
  • NeuralN – Node.js的C++神經網路庫,其優點是有大量的資料集和多執行緒訓練;
  • kalman – Javascript的卡爾曼濾波器;
  • shaman – Node.js庫,同時支援簡單和多元的線性迴歸;
  • ml.js –用於Node.js和瀏覽器的機器學習和數值分析工具;
  • Pavlov.js -利用馬爾可夫決策過程強化學習;
  • MXNet – 輕量級、行動式、靈活的分散式/深度學習系統,可對動態的、突變資料流排程部署,同時也支援Python、R、Julia、Go、Javascript 等程式語言。

其它

  • sylvester – 用於JavaScript的向量和矩陣數學;
  • simple-statistics – 描述,迴歸和推斷統計的JavaScript實現;用文字實現的JavaScript,沒有依賴性,能在所有現代瀏覽器(包括IE)以及在node.js中工作;
  • regression-js – JavaScript庫,包含小二乘法擬合方法的集合,用於尋找資料集的趨勢;
  • Lyric -線性迴歸庫;

Julia

通用機器學習

  • MLBase -一組支援機器學習演算法的發展的函式;
  • PGM – 一個概率圖模型的Julia框架;
  • DA – 正則判別分析的Julia元件;
  • Regression – 迴歸分析演算法(例如線性迴歸和邏輯迴歸);
  • Naive Bayes – Julia樸素貝葉斯方法的簡單實現;
  • Mixed Models – 用於裝配(統計)混合效應模型的Julia元件;
  • Simple MCMC – Julia實現基本的MCMC取樣;
  • Distance – Julia距離評估模組;
  • Neural – Julia神經網路;
  • MCMC – Julia 的MCMC工具;
  • Mamba – Julia中馬爾可夫鏈蒙特卡羅(MCMC)的貝葉斯分析;
  • GLM – Julia的廣義線性模型。
  • GLMNet – GMLNet的Julia包裝版,適合套索/彈性網模型;
  • Clustering -叢集資料的基本功能:K-均值,DP-均值等;
  • SVM – Julia適用的SVM;
  • NMF – 非負矩陣分解的Julia包;
  • ANN – Julia人工神經網路;
  • Mocha – 受Caffe啟發,Julia的深度學習框架;
  • XGBoost – Julia中的eXtreme Gradient Boosting 包;
  • MXNet – 輕量級、行動式、靈活的分散式/深度學習系統,可對動態的、突變資料流排程部署,同時也支援Python、R、Julia、Go、Javascript 等程式語言。
  • Merlin – Julia靈活的深度學習框架。

自然語言處理

資料分析/資料視覺化

  • Julia Data – 處理表格資料的Julia庫;
  • Data Read – 從Stata、SAS、SPSS讀取檔案;
  • Gadfly – Julia 靈活的統計製圖法;
  • Stats – Julia的統計圖檢驗;
  • RDataSets – 用於裝載許多R中可用資料集的Julia包;
  • DataFrames – 處理列表資料的Julia庫;
  • Time Series – Julia的時間序列工具包;
  • Sampling – Julia的基本取樣演算法。

其他項/展示

  • DSP -數字訊號處理(濾波,週期圖,頻譜圖,窗函式);
  • Images – Julia的影象庫。

機器學習(Machine Learning, ML)是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、演算法複雜度理論等多門學科。專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的效能。機器學習牽涉的程式語言十分之廣,包括了MATLAB、Julia、R、Perl、Python、Clojure、Ruby等等。

為了讓開發者更加廣泛、深入地瞭解機器學習,雲棲社群組織翻譯了GitHub Awesome Machine Learning 資源,涵蓋24種程式語言的機器學習的框架、庫以及其他相關資料。

Lua

通用機器學習

  • cephes – 由Torch包裝的Cephes數學函式庫,由Stephen L. Moshier開發,庫中提供幷包裝了從Cephes數學庫中的180多個特殊的數學函式,是SciPy的核心,作用廣泛;
  • autograd – Autograd自動區分本機Torch程式碼,受原始的Python版本的啟發;
  • graph – Torch的圖形包;
  • randomkit – 從Numpy提取的隨機數生成包,包裝成Torch可用形式;
  • signal – 適用Torch-7的訊號處理工具箱,包括FFT、DCT、Hilbert、cepstrums、stft等變換;
  • nn – Torch的神經網路包;
  • nngraph – 此軟體包為Torch7 nn庫提供圖形計算;
  • nnx – 一個不穩定的實驗包,能夠擴充套件Torch的內建nn庫;
  • rnn – 能夠擴充套件Torch nn庫的遞推神經網路庫,包括RNNs、LSTMs、GRUs、BRNNs、BLSTMs等等;
  • dpnn – 許多有用的功能,並不是主要的神經網路包的一部分;
  • dp – 深度學習庫,專門使用Torch7分配進行合理化的研究和開發,它強調通過優雅地使用面向物件的設計模式,從而實現靈活性;
  • optim – 針對Torch的優化庫,包括Adagrad、共軛梯度、LBFGS, RProp等演算法;
  • unsup – Torch中的無監督學習包,提供了與nn相相容的模組((LinearPsd、ConvPsd、AutoEncoder等),以及獨立的演算法(k-均值、PCA);
  • svm – Torch的支援向量機庫;
  • lbfgs – 針對liblbfgs的FFT包;
  • vowpalwabbit – torch的舊式vowpalwabbit介面;
  • OpenGM – OpenGM是一個用於圖形化建模和推斷的C++庫, Lua binding提供了一種簡單的描繪圖形的方法,用Lua描繪,再用OpenGM優化;
  • sphagetti – @MichaelMathieu開發的用於torch7的Spaghetti(稀疏線型)模組;
  • LuaSHKit – 將區域性敏感雜湊庫SHKit包裝成Lua可用形式;
  • kernel smoothing – KNN,核心加權平均,以及區域性線性迴歸平滑器;
  • 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
  • 深層網路追蹤;
  • Kinect 演示;
  • 濾波元件視覺化;
  • 網路卓越度;

torch-datasets – 用於載入多個大眾資料集的指令碼,資料集包括如下:

  • BSR 500
  • CIFAR-10
  • COIL
  • Street View House Numbers
  • MNIST
  • NORB

Atari2600 – 從Arcade學習環境的靜態幀中生成資料集的指令碼。

Matlab

計算機視覺

  • Contourlets –MATLAB原始碼,能夠實現輪廓變換及其效用函式;
  • Shearlets –剪下波變換的MATLAB程式碼;
  • Curvelets –曲波變換是小波變換的高維推廣,用於表示不同尺度和不同角度的影象;
  • Bandlets – bandlet變換的MATLAB程式碼;
  • mexopencv – 針對OpenCV庫,用於收集和開發MATLAB MEX函式的套件;
  • NLP – 用於Mablab的NLP庫;

通用機器學習

資料分析/資料視覺化

  • matlab_gbl – 處理圖形問題的MATLAB程式包;
  • gamic – 圖形演算法用純Matlab高效實現,以補充MatlabBGL的MEX函式;

.NET

計算機視覺

  • OpenCVDotNet – OpenCV工程封裝器,用於.NET應用程式;
  • Emgu CV – OpenCV的跨平臺封裝器,可在Mono中編譯,並運行於Windows、Linus、Mac OS X、 iOS、Android等系統;
  • AForge.NET – 開放原始碼C#框架,用於計算機視覺和人工智慧領域的開發和研究人員,目前已轉移到GitHub發展;
  • Accord.NET -連同AForge.NET,可為Windows、Windows RT和Windows Phone提供影象處理和計算機視覺演算法,一些元件適用於Java和Android;

自然語言處理

  • Stanford.NLP for .NET – 斯坦福大學NLP包在.NET上的完整移植,也可作為NuGet包進行預編譯;

通用機器學習

  • Accord-Framework – 完整的Accord.NET框架,用於機器學習,計算機視覺,計算機試聽,訊號處理和統計應用;
  • Accord.MachineLearning –該軟體包是Accord.NET框架的一部分,包括支援向量機、決策樹、樸素貝葉斯模型、K均值、高斯混合模型和一些通用演算法,例如適用於機器學習應用的RANSAC、交叉驗證和網格搜尋;
  • DiffSharp – 一個自動微分(AD)庫,能夠提供精確高效,用於機器學習和優化應用的導數(梯度、Hessians、雅可比行列式、方向導數、無矩陣Hessian-和雅可比向量積),操作可以巢狀到任何級別,這意味著你可以通過利用內部微分,來計算精確的高階導數,如超引數優化函式的應用;
  • Vulpes – F#寫的Deep belief與深度學習的實現,並在Alea.cuBase下用CUDA GPU執行;
  • Encog –一種先進的神經網路和機器學習框架。 Encog包含用於建立各類網路的類,同時也支援為神經網路規範和處理資料的類。它的訓練採用多執行緒彈性傳播。同時使用GPU加快處理時間,此外還提供了圖形化介面來幫助建模和訓練神經網路;
  • Neural Network Designer – DBMS管理系統和神經網路的設計平臺,該設計應用程式使用WPF開發,是一個使用者介面,允許使用者設計自己的神經網路,查詢網路,建立和配置能夠提出問題、並能從反饋中學習的聊天機器人,聊天機器人甚至可以蒐集Internet上的資訊,以便在返回時輸出,或者用於學習;

資料分析/資料視覺化

  • 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 – 用於資料分析和科學計算的互動環境,可以使用編譯程式碼(.NET)無縫連線指令碼(用IronPython),以實現快速、靈活的原型設計;該環境包括線性代數、資料視覺化等強大高效的庫,可供任何.NET語言使用,還為快速開發提供了功能豐富的互動式shell。

Objective

通用機器學習

  • YCML – 用於Objective-C 和Swift (OS X / iOS)的機器學習框架;
  • MLPNeuralNet –用於 iOS and Mac OS X的快速多層感知神經網路庫,可通過神經網路預測新例項,建立在蘋果公司的加速框架之上,如果需要,可利用向量化操作和硬體加速操作;
  • MAChineLearning – Objective-C多層感知庫,通過反向傳播全面支援訓練,用vDSP和vecLib實現,比同等情況下的Java快20倍,包括從Swift使用的示例程式碼;
  • BPN-NeuralNetwork – 能夠實現3層神經網路(輸入層、隱藏層和輸出層),其命名來源於BP神經網路(BPN),可用於產品建議、使用者行為分析、資料探勘和資料分析;
  • KRKmeans-Algorithm – 它實現了K-均值聚類和分類演算法,可用於資料探勘和影象壓縮;
  • KRFuzzyCMeans-Algorithm – 它實現了機器學習中的模糊C均值(FCM)模糊聚類/分類演算法,可用於資料探勘和影象壓縮;

OCaml

通用機器學習

  • Oml – 通用的統計學和機器學習庫;
  • GPR – OCaml中高效的高斯過程迴歸演算法;
  • Libra-Tk – 用離散概率模型學習和推理的演算法。

PHP

自然語言處理

通用機器學習

Python

計算機視覺

  • SimpleCV – 一個開源的計算機視覺框架,能夠訪問如OpenCV的高效能運算機視覺庫,用Python編寫,可執行在Mac、Windows和Ubuntu Linux等作業系統;
  • Vigranumpy – Python繫結的VIGRA C++計算機視覺庫;
  • OpenFace -免費的開源面部識別深層神經網路;

自然語言處理

  • NLTK -用人類語言資料編寫Python程式的一個領先平臺;
  • Pattern – Python程式語言的Web挖掘模組,有用於自然語言處理、機器學習等的工具;
  • Quepy –一個Python框架,將自然語言問題轉換成資料庫查詢語言;
  • TextBlob – 給常規的自然語言處理(NLP)任務提供一致的API,以NLTK和Pattern為基礎,並和兩者都能很好相容;
  • YAlign – 語句校準器,較好地用於從比較語料庫中提取並行語句;
  • jieba -中文分詞工具;
  • SnowNLP –用於處理中文文字的庫;
  • spammy – 建在NLTK之上的庫,用於垃圾郵件過濾;
  • loso – 另一箇中文分詞庫;
  • genius – 基於條件隨機域的中文斷詞庫;
  • KoNLPy – 用於韓語自然語言處理的Python包;
  • nut -自然語言理解工具包;
  • Rosetta -文字處理工具和包裝器(例如Vowpal Wabbit);
  • BLLIP Parser – Python繫結的BLLIP自然語言解析器(也稱為Charniak-Johnson解析器);
  • PyNLPl – Python的自然語言處理庫,Python的通用NLP庫,還包含一些特定模組,用於常規的NLP格式分析,尤其是FoLiA和ARPA語言模型,Moses phrasetables,GIZA++ alignments等;
  • python-ucto – Python繫結的ucto(包括Unicode,基於規則,各種語言的的標記生成器);
  • python-frog – Python繫結的Frog,用於Dutch的NLP套件(詞性標註,詞性還原,依存分析,NER);
  • python-zpar – Python繫結的ZPar,統計性的部分詞性標註,constiuency解析器和英語依存句法分析;
  • colibri-core – Python繫結的C++庫,用於以快速和儲存器高效的方式提取並使用基本語言結構,例如-grams 和skipgrams;
  • spaCy – 使用Python和Cython,NLP的產業優勢;
  • PyStanfordDependencies –Python介面,用於將Penn Treebank樹轉換成Stanford Dependencies;

通用機器學習

  • machine learning -自動構建網路介面程式設計介面API套件,用於支援向量機;相應的資料集(多個)儲存到一個SQL資料庫,然後生成用於預測的模型(多個),再被儲存到NoSQL資料儲存中;
  • XGBoost – Python繫結的 eXtreme Gradient Boosting(樹)庫;
  • Featureforge -用於建立和測試機器學習的特點的一組工具,具有相容scikit學習的API;
  • SimpleAI – 實現了許多書Artificial Intelligence, a Modern Approach書中描述的人工智慧演算法,著重於提供一個易於使用、方便存檔和測試的庫;
  • astroML – 用於天文學的機器學習和資料探勘;
  • graphlab-create – 實現各種機器學習模型(迴歸、聚類、推薦系統、圖形分析等)的庫,基於可以磁碟儲存的DataFrame;
  • BigML – 用於連線外部伺服器的庫;
  • pattern – Python Web挖掘模組;
  • NuPIC – 智慧計算的Numenta平臺;
  • keras -基於Theano的模組化神經網路庫;
  • hebel – Python下的GPU加速深度學習庫;
  • Chainer -靈活的神經網路架構;
  • topik -主題建模工具包;
  • PyBrain -另一個Python機器學習庫;
  • Brainstorm – 繼PyBrain後,快速