CMU 10-414/714: Deep Learning Systems
课程简介
- 所属大学:CMU
- 先修要求:系统入门(eg.15-213)、深度学习入门、基本的数学知识
- 编程语言:Python, C++
- 课程难度:🌟🌟🌟
- 预计学时:100小时
PyTorch、TensorFlow 等框架支撑了深度学习的广泛应用。本课程适合希望了解或开发深度学习框架内部实现的学习者。
课程的内容大纲覆盖了深度学习系统“全栈”的知识体系。从现代深度学习系统框架的顶层设计,到自微分算法的原理和实现,再到底层硬件加速和实际生产部署。为了更好地掌握理论知识,学生将会在5个课程作业中从头开始设计和实现一个完整的深度学习库 Needle,使其能对计算图进行自动微分,能在 GPU 上实现硬件加速,并且支持各类损失函数、数据加载器和优化器。在此基础上,学生将实现几类常见的神经网络,包括 CNN,RNN,LSTM,Transformer 等等。
即使你是深度学习领域的小白也不必过于担心,课程将会循序渐进地从简单分类问题和反向传播优化讲起,一些相对复杂的神经网络都会有配套的 jupyter notebook 详细地描述实现细节。如果你有一定的相关基础知识,那么在学习完自微分部分的内容之后便可以直接上手课程作业,难度虽然不大但相信一定会给你带来新的理解。
这门课两位授课教师 Zico Kolter 和 Tianqi Chen 将所有课程内容都发布了对应的开源版本,但在线评测账号和课程论坛的注册时间已经结束,只剩下框架代码里的本地测试供大家调试代码。或许可以期待明年秋季学期的课程还会发布相应的在线版本供大家学习。
课程资源
- 课程网站:https://dlsyscourse.org
- 课程视频:https://www.youtube.com/watch?v=qbJqOFMyIwg
- 课程作业:https://dlsyscourse.org/assignments/
资源汇总
补充资源与作业实现:PKUFlyingPig/CMU10-714 - GitHub。
@Crazy-Ryan 在学习这门课(24 Fall)过程中的作业实现汇总在 Crazy-Ryan/CMU-10-714 - GitHub 中。