安装

为了上手和运行,我们需要一个环境来运行Python、Jupyter Notebook、相关库以及运行本书本身所需的所有代码。

安装 Miniconda

最简单的选择是安装 Miniconda。请注意,需要Python 3.x版本。如果你的机器上已经安装了conda,可以跳过以下步骤。

访问Miniconda网站,根据你的Python 3.x版本和机器架构,确定适合你系统的版本。假设你的Python版本是3.9(我们测试过的版本)。如果你使用的是macOS,你将下载文件名中包含“MacOSX”字符串的bash脚本,导航到下载位置,然后按如下方式执行安装(以Intel芯片的Mac为例):

# The file name is subject to changes
sh Miniconda3-py39_4.12.0-MacOSX-x86_64.sh -b

Linux用户将下载文件名中包含“Linux”字符串的文件,并在下载位置执行以下命令:

# The file name is subject to changes
sh Miniconda3-py39_4.12.0-Linux-x86_64.sh -b

Windows用户将按照其在线说明下载并安装Miniconda。在Windows上,你可以搜索 cmd 来打开命令提示符(命令行解释器)以运行命令。

接下来,初始化shell,这样我们就可以直接运行 conda

~/miniconda3/bin/conda init

然后关闭并重新打开当前的shell。你应该能够按如下方式创建一个新环境:

conda create --name d2l python=3.9 -y

现在我们可以激活 d2l 环境:

conda activate d2l

安装深度学习框架和 d2l

在安装任何深度学习框架之前,请首先检查你的机器上是否有合适的GPU(标准笔记本电脑上为显示器供电的GPU与我们的目的无关)。例如,如果你的计算机有NVIDIA GPU并已安装 CUDA,那么你已经准备好了。如果你的机器没有任何GPU,暂时也不用担心。你的CPU提供了足够的马力来让你完成前几章。只需记住,在运行更大的模型之前,你会希望使用GPU。

你可以按如下方式安装支持CPU或GPU的PyTorch(指定版本在编写本文时已经过测试):

pip install torch==2.0.0 torchvision==0.15.1

要安装支持GPU的MXNet版本,我们需要找出你安装了哪个版本的CUDA。你可以通过运行 nvcc --versioncat /usr/local/cuda/version.txt 来检查。假设你已经安装了CUDA 11.2,那么执行以下命令:

# For macOS and Linux users
pip install mxnet-cu112==1.9.1

# For Windows users
pip install mxnet-cu112==1.9.1 -f https://dist.mxnet.io/python

你可以根据你的CUDA版本更改最后的数字,例如,cu101 对应 CUDA 10.1,cu90 对应 CUDA 9.0。

如果你的机器没有NVIDIA GPU或CUDA,你可以按如下方式安装CPU版本:

pip install mxnet==1.9.1

你可以按如下方式安装支持CPU或GPU的JAX和Flax:

# GPU
pip install "jax[cuda11_pip]==0.4.13" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html flax==0.7.0

如果你的机器没有NVIDIA GPU或CUDA,你可以按如下方式安装CPU版本:

# CPU
pip install "jax[cpu]==0.4.13" flax==0.7.0

你可以按如下方式安装支持CPU或GPU的TensorFlow:

pip install tensorflow==2.12.0 tensorflow-probability==0.20.0

我们的下一步是安装我们开发的 d2l 包,以便封装本书中频繁使用的函数和类:

pip install d2l==1.0.3

下载和运行代码

接下来,你需要下载notebooks,以便运行书中每个代码块。只需在 D2L.ai 网站 的任何HTML页面顶部点击“Notebooks”选项卡即可下载代码,然后解压缩。或者,你也可以从命令行获取notebooks,如下所示:

mkdir d2l-en && cd d2l-en
curl https://d2l.com.cn/d2l-en-1.0.3.zip -o d2l-en.zip
unzip d2l-en.zip && rm d2l-en.zip
cd pytorch
mkdir d2l-en && cd d2l-en
curl https://d2l.com.cn/d2l-en-1.0.3.zip -o d2l-en.zip
unzip d2l-en.zip && rm d2l-en.zip
cd mxnet
mkdir d2l-en && cd d2l-en
curl https://d2l.com.cn/d2l-en-1.0.3.zip -o d2l-en.zip
unzip d2l-en.zip && rm d2l-en.zip
cd jax
mkdir d2l-en && cd d2l-en
curl https://d2l.com.cn/d2l-en-1.0.3.zip -o d2l-en.zip
unzip d2l-en.zip && rm d2l-en.zip
cd tensorflow

如果你还没有安装 unzip,请先运行 sudo apt-get install unzip。现在我们可以通过运行以下命令来启动Jupyter Notebook服务器:

jupyter notebook

此时,你可以在Web浏览器中打开 https://:8888(它可能已经自动打开)。然后我们就可以运行书中每个部分的代码了。每当你打开一个新的命令行窗口时,在运行D2L notebooks或更新你的包(深度学习框架或 d2l 包)之前,都需要执行 conda activate d2l 来激活运行时环境。要退出环境,请运行 conda deactivate