If I was going to try machine learning I would code up from scratch rather than relying on black boxes.
Some Lesser Known Machine Learning Libraries
11–20 of 54 posts
Re: Some Lesser Known Machine Learning Libraries
#12Earlier quoted context omitted.
Could you name a few such open source projects ?
scikit-learn is a production ready library that has some very well commented and easy to read source code. https://github.com/eriklindernoren/ML-From-Scratch is an easy to understand understand implementation of some the basic ML algorithms built from first principles and aims for readability over performance.
Re: Some Lesser Known Machine Learning Libraries
#13If I was going to try machine learning I would code up from scratch rather than relying on black boxes.
Re: Some Lesser Known Machine Learning Libraries
#14My first reaction to this, "there must be a reason that they are not known", I click the link and "Error establishing a database connection" :D
Re: Some Lesser Known Machine Learning Libraries
#15If I was going to try machine learning I would code up from scratch rather than relying on black boxes.
I feel at this point this is not a sensible thing to do any more unfortunately. I totally get the impulse though. For instance, there is still nothing great on the JVM for deep learning with symbolic differentiation (deeplearning4j does not have this, correct me if this has changed). On the other hand, I realize that between writing native interfaces, symbolic differentiation (e.g. writing a port of autograd), networ…
I've also added numpy interop via our new python interface jumpy: https://github.com/deeplearning4j/jumpy
We are doing a lot more than autograd though, this is going to support dynamic computation graphs, give you direct access to a graph data structure and will later be usable from nd4s (our scala wrapper)
Rather than spending time going back and forth implementing all of those things you could just pitch in with our existing efforts (hint: you'd actually be getting something done rather than debating ;))
We have a parameter server for word2vec, various kinds of optimizers and the like:https://github.com/deeplearning4j/nd4j/tree/master/nd4j-para...
I'd also just like to note for anyone else reading this: Mulling over doing something helps no one.
If you see something that's open source that's close to what you want try engaging the authors to see what they have to say. Maybe they will guide you. We've done that recently for our lapack integration with cpu and gpu as well as various neural net implementations.
No offense but it kills me to see comments like this. I see tons of people complaining about features yet doing nothing to add them let alone engaging open source authors.
It's kinda funny - every time someone has actually did that I've hired them. The developers that actually take action when engaging open source are amazing people.I have a feeling it's because they take the time to learn and get their feet wet even if it's initimidating.
Other neat community initiatives include flink: https://issues.apache.org/jira/browse/FLINK-5782
Nasa (Apache Tika): https://github.com/apache/tika/pull/165
A language for our ETL library DataVec (supports binary vectorization AND sql like transformations!): https://github.com/deeplearning4j/DataVec/issues/224
A scala lib like tensorflow built on top of nd4j: https://github.com/ThoughtWorksInc/DeepLearning.scala
Our spark ml integration: https://github.com/deeplearning4j/deeplearning4j/tree/master...
The community is very active. We have 4200 people in a gitter room alone: http://gitter.im/deeplearning4j/deeplearning4j
Re: Some Lesser Known Machine Learning Libraries
#16If I was going to try machine learning I would code up from scratch rather than relying on black boxes.
Please don't spread bad advice. There is a reason we teach Python and not ia64 Assembly to beginners.
Fashion is a reason, but it's not a good reason.
Re: Some Lesser Known Machine Learning Libraries
#17Earlier quoted context omitted.
I feel at this point this is not a sensible thing to do any more unfortunately. I totally get the impulse though. For instance, there is still nothing great on the JVM for deep learning with symbolic differentiation (deeplearning4j does not have this, correct me if this has changed). On the other hand, I realize that between writing native interfaces, symbolic differentiation (e.g. writing a port of autograd), networ…
We are adding this now to our tensor library: https://github.com/deeplearning4j/nd4j/pull/1750 I've also added numpy interop via our new python interface jumpy: https://github.com/deeplearning4j/jumpy We are doing a lot more than autograd though, this is going to support dynamic computation graphs, give you direct access to a graph data structure and will later be usable from nd4s (our scala wrapper) Rather than spen…
I did not mean not criticise dl4j at all, I was simply pointing out an example of a feature I know I was missing at a point, I think we are actually agreeing. It does not always make sense to start something from scratch even though it's fun and a great learning experience. The ramp-up to something really useful in deep learning is simply very high. Further, few people can be an expert on the whole stack and I have no problem admitting to myself that even if I spent 2 years writing something from scratch, many parts would simply not be as good as something I could copy from an existing open source library. That's why contributing to open source also makes more sense to me - you get to work on a part that you can be good at.
Also should point out that when I was having problems with custom loss functions a year ago you guys were extremely helpful on Gitter in discussing issues.
Re: Some Lesser Known Machine Learning Libraries
#18Earlier quoted context omitted.
We are adding this now to our tensor library: https://github.com/deeplearning4j/nd4j/pull/1750 I've also added numpy interop via our new python interface jumpy: https://github.com/deeplearning4j/jumpy We are doing a lot more than autograd though, this is going to support dynamic computation graphs, give you direct access to a graph data structure and will later be usable from nd4s (our scala wrapper) Rather than spen…
I have contributed to dl4j though ;) I did not mean not criticise dl4j at all, I was simply pointing out an example of a feature I know I was missing at a point, I think we are actually agreeing. It does not always make sense to start something from scratch even though it's fun and a great learning experience. The ramp-up to something really useful in deep learning is simply very high. Further, few people can be an e…
A lot of community contributions are in the examples now, if you haven't used dl4j in a while maybe take a look.
Re: Some Lesser Known Machine Learning Libraries
#19If I was going to try machine learning I would code up from scratch rather than relying on black boxes.
It's been 3.5 years since I did it and I don't regret it necessarily but the only reason I did was because I wanted something in an unserved category.