Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

In my opinion, as a contributor to Julia and someone who teaches machine learning with R - start with R. Things will "just work" for the most part and you won't have to worry about whether your packages will work while you are learning ML. I recommend using the "caret" package in particular: it puts all the ML packages behind a nice common interface and has goodies like crossvalidation and train/test splits built in.

Python with Scikit-learn could be a good choice too from everything I hear (possibly even better, by some accounts).

To be clear, Julia is more than capable of doing ML, but I'd say that interface-wise its not quite there yet. Most of the pieces are there, everything from DataFrames to wrappers for GLMNet to random forests, and even the deep learning library Mocha.jl (check it out, its fantastic!). If you were to implement a new ML algorithm, I'd want to be doing it in Julia - it'll perform great without having to get in a multi-language scenario (like R+Rcpp or Python+???[numba?]).



Cython is usually the most best option for maintainable, high performance numerics with Python these days -- it's the option of choice for scikit-learn and pandas. Numba can be easier in some cases (no manual typing necessary) but is still pretty limited in some ways.


Is numba poised to overcome these limitations at some point?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: