nndl/nndl-practice

Jupyter Notebooknndl.ai/nndl-practice/

邱锡鹏《神经网络与深度学习:案例与实践》PyTorch 实现

chinesedeep-learningjupyter-notebookpaddlepaddlepytorchtutorial
Star 增长趋势
Star
3.5k
Forks
1.5k
周增长
+18
Issues
0
1k2k3k
2017年11月2020年10月2023年9月2026年9月
README

神经网络与深度学习:案例与实践

从张量和自动求导出发,亲手搭建模型与训练框架,再走到 Transformer、大语言模型和智能体。

本书页面 · 下载 PDF · 快速开始 · 章节目录 · 勘误与建议

《神经网络与深度学习:案例与实践(第二版)》封面

第二版 · PyTorch 配套代码

本书把神经网络模型、深度学习原理和工程实践放在同一条学习线上:一边理解模型,一边用 PyTorch 从零实现关键组件,再把它们用于可运行的案例。

全书共 10 章,仓库提供 17 个 Notebook、逐章实现说明和配套测试。从线性模型、卷积网络和循环网络出发,逐步进入注意力机制、图神经网络、大语言模型与智能体。

适合读者:正在学习深度学习的本科生、研究生、工程师,以及希望把《神经网络与深度学习》理论内容真正跑起来的读者。

当前状态:第二版处于出版筹备阶段,PDF 与配套代码会随出版前修订持续更新。

先从哪里开始

你的目标 建议路径
第一次使用 PyTorch 第 1 章 → 第 2 章 → 第 4 章
系统学习深度学习实践 按第 1—10 章顺序学习
计算机视觉 第 1 章 → 第 4 章 → 第 5 章 → 第 7 章
序列建模与 Transformer 第 1 章 → 第 4 章 → 第 6 章 → 第 8 章
大语言模型与智能体 第 8 章 → 第 10 章;基础薄弱时先补第 1、4 章
图神经网络 第 1 章 → 第 4 章 → 第 9 章

章节目录

主题与代码入口 主要实践内容
1 实践基础 Tensor、广播、自动微分、nn.ModuleDatasetDataLoader
2 机器学习概述 机器学习五要素、线性与多项式回归、RunnerV1、加州房价预测
3 线性模型 Logistic/Softmax 回归、手写梯度、RunnerV2、鸢尾花分类
4 前馈神经网络 激活函数、手算反向传播、MLP、RunnerV3、Moons 与鸢尾花分类
5 卷积神经网络 从零实现卷积、LeNet-5、残差网络、MNIST 与 CIFAR-10
6 循环神经网络 SRN、LSTM、梯度截断、变长序列与双向 LSTM
7 网络优化与正则化 优化器、参数初始化、BatchNorm、暂退法(Dropout)与学习率调度
8 注意力机制 加性注意力、缩放点积注意力、多头注意力、位置编码与 Transformer
9 图神经网络 GCN、GraphSAGE、GAT、GIN,以及节点级与图级任务
10 大语言模型与智能体 nanoGPT、解码与 KV Cache、LoRA、SFT、DPO、ReAct 与 RAG

每章目录中都有 Notebook 入口和实现要点;完整环境说明、数据集下载方式与批量执行方法见 pytorch/README.md

快速开始

环境要求:64 位 Python 3.11+、PyTorch 2.7+。所有 Notebook 都可在 CPU 上运行,第 5 章和第 10 章使用 GPU 会更快。

git clone https://github.com/nndl/nndl-practice.git
cd nndl-practice
python -m venv .venv

激活虚拟环境:

# macOS / Linux
source .venv/bin/activate

# Windows PowerShell
.venv\Scripts\Activate.ps1

安装 CPU 版本并打开第一个 Notebook:

python -m pip install --upgrade pip
pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
pip install -r pytorch/requirements.txt
jupyter notebook "pytorch/chap1实践基础/实践基础.ipynb"

使用 NVIDIA GPU 时,请按 PyTorch 官方安装页选择与本机 CUDA 环境匹配的安装命令。

不只是十组 Notebook

配套代码会随着章节推进,逐步搭建轻量级学习框架 pytorch/nndl/

组件 学习重点
RunnerV1 闭式求解、评价、预测与参数保存
RunnerV2 梯度训练、验证集评价与早停法
RunnerV3 DataLoaderstate_dict、指标解耦与训练历史
nndl 算子与模型 从基础算子、损失函数和优化器,逐步扩展到 CNN、RNN 与注意力机制

Notebook 在关键组件第一次出现时展示完整实现,后续章节则通过 from nndl import ... 复用工程化版本。这样既能看清原理,也能保持代码可维护。

测试与复现

每章都有一组 sanity 测试,用来检查关键算子、模型形状和核心结论:

python -m pytest pytorch/tests/ -v

单章测试可以直接指定文件,例如:

python -m pytest pytorch/tests/test_chap8.py -v

版本关系

内容 位置 说明
第二版 PyTorch 实现 pytorch/ 本仓库当前维护的主线,共 10 章
第一版 PaddlePaddle 实现 nndl/practice-in-paddle 对应 2022 年出版的第一版,共 8 章
理论书第一版编程练习 legacy/ nndl/exercise 内容,使用 NumPy 与早期 PyTorch,作为历史归档保留

本仓库由 nndl/exercise 更名而来,旧链接会由 GitHub 自动跳转到当前地址。

代码与书稿

仓库与书稿采用相同的十章结构。出版前两边都会继续修订,因此个别代码、输出或页码可能短期不同步;遇到差异时,请同时注明书稿日期、章节、Notebook 名称和具体单元格,便于核对。

勘误与建议

欢迎通过 GitHub Issues 提交代码问题、书稿勘误和改进建议。提交前请先搜索是否已有相同问题,并尽量提供:

  • 章节与 Notebook 名称;
  • Python、PyTorch 与操作系统版本;
  • 最小复现步骤和完整报错;
  • 书稿问题对应的 PDF 页码及下载日期。

查看已有反馈 · 提交新反馈

系列资源

仓库维护说明

相关仓库
Anduin2017/HowToCook

Programmer's guide about how to cook at home.

tutorialThe Unlicensecookbookrecipes
howtocook.aiursoft.com
102.2k11.1k
d2l-ai/d2l-zh

《动手学深度学习》:面向中文读者、能运行、可讨论。中英文版被70多个国家的500多所大学用于教学。

PythonPyPItutorialApache License 2.0deep-learningbook
zh.d2l.ai
80.4k12.4k
byoungd/up

An advanced guide which might benefit you a lot 🎉 . 韩先凯的人生进阶指南 人生进阶指南 离谱的人生 人生进阶 离谱的英语学习指南/英语学习教程/英语学习/学英语

JavaScriptnpmtutorialOtherchinesetutorial
ai.rich
62.5k6.3k
chinese-poetry/chinese-poetry

The most comprehensive database of Chinese poetry 🧶最全中华古诗词数据库, 唐宋两朝近一万四千古诗人, 接近5.5万首唐诗加26万宋诗. 两宋时期1564位词人,21050首词。

JavaScriptnpmlibraryMIT Licensejsonchinese
awesome-poetry.top
53.4k10.7k
2noise/ChatTTS

A generative speech model for daily dialogue.

PythonPyPIGNU Affero General Public License v3.0agenttext-to-speech
2noise.com
39.8k4.2k
PDFMathTranslate/PDFMathTranslate

[EMNLP 2025 Demo] PDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/MCP/Docker/Zotero

PythonPyPIappGNU Affero General Public License v3.0chineselatex
pdf2zh.com
36.8k3.3k
sunface/rust-course

什么?你敢放心的把后背交给 AI? 我赌你不敢,那就来学学 AI 时代最酷、最安全、最快的语言吧。本书拥有全面且深入的讲解、生动贴切的示例、德芙般丝滑的内容,这可能是目前最用心的 Rust 中文学习教程 / Book

Rustcrates.iotutorialrust-langrust
course.rs
30.9k2.6k
Z-Siqi/Clash-for-Windows_Chinese

clash for windows汉化版. 提供clash for windows的汉化版, 汉化补丁及汉化版安装程序

JavaScriptnpmappclashwindows
28.5k3.2k
xiaojieonly/Ehviewer_CN_SXJ

ehviewer,用爱发电,快乐前行

CappOtherscreenshotehviewer
26.8k707
AccumulateMore/CV

✅(已完结)超级全面的 深度学习 笔记【土堆 Pytorch】【李沐 动手学深度学习】【吴恩达 深度学习】【大飞 大模型Agent】

Jupyter Notebooktutorialbookchinese
23.6k2.6k
QwenAudio/CosyVoice

Multi-lingual large voice generation model, providing inference, training and deployment full-stack ability.

PythonPyPIApache License 2.0audio-generationgpt-4o
funaudiollm.github.io/cosyvoice3
23.5k2.7k
AiHubCN/Awesome-Chinese-LLM

整理开源的中文大语言模型,以规模较小、可私有化部署、训练成本较低的模型为主,包括底座模型,垂直领域微调及应用,数据集与教程等。

awesomellmnlp
22.8k2.1k