Good, freely-available textbooks in machine learning
metaoptimize.com
metaoptimize.com
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewiTunes...
http://www.youtube.com/view_play_list?p=A89DCFA6ADACE599
class info: http://www.stanford.edu/class/cs229/
More critique at http://news.ycombinator.com/item?id=208895 if you'll chase the parent links.
In its defense, I think the Python code was written to be readable, rather than necessarily idiomatic. I started doing the exercises in Lua, and haven't had a hard time translating them thus far.
http://metaoptimize.com/qa/questions/2542/job-prospects-in-m...
I guess it depends what you're comparing against. Against general purpose programming jobs, yes, the market is small. But, of all CS PhDs, people who do ML are the most sought-after.
I'm sure CS PhD's are in good shape but breaking into ML from another programming discipline seems pretty hard.
Just for those outside of academia - state schools really drink their own Kool-aid. Associate/assistant directors require a masters degree in anything while directors require PhD credentials.
That's because ML isn't a "programming discipline". It's pretty much pure statistics, optimization algorithms, and linear algebra these days, and those algorithms are HARD to code, HARD to scale.
In my experience coding machine learning algorithms is actually easier than the hairier sorts of programming (multithreaded, distributed, very low-level, etc) if you do the math first. Most errors are come from doing the math worngly (or not doing it at all) and most slowness are due to missing very obvious optimizations (which a good programmer will pick up on sometimes even if it's not explicit in the papers that describe the technique; some papers unfortunately assume you will pick up on the obvious optimizations yourself).
From my IR background - it's about bloody time.
Especially as with unsupervised ML you can definitely find patterns in your data, groups of similar data and trends, you can do forecasts, imply relationships, and much more.
It's a hard topic, and you definitely need a lot of time to get into the really bloody details, but it is definitely worth it. And it makes a lot of fun if you like maths and statistics.
My impression of the current job market, however, is that it's tough for somebody without formal academic qualifications to crack.
i.e. If you can actually do ML, you're much more valuable as a startup founder than looking for a 9-5 job, unless it happens to be at say, Google.
My guess is it'll be another decade before ML and statistics become seriously sought after in "normal" corporate programming.
So far, it looks to be very much rule / first-order logic oriented, but that makes sense, as it's been the most well understood, and much more easily provable / understandable once something is built. There's very little about neural networks, for instance, or genetic algorithms, aside from an explanatory section or so. Though I may have the first edition, and apparently the 3rd came out last year.
So, if anyone is interested in a relatively-introductory, extremely readable book on machine learning, it's the best I've come across so far.
For good reason. Outside of neuroscience, there's very little reason to use neural networks for classification or regression problems, and outside very ill-posed optimization problems, there's very little reason to use genetic algorithms. If you want a good MODERN machine learning book (which is where your post seems to imply your interests lie), try the Elements of Statistical Machine Learning by Tibshirani, Hastie and (I forgot the third guy's name, sorry). Anyway, it's included in the posted link.
As a note, this approach outperforms all others (sans tweaks), whereas neural nets used to be beaten by SVMs and the like.
"Pattern Recognition and Machine Learning". And I dare say there may be more space used on the equations than on the text.