handson-ml README

The project's README from github.com/ageron/handson-ml. As one markdown file: README.md.

Machine Learning Notebooks

⚠ THE THIRD EDITION OF MY BOOK IS NOW AVAILABLE, AS WELL A PYTORCH VERSION AND MANY TRANSLATIONS.

This project is for the first edition, which is now outdated (it came out in 2017).

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

book

Quick Start

Want to play with these notebooks online 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 download any data you care about.

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

  • Or open it in Deepnote:

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 run this project using a Docker image?

Read the Docker instructions.

Want to install this project on your own machine?

Start by installing Anaconda (or Miniconda), git, and if you have a TensorFlow-compatible GPU, install the GPU driver, as well as the appropriate version of CUDA and cuDNN (see TensorFlow's documentation for more details).

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-ml.git
$ cd handson-ml

Next, run the following commands:

$ conda env create -f environment.yml
$ conda activate tf1
$ python -m ipykernel install --user --name=python3

Finally, start Jupyter:

$ jupyter notebook

If you need further instructions, read the detailed installation instructions.

FAQ

Which Python version should I use?

I recommend Python 3.7. If you follow the installation instructions above, that's the version you will get. Most code will work with other versions of Python 3, but some libraries do not support Python 3.8 or 3.9 yet, which is why I recommend Python 3.7.

I'm getting an error when I call load_housing_data()

Make sure you call fetch_housing_data() before you call load_housing_data(). If you're getting an HTTP error, make sure you're running the exact same code as in the notebook (copy/paste it if needed). If the problem persists, please check your network configuration.

I'm getting an SSL error on MacOSX

You probably need to install the SSL certificates (see this StackOverflow question). If you downloaded Python from the official website, then run /Applications/Python\ 3.7/Install\ Certificates.command in a terminal (change 3.7 to whatever version you installed). If you installed Python using MacPorts, run sudo port install curl-ca-bundle in a terminal.

I've installed this project locally. How do I update it to the latest version?

See INSTALL.md

How do I update my Python libraries to the latest versions, when using Anaconda?

See INSTALL.md

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 and Ian Beauregard who reviewed every notebook and submitted many PRs, including help on some of the exercise solutions. Thanks as well to Steven Bunkley and Ziembla who created the docker directory, and to github user SuperYorio who helped on some exercise solutions.

handson-ml (ageron/handson-ml)

Searching Database…

What is this?Jupyter notebooks that teach Machine Learning fundamentals in Python: the example code and exercise solutions for the first edition of the O'Reilly book 'Hands-on Machine Learning with Scikit-Learn and TensorFlow'.
Is this the book itself, or something that goes with it?It's the companion code, not the book — runnable notebooks by Aurélien Géron that go along with the book (published in 2017), which you would read separately.
Can I play with the notebooks without installing anything?Yes — open the repo in Colaboratory (the recommended option), Binder, or Deepnote and run everything in the browser; to just read, jupyter.org's notebook viewer works too. These services are temporary environments, so download anything you want to keep.
What do I need to run it on my own machine?Anaconda or Miniconda plus git. Clone the repo, run 'conda env create -f environment.yml', activate the 'tf1' environment, and start Jupyter. Python 3.7 is recommended; a TensorFlow-compatible GPU with CUDA and cuDNN is optional.
The repo is marked deprecated — is it still worth using?Not for new learning: this repo tracks the book's first edition, which came out in 2017 and is now outdated. For current material the author points to his handson-ml3 and handson-mlp repos instead.
What do the notebooks actually cover?Machine Learning fundamentals using scikit-learn, then neural networks with TensorFlow — the two libraries in the book's title — including a housing-price prediction project.
I'm getting an error when I call load_housing_data() — what's wrong?Call fetch_housing_data() first — it downloads the data that load_housing_data() then reads. If you get an HTTP error, run the exact code from the notebook and check your network configuration.
Is there a Docker image for a ready-made environment?Yes — the repo ships Docker instructions and a docker directory, so you can run everything in a container instead of setting up Anaconda yourself.
Creator
ageron
Size
84.9 MB
Stars
25.6K
Updated
CommitMay 19
Age
10y
Commits · 90 Days