CS自学指南-深度学习
Coursera: Deep Learning
课程简介
- 所属大学:Stanford
- 先修要求:机器学习基础 + Python
- 编程语言:Python
吴恩达在 Coursera 开设的另一门网红课程,学习者无数,堪称圣经级的深度学习入门课。深入浅出的讲解,眼花缭乱的 Project。从最基础的神经网络,到 CNN, RNN,再到最近大热的 Transformer。学完这门课,你将初步掌握深度学习领域必备的知识和技能,并且可以在 Kaggle 中参加自己感兴趣的比赛,在实践中锻炼自己。
课程资源
- 课程网站:https://www.coursera.org/specializations/deep-learning
- 课程视频:https://www.coursera.org/specializations/deep-learning,B站有搬运
- 课程教材:无
- 课程作业:https://www.coursera.org/specializations/deep-learning
国立台湾大学:李宏毅机器学习
课程简介
- 所属大学:國立台灣大學
- 先修要求:熟练掌握 Python
- 编程语言:Python
李宏毅老师是国立台湾大学的教授,其风趣幽默的授课风格深受大家喜爱,并且尤其喜欢在 PPT 中插入宝可梦等动漫元素,是个非常可爱的老师。
这门课挂着机器学习的牌子,但其课程内容之广实在令人咋舌,其作业一共包含 15 个 lab,分别是 Regression、Classification、CNN、Self-Attention、Transformer、GAN、BERT、Anomaly Detection、Explainable AI、Attack、Adaptation、 RL、Compression、Life-Long Learning 以及 Meta Learning。可谓是包罗万象,能让学生对于深度学习的绝大多数领域都有一定了解,从而可以进一步选择想要深入的方向进行学习。
大家也大可不必担心作业的难度,因为所有作业都会提供助教的示例代码,帮你完成数据处理、模型搭建等,你只需要在其基础上进行适量的修改即可。这也是一个学习别人优质代码的极好机会,大家需要水课程大作业的话,这里也是一个不错的资料来源。
课程资源
- 课程网站:https://speech.ee.ntu.edu.tw/~hylee/ml/2022-spring.php
- 课程视频:https://speech.ee.ntu.edu.tw/~hylee/ml/2022-spring.php,每节课的链接参见课程网站
- 课程教材:无
- 课程作业:https://speech.ee.ntu.edu.tw/~hylee/ml/2022-spring.php,15 个 lab,几乎覆盖了主流深度学习的所有领域
CS231n: CNN for Visual Recognition
课程简介
- 所属大学:Stanford
- 先修要求:机器学习基础
- 编程语言:Python
Stanford 的 CV 入门课,由计算机领域的巨佬李飞飞院士领衔教授(CV 领域划时代的著名数据集 ImageNet 的研究团队),但其内容相对基础且友好,如果上过 CS230 的话可以直接上手 Project 作为练习。
课程资源
- 课程网站:http://cs231n.stanford.edu/
- 课程视频:https://www.bilibili.com/video/BV1nJ411z7fe
- 课程教材:无
- 课程作业:http://cs231n.stanford.edu/schedule.html,3个编程作业
CS224n: Natural Language Processing
课程简介
- 所属大学:Stanford
- 先修要求:深度学习基础 + Python
- 编程语言:Python
Stanford 的 NLP 入门课程,由自然语言处理领域的巨佬 Chris Manning 领衔教授(word2vec 算法的开创者)。内容覆盖了词向量、RNN、LSTM、Seq2Seq 模型、机器翻译、注意力机制、Transformer 等等 NLP 领域的核心知识点。
5 个编程作业难度循序渐进,分别是词向量、word2vec 算法、Dependency parsing、机器翻译以及 Transformer 的 fine-tune。
最终的大作业是在 Stanford 著名的 SQuAD 数据集上训练 QA 模型,有学生的大作业甚至直接发表了顶会论文。
课程资源
- 课程网站:http://web.stanford.edu/class/cs224n/index.html
- 课程视频:B 站搜索 CS224n
- 课程教材:无
- 课程作业:http://web.stanford.edu/class/cs224n/index.html,5 个编程作业 + 1 个 Final Project
CS224w: Machine Learning with Graphs
课程简介
- 所属大学:Stanford
- 先修要求:深度学习基础 + Python
- 编程语言:Python, LaTeX
Stanford 的图神经网络入门课,这门课我没有上过,但众多做 GNN 的朋友都向我力荐过这门课,想必 Stanford 的课质量还是一如既往地有保证的。另外就是这门课的授课老师非常年轻帅气:)
课程资源
- 课程网站:http://web.stanford.edu/class/cs224w/
- 课程视频:https://www.youtube.com/watch?v=JAB_plj2rbA
- 课程教材:无
- 课程作业:http://web.stanford.edu/class/cs224w/,6 个编程作业,3 个 LaTeX 书面作业
CS285: Deep Reinforcement Learning
课程简介
- 所属大学:UC Berkeley
- 先修要求:CS188, CS189
- 编程语言:Python
CS285 这一课程现由 Sergey Levine 教授讲授,课程内容覆盖了深度强化学习领域的各方面内容,适合有一定机器学习基础的同学进行学习,具体要求包括了解马尔可夫决策过程(MDP)等。整门课程中含有较多的公式,上课前需要有一定的心理准备。此外,教授会根据每年最新的研究进展更新课程内容以及作业,课程中能感受到教授尝试将深度强化学习领域的所有基础知识以及最近的发展在短短的数节课中进行传达。
有关课程内容获取,22Fall 的授课方式为课前观看提前录制的视频,课上主要为 Q&A 环节,教授选择部分或者所有视频内的知识进行讲解同时回答学生现场提出的问题,因此所提供的课程视频链接实际上是已经包含了所有内容。课程作业则由5个编程作业组成,每一次作业主要为复现经典模型以及进行模型间的对比,偶尔也包含一些对最近提出的模型的复现,最后递交一份报告。考虑到作业本身已经提供了框架,且都是根据 hint 进行代码填空,因此作业难度并不大。
总的来说,该课程适合新手入门深度强化学习。虽然学到后面越来越感觉到难,但整门课下来个人感觉还是收获颇丰。
(另外 Levine 教授人真的很 nice)