t81_558_deep_learning
华盛顿大学深度学习教科书课程,70+ Jupyter Notebooks 系统覆盖 CNN/RNN/GAN/Transformer 等主流深度学习架构
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
华盛顿大学深度学习教科书课程,70+ Jupyter Notebooks 系统覆盖 CNN/RNN/GAN/Transformer 等主流深度学习架构
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下这样的场景:你刚刚入门机器学习,看了无数教程、刷了无数博客,却发现真正动手做项目时,连一个卷积神经网络的结构都搭不对——网络层数怎么选、学习率怎么调、过拟合了怎么处理,这些书本上语焉不详的细节,正是初学者最需要的那块拼图。
华盛顿大学圣路易斯分校的 T81-558: Applications of Deep Neural Networks 课程,正是为填补这个空白而生。这门课由知名 AI 研究者 Jeff Heaton 主持,将课程材料、代码示例和作业全部开源在 GitHub 上,最终演化为一门可独立阅读的教科书。

图1:课程讲师 Jeff Heaton,华盛顿大学圣路易斯分校研究教授
2016 年春学期,Jeff Heaton 决定放弃传统的 PPT 教学方式,将课程材料直接放在 GitHub 上——包含代码、图表和大量文字说明。最初这只是教学便利,没想到无心插柳:代码和叙述相互交织的形式,让它成了一本比大多数教科书更实用的深度学习入门读物。
课程代码全部用 Python 书写,早期基于 TensorFlow 1.x,随后迁移到 TensorFlow 2.x + Keras。2023 年起,华盛顿大学已切换为 PyTorch 版本授课(对应仓库 jeffheaton/app_deep_learning),本仓库为历史存档。
全书现已发布在 arXiv(arXiv:2009.05673),也可在 Amazon 购买平装本或 Kindle 版。

图2:课程中的人工神经网络结构示意图,清晰展示输入层、隐藏层与输出层的连接方式
很多人看到 GitHub 上 70 多个 Jupyter Notebook,会误以为这是一个工具库——下载下来 import 就能用。但更准确的类比是:这是一个手把手带你从零搭建深度学习能力的课程。
课程分为 14 个模块,从 Python 基础讲起,逐步覆盖:

图3:LSTM(长短期记忆网络)架构详解图,展示门控机制的内部结构
每个模块包含 5 个部分(Part 1-5),Part 1 通常是背景知识,Part 5 是实战作业或进阶内容。
课程中最令开发者惊艳的内容,是模块 7 的 GAN(生成对抗网络)实战。Jeff Heaton 从零讲解 GAN 训练不稳定性的成因、Mode Collapse 的表现,并通过 DeOldify 项目展示老照片上色、StyleGAN2-ADA 展示高分辨率人脸生成。
课程还包含 YOLO 目标检测实战(Darknet)、Transformer 架构解析(BERT/GPT)、强化学习在 Atari 游戏中的应用(DQN/A3C),以及用 Flask 将 Keras 模型部署为 REST API 的完整代码。

图4:StyleGAN2-ADA 生成的高分辨率人脸,课程中详细讲解了 Ada 训练策略
课程的安装方式极为友好:
# 方式1:conda 一键创建环境(推荐)
conda env create -f environment.yml
conda activate tensorflow
# 方式2:macOS GPU(M1/M2)
conda env create -f tensorflow.yml
# 方式3:NVIDIA GPU
conda env create -f tensorflow-gpu.yml
所有 Notebook 均兼容 Google Colab,无需本地 GPU 即可运行基础内容。GPU 训练建议使用 NVIDIA 显卡(CUDA >= 11.0,8GB+ 显存)。

图5:课程开篇对比深度学习与传统机器学习的适用场景,帮助学习者建立正确的问题判断直觉
对于有一定 Python 基础的开发者,可以直接阅读 intro.md 和 faq.md,再按兴趣跳转到具体模块。每个 Notebook 都有详细的 Markdown 说明,不依赖外部视频也能完全自学。
| 层次 | 技术选型 |
|---|---|
| 主框架 | TensorFlow 2.x + Keras |
| 数据处理 | Pandas、NumPy、Scikit-learn |
| 可视化 | Matplotlib、Pillow |
| 强化学习 | OpenAI Gym |
| NLP | Hugging Face Transformers、Tokenizers |
| 部署 | Flask |
| 环境管理 | Conda(env 文件)、pip |
| 笔记本格式 | Jupyter Notebook(.ipynb) |
| PyTorch 版本 | 独立仓库 jeffheaton/app_deep_learning |
代码结构采用「课程模块组织」,每个 t81_558_class_XX_X_*.ipynb 对应一个具体知识点。所有辅助 Python 脚本放在 py/ 目录(如 Flask Web 服务器、图像服务器等)。
作为华盛顿大学的正式课程,T81-558 不同于大多数 GitHub 开源教程的特点在于:它有完整的大纲、作业评分体系、学期节奏,以及真实的课堂反馈。这使得它比大多数「野生教程」更加结构化、系统化。
5,737 颗 GitHub 星、持续多年的更新维护(最新 2023 年),以及作者 Jeff Heaton 在 Kaggle 和行业中的影响力,都证明了这门课程在 AI 教育领域的实用价值。
对于想系统学习深度学习的开发者,这套课程最大的价值在于:它不仅告诉你怎么用,还告诉你为什么这样用、什么时候该换一种方法。这正是从「调包侠」进阶为真正的 AI 工程师最需要的东西。