Earlier quoted context omitted.
I'm not sure that any book on the NLTK, even one written specifically for developers, could avoid the concepts you're referring to. These terms and concepts are inherent to the study of natural language processing. So while I agree that there are a significant number of NLP-related terms used, I think that has less to do with the book's audience and more to do with the book's subject matter. And the use of computatio…
> I'm not sure that any book on the NLTK could avoid the concepts you're referring to. Me too. I'm saying the book (like almost all technical documentation) should be task-based. Let people read the chapter with their problem - don't ask them to read a whole list of solutions to work out which one is applicable. Eg: - Title: Preparing Text for Analysis (explain what tokenizing is and why it's necessary) - Title: 'gau…
Natural Language Processing with Python, free online
21–30 of 35 posts
Re: Natural Language Processing with Python, free online
#22I own the paper version of this - just a heads up, it's written primary for Language Scientists rather than developers. You may find yourself constantly pausing and looking up concepts and their meanings / practical uses on linguistics websites when returning to the book. It's a great resource, but don't expect to get started quickly.
I'm not sure that any book on the NLTK, even one written specifically for developers, could avoid the concepts you're referring to. These terms and concepts are inherent to the study of natural language processing. So while I agree that there are a significant number of NLP-related terms used, I think that has less to do with the book's audience and more to do with the book's subject matter. And the use of computatio…
Agreed.
> It's also amazingly complete -- tokenizers, stemmers, POS taggers, classifers, etc. etc etc.
Don't agree. The biggest missing piece is a statistical parser which forms the basis for a lot of further linguistic analysis. It is hard to beat Stanford Parser for that. Check out https://github.com/wavii/pfp which has Python bindings.
For most of the ML stuff, you would be better off going to a specialist library like Scikits.learn directly. They are faster and implementations are more accurate. ( I found some of the implementations not quite correct in NLTK. For example, Naive Bays classifier which a lot of first time users use. The difference in results may not be much in practice but it is still incorrect.)
It is definitely a very good place to start but better alternatives exist for many of the pieces.
Re: Natural Language Processing with Python, free online
#23Earlier quoted context omitted.
I'm not sure that any book on the NLTK, even one written specifically for developers, could avoid the concepts you're referring to. These terms and concepts are inherent to the study of natural language processing. So while I agree that there are a significant number of NLP-related terms used, I think that has less to do with the book's audience and more to do with the book's subject matter. And the use of computatio…
> NLTK is very well-documented and easy to work with. Agreed. > It's also amazingly complete -- tokenizers, stemmers, POS taggers, classifers, etc. etc etc. Don't agree. The biggest missing piece is a statistical parser which forms the basis for a lot of further linguistic analysis. It is hard to beat Stanford Parser for that. Check out https://github.com/wavii/pfp which has Python bindings. For most of the ML stuff,…
Conceded and agreed. This is the one major gap. But I still maintain it's a remarkably complete toolkit. Plus you get to work in Python, which is a big advantage for me.
What's wrong with the Naive Bayes classifier? Did you submit a patch?
Likewise, I totally agree with you that there are faster/more accurate/more efficient implementations of many of the tools in the NLTK. If performance is a must, then you're better of prototyping in NLTK then using a specialized library. But in terms of completeness and ease of use, NLTK is very strong.
EDIT: I'm not sure why abhaga is being downvoted. There was nothing disrespectful in his response to me. Disagreement is an important part of intelligent discussion. Upvoting to counter the downvote(s).
Re: Natural Language Processing with Python, free online
#24Seriously - text mining made fun and exploratory with open source tools.
One of the text sources I like to use is the Launchpad tickets for the Ubuntu project, since they get a good amount of traffic from international end users, a professional interest of mine.
It would be great to hear about some other interesting open data sets that people have found.
Re: Natural Language Processing with Python, free online
#25Earlier quoted context omitted.
> NLTK is very well-documented and easy to work with. Agreed. > It's also amazingly complete -- tokenizers, stemmers, POS taggers, classifers, etc. etc etc. Don't agree. The biggest missing piece is a statistical parser which forms the basis for a lot of further linguistic analysis. It is hard to beat Stanford Parser for that. Check out https://github.com/wavii/pfp which has Python bindings. For most of the ML stuff,…
>Don't agree. The biggest missing piece is a statistical >parser which forms the basis for a lot of further linguistic >analysis. Conceded and agreed. This is the one major gap. But I still maintain it's a remarkably complete toolkit. Plus you get to work in Python, which is a big advantage for me. What's wrong with the Naive Bayes classifier? Did you submit a patch? Likewise, I totally agree with you that there are…
The problem I found is that it mixes up the binomial and the multinomial event models for the naive bayes (See http://www.cs.cmu.edu/~knigam/papers/multinomial-aaaiws98.pd... for reference). It computes the probabilities as per the binomial event model but doesn't include the probabilities of missing events. This was my understanding from reading the source code.
> Plus you get to work in Python, which is a big advantage for me.
Indeed. I so wish someone would build a dependency parser on top of pfp so that I can ditch Stanford parser. I have used https://github.com/dasmith/stanford-corenlp-python for interfacing with Stanford toolkit but it is somewhat brittle.
Re: Natural Language Processing with Python, free online
#26LinkGrammar: http://www.link.cs.cmu.edu/link/ is the other NLP tool kit in python, may be suited for use by those who might be intimidated by the need to write their own grammar. It is integrated into and maintained by the authors of Abiword. There is a talk on this other library at Pycon, this year: https://us.pycon.org/2012/schedule/presentation/187/
Re: Natural Language Processing with Python, free online
#27If you're interested in natural language processing (NLP), but don't have a linguistics background, I would suggest reading Steven Pinker's The Language Instinct. It will introduce you to the necessary terminology and concepts for NLP in an easy-to-digest way. (The NLTK book has been free online for quite some time as well.)
The Language Instinct is a great book, but unless the content of newer editions has changed significantly, it's more of an overview of linguistics in general, and language acquisition in particular. There's not much -- if any -- practical NLP. For example, looking at Amazon's statistically-improbable phrases (SIPs), I see nothing related to NLP, nor do I see any terms related to practical NLP during a quick glance of…
Re: Natural Language Processing with Python, free online
#28Re: Natural Language Processing with Python, free online
#29Earlier quoted context omitted.
I'm not sure that any book on the NLTK, even one written specifically for developers, could avoid the concepts you're referring to. These terms and concepts are inherent to the study of natural language processing. So while I agree that there are a significant number of NLP-related terms used, I think that has less to do with the book's audience and more to do with the book's subject matter. And the use of computatio…
> NLTK is very well-documented and easy to work with. Agreed. > It's also amazingly complete -- tokenizers, stemmers, POS taggers, classifers, etc. etc etc. Don't agree. The biggest missing piece is a statistical parser which forms the basis for a lot of further linguistic analysis. It is hard to beat Stanford Parser for that. Check out https://github.com/wavii/pfp which has Python bindings. For most of the ML stuff,…
Re: Natural Language Processing with Python, free online
#30Earlier quoted context omitted.
> NLTK is very well-documented and easy to work with. Agreed. > It's also amazingly complete -- tokenizers, stemmers, POS taggers, classifers, etc. etc etc. Don't agree. The biggest missing piece is a statistical parser which forms the basis for a lot of further linguistic analysis. It is hard to beat Stanford Parser for that. Check out https://github.com/wavii/pfp which has Python bindings. For most of the ML stuff,…
No SVM support either. I could try to add it I guess; libSVM has Python bindings already.