李沐《动手学深度学习》(Dive into Deep Learning)d2l 安装记录

一、d2l简介

在人工智能与深度学习领域,d2l 通常指的是 《动手学深度学习》(Dive into Deep Learning) 这一具有里程碑意义的开源教育资源。它由李沐等知名学者和工程师主导,旨在通过"边学边练"的方式,帮助学习者系统掌握深度学习的核心概念与工程实践技能。

以下是 d2l 项目的几个核心特点:

1. 交互式学习体验

与传统静态教材不同,d2l 的内容全部以 Jupyter Notebook 格式组织。学习者可以"即开即用、边读边练、即时验证",在浏览器或本地环境中直接运行代码、修改超参数并观察结果,真正实现了"所见即所得"的沉浸式学习。

2. 理论与实践深度融合

项目采用"概念---数学---代码---实验---批判性讨论"的五维螺旋上升结构。在讲解复杂算法时,不仅提供严谨的数学推导,还会逐行手写底层代码实现(如前向传播、反向传播),并结合可视化手段展示训练过程,帮助学习者知其然更知其所以然。

3. 跨框架支持与工业级工程实践

d2l 具备强大的跨框架抽象能力,同一章节内容可一键切换 PyTorch、TensorFlow 或 MXNet 等主流框架的实现。此外,项目强调工业级的工程规范,包含完善的版本管理、环境配置指南(如 environment.yml)以及针对真实开发陷阱(如 CUDA 内存溢出、混合精度训练报错等)的解决方案。

4. 活跃的开源社区生态

作为一个持续演进的教育基础设施,d2l 依托 GitHub 和专属论坛(discuss.d2l.ai)由全球数百名研究者、工程师与一线教师协同维护。社区沉淀了海量高质量的问答与讨论,形成了"问题即文档"的共生生态,目前已在全球 70 多个国家被 500 余所高校正式采用为教材。

二、安装与问题修复

2.1安装

装《动手学深度学习》(d2l)的推荐流程如下,主要包含环境配置、安装核心库以及获取教材代码三个步骤:

1. 创建并激活虚拟环境

推荐使用 conda 创建一个隔离的 Python 3.9 环境,以避免与你之前的 Anaconda 基础环境发生依赖冲突:

复制代码
1conda create --name d2l python=3.9 -y
2conda activate d2l

2. 安装深度学习框架与 d2l 库

进入 d2l 环境后,安装 PyTorch 框架以及 d2l 软件包。由于国内网络原因,强烈建议使用镜像源加速下载:

复制代码
1# 安装 PyTorch (CPU版,若需GPU版请参考PyTorch官网命令)
2pip install torch torchvision -i https://pypi.tuna.tsinghua.edu.cn/simple
3
4# 安装 d2l 库
5pip install d2l -i https://pypi.tuna.tsinghua.edu.cn/simple

3. 下载教材代码资源

下载包含全书 Jupyter Notebook 的压缩包并解压:

复制代码
1# 下载并解压教材代码
2wget https://zh-v2.d2l.ai/d2l-zh.zip
3unzip d2l-zh.zip

4. 启动 Jupyter Notebook

在终端中进入解压后的 d2l-zh 目录,启动 Jupyter:

复制代码
1cd d2l-zh
2jupyter notebook

此时浏览器会自动打开 http://localhost:8888,你就可以在网页中边学边跑代码了。

💡 避坑提示:

如果在运行 Jupyter 时遇到 matplotlibtraitlets 等依赖冲突报错,可以尝试降级到兼容版本(例如:pip install matplotlib==3.5.3 traitlets==5.8.1)。

2.2 高版本安装报错问题

如果直接安装d2l,由于d2l对应各库版本比较旧,会直接引起安装问题。我们重新做了一个d21-017(对应0.17.6),把setup.py中的requirement中的所有==改成了>=。进一步安装该包:(1)首先在命令行环境中激活对应虚拟环境(课程利用的dI210);(2)目录切换到d21-017对应目录。(3)使用如下指令安装:pip install表示安装该目录下的包。此时pip将找到目录中的setup.py文件,并开始安装。

d21-017 来自青岛学习哈工大屈老师,下载请联系作者;

2.3 高版本安装报错问题---简洁解决版

助教发个简介解决问题版:

下载d2l 出错 先进入环境 运行conda install pywinpty -y 后 在运行pip install . --no-deps

相关推荐
ITmaster07311 小时前
告别 IDE?Android CLI 来了,开发进入 AI Agent 时代
android·ide·人工智能
陈明勇1 小时前
一篇文章,多种表达:我用 Seed Evolving 生成知识卡片
人工智能
墨舟的AI笔记1 小时前
ECS 中的确定性随机与回放:让帧同步在 DOTS 上成立
人工智能
图特摩斯科技2 小时前
本体智能应用案例实践分享:汽车零部件库存优化与召回应急保障
人工智能·汽车·palantir·ontology·ontoflow·ontoos
专业工业电源打工人2 小时前
F0505S-2WR3 适配优选 钡特电源 DF2-05S05LS|2W 隔离 DC-DC 模块电源5V转5V硬件选型参数规格解析
大数据·网络·人工智能
a1117762 小时前
三色软糖坠落玻璃池 THreeJS kimi
前端·人工智能·threejs
xian_wwq2 小时前
【学习笔记】解剖 Claude Code —— Anthropic 的 Harness 参考实现-09/15
人工智能·笔记·学习
Black_Rock_br2 小时前
打通 PyTorch Monarch 与 ROCm:单 Controller 架构的异构算力实战
人工智能·pytorch·python·开源
其实防守也摸鱼2 小时前
Kimi K3深度测评:长文本之外的真实力
运维·开发语言·网络·人工智能·python·学习·安全
wu8587734572 小时前
从 Prompt 到 Loop:拆解 AI 工程化四范式的演进逻辑与落地边界
人工智能·ai·prompt·aigc·ai编程