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.
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 download any data you care about.
-
Recommended: open this repository in Colaboratory:
-
Or open it 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:
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.
Read the Docker instructions.
Start by installing Anaconda (or Miniconda), git, and if you have a TensorFlow-compatible GPU, install the GPU driver.
Next, clone this project by opening a terminal and typing the following commands (do not type the first $
signs on each line, they just indicate that these are terminal commands):
$ git clone https://github.com/ageron/handson-ml2.git
$ cd handson-ml2
If you want to use a GPU, then edit environment.yml
(or environment-windows.yml
on Windows) and replace tensorflow=2.0.0
with tensorflow-gpu=2.0.0
. Also replace tensorflow-serving-api==2.0.0
with tensorflow-serving-api-gpu==2.0.0
.
Next, run the following commands:
$ conda env create -f environment.yml # or environment-windows.yml on Windows
$ conda activate tf2
$ python -m ipykernel install --user --name=python3
Then if you're on Windows, run the following command:
$ pip install --no-index -f https://github.com/Kojoley/atari-py/releases atari_py
Finally, start Jupyter:
$ jupyter notebook
If you need further instructions, read the detailed installation instructions.
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.