03 安装【动手学深度学习v2】| 学习笔记

发布于:2025-08-03 ⋅ 阅读:(11) ⋅ 点赞:(0)

这个课最大的特点是会讲代码。

李沐老师讲,只是在听课那当然是很快乐的,但是需要往上走,需要实操跑代码,后面会有课程竞赛需要认真去做,再进一步可以去和其他人讲你的见解。

1、安装

这个课只会讲在本地安装,再过几个星期才会使用GPU,现在只使用CPU安装。代码如下:

# [可选]1. 创建并激活 Conda 环境
conda env remove -n d2l-zh
conda create -n d2l-zh -y python=3.8 pip
conda activate d2l-zh

# 2. 安装依赖 d2l里面包含了一些封装好的函数。需要基于torch,所以得安装torch和torchvision
pip install -y jupyter d2l torch torchvision 

# 3. 下载并解压课程代码 .zip文件里面包含了所有的记事本
wget https://zh-v2.d2l.ai/d2l-zh.zip
unzip d2l-zh.zip

# 4. 启动 Jupyter Notebook
jupyter notebook

2、安装的详细解释如下:

先启动服务器

1.运行 sudo apt update 查看可以安装的包
2.运行 sudo apt install build-essential 安装编译部件
 3.运行 sudo apt install python3.8 安装python3.8

作者运行的是上面这个代码(sudo apt install python3.8),而我的机器上运行成功的是(sudo apt install python3)

作者李沐的:

我的:

即我的机器是Ubuntu24.04,已经自带 Python 3.12.3,所以再装  python3.8  或  python-3.8  都会提示“找不到包”。

4.运行 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

Installing Miniconda - Anaconda

5.运行 bash Miniconda3-latest-Linux-x86_64.sh

这里的作用是:用 bash 解释器,直接运行刚刚下载的 Miniconda 安装脚本,开始安装 Miniconda3

这里需要把几个容易混的概念一次捋清: 
1)Linux kernel(内核): 真正控制 CPU、内存、硬盘等硬件    汽车的发动机    
2)Terminal(终端/终端模拟器)    只是一个黑框窗口,负责把你敲的字符送给内核、把内核的输出显示出来    汽车的仪表盘+方向盘    
3)Shell(命令解释器)    真正理解你敲的命令并调用内核去执行的“翻译官”    驾驶员    
4)bash    Shell 的一种最流行的实现;大多数 Linux 发行版默认用它    一位会英语的驾驶员
6.在base环境下:运行 pip install jupyter d2l torch torchvision

这里torch是把CPU和GPU版本混在一起了,所以特别大,国内可能需要选一个国内的源。

         国内下的确实挺慢的,我这边只有大概150kB/s,并且安装的时候遇到了如下问题:

        正在用「Python 3.13(刚发布)」去安装一个 只声明兼容到 Python 3.10/3.11 的旧版  numpy 1.23.5 ,导致构建失败

具体原因:
1. Conda 默认给你装的是「最新 Python 3.13」。
2.  d2l  指定了  numpy==1.23.5 ,而 1.23.5:
        发布时 Python 3.13 还不存在,
        源码里用到了 已弃用的  pkgutil.ImpImporter ,Python 3.12+ 已彻底移除,于是编译报错。

我的解决方法:
conda deactivate 
conda create -n d2l python=3.11 -y 
conda activate d2l
#在(d2l)环境里:
pip install jupyter d2l torch torchvision

这里在安装的时候按了一下F1,速度突然变快了!

但是大模型告诉我:

于是重新看了一下下载速度:

果然现在的大模型还是太强大了。

后来我发现,其实开了魔法之后,下载速度就是不确定的,如上。

7.来到课程书籍网址《动手学深度学习》 — 动手学深度学习 2.0.0 documentation 复制“Jupyter记事本文件”的地址(复制得到的URL是这个:https://zh-v2.d2l.ai/d2l-zh.zip

然后运行:wget https://zh-v2.d2l.ai/d2l-zh.zip

8.下载一个zip:sudo apt install zip

然后就可以解压文件了:

ls

unzip d2l-zh.zip

解压出来可以看到有三个文件夹:mxnet版本、pytorch版本、tensorflow版本

不过直播采用的是把记事本的文字给删掉然后做成的幻灯片的版本

可以点击课程网页课程安排 - 动手学深度学习课程右边的jupyter图标,然后可以进入幻灯片,可以左右切换,还是非常方便的。

也可以直接在Github上下载:

9.运行 git clone https://github.com/d2l-ai/d2l-zh-pytorch-slides  

李沐老师这里运行了jupyter notebook,但是下面的链接是不可以点击直达的,因为下面的link都是在远端机器上的link,所以需要把远端机器map到本地

ssh -L8888:localhost:8888 ubuntu@100.20.65.33,可以直接点击访问URL

 ssh  
建立加密的远程连接 
 -L8888:localhost:8888  
本地端口转发(Local Port Forwarding):把本地 8888 → 远程 localhost:8888 
 ubuntu@100.20.65.33  
以用户  ubuntu  登录这台公网 IP 为 100.20.65.33 的云主机 

原理:

远程机器启动 Jupyter 后,终端会打印一串形如http://localhost:8888/?token=xxxx的地址。这个 localhost 指的是“那台远端机器”,所以:
如果直接在浏览器里点这条链接,浏览器会去找自己电脑上的 8888 端口,当然什么都打不开。
用  ssh -L8888:localhost:8888  做本地端口转发后,浏览器访问 http://localhost:8888 时,SSH 会把请求加密转发到远端的真实 Jupyter 进程,于是就能像本地一样打开、写代码、跑实验。

这里可以安装一个叫rise的插件:pip install rise,这样就可以把jupyter变成幻灯片模式

这里也可以点击图书里面的COLAB


1. 访问
 https://colab.research.google.com/github/d2l-ai/d2l-zh-pytorch
 → 自动把 GitHub 仓库变成可运行的 notebook。
2. 连接
 点击右上角「Connect」,Google 会分配一台 12 GB RAM 的虚拟机。
3. 安装依赖
 在第一个 cell 里执行
python
!pip install git+https://github.com/d2l-ai/d2l-zh@release

→ 一键装好  d2l  包,后面的线性回归、CNN 示例直接能跑。

你可以看到这里的运行情况: