这个仓库是一套“边写边学”的小型课程。建议不要只看代码,而是每个脚本都运行、改参数、故意制造错误,再修回来。
建议使用 Python 3.10+。
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt如果你的电脑没有 GPU,也可以完整学习,所有示例默认都能在 CPU 上跑。
-
01_pytorch_basics/tensors_autograd.py- 张量、广播、矩阵乘法、自动求导。
- 目标:理解神经网络训练本质上是在反复计算梯度。
-
02_training_loop/linear_regression.py- 从零写一个训练循环:前向、loss、反向、参数更新。
- 目标:理解 optimizer 做了什么。
-
03_mlp/mnist_mlp.py- 用
nn.Module写一个 MLP 分类器。 - 目标:掌握模型、数据加载、训练、评估的标准套路。
- 用
-
04_cnn/simple_cnn.py- 写一个简单 CNN。
- 目标:理解卷积层比 MLP 更适合图像。
-
05_transformer/mini_transformer.py- 从 Embedding、位置编码、多头注意力、Transformer Block 到小语言模型。
- 目标:把 Transformer 的关键部件真正敲出来。
- 每个脚本先直接运行一遍。
- 再改 1 个变量,比如学习率、隐藏层维度、层数、batch size。
- 每章至少补完 1 个 TODO。
- 看不懂时,优先打印张量 shape。深度学习代码里,shape 是地图。
python .\01_pytorch_basics\tensors_autograd.py
python .\02_training_loop\linear_regression.py
python .\05_transformer\mini_transformer.py