NumPy (recommended)
This is a scientific computing library with support for multidimensional arrays and
linear algebra, required for certain probability, tagging, clustering, and classification
tasks.
Matplotlib (recommended)
This is a 2D plotting library for data visualization, and is used in some of the book’s
code samples that produce line graphs and bar charts.
NetworkX (optional)
This is a library for storing and manipulating network structures consisting of
nodes and edges. For visualizing semantic networks, also install the Graphviz
library.
Prover9 (optional)
This is an automated theorem prover for first-order and equational logic, used to
support inference in language processing.