面向计算机视觉的深度学习
这门课学什么
课程从零实现图像分类器,再讲卷积网络结构、训练技巧、注意力与 Transformer、检测、分割、生成模型和视觉语言模型。作业用 NumPy 和 PyTorch 手写实现。
内容摘要
CS231n 是斯坦福面向计算机视觉的深度学习课。2025 年春季版共 18 讲,由李飞飞、Ehsan Adeli、Justin Johnson 和 Zane Durante 分讲,另请 4 位客座讲者讲视频理解、3D 视觉、视觉与语言和机器人学习。课程主线是:先把图像分类做透,再把同一套工具推广到更多视觉任务。
第 1 阶段(第 2–6 讲)打基础。课程从线性分类器和损失函数讲起,接着讲正则化与优化、神经网络与反向传播,然后讲卷积神经网络和经典网络结构。第 2 阶段(第 7–12 讲)扩展模型和任务:循环神经网络、注意力与 Transformer、目标检测与图像分割、视频理解、大规模分布式训练和自监督学习。
第 3 阶段(第 13–18 讲)讲前沿方向:生成模型(2 讲)、3D 视觉、视觉语言模型和机器人学习。最后一讲由李飞飞讲以人为本的人工智能。
3 次作业都要求自己实现核心算法。作业 1 用 NumPy 写 k 近邻、softmax 分类器和全连接网络。作业 2 实现批归一化、dropout 和卷积网络,用 PyTorch 训练 CIFAR-10,再写一个 RNN 图像描述模型。作业 3 实现 Transformer 图像描述、自监督学习和去噪扩散模型,并使用 CLIP 和 DINO。学生还要组队做一个项目,提交提案、中期报告和终稿,并参加海报展示。
学完后,学生能从零写出训练流程,能读懂主流视觉论文,并能用 PyTorch 搭建视觉模型。课程讲义(cs231n.github.io)写得清楚,适合配合视频自学。
为什么值得学
很多从业者靠这门课入门深度学习。它的公开讲义和作业被大量课程照搬。
课程信息
- 学校
- 斯坦福(Stanford)
- 课程号
- CS231n
- 讲师
- 李飞飞(Fei-Fei Li)、Justin Johnson、Ehsan Adeli
- 学期
- Spring 2025 (YouTube)
- 平台
- 课程官网
- 费用
- 免费
- 难度
- 中级
- 学时
- 18 讲(2025 版)
- 先修
- 需要 Python、线性代数、微积分和概率基础。
- 材料
- 视频、讲义、幻灯片、作业、代码
- 许可证
- 未注明
课程大纲 · 共 18 节
大纲依据:Spring 2025 课程表(18 讲),与 YouTube 播放列表 18 个视频一一对应(查看原始页面 ↗)
- 1导论Introduction
李飞飞和 Ehsan Adeli 回顾计算机视觉与深度学习的历史,说明课程结构和要求。
- 2用线性分类器做图像分类Image Classification with Linear Classifiers
提出数据驱动的分类思路,讲 k 近邻。引入线性分类器、SVM 损失和 softmax 损失。
- 3正则化与优化Regularization and Optimization
讲正则化的作用。介绍梯度下降、随机梯度下降、动量和 Adam 优化器。
- 4神经网络与反向传播Neural Networks and Backpropagation
从线性模型过渡到多层神经网络。用计算图推导反向传播。
- 5用卷积神经网络做图像分类Image Classification with CNNs
Justin Johnson 讲卷积层、池化层和卷积网络的整体结构。
- 6卷积网络结构CNN Architectures
回顾 AlexNet、VGG、ResNet 一类经典结构。讲批归一化、权重初始化和迁移学习。
- 7循环神经网络Recurrent Neural Networks
讲 RNN 和 LSTM 处理序列数据的方法。以图像描述为例连接视觉与语言。
- 8注意力与 TransformerAttention and Transformers
从注意力机制推到自注意力和 Transformer。介绍视觉 Transformer(ViT)。
- 9目标检测、图像分割与可视化Object Detection, Image Segmentation, Visualizing and Understanding
讲目标检测和语义分割、实例分割的方法。介绍怎样可视化和理解卷积网络学到的特征。
- 10视频理解Video Understanding
客座讲者 Ruohan Gao 讲视频分类、时空建模,以及视觉与声音的多模态学习。
- 11大规模分布式训练Large Scale Distributed Training
讲多 GPU 训练的并行策略和工程取舍,说明怎样训练大模型。
- 12自监督学习Self-Supervised Learning
讲怎样不用人工标注学视觉表示。介绍前置任务、对比学习和掩码重建方法。
- 13生成模型 1Generative Models 1
讲生成模型的分类。介绍自回归模型和变分自编码器(VAE)。
- 14生成模型 2Generative Models 2
讲生成对抗网络(GAN)和扩散模型。
- 153D 视觉3D Vision
客座讲者吴佳俊讲 3D 形状的表示方法,以及从图像重建 3D 结构。
- 16视觉与语言Vision and Language
客座讲者 Ranjay Krishna 讲 CLIP 一类视觉语言模型和多模态大模型。
- 17机器人学习Robot Learning
客座讲者 Yunzhu Li 讲怎样把视觉和学习方法用于机器人的感知与控制。
- 18以人为本的人工智能Human-Centered AI
李飞飞讨论 AI 对人和社会的影响,以及以人为本的研究方向。
斯坦福的其他AI课
- 机器学习 · Machine Learning
- 深度学习 · Deep Learning
- 基于深度学习的自然语言处理 · Natural Language Processing with Deep Learning
- 图机器学习 · Machine Learning with Graphs
- 人工智能:原理与技术 · Artificial Intelligence: Principles and Techniques
- 强化学习 · Reinforcement Learning