分类汇总GoLang中的机器学习库
根据不同的算法和方法分门别类收集了GoLang的机器学习资源库列表。
-
Generalized Machine Learning Libraries:
-
GoML - https://github.com/cdipaolo/goml - On-line Machine Learning in Go that includes libraries for Generalized Linear Models (Linear Regression, Logistic Regression etc), Perceptron, Clustering (K Means, K Nearest Neibhours...) & Text Classification (Multinomial & term frequency...)
-
Machine Learning libraries for Go Lang : https://github.com/alonsovidales/go_ml: Implemented Algorithms include Linear Regression, Logistic Regression, Neural Networks, Collaborative Filtering & Gaussian Multivariate Distribution for anomaly detection systems
-
MLGo - https://code.google.com/p/mlgo/ - Algorithms implemented include Gaussian mixture model, k-means, k-medians, k-medoids, single-linkage hierarchical clustering
-
GoLearn: - GoLearn is a 'batteries included' machine learning library for Go. Simplicity, paired with customisability, is the goal.
-
Neural Networks
-
Neural Networks written in go : https://github.com/goml/gobrain
-
Go Fann - https://github.com/white-pony/go-fann - Go bindings for FANN, library for artificial neural networks
-
https://github.com/schuyler/neural-go - Multi-Layer Perceptron Neural Network
-
Genetic Algorithms library written in Go / golang - https://github.com/thoj/go-galib
-
Linear Algebra:
-
Mat64: Package mat64 provides basic linear algebra operations for float64 matrices. mat64 provides a set of concrete types that implement different classes of matrices (Dense, Symmetric, etc.) and operations on them. In most cases, an operation which results in a matrix value is a method on the value being produced.
-
BLAS Implementation for Go: The BLAS (Basic Linear Algebra Subprograms) are routines that provide standard building blocks for performing basic vector and matrix operations
-
https://github.com/danieldk/golinear - liblinear bindings for Go
-
Probability Distribution Functions
-
Decision Trees:
-
Hector https://github.com/xlvector/hector - Golang machine learning lib. Currently, it can be used to solve binary classification problems.Logistic Regression , Factorized Machine , CART, Random Forest, Random Decision Tree, Gradient Boosting Decision Tree & Neural Network
-
Decision Trees in Go - https://github.com/ajtulloch/decisiontrees - Gradient Boosting, Random Forests, etc. implemented in Go
-
CloudForest - https://github.com/ryanbressler/CloudForest - Fast, flexible, multi-threaded ensembles of decision trees for machine learning in pure Go (golang). CloudForest allows for a number of related algorithms for classification, regression, feature selection and structure analysis on heterogeneous numerical / categorical data with missing values.
-
Bayesian Classifiers:
-
https://github.com/jbrukh/bayesian - Perform naive Bayesian classification into an arbitrary number of classes on sets of strings.
-
https://github.com/eaigner/shield - Bayesian text classifier with flexible tokenizers and storage backends for Go
-
Recommendation Engines in Go
-
Collaborative Filtering (CF) Algorithms in Go - https://github.com/timkaye11/goRecommend
-
Recommendation engine for Go - https://github.com/muesli/regommend
-
Others
-
https://github.com/daviddengcn/go-pr - Pattern Recognition in Go.