Skip to content
A series of Jupyter notebooks that walk you through the fundamentals of Machine Learning and Deep Learning in Python using Scikit-Learn, Keras and TensorFlow 2.
Branch: master
Clone or download
Pull request Compare This branch is 7 commits behind ageron:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
datasets
docker
images
work_in_progress
.gitignore
01_the_machine_learning_landscape.ipynb
02_end_to_end_machine_learning_project.ipynb
03_classification.ipynb
04_training_linear_models.ipynb
05_support_vector_machines.ipynb
06_decision_trees.ipynb
07_ensemble_learning_and_random_forests.ipynb
08_dimensionality_reduction.ipynb
09_unsupervised_learning.ipynb
10_neural_nets_with_keras.ipynb
11_training_deep_neural_networks.ipynb
12_custom_models_and_training_with_tensorflow.ipynb
13_loading_and_preprocessing_data.ipynb
14_deep_computer_vision_with_cnns.ipynb
15_processing_sequences_using_rnns_and_cnns.ipynb
16_nlp_with_rnns_and_attention.ipynb
17_autoencoders_and_gans.ipynb
18_reinforcement_learning.ipynb
INSTALL.md
LICENSE
README.md
book_equations.ipynb
extra_gradient_descent_comparison.ipynb
index.ipynb
math_linear_algebra.ipynb
requirements.txt
tools_matplotlib.ipynb
tools_numpy.ipynb
tools_pandas.ipynb

README.md

Machine Learning Notebooks

This project aims at teaching you the fundamentals of Machine Learning in python. It contains the example code and solutions to the exercises in the second edition of my O'Reilly book Hands-on Machine Learning with Scikit-Learn, Keras and TensorFlow:

Note: If you are looking for the first edition notebooks, check out ageron/handson-ml.

Quick Start

Want to play with these notebooks without having to install anything?

Use any of the following services.

WARNING: Please be aware that these services provide temporary environments: anything you do will be deleted after a while, so make sure you save anything you care about.

  • Open this repository in Binder:

    • Note: Most of the time, Binder starts up quickly and works great, but when handson-ml2 is updated, Binder creates a new environment from scratch, and this can take quite some time.
  • Or open it in Deepnote:

    • Note: Deepnote environments start up quickly, but they do not contain the latest Scikit-Learn and TensorFlow libraries, so you will need to run !python3 -m pip install -U -r requirements.txt before you import any library (or you must restart the runtime).
  • Or open it in Colaboratory:

    • Note: Colab environments only contain the notebooks you open, they do not clone the rest of the project, so you need to do it yourself by running !git clone https://github.com/ageron/handson-ml2 and !mv handson-ml2/* /content to have access to other files in this project (such as datasets and images). Moreover, Colab does not come with the latest libraries, so you need to run !python3 -m pip install -U -r requirements.txt then restart the environment (but do not reset it!). If you open multiple notebooks from this project, you only need to do this once (as long as you do not reset the runtimes).

Just want to quickly look at some notebooks, without executing any code?

Browse this repository using jupyter.org's notebook viewer:

Note: github.com's notebook viewer also works but it is slower and the math equations are not always displayed correctly.

Want to install this project on your own machine?

If you have a working Python 3.5+ environment and git is installed, then an easy way to install this project and its dependencies is using pip. Open a terminal and run the following commands (do not type the $ signs, they just indicate that this is a terminal command):

$ git clone https://github.com/ageron/handson-ml2.git
$ cd handson-ml2
$ python3 -m pip install --user --upgrade pip setuptools
$ # Read `requirements.txt` if you want to use a GPU.
$ python3 -m pip install --user --upgrade -r requirements.txt
$ jupyter notebook

If you need more detailed installation instructions, or you want to use Anaconda, read the detailed installation instructions.

Contributors

I would like to thank everyone who contributed to this project, either by providing useful feedback, filing issues or submitting Pull Requests. Special thanks go to Haesun Park who helped on some of the exercise solutions, and to Steven Bunkley and Ziembla who created the docker directory.

You can’t perform that action at this time.