CloudForest
Gorgonia
Our great sponsors
CloudForest | Gorgonia | |
---|---|---|
4 | 21 | |
735 | 5,304 | |
- | 1.1% | |
0.0 | 2.8 | |
about 2 years ago | 7 days ago | |
Go | Go | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
CloudForest
-
Trinary Decision Trees for missing value handling
I implemented something like this in a [pre xgboost boosting framework](https://github.com/ryanbressler/CloudForest) ~10 years ago and it worked well.
It isn't even that much of a speed hit using the classical sorting CART implementation. However xgboost and ligthgbm use histogram based approximate sorting which might be harder to adapt in a performant way. And certainly the code will be a lot messier.
I've got a ~10 year old implementation that does something similar calling it "three way splitting" here: https://github.com/ryanbressler/CloudForest
And i got the idea from a lab mate, Timo Erkkila's RF-ACE project though neither of us thought it was a particularly novel idea.
-
[D] Best methods for imbalanced multi-class classification with high dimensional, sparse predictors
The best method i've seen for dealing with this bias is to create "artificial contrasts" by including possibly many permutated copies of each feature and then doing a statistical test of the random forest importance values for each feature vs its shuffled contrasts. This method is described here: https://www.jmlr.org/papers/volume10/tuv09a/tuv09a.pdf and there is an implementation here: https://github.com/ryanbressler/CloudForest
Gorgonia
-
Machine Learning
I did end up writing and using a custom library for Random Forest (it's also in AwesomGo) in one real-world project (detecting Alzheimer's and Parkinson's from speech from a mobile app) - https://github.com/malaschitz/randomForest I had better results than the team who used TensorFlow and most importantly I didn't have to use any other technology than Go. For NN's it's probably best to use https://gorgonia.org/ - but it's not exactly a user friendly library. But there is a whole book on it - Hands-On Deep Learning with Go.
- Why isn’t Go used in AI/ML?
- GoLang AI/ML open source projects
-
A systematic framework for technical documentation authoring
Perhaps it's a product of French culture, but because Gorgonia[0] has a number of French contributors, this was actually the way we structured our documentation.
But this is the first time I've heard of the name of the framework.
[0]: https://gorgonia.org
-
Most Popular GoLang Frameworks
Website: https://gorgonia.org
-
[D] What framework are you using?
I use Gorgonia.
-
Why can't Go be popular for machine learning?
CGO? Too much overhead in calling C functions (in which you can wrap libtorch or TF C++ code). And too much struggling woth CUDA (actually all GPU stuff). But, there are interesting attempts: https://github.com/gorgonia/gorgonia (I love it most), https://github.com/sugarme/gotch (bindings to libtorch), https://github.com/nlpodyssey/spago.
What you think about this https://github.com/gorgonia/gorgonia ? I also recall there is something else out there but can't find it at the moment...
-
Neural networks in golang
Yep, all of them: https://github.com/gorgonia/gorgonia
-
What do you use Go for?
For machine learning, I use https://gorgonia.org/. For games, I use https://ebiten.org/ For GUIs, I usually use https://fyne.io/ . This (https://github.com/avelino/awesome-go) is a good resource too.
What are some alternatives?
onnx-go - onnx-go gives the ability to import a pre-trained neural network within Go without being linked to a framework or library.
GoLearn - Machine Learning for Go
tfgo - Tensorflow + Go, the gopher way
goml - On-line Machine Learning in Go (and so much more)
gosseract - Go package for OCR (Optical Character Recognition), by using Tesseract C++ library
bayesian - Naive Bayesian Classification for Golang.
go-deep - Artificial Neural Network
gorse - Gorse open source recommender system engine
shield - Bayesian text classifier with flexible tokenizers and storage backends for Go
neural-go - A multilayer perceptron network implemented in Go, with training via backpropagation.
sklearn - bits of sklearn ported to Go #golang
libsvm - libsvm go version