机器之心整理
参与:张倩、蛋酱
从 2016 年起,机器之心每年都会盘点全年的精华教程。去年就有小伙伴留言说要在 2019 年上半年把 2018 年的教程合集「啃下来」。现在都 2020 了,不知道这位朋友啃完没有?要是 flag 没倒,不妨再来一份?
与往年类似,今年的盘点分为入门解惑、优质教材及课程、语言、工具、GitHub 项目、经验分享几大板块。无论你是刚迈入 AI 领域的萌新,还是工作多年的数据分析师、炼丹师、码农,这份合集都能帮到你。
如果这些都学完了还没尽兴,可以跳到文末链接找出往年教程合集。
入门解惑
去年,教育部公布了 35 所新增 AI 本科高校名单,为想学 AI 的同学提供了更多选择。对于这部分刚迈入 AI 领域的萌新,我们提供了一系列完备的学习路线和入门教程:
- 完备的 AI 学习路线,最详细的中英文资源整理
- 不交学费也能成为数据科学家,这里有一条免费学习路径
- 机器学习成才之路:这是一条 GitHub 高赞的学习路径
- 入门机器学习,照这个课程清单按顺序学就对了
- 18 个月自学 AI,2 年写就三万字长文,过来人教你如何掌握这几个 AI 基础概念
- 机器学习必学 10 大算法
- 机器学习基础:相似度和距离度量究竟是什么
- p 值是什么?数据科学家用最简单的方式告诉你
- Distribution is all you need:这里有 12 种做 ML 不可不知的分布
- 计算机视觉入门大全:基础概念、运行原理、应用案例详解
- NLP 技术路线详解:这是从数学到算法的艺术
- 深度强化学习入门难?这份资料手把手教会你
- 数据清洗&预处理入门完整指南
- 不要只关注算法与模型,这里有份产品级深度学习开发指南
- 没人告诉你的大规模部署 AI 高效流程!
- 用纯 NumPy 码一个 RNN、LSTM:这是最好的入门方式了
- 为什么我的 CV 模型不好用?没想到原因竟如此简单……
- 3 天上手,30 天精通!——深度学习 FPGA 加速器设计
- 预训练语言模型关系图 必读论文列表,清华荣誉出品
- 学习 GAN 模型量化评价,先从掌握 FID 开始吧
- 生成式模型入门:训练似然模型的技巧
- 如何入门 CUDA 并行计算?
- 图像配准的前世今生:从人工设计特征到深度学习
当然,在搞定 AI 之前,你必须要先搞定数学:
- 像堆乐高一样:从零开始解释神经网络的数学过程
- 刷脸背后,卷积神经网络的数学原理原来是这样的
- 1900 页数学基础:面向 CS 的线性代数、拓扑、微积分和最优化
- 人工智能中的线性代数:如何理解并更好地应用它
- 新手上路:图文解读助你理解和使用正则表达式
- 不可不知的数据科学入门数学指南
- 数学还能这么学?高中要有这个网站我早就及格了
- 浅显易懂!「高中数学」读懂梯度下降的数学原理
- 高中就开始学的正态分布,原来如此重要
接下来是一些简短而全面的教程,「一文读懂」基本概念:
- 卷积有多少种?一文读懂深度学习中的各种卷积
- 从 ReLU 到 GELU,一文概览神经网络的激活函数
- 关于图算法 & 图分析的基础知识概览
- 图论与图学习(一):图的基本概念
- 图论与图学习(二):图算法
- PageRank、最小生成树:ML 开发者应该了解的五种图算法
- 一文读懂:图卷积在基于骨架的动作识别中的应用
- HyperparameterHunter 3.0:一文教你学会自动化特征工程
相比于文字,图解教程能够帮助你更直观、快速地领会知识的精髓:
- 图解神经机器翻译中的注意力机制
- 图解人工智能,这群大学生做了个有趣的交互项目(中文版)
- 图解 NumPy,这是理解数组最形象的一份教程了
- 完全图解 GPT-2:看完这篇就够了(一)
- 完全图解 GPT-2:看完这篇就够了(二)
- 透过现象看本质,图解支持向量机
- 能「看到」的张量运算:因子图可视化
- BERT 模型超酷炫,上手又太难?请查收这份 BERT 快速入门指南!
- 包学包会,这些动图和代码让你一次读懂「自注意力」
- 手把手教你将矩阵&概率画成图
- 手把手教你将矩阵画成张量网络图
- 看得见的高斯过程:这是一份直观的入门解读
优质教材、课程
如果你去购物网站、在线课程网站直接搜索,会发现与「人工智能」相关的图书资料有上万种,课程也有数百种。在学习资料异常丰富的今天,挑出优质的教材、课程也成了一大难题。不过不用担心,在机器之心编辑部和读者的共同努力下,今年的优质参考书、课程都已经筛选好了:
开卷有益
2019 年,周志华等多位老师联合撰写的《演化学习:理论与算法进展》问世;李航老师的《统计学习方法》第二版上线;李沐老师的《动手学深度学习》有了 TF 2.0、PyTorch 版本;贝叶斯之父 Judea Pearl 的《The Book of Why》也有了中文版本……要获取这些优质教材的新动向,关注机器之心就够了:
- 十四年的 NYU 教学精华,开放书《机器学习基础》第二版可以下载啦
- 李航《统计学习方法》第二版上线,6 年耕耘增加无监督学习(新书赠送)
- 学它!李航《统计学习方法》课件,清华大学深圳研究院教授制作
- 实战入门深度学习,李沐中文新书赠送
- 全新版本,李沐《动手学深度学习》TF2.0 版本来了
- PyTorch 版《动手学深度学习》开源了,最美 DL 书遇上最赞 DL 框架
- 开放下载!复旦大学邱锡鹏教授发布教科书《神经网络与深度学习》
- 「机器学习基础与趋势」系列丛书最新成员:140 页《深度强化学习入门》发布
- 南大周志华、俞扬、钱超最新力作:《演化学习:理论与算法进展》正式上线
- 线性代数与数据学习:MIT 教授 Gilbert Strang 帮你打下坚实的数学基础
- 沉浸式学习线性代数!这里有一本全交互的线性代数书
- 一图胜千言,这本交互式线代教科书让你分分钟理解复杂概念,佐治亚理工出品
- 一场因果革命,Judea Pearl 最新力作《为什么》中文版发布(赠书)
- 为机器学习插上因果推理的翅膀:这是一本系统的因果推理开源书
- 500 页开放书搞定概率图建模,图灵奖得主 Judea Pearl 推荐
- 集 20 年之大成,这是一本开源的算法教科书
- 从六大概念总结吴恩达新书:做好工程实践应该这样走
- 从算法到 HPC:最全优秀编程书籍列表
- 如何用 Julia 做数据统计?这里有一本全面教材(附代码图示)
- 系统探讨「跨语言词嵌入」,这是一本刚出炉新书
站在巨人的肩膀上
除了以上经典教材,还有些优质课程可以参考。这些课程来自麻省理工学院、斯坦福大学、多伦多大学、哥伦比亚大学等多所国内外知名高校,授课者包括 Bengio、吴恩达、李宏毅等名师:
- 最强学习资料:国内多所重点大学课程攻略
- 最全中科大计算机学院课程资源(含答案)
- 做个爱学习的孩子!收藏 2019 知名机器学习暑期学校大列表
- 选机器学习课程怕踩雷?有人帮你选出了 top 5 优质课
- 硬核暑假要学习:Imperial College London 开放 ML 暑期课程视频
- 中文课程!台大李宏毅机器学习公开课 2019 版上线
- 李宏毅机器学习完整笔记发布,AI 界「最热视频博主」中文课程笔记全开源
- MIT 2019 深度学习课程开课,第一课视频&PPT 已放出
- 14 周无监督学习课程,UC 伯克利出品,含课件、视频
- 吴恩达深度学习课最新补充教程:交互式 demo 助你轻松理解神经网络
- Bengio、Sutton 的深度学习&强化学习暑期班又来了,2019 视频已放出
- 2019 年最佳计算机视觉课程推荐
- 多伦多大学出品:Coursera 宣布首个自动驾驶专项课程
- 时隔两年,斯坦福 NLP 标准公开课 CS224N 将再次开放视频
- 学习时间!2019 斯坦福 CS224n、CMU NLP 公开课视频开放啦
- 只知道 CS224N?斯坦福最新推出 NLU 公开课 CS224U
- 社科 NLP 课程来了:斯坦福开年公开课主讲 NLP 和社交网络应用
- 想快速学会数据可视化?这里有一门 4 小时的 Kaggle 微课程
- 如何自学 MIT 的应用数学课程?这里有个参照给你
温故而知新
教程、课程看完一遍很容易忘记,这时候就需要笔记来帮忙了。在过去的一年中,我们发现了以下几份优秀的笔记项目,可以作为学习的辅助材料。
- 80 页笔记看遍机器学习基本概念、算法、模型,帮新手少走弯路
- 百页课程笔记,统计物理视角下的深度学习
- 周志华西瓜书详细公式推导,Datawhale 开源 pumpkin-book 项目
- 一日千星的「机器学习系统设计指南」,这个英伟达小姐姐的项目火了
语言
去年 11 月,地产大佬潘石屹突然宣布开始学 Python,众读者纷纷惊呼:居然不是广告?从这串长长的列表来看,你大概能够体会到 Python 有多火了,毕竟它也是最有益于保持头发浓密的语言之一。在这部分,我们列举了 Python 的官方文档、使用技巧、实用工具包等有用信息(谁帮忙 @ 一下潘总?)。
- Python 用不好?看官方中文文档啦
- Python 从入门到精通:一个月就够了!
- 微软出品,文科生也能学得懂的 Python 免费入门视频
- 编程大神进阶之路:Python 技巧小贴士
- 30 段极简 Python 代码:这些小技巧你都 Get 了么
- 学 Python,从列表推导到 zip() 函数,这五种技巧应知应会
- 迭代列表不要 For 循环,这是 Python 列表推导式最基本的概念
- 7 个 Python 特殊技巧,助力你的数据分析工作之路
- Python 3.8 即将到来,这是你需要关注的几大新特性
- 详解 Python 3.8 的海象算子:大幅提高程序执行效率
- Python 初学者常犯的 5 个错误,布尔型竟是整型的子类
- Python 的高级特征你知多少?来对比看看
- 新手如何发布第一个 Python 项目开源包?这里有一份详细指南
- 如何从 C 转 Python:改变你的思维方式
- 用半励志的方式告诉你,怎么学习 Python 开发
- 平均 3293 颗星的 34 个年度开源 Python 库
- 这里有 8 个流行的 Python 可视化工具包,你喜欢哪个?
- 一文读懂 Python 装饰器,这是一个会打扮的装饰器
- 哪种 Python IDE 最适合你?这里有一份优缺点列表
- 人生苦短,我用 PyCharm
- Python 新工具:用三行代码提取 PDF 表格数据
- 想成为高效数据科学家?不会 Pandas 怎么行
- DeBug Python 代码全靠 print 函数?换用这个一天 2K Star 的工具吧
- 如何将 Numpy 加速 700 倍?用 CuPy 呀
- 用 Python 登录主流网站,我们的数据爬取少不了它
- Windows 文件名非用反斜杠?Python 小技巧帮你解决这个麻烦
- 如何在 Windows 上做 Python 开发?微软出了官方教程
- 在 Win 上做 Python 开发?当然是用官方的 MS Terminal 和 VS Code 了
- 40 行 Python 代码,实现卷积特征可视化
- Heartrate:如追综心跳般实时动态可视化监测 Python 程序运行
- 四种高性能数据类型,Python collections 助你优化代码、简洁任务
- PySpark 源码解析,教你用 Python 调用高效 Scala 接口,搞定大规模数据分析
工具及技巧
古人说过,「工欲善其事,必先利其器」。工具的好坏及使用技巧与我们的学习效果息息相关。要列举 AI 学习中用到的重要工具,首先要从深度学习框架说起。
深度学习框架
2019 年,ML 框架之争中只剩两个实力玩家:PyTorch 和 TensorFlow。研究者大批涌向 PyTorch,而业界的首选仍然是 TensorFlow。因此,这部分着重筛选出这两个框架的相关教程。
- TensorFlow 与 PyTorch 之争,哪个框架最适合深度学习
- PyTorch 称霸学界,TensorFlow 固守业界,ML 框架之争将走向何方?
- 一行代码切换 TensorFlow 与 PyTorch,模型训练也能用俩框架
- Texar-PyTorch:在 PyTorch 中集成 TensorFlow 的最佳特性
1. TensorFlow
- 英文教程太难啃?这里有一份 TensorFlow2.0 中文教程(持续更新中)
- TensorFlow 2.0 中文开源书项目:日赞 700,登上 GitHub 热榜
- 请快点粘贴复制,这是一份好用的 TensorFlow 代码集
- 你真的会正确地调试 TensorFlow 代码吗?
- Tensorflow Lite 人体姿势跟踪功能上线:基于 PosNet 的实时人体姿态估计
- 如何在 TensorFlow 2.0 中构建强化学习智能体
- TensorFlow 2.0 中的 tf.Keras 和 Keras 有何区别?为什么以后一定要用 tf.keras?
2.PyTorch
- 万字综述,核心开发者全面解读 PyTorch 内部机制
- 60 分钟入门 PyTorch,官方教程手把手教你训练第一个深度学习模型
- 点赞收藏:PyTorch 常用代码段整理合集
- LeCun 力荐,PyTorch 官方权威教程书来了,意外的通俗易懂
- PyTorch 进阶之路(一):张量与梯度
- PyTorch 进阶之路(二):如何实现线性回归
- PyTorch 进阶之路(三):使用 logistic 回归实现图像分类
- PyTorch 进阶之路(四):在 GPU 上训练深度神经网络
- PyTorch 最佳实践,怎样才能写出一手风格优美的代码
- 分布式入门,怎样用 PyTorch 实现多 GPU 分布式训练
- 五天入门深度学习,这里有一份 PyTorch 实战课程
- 三四行代码打造元学习核心,PyTorch 元学习库 L2L 现已开源
- 超原版速度 110 倍,针对 PyTorch 的 CPU 到 GPU 张量迁移工具开源
- 基于 PyTorch 的「Keras」:除了核心逻辑通通都封装
- 基于 PyTorch 的 CV 模型框架,北大学生出品 TorchCV
其他工具
1. 神奇的编辑器
- 世界上最好的编辑器 Vim:1700 多页数学笔记是如何实时完成的
- 最好用的文字与公式编辑器,这套数学笔记神器送给你
- 免费数学神器 Mathpix 发布移动版,一起来写更快的公式
- 公式免费转 LaTex 代码,截图、转换一气呵成,每月 1000 次全免费
- 写下 LaTeX 代码就要看结果?这款编辑器让你「所见即所得」
- 向 Excel 说再见,神级编辑器统一表格与 Python
2. 代码补全利器
- DL 时代的代码补全利器,北大出品,效果远超语言模型
- 你是一个成熟的 AI 了,应该自己学会补全 Python 代码了
- AI 加持,Kite 增加智能代码补全功能:减少一半操作,实时补全
3.Git
- 如何优雅地向别人介绍高端大气上档次的 Git
- 你可能不太会用的 10 个 Git 命令
- 走在前沿的弄潮儿,怎能不会 Git 的那些奇技淫巧
- 根据 Git 推算程序员大佬作息:同样是熬夜,为什么他发量那么多?
4. 笔记本
- 是时候联盟 Jupyter 与 PyCharm 了,Jupytext 就是你需要的
- 只有想不到,「99」种扩展 Jupyter 功能的好方法
- Jupyter Notebook 界面也可以如此炫酷?有人把 Notebook 玩出了新花样
- 增强 Jupyter Notebook 的功能,这里有四个妙招
- Netflix 开源 Polynote:对标 Jupyter,一个笔记本运行多种语言
5. 其他
- 命令行忘性大?这个开源备忘工具一次解决你的所有烦恼
- 50 种常用的 matplotlib 可视化,再也不用担心模型背着我乱跑了
- 新模型学到头秃?gobbli 统一模型库帮你快速上手文本分类,内置 BERT、fastText 等
- 集成图网络模型实现、基准测试,清华推出图表示学习工具包
- 强化学习、联邦学习、图神经网络,飞桨全新工具组件详解
- 更改形状和背景色、自定义风格、颜色流动…这款词云工具都能做到
技巧
这里还有一些小技巧,可以帮助你解决一些「令人头秃」的问题:
- 模型秒变 API 只需一行代码,支持 TensorFlow 等框架
- 图像转换 3D 模型只需 5 行代码,英伟达推出 3D 深度学习工具 Kaolin
- 如何让计算机工作环境更便捷?几行简单的命令即可
- GitHub 最热!码代码不得不知的所有定律法则
- 数据科学家易犯的十大编码错误,你中招了吗?
- 5 种高效利用 value-counts 函数的方法,一键提升数据挖掘姿势水平
- 数据处理遇到麻烦不要慌,5 个优雅的 Numpy 函数助你走出困境
- 内存不足、钱包不鼓怎么办?三种技巧助你摆脱内存使用困境
- 26 秒单 GPU 训练 CIFAR10,Jeff Dean 也点赞的深度学习优化技巧
- 还在为数据清洗抓狂?这里有一个简单实用的清洗代码集
GitHub 年度精选
作为全球最大的同性交友网站,GitHub 上几乎能找到你想要的一切。「我在 GitHub 上北大,他在 Pornhub 考研究生」这句话不是说说而已(忽略后半句):
- 这是一份专为程序员编写的英语学习指南
- Github 近 5 万赞的计算机专业课程,从小白到大牛的学习之路
- GitHub 上 Star 量最高的 5 个机器学习项目
- GitHub 不为人知的小秘密…让你的工作更高效
同时,GitHub 上还有很多神奇项目,让我们流连忘返,唱、跳、Rap、篮球,应有尽有:
- 我这个人不懂什么 CPU,于是我用代码模拟出了一个
- 框一下就能从视频隐身,这是现实版的「隐身衣」?
- 在浏览器训练个剪刀石头布探测器,你的小电脑也可以
- 漫画汉化组福音:深度学习工具一键抠图
- 你跳宅舞的样子很专业:不,这都是 AI 合成的结果
- 用自己的风格教 AI 说话,语言生成模型可以这样学
- 破解神经网络、攻击 GPU,AI 黑客教程来了,已登 GitHub 热榜
- 老婆问「我今天穿什么合适」?让 AI 来帮你想答案吧
- Github 中文项目排行榜,你永远想不到开发者都用它干了什么
- 只需单击三次,让中文 GPT-2 为你生成定制故事
- 决战春运之巅,我们用这个项目抢到了火车票
- 真工程师:20 块钱做了张「名片」,可以跑 Linux 和 Python
- 3D 模型学会了「唱、跳、Rap、篮球」,GitHub 网友也沉迷「鸡你太美」
- 使用 Python 和 Mask R-CNN 自动寻找停车位,这是什么神操作?
- 用霍夫变换&SCNN 码一个车道追踪器
- 惊为天人,NumPy 手写全部主流机器学习模型,代码超 3 万行
- 让大卫雕塑跳舞、蒙娜丽莎说话,英伟达视频合成有如此多「*操作」
- 大小仅 1MB,超轻量级通用人脸检测模型登上 GitHub 趋势榜
- 让二次元妹子动起来,用一张图生成动态虚拟主播
一个靠谱的数据集会让模型训练工作事半功倍,这一年里,我们分享过这些优质 GitHub 数据集:
- 情人节:一本正经地为单身狗推荐这个 158 万张图像的鉴黄数据集
- DeepFashion2 数据集:87.3 万对买家秀-卖家秀图像 海量标注
- 神经网络也能解数学题,DeepMind 发布千万数学题海数据集
- 280 万分割掩码,谷歌 Open Images 数据集再更新
- 找不到合适的数据?这里有 281 个计算机视觉数据集任你选
- 打击换脸技术滥用,谷歌发布大型数据集对抗 deepfake
- 图神经网络的 ImageNet?斯坦福大学等开源百万量级 OGB 基准测试数据集
- 20 个安全可靠的免费数据源,各领域数据任你挑
- 开放的一天,吴恩达、谷歌、Facebook 纷纷开源数据集
经验分享,「深度好文」
最后,我们总结了一系列经验分享,涵盖读博、面试、职场经验等多个方面。低头赶路的时候,也要抬头看看远方。
读博那点事儿
- 博士生的 deadline 血泪史,这是一份来自 Nature 的避坑指南
- 守住发际线:南大蒋炎岩谈读博那些事儿
- 成为数据科学家,到底需要怎样的学历?
- 读博一时爽,不听这些建议会一直爽……
- 毕业论文无从下手?一文帮你理清头绪
- Science「劝退文」:读博压力山大,是时候退学了
- 读博熬不住了,拿个硕士学位投身业界如何?看过来人怎么说
备战春招
- 准备好春招了么?上科大小哥的面试题与复习资料祝你寒假无忧
- 春招已近,这份 GitHub 万星的 ML 算法面试大全请收下
- 春招苦短,我用百道 Python 面试题备战
- 技术面试中,当面试官「套路」你时,怎么「反套路」回去?
- 如何把薪资谈高一倍?请看大厂 offer 拿到手软的 ML 大神自述
- 2019 高考编程卷:谷歌面试编程题及解题技巧(MIT 版)
- 准备程序员面试?你需要了解这 14 种编程面试模式
- 备战秋招:国内大厂技术面试指南,GitHub 六千星
- 百道 Python 面试题实现,搞定 Python 编程就靠它
职业生涯回顾与行业展望
- 陈天奇:深度学习编译技术的现状和未来
- 数据科学岗位将在未来 5 年内重新洗牌,你准备好转型了吗?
- 微软沈向洋自述:在实现职业目标的道路上,我得到了七个教训
- 在 12 家科技创业公司工作后,这是我的 8 条经验
- 这是一篇关于如何成为一名 AI 算法工程师的长文
- 谷歌高级研究员 Nature 发文:避开机器学习三大「坑」
- 香侬科技李纪为:初入 NLP 领域的一些小建议
- 我从资深软件工程师学到的避坑大法
- 五个给机器学习和数据科学入门者的学习建议
- 独立研究中顶会 Spotlight,从读博就业无门到一举成名,这位小哥的经验分享火了
码农的自我修养
- 高级码农反思录:我当菜鸟时不懂的七件事
- 谷歌软件工程师分享编程经验:有效的流程很关键
- 你已经是一个成熟的码农了,这些思维习惯你要有
- 经验之谈:代码该怎样写才能干净整洁(36 页)
- 如何把自己包装成程序员大佬?这里有一份「装 X 指南」
- 16 岁成为全栈开发者:我从开发游戏到写加密货币投资机器人的心路历程
- 脱发、秃头防不胜防?这里有一份给码农的减压指南
参赛、参会经验贴
- 年轻人的第一块金牌:我是如何成为 Kaggle 全网第一的
- 半年 5 战 5 金:Kaggle 史上最快 GrandMaster 是如何炼成的
- 7 年斩获 15 金,最高全球第 8:Kaggle Grandmaster 分享竞赛经验
- 想在 Kaggle 中脱颖而出?先听听这位 GrandMaster 怎么说
- Kaggle 首战斩获第三,看深度学习菜鸟团队如何一鸣惊人
- 想快速学会数据可视化?这里有一门 4 小时的 Kaggle 微课程
- 仅需 10 分钟:开启你的机器学习之路
- 除了 Kaggle,这里还有一些高质量的数据科学竞赛平台
- 如何在 9000 多人的 NeurIPS 会场优雅地展示 Poster
- 数千人顶会的干货,ICML、CVPR2019 演讲视频资源在此
往年教程盘点
- 2018:新年大礼包:机器之心 2018 高分教程合集
- 2017:灵魂追问 | 教程那么多,你……看完了吗?
- 2016:人工智能从入门到进阶,机器之心高分技术文章全集
过去几年的干货都在这里了,flag 是不是也该立起来了?
明年想上墙的朋友欢迎留言。