To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyses reviews to verify trustworthiness.
Pros: - Doesn't bog you down with the details of how many of these algorithms work. - The book provides high level overviews of what various libraries will for you.
Cons: - The book builds on itself, so it does not function at all as a reference. The authors have deliberately used OOP methods to create their own classes inheriting functionality from various ML libraries. - Because of the above, you can't skip forward to a section on topic modeling for example, because there are about 500 lines worth of code that you have to define in order to make use of the functions listed around page 100 (as an example.) -It's hard to tell what each line of code is doing if you're not already very experienced with python. The authors do not explain classes, methods, inheritance or polymorphism, let alone simpler topics like list comprehensions to the reader.
Bottom line, it's a very informative read, but it is not very plug & play. You have to be committed to doing things their way or else you won't be able to use code later supplied. The authors are kind enough to list the page numbers where a given function was previously delineated, but keep in mind, you're both learning how established NLP libraries work, as well as how the authors think you should blend them together into complex objects.
However, if you'd like to understand less about how these APIs work and more about how they can "connect" with one another in depth, this book is for you. Just be mindful that this book requires a lot of effort up front, and if that's not you, then you probably won't get maximum value out of it.
In a hot summer evening when I did book browsing at Barnes and Noble, I found this book and immediately liked it. Due to the relative large price difference, I did not bought it at the bookstore but ordered a copy from Amazon. I am a mathematician and semi-physicist by training and data scientist by vocation, and I never enjoy reading technical books except when I have to for work-related studies (I enjoy theoretical books such as Lectures on Quantum Mechanics or Group Theory in a Nutshell for Physicists or etc.) But let me say I do enjoy reading this book. This book gives a very good introduction to fundamental concepts of natural language processing (NLP) as well as a survey of current NLP landscape (formulations, NLP libraries, applications, etc.). It is also hands-on. Good books of such kind should never be too long (A long book usu. = collection of stuff you can find by Googling). I am glad this book is not too long (300-ish pages), so you can read end to end and not miss every single idea of the authors'. What is particularly appreciated (from my perspective) is that the book has several chapters on the cutting edge NLP methodology (e.g. knowledge graph approach to NLP, chatbot design princples, etc.) Thanks for the good work of the authors!
Very few of the code examples work right off the page; even the code on their github site requires a lot of changes in order to get it to run. This was one of two textbooks for a Data Mining graduate course and I avoided it like the plague. It got to the point that when we had assignments from this book I would just skim the subject matter and then go google what I needed. Another reviewer wrote that it's good for the experienced programmer. I would agree, but would add an experienced programmer with a lot of free time. However most of the other students in my class are NOT experienced programmers. All this book as done is cause frustration and a fear of the coding side of Data Science. I would implore the authors to revisit the code examples both in the book and on their github site.
I’d put myself more in the realm of domain specialist with an interest of how text mining tools could be practically leveraged. The alphabet soup of frameworks and models to text minimum can be confounding.... as unstructured text tends to be for us looking for clearer insights.
The authors do an great job of taking you through key concepts and applications, all anchored in Python code (and later some examples from Spark environments). While the code does require some attention to work through if you are not primarily a programmer, they are worth pondering over.
To get the full value out of the book, its most worth working live through some of the sample code and libraries. Many of you (as I was) probably will not be able to do this in the first run. But I certainly see this as a resource book I will come back to, once I get more deeply into certain domain applications.
If anything, this is helpful to make sense of bridging some of the Babalesque that can happen when data science teams gear up for applied text analysis.