Machine learning toolkit
mallet.cs.umass.edu
mallet.cs.umass.edu
http://alias-i.com/lingpipe/index.html
http://rapid-i.com/content/view/181/190/
http://elefant.developer.nicta.com.au/
(tanagra, weka, orange, (depending on what what you're looking for) )
The main advantages of mallet over weka (the main java toolkit used in academic machine learning) for Natural Language Processing are:
- No need to map words and features to position in a feature vector yourself.
- Instances preprocessing can be defined in pipes that can be saved along the models. So no need to remember the pre-processing of data for each experiments.
- Contains algorithms for structured learning (CRF, HMM and general graphic models).
On the other hand, Mallet implements less algorithm (e.g. no Support Vector Machines to my knowledge).
In short, it is a nice toolkit to be aware of if you are planning to do Natural Language Processing.
Witten's Data Mining is a very good beginner's book (has very little math, but lots of good explanations and discussion of real life issues).
Bishop's book is excellent, but it's easy to get lost if you don't have the mathematical background.
Duda, Hart & Stork's Patten Recognition book is also very well organized and has one of the best first chapters in any machine learning book. But it too requires mathematical background to be fully appreciated.
Hastie & Tibshirani's book is written by people from a statistical background, and is very very mathematical. I haven't progressed beyond Chapter 2, and I'm working on improving my math skills before I get back into it.
-- For NLP, a very good intro is the NLTK book.
Jurafsky & Martin's book covers more NLP topics, but Manning and Schutze cover statistical portions in depth. I think you should just read both :D.
http://www.amazon.com/Foundations-Statistical-Natural-Langua...
http://www.cs.colorado.edu/~martin/slp2.html
(and the python NLTK book is not bad)
http://www.cs.cmu.edu/~tom/mlbook.html
Simple things, like actually spelling out the steps of a derivation vs. "Here's equation a, from which we trivially derive equation b" but it might take you a while to figure out the steps if you haven't done a lot of Calculus problems recently.
And Mitchell just seems really good at explaining things (having heard him speak in person a few times).
I find it is less brutal than Bishop's book, providing insightful analogies. It won't make you an expert, but it will give you a solid starting point.
I'm also using http://www.nltk.org/ NLTK to do document classification for a client right now, using insights gleaned from his book and also metaoptimzie (http://metaoptimize.com/qa).
http://en.wikipedia.org/wiki/Fluid_Concepts_and_Creative_Ana...
I don't mean this particular project, but generally, you can't be in the field without seeing ten frameworks a day.
Most ML frameworks out there are stuck in academic-land and assume the users are experts - when the exact opposite is usually true - they actually attempt to use the most opaque language possible when describing usage.
ML is still a consulting gold mine because it's so difficult to wade past the jargon and bullshit to actually do something useful/profitable with these frameworks.