Skip to content
Tom Aarsen edited this page Apr 7, 2022 · 20 revisions

Answers to Frequently Asked Questions about NLTK

Do you have a question that is not answered here? Please post it to the nltk-users mailing list.

  1. What license does NLTK use?
  2. NLTK is open source software. The source code is distributed under the terms of the Apache License Version 2.0. The documentation is distributed under the terms of the Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States license. The corpora are distributed under various licenses, as documented in their respective README files.
  3. What are the plans for further development of NLTK?
  4. NLTK is undergoing continual development as new modules are added and existing ones are improved. Since the book was published in 2009, we upgraded NLTK to Python 3 and updated all the code samples in the online version of the book.
  5. I think I found a bug; where do I report it?
  6. Please check if an issue report has already been filed by searching the Issue Tracker. If not, please report the problem, giving as much detail as possible. Please include a code sample that permits us to replicate the problem.
  7. How can I contribute to NLTK development?
  8. New contributions are always welcome. Please consult the list of development priorities and the issue tracker and submit a pull request. If you have particular expertise to offer, or new functionality to propose, please describe it on the nltk-dev mailing list.
  9. What data sources does NLTK use and how can more be added?
  10. Dozens of corpora are available for use with NLTK (see the list of available datasets, and the Corpus HOWTO). NLTK can be interfaced to other corpora; for instructions see section 2.1 of the NLTK book, and consult the code in the corpus module. Requests for advice in developing corpus readers for new formats should be posted to the nltk-dev mailing list. Completed corpus readers should be submitted via the Issue Tracker. Please specify the location of the corpus and whether it can be redistributed with NLTK.
  11. I'm planning some long-term research using NLTK; how long is the toolkit going to be supported?
  12. We plan to continue supporting the toolkit for as long as possible. We published the NLTK book in 2009 and have decided not to produce a second edition as originally planned. We plan to support the toolkit while the book is in active use, and while the developers are employed in NLP research and teaching. Bug reports will be dealt with as quickly as possible.
  13. Why is Python giving me a syntax error when I use NLTK?
  14. The newest version of NLTK requires Python 3.7 or later. If you use an earlier version of Python you might see many syntax errors.
  15. What is the difference between NLTK and NLTK-Lite?
  16. In mid-2005, the NLTK developers created a lightweight version of NLTK called NLTK-Lite. NLTK-Lite was simpler and faster than NLTK at that time. As of version 0.9, NLTK-Lite provided the same functionality as NLTK. Unlike the old NLTK, NLTK-Lite did not impose such a heavy burden on the programmer. Wherever possible, standard Python objects were adopted instead of custom NLP versions, so that students learning to program for the first time would be learning to program in Python with some useful libraries, rather than learning to program in NLTK. Once it reached version 1.0 (in mid 2009), NLTK-Lite took over the original NLTK name and became NLTK 2.0.
  17. How can I install NLTK from the source code repository?
  18. Most users should install NLTK from a distribution. Please see the installation instructions. However, if you need an up-to-the-minute version, then you will have to install NLTK from the source repository. Once you've downloaded this, you'll need to run the top level setup.py program to install this version of NLTK on your machine.
  19. How can I find out where NLTK is installed on my system?
  20. Do the following in a Python interpreter session:
    >>> import nltk
    >>> nltk.__path__
    ['/opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/nltk']
  21. What papers have been published about NLTK?
  22. NLTK has been used in a wide variety of published research. Please search Google Scholar for details.
  23. How is NLTK development supported?
  24. NLTK is an open source project that depends mainly on the efforts of volunteers. Students and teachers also donate code. We encourage volunteers to get involved (please consult the wiki). If you find the toolkit useful, please contribute.
  25. How did NLTK start?
  26. The NLTK project began when Steven Bird was teaching CIS-530 at the University of Pennsylvania in 2001, and hired his star student, Edward Loper, from the previous offering of the course to be the teaching assistant (TA). They agreed a plan for developing software infrastructure for NLP teaching that could be easily maintained over time. Edward wrote up the plan, and both began work on it right away. Here is the Version 0.2 release announcement that appeared in September 2001.
  27. If I just "use" NLTK using import statements in Python, am I obliged to publish my source code as well?
  28. No, there is no such obligation. You can use and modify NLTK without making any code available (see question 1).
  29. What is Natural Language Processing?
  30. Please see our book, or http://en.wikipedia.org/wiki/Natural_language_processing