Skip to content

01 机器学习编译概述

参考资料


机器学习编译及目标

机器学习部署问题:开发和部署之间的GAP(硬件、操作系统、容器、库等)

机器学习编译:将模型开发形态转化为部署形态的过程

../_images/dev-deploy-form.png

机器学习编译目标:

  • 集成和最小化依赖
  • 利用硬件自身特性加速
  • 各种形式的优化

机器学习“编译”是相对于传统编译的一个比喻,不一定涉及代码生成

为什么学习机器学习编译

  • 提供机器学习部署的解决方案
  • 深入理解机器学习框架
  • 构建针对新硬件的软件栈
  • 了解机器学习模型是怎么跑起来的

关键元素:张量函数和抽象

  • 张量和张量函数

../_images/mlc-elem-transform.png

  • 抽象和实现:更细化的抽象是更高级的抽象的实现

抽象和实现可能是所有计算机系统中最重要的关键字。抽象指定“做什么”,实现提供“如何”做。没有具体的界限。

大多数机器学习编译是在做张量函数之间的变换。

课程主要包括计算图、张量程序、算子库、硬件指令四个层面的抽象。


Last update: July 15, 2022