Live data from Hacker News

Tools to get started in machine learning

k2company.com

11–20 of 37 posts

Re: Tools to get started in machine learning

#12

Solid summary of some powerful tools, no wonder python is the new default for academic data analysis.

Lush is an excellent platform for machine learning. There are bindings to gnuplot ,opencv, lapack, gsl, an optimization library for gradient descent, a machine learning framework, a nerual network simulator.

It also has very nice matrix and vector manipulations features built in to the language and is very easy to bind to C code.

Re: Tools to get started in machine learning

#13
post #6

Solid summary of some powerful tools, no wonder python is the new default for academic data analysis.

Andrew Ng, in his machine learning class [1] urges people do use Matlab instead of Python, because in his experience people develop faster with Matlab than wit any other tool/language. Personally, I am experienced with Matlab but not so much with Python, so I am not able to judge. I definitely hate the fact that Matlab is proprietary and partly closed source. Also, I think Python syntax is much more pretty while Matl…

If you have taken Andrew Ng's Machine class the handwriting recognition system that is mentioned in the course was implemented in Lush. I think the original code is is even included in the demos distributed with Lush.

Re: Tools to get started in machine learning

#14
post #12

Solid summary of some powerful tools, no wonder python is the new default for academic data analysis.

Lush is an excellent platform for machine learning. There are bindings to gnuplot ,opencv, lapack, gsl, an optimization library for gradient descent, a machine learning framework, a nerual network simulator. It also has very nice matrix and vector manipulations features built in to the language and is very easy to bind to C code.

Some people really do seem to get a lot done in Lush, so I'm not discounting its utility, but the language is sort of a mess. I took Yann's class and gave up in frustration after a few homeworks. I was very happy working in Matlab and relieved to to never see a 'bloop', 'eloop', or whatever-loop again.

Re: Tools to get started in machine learning

#15
post #6

Solid summary of some powerful tools, no wonder python is the new default for academic data analysis.

Andrew Ng, in his machine learning class [1] urges people do use Matlab instead of Python, because in his experience people develop faster with Matlab than wit any other tool/language. Personally, I am experienced with Matlab but not so much with Python, so I am not able to judge. I definitely hate the fact that Matlab is proprietary and partly closed source. Also, I think Python syntax is much more pretty while Matl…

>Also, I think Python syntax is much more pretty while Matlab is not even designed to be a real language.

If you're only coding the core of an algorithm (rather than a full-featured library with lots of plumbing), and your logic fits naturally into Matlab's native array operators, then using Matlab is a joy.

Re: Tools to get started in machine learning

#16
post #10
post #9

Earlier quoted context omitted.

What's your background? (i.e. what do you already know?)

Probably not much. I started working with bigger data some months ago and now I notice that I need some real techniques and not just my "ok try this and this". I'm coding in C (where I "create" the data (numerical integration of stochastic differential equations)) and Python (plotting). I need methods/algorithms/techniques to analyse the data "on the fly" because I can't save it all (it's too much data).

This might be of interest: http://noelwelsh.com/streaming-algorithms/2012/08/29/lean-da...

Don't have a great deal of time right now so drop me an email if you'd like more info (see profile) and I'll get on it tomorrow.

Re: Tools to get started in machine learning

#17
post #8
post #6

Earlier quoted context omitted.

Andrew Ng, in his machine learning class [1] urges people do use Matlab instead of Python, because in his experience people develop faster with Matlab than wit any other tool/language. Personally, I am experienced with Matlab but not so much with Python, so I am not able to judge. I definitely hate the fact that Matlab is proprietary and partly closed source. Also, I think Python syntax is much more pretty while Matl…

It's too bad the OP didn't find Octave, which is an opensource Matlab clone that was also used in Andrew Ng's ML course.

I am not sure that Octave preforms as fast as MatLab; for example, I think MatLab does a better job in parallelizing non-vectorized code.

Re: Tools to get started in machine learning

#19
post #12

Earlier quoted context omitted.

Lush is an excellent platform for machine learning. There are bindings to gnuplot ,opencv, lapack, gsl, an optimization library for gradient descent, a machine learning framework, a nerual network simulator. It also has very nice matrix and vector manipulations features built in to the language and is very easy to bind to C code.

Some people really do seem to get a lot done in Lush, so I'm not discounting its utility, but the language is sort of a mess. I took Yann's class and gave up in frustration after a few homeworks. I was very happy working in Matlab and relieved to to never see a 'bloop', 'eloop', or whatever-loop again.

Lush's purpose a little dfferent than Matlabs. The abstractions are a little lower level than Matlab for instance. But then again you you can compile your functions directly to machine code. There are trade offs to everything in life.

Matlab,Ocatave,R,S are great but if you need to be closer to the metal, Lush offers a very good compromise.

Re: Tools to get started in machine learning

#20
post #6

Solid summary of some powerful tools, no wonder python is the new default for academic data analysis.

Andrew Ng, in his machine learning class [1] urges people do use Matlab instead of Python, because in his experience people develop faster with Matlab than wit any other tool/language. Personally, I am experienced with Matlab but not so much with Python, so I am not able to judge. I definitely hate the fact that Matlab is proprietary and partly closed source. Also, I think Python syntax is much more pretty while Matl…

Some good points for comparison:

http://www.scipy.org/NumPy_for_Matlab_Users

IMHO, it's best to prototype in Octave and then build in python. I find that the Matlab/Octave syntax is too focused on linear algebra, so it's better for small prototypes (and for people coming from non-SW fields). For big projects, I prefer the 0-based arrays, more than one function per file, and all the rest of the python goodies. I estimate that 70% of my time is usually spend preparing the data (e.g. parsing xml, or some other files, etc), for which I find python more suitable.

In fact, I usually work with them side by side, testing ideas in Octave, then implementing these pieces into a large python project.

Edit: this has also been discussed here before, e.g.

http://news.ycombinator.com/item?id=363096

http://news.ycombinator.com/item?id=689183

Post reply on HN