选课类别:计划内与自由选修 | 教学类型:理论实验课 |
课程类别:本科计划内课程 | 开课单位:计算机科学与技术系 |
课程层次:专业选修 | 学分:3.0 |
课程结合智能计算理论介绍、智能计算系统优化实践和智能计算实战,旨在为学生提供对最新基于深度神经网络的各类智能计算算法和系统进行设计与优化所需的必备知识。主要包括神经网络基础理论,深度学习基础理论,深度学习在各类任务(如自然语言处理、计算机视觉、电子游戏)上的应用与优化、分布式并行训练设计与优化、大模型训练/推理系统设计与优化等内容。
出分了,给分疑似有点太好了,作为大四老东西有点惶恐了。
先说课程内容:
一门很不错的MLsys入门课,涵盖了
神经网络基础与简单应用
深度学习编程框架:其实主要是pytorch,也有一定的选做实验练习,不占分)。不过这方面其实网上有很多更好的介绍,比如cs231n,李宏毅,umich的等等
GPU硬件特点:甚至包括flash-attention这样非常棒的工作介绍(v2,v3也有所介绍)
分布式训练入门:先介绍了nccl通信库,各种通信原语,这也是目前最常用的通信backend了。然后是各种单机多机的并行策略,包括3D并行(DP,PP,TP),FSDP,Zero,序列并行,Moe(包括EP),还有目前的自动化搜索比如Alpha的介绍。也有老师自己的工作介绍
一些分布式训练框架:Megatron,DeepSpeed等(当然这是我希望介绍了,可惜没怎么介绍)
微调:LoRA,RLHF等,这部分可能跟我方向没那么相关,没怎么听()
推理相关的工作:,KVcache,如pagedattention这种工作;PD分离,比如DistServe这样OSDI最新的工作;speculative decoding);可惜severless上的介绍比较少
网络架构:一些网络拓扑结构,HPC,TopoOpt等等,也没细听()
从课程内容来讲无疑是十分丰富的,作为mlsys的入门相当不错,毕竟这是一个新兴的方向,能够参考的资料大多数直接出自最新的paper,成体系的开源课程还是少之又少。感觉可能老师以前是做网络相关(?),更多比较详细的内容主要集中在了分布式训练上。
课程基本信息:
没有平时作业,期末有一个组队大作业,要做presentation和写report,各占百分之50,也没有点名,并且老师公开了瀚海的录课回放,即使平时泡实验室没太有时间上课,也能通过回放学习一下。从我看回放的情况来看,老师讲的还是很好的。也许是上课昏昏欲睡,回放津津有味(樂)
平时有一些lab exercise,属于想做就做,可以不做,不占分,但有的还是能起到一些实践的作用。
大四老东西想水学分,入门mlsys,无疑是相当好的选择。但完全主观的大作业打分机制也许没有gpa-free的低年级同学还是要权衡一下。
这学期我们组三人组队,但本身都是做mlsys的老哥()
其他:
听说南大的mlsys是手撸一个llama的各个模块,然后自己train一下(不保真?),也许我会希望这门课花点时间讲一些开源分布式训练框架,比如megatron,deepspeed,torchtitan等等,毕竟真上手做的时候,有些史一样的框架还是让人有些摸不着头脑,再有比如FSDP,torchtitan声称支持FSDP2,但现有的megatron,deepspeed也许并没有做FSDP很好的适配?有些上手的takeway能在课程或者lab中涵盖就更好了。但是如果真要做分布式相关的联系,也许训练设备才是bottleneck()
推理侧kvcahe,pd分离这些希望能介绍更多sota的工作。
还是很感激老师这学期的付出,和神一样的给分
2025.1.24 出分更新
谁说这主观给分不好啊,这主观给分可太好了
大作业实验有加分,需要GPU的话首推恒源云https://gpushare.com/,性价比之王
另外,半年之后,MLsys已经从冉冉升起的领域逐步变卷了
大作业50%,报告50%
新老师,期末100%主观分
要是后续能公布细致的评分细则,让我们大概知道做到什么层次能到什么分数是最好的,不然主观评分过大时建议大三同学慎重选择,成绩容易低出想象。
大四不挂就行,选着大概能学东西,MLsys/AI-infra是个冉冉升起的领域,挺好的。