The Python ML ecosystem

In this book, we will use Python 3. For a good introduction, see e.g., the free books Whirlwind tour of Python by Jake Vanderplas or Dive into Python 3 by Mark Pilgrim.

This document is an example of a Jupyter notebook, which mixes code and results. When developing software, it is often better to use an IDE (interactive development environment), which keeps the code in separate files. I recommend Spyder Spyder, although many people use JupyterLab for a browser-based solution.

We will leverage many standard libraries from Python's "data science stack", listed in the table below. For a good introduction to these, see e.g., the free book Python Datascience Handbook by Jake Vanderplas, or the class Computational Statistics in Python by Cliburn Chen at Duke University. For an excellent book on scikit-learn, see Hands-on Machine Learning with Scikit-Learn, Keras and TensorFlow v2 by Aurelion Geron.

Name Functionality
Numpy Vector and matrix computations
Scipy Various scientific / math / stats / optimization functions
Matplotlib Plotting
Seaborn Extension of Matplotlib
Pandas Manipulating tabular data and time series
Scikit-learn Implements many "Classical" ML methods

In [0]: