机器学习笔记本
⚠ 我的书的第三版现在已经上市。
这个项目是第一版,现在已经过时。
这个项目旨在教授您Python中的机器学习基础知识。它包含了我在O'Reilly出版社出版的书籍《Hands-on Machine Learning with Scikit-Learn and TensorFlow》中的示例代码和练习解答:
快速开始
想要在线试玩这些笔记本而无需安装任何东西?
使用以下任何服务。
警告:请注意,这些服务提供的是临时环境:您所做的任何操作在一段时间后都会被删除,因此请确保下载任何您关心的数据。
-
推荐:在Colaboratory中打开此仓库:
-
或在Binder中打开:
- 注意:大多数时候,Binder启动很快并且效果很好,但当handson-ml更新时,Binder会从头创建一个新环境,这可能需要相当长的时间。
-
或在Deepnote中打开:
只想快速查看一些笔记本,而不执行任何代码?
使用jupyter.org的笔记本查看器浏览此仓库:
注意:github.com的笔记本查看器也能工作,但速度较慢,数学公式有时显示不正确。
想要使用Docker镜像运行此项目?
阅读Docker说明。
想要在您自己的机器上安装此项目?
首先安装Anaconda(或Miniconda)、git,如果您有TensorFlow兼容的GPU,安装GPU驱动,以及相应版本的CUDA和cuDNN(详见TensorFlow的文档)。
接下来,通过打开终端并输入以下命令克隆此项目(不要输入每行开头的$
符号,它们只是表示这些是终端命令):
$ git clone https://github.com/ageron/handson-ml.git
$ cd handson-ml
接下来,运行以下命令:
$ conda env create -f environment.yml
$ conda activate tf1
$ python -m ipykernel install --user --name=python3
最后,启动Jupyter:
$ jupyter notebook
如果您需要进一步的说明,请阅读详细安装说明。
常见问题
我应该使用哪个版本的Python?
我推荐Python 3.7。如果您遵循上述安装说明,这就是您将获得的版本。大多数代码可以在其他版本的Python 3上运行,但某些库尚不支持Python 3.8或3.9,这就是为什么我推荐Python 3.7。
当我调用load_housing_data()
时出现错误
请确保在调用load_housing_data()
之前调用fetch_housing_data()
。如果您收到HTTP错误,请确保您运行的代码与笔记本中的完全相同(如有必要,请复制/粘贴)。如果问题仍然存在,请检查您的网络配置。
在MacOSX上出现SSL错误
您可能需要安装SSL证书(请参见此StackOverflow问题)。如果您从官方网站下载了Python,请在终端中运行/Applications/Python\ 3.7/Install\ Certificates.command
(将3.7
更改为您安装的版本)。如果您使用MacPorts安装了Python,请在终端中运行sudo port install curl-ca-bundle
。
我已在本地安装了此项目。如何更新到最新版本?
请参阅INSTALL.md
在使用Anaconda时,如何将我的Python库更新到最新版本?
请参阅INSTALL.md
贡献者
感谢每一位为这个项目做出贡献的人,无论是提供有用的反馈、提交问题还是提交拉取请求。特别感谢Haesun Park和Ian Beauregard,他们审查了每一个笔记本并提交了许多PR,包括一些练习解答的帮助。同时感谢Steven Bunkley和Ziembla,他们创建了docker
目录,还有github用户SuperYorio,他帮助解决了一些练习题。