I spent a good amount of time looking for an ML library written in Go, with a usable API and with active maintenance and the only framework out there is
ML is by and for academics and Statisticians [0] in particular. It is only starting to get used outside universities now because of the improvements of performance in Computing hardware [1] experienced in the recent past in my opinion. The statistical learning theory methods have been in existence since 1800s [2] though computing power had always been a physical limit to their success.
I wanted a library to embed I could use in a stealth startup I am working on and frankly nothing came close to the quality I was looking for. In particular I wanted something with:
1. Ability to plug in different activation functions.
Scikit learn's (Python) module for Multi-layer perceptron's algorithms supports nearly all possible activation functions [3] available to nodes in an artificial neural network.
2. Takes advantage of Goroutines
3. Ability to import weights from other frameworks(TBD in Therfoo)
4. A high level API like Keras
5. A testable architecture
Have you used any of the libraries you sent?
No, I have not.
I would like to hear your experience working with any of them.
I have instead used Python ML libraries (Scikit-Learn) for building different models to predict residual values (market prices) of heavy construction equipment using historical data from equipment auctions and resales. All that was part of my research for my M.Sc thesis [4]
Perhaps I missed something...
If you cannot find an adequate ML library in Go, I would encourage you to go with those available in Python (Theano and / or Scikit-Learn) for your project if that is a feasible option. Perhaps you can deal with performance bottlenecks in future as the application scales up. Or maybe find out how to speed the app using different Python libraries to support multi-threading [5]. Another possibility might be to escape into C-mode in Python for the parts of your program that require high performance. Those are my opinions.
I am dog fooding Therfoo in a personal production product at the moment and love the ability of including ML capabilities with under 20 lines of code.
Thanks for your feedback.
You are welcome David
Hope that helps.
Martin.
_______________________________________________
skunkworks mailing list
skunkworks@lists.my.co.ke
------------
List info, subscribe/unsubscribe
http://lists.my.co.ke/mailman/listinfo/skunkworks
------------
Skunkworks Rules
http://my.co.ke/phpbb/viewtopic.php?f=24&t=94
------------
Other services @ http://my.co.ke