news 2026/9/5 16:36:33

神经网络学习笔记指南:用 nn-zero-to-hero 亲手实现反向传播与语言模型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
神经网络学习笔记指南:用 nn-zero-to-hero 亲手实现反向传播与语言模型

神经网络学习笔记指南:用 nn-zero-to-hero 亲手实现反向传播与语言模型

【免费下载链接】nn-zero-to-heroNeural Networks: Zero to Hero项目地址: https://gitcode.com/GitHub_Trending/nn/nn-zero-to-hero

nn-zero-to-hero是 "Neural Networks: Zero to Hero" 视频课程的配套笔记本仓库:每一讲都是一个 Jupyter Notebook,跟着视频从零手写代码,先实现支持反向传播的微型自动求导库micrograd,再逐级搭出字符级语言模型makemore,最终指向 GPT 的完整构建。它适合会基础 Python、希望搞懂神经网络训练与调试底层机制的学习者。

仓库里有什么:一个 README 加两个笔记本目录

整个仓库非常精简,核心内容就是 README.md 里的课程索引和lectures/下的代码:

  • lectures/micrograd/:两半课对应的 notebook,讲解标量计算图与反向传播的推导;
  • lectures/makemore/:五个递进文件,从 bigram 模型、MLP、批归一化(BatchNorm)、手动反向传播,到类 WaveNet 的卷积网络。

README 中的 Lecture 7(从零构建 GPT)和 Lecture 8(GPT Tokenizer)目前在仓库内没有对应 notebook,需要配合视频中的外部练习链接使用,本地可运行的是前六讲。

两条主线:先拆反向传播,再建语言模型

课程的组织逻辑是"先懂原理,再做工程"。

micrograd 系列只依赖 Python,用上百行代码搭一个标量级的自动求导系统,目标是把"梯度是怎么传回来的"讲透,前置要求只有基础 Python 和高中学过的微积分概念。

makemore 系列则是一条完整的模型迭代线:

  1. bigram(part1):最简单的二元字符统计模型,同时引入torch.Tensor与语言模型的训练、采样、loss 评估框架;
  2. MLP(part2):换成多层感知机,顺带覆盖学习率调参、过拟合、训练/验证/测试集划分等机器学习基本功;
  3. BatchNorm(part3):检查前向激活与反向梯度的统计量,用诊断可视化定位训练不稳定的原因;
  4. 手动反向传播(part4):不用loss.backward(),对交叉熵、线性层、tanh、BatchNorm、embedding 逐层手推梯度,在张量层面理解梯度流动;
  5. CNN(part5):把两层 MLP 加深为树状结构,得到类似 DeepMind WaveNet 的卷积架构,体会torch.nn的实际工作方式。

环境准备:装好 PyTorch 与 Jupyter 即可

仓库里没有安装脚本,环境很简单:Python 3 + PyTorch + Jupyter。克隆后执行:

git clone https://gitcode.com/GitHub_Trending/nn/nn-zero-to-hero
pip install torch jupyter

之后在lectures/micrograd/目录打开第一个 notebook 运行即可。micrograd 不依赖任何第三方库,是验证环境最快的入口;makemore 各节则依赖 PyTorch,建议按文件名顺序推进,因为 part2 之后的代码建立在前面文件的变量与函数之上。

三个自检点:loss 日志告诉你会不会

判断自己是否真的跑通了,可以看 notebook 里留存的调试记录:

  • part3 的 loss log:原始 MLP 训练 loss 约 2.12,修复 softmax 初始化、换用 Kaiming 初始化、引入 BatchNorm 后逐步降到 2.06 左右——这组数字就是"诊断工具如何指导调参"的实例;
  • part4 是明确设计成"动手优先"的练习:作者建议在 Colab 上先自己做,卡住再暂停视频看答案,只看不练收益很小;
  • part5 的 performance log 记录了参数扩展的效果:从 12K 参数(验证 loss 2.105)扩到 76K 参数(验证 loss 1.993),能直观感受模型容量与泛化的关系。

如果某一步的 loss 明显高于这些参考值,优先检查数据切分与学习率,而不是怀疑框架。

学完这两条线之后的下一步

仓库本身停在 makemore part5,README 标注 Ongoing,意味着后续讲座会持续补充。合理的延伸路线是:按 README 顺序补看 Lecture 7 与 8 的视频,把 makemore 中积累的自回归语言建模经验迁移到 GPT 与分词器上。

现在就可以做的具体动作:克隆仓库,打开 lectures/micrograd/micrograd_lecture_first_half_roughly.ipynb,把第一个计算图的求导部分逐单元格跑通。项目采用 MIT 协议(见 LICENSE),代码可以任意改写练习。

【免费下载链接】nn-zero-to-heroNeural Networks: Zero to Hero项目地址: https://gitcode.com/GitHub_Trending/nn/nn-zero-to-hero

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/5 16:32:59

IOPaint 图像修复实战指南:5分钟上手去除物体与水印

IOPaint 图像修复实战指南:5分钟上手去除物体与水印 【免费下载链接】IOPaint Image inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any thing on…

作者头像 李华
网站建设 2026/9/5 16:32:16

Agentic Video:长视频理解如何降低88%的视频token消耗

做多模态应用的开发者这两年应该都有一种感觉:文本 token 好算,视频 token 难控。尤其当视频时长从几十秒变成几十分钟甚至几小时,直接把视频“一次性打包”交给大模型处理,token 消耗和延迟会迅速超出预期。最近 Gemini API 推出…

作者头像 李华
网站建设 2026/9/5 16:27:40

星载SAR RD成像:物理建模驱动的逆问题求解

简介:本资源是一套面向SAR成像初学者的MATLAB实践工具包,聚焦距离多普勒(RD)算法原理验证与星载实测数据处理能力训练,解决从理论公式到工程实现的关键跨越问题。压缩包共4个文件(6.81MB)&#…

作者头像 李华
网站建设 2026/9/5 16:26:54

DataEase完全指南:不会写SQL也能用起来的开源BI数据可视化工具

DataEase完全指南:不会写SQL也能用起来的开源BI数据可视化工具 【免费下载链接】dataease 🔥 人人可用的开源 BI 工具,数据可视化神器。An open-source BI tool alternative to Tableau. 项目地址: https://gitcode.com/GitHub_Trending/da…

作者头像 李华
网站建设 2026/9/5 16:25:18

音游谱面预览视频制作全流程:以Cryogenic FBD12 6.0速为例

《In Falsus》里的Cryogenic这张 FBD12 谱面,用 6.0 速播放预览,第一眼看到的往往不是“难度”,而是谱面在高速下是否干净、能不能读。谱面预览在这个圈子里承担的任务很明确:制谱作者用来复查手感,玩家用来判断要不要…

作者头像 李华