Software for CS 175, Winter 2018

The links to software packages (all in Python) below will likely be useful to you both for the initial assignments and for class projects. For the class projects you are welcome (if you wish) to make use of other software packages in addition to those below, although the packages below contain a very large range of different library functions and utilities for text analysis and machine learning and should have more than enough to support your project.

Anaconda Python Distribution
We recommend that you download and install the free Anaconda Python distribution - please be sure to download the Python 3 version. Anaconda includes Python, the Natural Language Toolkit (NLTK) and scikit-learn, in addition to a wide range of other packages that are useful for data analysis (such as matplotlib, numpy, scipy, and more), as well as a useful interactive development environment (IDE) called Spyder. If you download Anaconda you should have all the packages you will need for both the assignments and for your class project. Anaconda is available for Mac, Linux, and Windows OS.

Python (3.5 or above)
You will need to have Python 3.5 or above installed on your computer for this course (if you installed Anaconda (see above) with the Python 3 option then you already have it). If you are not familiar with Python you should take time to consult some online Beginner's Guides to Python and online Python reference material. You might also want to get hold of an introductory text on Python such as Python Programming: An Introduction to Computer Science.

The Natural Language Toolkit (NLTK)
A widely used Python package for text and natural language analysis with an accompanying online NLTK book. Note that the latest version of NLTK (NLTK 3.2.1, as of Jan 1 2017) is automatically downloaded when you install Anaconda.

A widely used Python package for machine learning and data analysis with extensive online documentation and tutorial examples. Note that scikit-learn is automatically downloaded when you install Anaconda.