cdipaolo/goml has 1,614 GitHub stars and 133 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-07 04:08 UTC. Last push 2022-07-15.
On-line Machine Learning in Go (and so much more)
Measured star growth
- in 24h
- 0
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
Originalgoml
Golang Machine Learning, On The Wire
goml is a machine learning library written entirely in Golang which lets the average developer include machine learning into their applications. (pronounced like the data format 'toml')
While models include traditional, batch learning interfaces, goml includes many models which let you learn in an online, reactive manner by passing data to streams held on channels.
The library includes comprehensive tests, extensive documentation, and clean, expressive, modular source code. Community contribution is heavily encouraged.
Each package (mentioned below) includes individual README's to learn more about the function, and purpose of the models. Above all, if you want to learn about models, read the GoDoc reference for the package. All models are, as mentioned above, heavily documented.
Installation
go get github.com/cdipaolo/goml/base
# This could be any other model package if you want
#
# Also, the base package is imported already
# by many of the packages so you might not even
# need to `go get` the package explicitly
go get github.com/cdipaolo/goml/perceptron
Documentation
All the code is well documented, and the source is/should be really readable if you'd like to make sense of it all! Look at each package (like right now, in GitHub,) and you will see a link to Godoc as well as an explanation of the package and an example usage. You can even click on the main bullets below and it'll take you to those packages. Also you could just use the Godoc link at the top of this README and navigate to the package you'd like to see more about.
Sub-bullets below will take you directly to the source code of the model.
Currently Implemented Models
- Generalized Linear Models (all have stochastic GA, batch GA, and online options except for locally weighted linear regression)
- Perceptron only in online options
- Clustering
- K-Means Clustering
- Uses k-means++ instantiation for more reliable clusters (this paper discusses the method and it's benefits over regular, random instantiation)
- Both online and batch versions
- Includes a version which uses the Triangle Inequality to dramatically reduce the number of distance calculations at the expense of auxillary data structures, as describes in this paper
- Uses k-means++ instantiation for more reliable clusters (this paper discusses the method and it's benefits over regular, random instantiation)
- K-Nearest-Neighbors Clustering
- Can use any distance metric, with L-p Norm, Euclidean Distance, and Manhattan Distance pre-defined within the
goml/basepackage
- Can use any distance metric, with L-p Norm, Euclidean Distance, and Manhattan Distance pre-defined within the
- K-Means Clustering
- Text Classification
- Multinomial (Multiclass) Text-Based Naive Bayes
- Term Frequency - Inverse Document Frequency
- this lets you find keywords/important words from documents
- because it's so similar to Bayes under the hood, you cast a NaiveBayes model to TFIDF to get a model. Look at these tests to see an example
Contributing!
see CONTRIBUTING.
I'd love help with any of this if anybody thinks that they would like to implement a model that isn't here, or if they have improvements to current models implemented, or if they want to help with documentation (this would be greatly appreciated, believe me, writing great documentation takes time! :+1:)
LICENSE - MIT
see LICENSE
Explore related projects
tensorflow/tensorflow
An Open Source Machine Learning Framework for Everyone
201,367 starshuggingface/transformers
🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.
168,609 starsAUTOMATIC1111/stable-diffusion-webui
Stable Diffusion web UI
165,245 starsComfy-Org/ComfyUI
The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface. The fastest local inference engine in the world.
145,470 stars