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](https://www.oreilly.com/library/view/hands-on-machine-learning/9781492032632/):
**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.
* _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](https://beta.deepnote.org/launch?template=data-science&url=https%3A//github.com/ageron/handson-ml2/blob/master/index.ipynb):
* _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).
* _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).
_Note_: [github.com's notebook viewer](https://github.com/ageron/handson-ml2/blob/master/index.ipynb) also works but it is slower and the math equations are not always displayed correctly.
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):
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.