Machine Learning

41 projects

Machine learning in Go is mostly about serving and integrating models rather than training them, since most research and training happens in Python. This category includes classic ML libraries, tensor and neural network frameworks, bindings to TensorFlow, ONNX and Tesseract, a recommender system, and tools that convert trained models into Go code. LLM tooling is listed separately under Artificial Intelligence.

gorse is a recommender system backend you run as a service. sjwhitworth/golearn offers scikit-learn style classifiers and has been quiet since early 2024, and gorgonia builds computation graphs for neural networks but has also been quiet since 2024. GoMLX is an actively developed framework that runs on the XLA backend for accelerated training and inference. knights-analytics/hugot runs Hugging Face transformer pipelines through ONNX Runtime, which suits embeddings and classification in Go services. m2cgen transpiles trained classic models into Go code with no runtime dependencies, gosseract wraps Tesseract for OCR, and CloudForest and goml cover decision trees and online learning.

For production, a common pattern is to train in Python, export to ONNX, and run inference in Go with hugot or ONNX Runtime bindings, or to call a separate model server. Use GoMLX if you want to train in Go itself. Check maintenance activity carefully, as several older libraries here no longer track current hardware or model formats.

gorseby gorse-io

An offline recommender system backend based on collaborative filtering written in Go.

github.com/gorse-io/gorseGo 1.27+ 93 dependenciesv0.5.11updated 4d ago

9.9k

GoLearnby sjwhitworth

General Machine Learning library for Go.

github.com/sjwhitworth/golearnGo 1.15+ 5 dependenciesupdated 2y ago

9.4k

gorgonia

Graph-based computational library like Theano for Go that provides primitives for building various machine learning and neural network algorithms.

gorgonia.org/gorgoniaGo 1.16+ 16 dependenciesv0.9.18updated 2y ago

5.9k

gosseractby otiai10

Go package for OCR (Optical Character Recognition), by using Tesseract C++ library.

github.com/otiai10/gosseract/v2Go 1.21+ 1 dependencyv2.4.1updated 9mo ago

3.1k

m2cgenby BayesWitnesses

A CLI tool to transpile trained classic ML models into a native Go code with zero dependencies, written in Python with Go language support.

v0.10.0updated 2y ago

3k

tfgoby galeone

Easy to use Tensorflow bindings: simplifies the usage of the official Tensorflow Go bindings. Define computational graphs in Go, load and execute models trained in Python.

github.com/galeone/tfgoGo 1.19+ 1 dependencyupdated 2y ago

2.5k

GoMLX

An accelerated Machine Learning framework for Go.

github.com/gomlx/gomlxGo 1.27+ 18 dependenciesv0.28.11updated today

1.7k

gomlby cdipaolo

On-line Machine Learning in Go.

github.com/cdipaolo/gomlGo 1.17+ 2 dependenciesupdated 4y ago

1.6k

onnx-goby owulveryck

Go Interface to Open Neural Network Exchange (ONNX).

github.com/owulveryck/onnx-goGo 1.19+ 17 dependenciesv0.5.0updated 2y ago

909

eaoptby MaxHalford

An evolutionary optimization library.

github.com/MaxHalford/eaoptGo 1.15+ 1 dependency0.4.1updated 1y ago

907

bayesianby jbrukh

Naive Bayesian Classification for Golang.

github.com/jbrukh/bayesianGo 1.22+ No dependencies updated 11mo ago

816

ocrserverby otiai10

A simple OCR API server, seriously easy to be deployed by Docker and Heroku.

github.com/otiai10/ocrserverGo 1.12+ 3 dependenciesupdated 5y ago

771

CloudForestby ryanbressler

Fast, flexible, multi-threaded ensembles of decision trees for machine learning in pure Go.

updated 4y ago

748

hugotby knights-analytics

Huggingface transformer pipelines for golang with onnxruntime.

github.com/knights-analytics/hugotGo 1.27+ 12 dependenciesv0.8.5updated 3d ago

660

gobrainby goml

Neural Networks written in go.

github.com/goml/gobrainGo 1.13+ No dependencies updated 5y ago

569

go-deepby patrikeh

A feature-rich neural network library in Go.

github.com/patrikeh/go-deepGo 1.13+ 1 dependencyupdated 2y ago

554

regommendby muesli

Recommendation & collaborative filtering engine.

updated 7y ago

312

Goptunaby c-bata

Bayesian optimization framework for black-box functions written in Go. Everything will be optimized.

github.com/c-bata/goptunaGo 1.21+ 9 dependenciesv0.9.0updated 1y ago

282

gogaby tomcraven

Genetic algorithm library for Go.

github.com/tomcraven/gogaGo 1.17+ 1 dependencyupdated 4y ago

224

goRecommendby timkaye11

Recommendation Algorithms library written in Go.

updated 12y ago

205

go-galibby thoj

Genetic Algorithms library written in Go / golang.

updated 10y ago

202

shieldby eaigner

Bayesian text classifier with flexible tokenizers and storage backends for Go.

updated 6y ago

160

bornby born-ml

Deep learning framework inspired by Burn (Rust), with autograd, type-safe tensors, and zero-CGO GPU acceleration.

github.com/born-ml/bornGo 1.26+ 5 dependenciesv0.9.24updated 1mo ago

138

go-fannby white-pony

Go bindings for Fast Artificial Neural Networks(FANN) library.

updated 11y ago

120

goscoreby asafschers

Go Scoring API for PMML.

updated 7y ago

101

GoMindby surenderthakran

A simplistic Neural Network Library in Go.

updated 4y ago

98

fonetby Fontinalis

A Deep Neural Network library written in Go.

github.com/Fontinalis/fonetGo 1.16+ No dependencies v0.2.0updated 5y ago

86

gonetby dathoangnd

Neural Network for Go.

github.com/dathoangnd/gonetGo 1.13+ No dependencies updated 6y ago

82

libsvmby datastream

Libsvm golang version derived work based on LIBSVM 3.14.

updated 10y ago

73

neural-goby schuyler

Multilayer perceptron network implemented in Go, with training via backpropagation.

updated 6y ago

73

go-prby daviddengcn

Pattern recognition package in Go lang.

updated 13y ago

68

randomforestby malaschitz

Easy to use Random Forest library for Go.

github.com/malaschitz/randomForestGo 1.13+ 3 dependenciesv1.5updated 1y ago

61

Varisby Xamber

Golang Neural Network.

release-0.1updated 8y ago

55

go-clusterby e-XpertSolutions

Go implementation of the k-modes and k-prototypes clustering algorithms.

github.com/e-XpertSolutions/go-cluster/v2Go 1.18+ 1 dependencyv2.0.0updated 3y ago

44

godistby e-dard

Various probability distributions, and associated methods.

updated 11y ago

44

ddtby sgrodriguez

Dynamic decision tree, create trees defining customizable rules.

github.com/sgrodriguez/ddtGo 1.15+ 1 dependencyv0.1.0updated 5y ago

42

Annealby georgebuilds

Machine learning compiler in Go, a from-scratch tinygrad port with a WebGPU backend.

github.com/georgebuilds/annealGo 1.26+ 7 dependenciesv0.2.1updated 4mo ago

34

evoliby khezen

Genetic Algorithm and Particle Swarm Optimization library.

github.com/khezen/evoliGo 1.14+ No dependencies v1.3.2updated 5y ago

33

catboost-cgoby mirecl

Fast, scalable, high performance Gradient Boosting on Decision Trees library. Golang using Cgo for blazing fast inference CatBoost Model.

github.com/mirecl/catboost-cgoGo 1.22+ 1 dependencyv0.9.0updated 2mo ago

26

probabby ThePaw

Probability distribution functions. Bayesian inference. Written in pure Go.

updated 11y ago

22

datatraxby rbmuller

Data engineering and classic ML toolkit with batch processing, type coercion, and 7 algorithms in pure Go with zero dependencies.

github.com/rbmuller/datatraxGo 1.21+ No dependencies v1.2.0updated 6mo ago

10
Esc

Type to search every entry. ↑↓ to move, Enter to open.