Introduction to Information Retrieval

 I love this book. It’s so well written that you could read it page after page and not get bored. It builds on how text retrieval works, how text is indexed.  I wrote an algorithm that was taking about 2 seconds to compute a text piece. But when I implemented some of the techniques given here its processing time was reduced to 200ms. This is not a Natural Language Processing book but it has all the tricks you will need to work with real world applications that need to do text processing.

Christopher D. Manning
Prabhakar Raghavan
Hinrich Schutze
Machine Learning