了解/从事机器学习/深度学习系统相关的研究需要什么样的知识结构？
ML/DL System 是一个非常宏大的概念，作为一个相对比较新的研究领域，可做的方向也很多。 如果要了解其所需的知识结构，就需要先看看ML/DL System 主要涉及哪些方面的研究。 首先，从数据准备开始，数据增广等等对 ML/DL 有帮助的数据集处理方式是需要了解的。这里之前也有不少研究，近几年关注比较少，不太了解了。这里主要涉及数学知识。 接下来，从 ML 的特征工程来说，自动特征工程作为 AutoML 的子问题之一，也是一个做机器学习系统非常值得研究的问题。但这一问题由于很难通过通用系统的方式来解决，因此并不是现在的研究热点。 再往下走，ML/DL 的模型训练，这里就比较复杂了。首先就是框架相关的知识。之前 @张怀政 推荐了 AI-Sys Spring 2019，那门课确实很全面，但是单就框架相关的端到端的构建和系统的学习，我个人更推荐我的偶像陈天奇学长在华盛顿大学的课程 CSE 599W，这门课可以带你从最下面的 GPU，到最上层的框架前端，都学习一遍。理论上上完课后，你应该可以自己利用 TVM/NNVM 构建一个简单的深度学习框架（当然最麻烦的一些实现都在 TVM 里写好了）。这里需要的知识可能相对多一些，从数学上的微积分方面的知识，再到 GPU 相关的知识，再到操作系统，编译原理，都会有所涉及。这里有一个细微的研究分支，是中间表示（IR）的研究。TVM Relay IR，TensorFlow XLA，DLVM，MLIR，ONNX 等。IR 的存在是为了提高性能，解耦功能等，同时也是为了方便地进行模型迁移（ONNX）。不同目的下，可能会在不同层次引入 IR。这个会涉及到程序语言理论（贼难）。 到此为止是单机的训练需要了解的，分布式训练是 ML/DL System 逃不开的话题，分布式训练现在有 Parameter Server/Worker，All-Reduce/Ring-Reduce 等不同的模型，同时有数据并行，模型并行，参数同步/异步更新等不同的模式。这里需要了解的，主要是分布式系统的相关知识和实践。分布式训练这里也有不少研究，在 16-18 年也有不少论文。 再往后，模型加速或者模型压缩。模型压缩有许多不同的技术，比如二值化网络，深度压缩等等。这些对数学要求比较高。模型加速的话，还有一个流派是 AutoTVM，不知道放在这里合适不合适，它是从优化算子的角度加速模型。 往下，自动机器学习。自动机器学习根据参与的阶段不同，可以分为自动特征工程（之前介绍过了），自动模型选择，超参数训练，模型结构搜索，自动模型压缩等。自动模型选择，可以参考 auto-sklearn 的实现，就是根据数据自动选择合适的模型，并且优化它的超参数。超参数训练，就是自动训练模型的超参数。模型结构搜索，是自动寻找最优的神经网络模型结构。自动模型选择好像很少看到相关的论文了。超参数训练之前有不少研究是研究搜索算法的，谷歌有一篇 Vizier 是提出了分布式超参数搜索系统的架构，很工程。模型结构搜索是非常前沿的领域，主要是通过机器学习来寻找最优的神经网络结构，这方面是近来的研究热点。这个领域对机器学习，尤其是强化学习迁移学习等等要求比较高（个人不是很了解了）。还有自动模型压缩，这部分论文相对比较少，是想利用自动机器学习的方式来解决模型压缩的问题。类似的工作还有之前提到的AutoTVM，其实都是利用把问题规约成合适的搜索空间内的搜索问题，来解决实际问题。 如果是在大规模集群上去运行，还有一个小的研究分支，分布式训练任务或者自动机器学习任务在大规模集群上的调度问题。GPU 资源的成本是非常高的，如何在达成训练效果的同时，节省 GPU 时间。这个领域是非常 System Track 的研究了，基本不涉及太多 ML/DL 的知识，18-19 也有越来越多这方面的论文发表在系统会议上。这方面需要的知识应该是计算机系统与分布式系统方面的。 除此之外，还有关于 ML/DL 工作流的一些研究，比如如何支持模型的持续集成与持续部署，如何优化整个流程，简化操作等等。这部分研究比较少且独特，很难概括出来。这部分可能比较需要发现美的眼睛。 最后还有一个跟数据库有关的方向，如何设计一个 Domain Specific 数据库，能够支持训练数据集或者模型的存储。比较有名的工作是 MIT DB Group 的 mitdbg/modeldb。这里需要的是数据库相关的知识，以及机器学习，尤其是模型表示相关和存储方面的了解。 ML/DL System 方面比较有名的会议就是 SysML 了，它前段时间发了白皮书，可以看一下。这里只是列出我一时间想到的研究方向，以及各个方向大概需要什么方面的知识，肯定还有很多角度是缺失的，也欢迎各位补充与指正。 PS：当了解了一些这方面的研究后，应该会得出一个结论：陈天奇学长真厉害！！！！