开发者学堂课程【PAL 平台学习路线:机器学习入门到应用:PAI:一站式云原生 AI 平台】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/855/detail/14227
PAI:一站式云原生 AI 平台
内容介绍:
一、建模(DSW)
二、训练(DLC)
三、预测(EAS 在线预测)
四、PAI SDK 公测
去年的九月份云栖大会发布了一站式云原生AI平台,经过一年的建设,在PAI上已经建立了一整套。它包含了各类图像、视频、语音等,在建模的场景中提供了很多形态,包括 studio,它是通过许多可视化的方式进行建模;DSW通过交互化的方式进行建模,在很多的训练平台陆续上线。一有了模型,就会有很多的在线预测,将模型放在在线端,就可以提供真正的业务服务。PAI的目的是为了更好地服务整个云上的 AI 客户,阿里云内部有各种积极学习的场景。在云上解决真正的业务问题。今年也结合整个云上技术的变化,包含云原生,进行了更多的升级和改造。
三款最重要的 AI 工具。
一、建模(DSW)
首先是建模 DSW2.0发布
2.02的核心是使用了云原生的技术,彻底的容器化升级这款产品。
跟以前不同的是,它以容器化的方式很快拉起 DSW instance,同时也支持更多的企业级别的 instance 使用。
(1)简单易用
首先,可以简单地理解为开箱即用。
第二,使主流深度学习的基本框架,集成了 PAI 优化过的 TensorFlow 的框架放到整个 DSW 中使用,又集合了 PAI很多核心能力,比如自动学习 PAI-AutoML;在整个视频方面组建的能力 PAI-easyvision;也带了许多流式训练的场景,PAI-Alink、PAI 的在线服务 PAI-EAS。
(2)灵活开放
为所有的 AI 开发者开通了搜度权限,相当于在 DSW instance 做各种各样的安装,就可以兼容各种的社区插件,大大提高其灵活性。
(3)多 AI 编程模式
除了原有的 JupyterLab 模式。还集成了 WebIDE、Terminal 等方式。
以下是适用于不同场景的开发环境,多种的编程方式。
集成 JupyterLab 交 互式开发。这是现在 AI 主流的开发模式和开发环境。可以内置很多代码,也可以集成原有JupyterLab 很多优势的东西,比如说联通的 get up、联通的get、可视化工具 tensionflow,同时还支持多种数据的读写。同时通过插件的方式,让 DSW 拥有整个在阿里云上各种数据集联通的方案,比如 mass compute 数据方式。
集成 WebIDE。显而易见,AI 开发者,也可以在 DSW 本身这套产品上进行其他的软件的开发,包括 Python、Java,多样的开发环境可以集成 IDE 核心能力,比如实施在线的 debug 整个工程化管理能力。
无干扰的命令行开发环境。
多种特定的环境实际上是一个传统很重要的一个补充和方式,通过 terminal 也可以安装各种各样的插件。
也考虑到,很多的 AI 开发者实际上是 AI 的爱好者,他们也需要更多的环境来进行学习,所以我们和阿里云最大的一个开发者,天池社区合作推出了 PAI DSM 的探索版。
这主要针对高校师生、科研机构、还有个人开发者,给他们提供很多免费的计算存储资源,同时打通了整个天池社区,相当于有更多的数据进行训练。同时,可以在天池社区看到所有的AI开发的一些程序,打开 DSW 进行实验,同时在 DSW 进行了开发,也可以发布到天池社区,跟天池社区更多的开发者进行互动。
二、训练(DLC)
现在核心发布新的产品叫 DLCV1.0。
Doc 全名叫 deep learning containers,它实际上是 PAI 基于云原生的技术,支持云上的客户推出的深度学习的一个训练平台,他有如下特点:
(1)云原生
完全基于 Kubernetes 上
容器化
(2)弹性
支持半托管&全托管
弹性资源、动态伸缩
高性价比
(3)线性加速
数据并行&模型并行
支持亿级别的分类任务
多引擎性能增强
(4)易用
开箱即用
兼容社区接口
支持云上所有机型
1.DLC 产品的形态
如果现在已经在阿里云上购买了 GPU 集群,怎么办?
(1)统一的集群管理
DLC 可以绑定已购买的 ACK 集群,绑定以后就可以享受到 DLC 整个分布式训练的能力。
(2)训练任务管理
内置了一些 DLC 本身的 Dashboard,更好地观察 monitor 里的训练任务,有更多的方式看训练结果是否是最好的。
(3)DLC 核心性能
DLC 结合了 PAI 团队在阿里云内部很多的最佳实践。
PAI 做了多种优化。
分布式训练分两种情况,一种叫稀疏数据,当然,前提都是大规模,比如说推荐、搜索;还有一种是稠密数据,比如,图片、语音、视频。
稀疏数据,通过 PAI 在相同资源下比较时,在阿里的一些内部场景下最高可以提高7倍的性能。对稠密数据来说,最重要的,实际上尤其 GPU 的型号,引入线性加速比的概念,从上图可以看到,线性加速比也在128张卡的情况下,能达到117,远远超过社区的系统加速比,这个是 DLC 最核心的能力。
三、预测(EAS 在线预测)
PAI-EAS 已经发布了一年多。
1.在云原生上提供在线服务
(1)支持高吞吐,单模型最高可以达到40w+QPS
(2)支持多种模型(传统模型、深度模型)的格式
比如说深度学习 PAI-touch、tensionflow、传统机器学习 PMIL。
(3)在线监控、免运维、蓝绿、扩缩容
(4)支持 Processor SDK
(5)模型部署支持 PAI-studio、PAI-DSW,客户上传
(6)PAI-Blade,模型编译优化,提升性价比。包括去年九月份也发布了 PAI-Blade 1.0,可以提更好的提升性价比。
但现在要说的是模型优化2.0或者简称 Blade2.0的整个发布。
2.PAI-EAS 模型优化2.0发布
去年1.0的发布实际上是支持了 tensionflow 和 GPU 的环境优化,今年整体整个PAI团队进行新的研发,支持了三个“新”。
(1)新框架
使用最火热的 Pytorch 的框架支持。
(2)新硬件
除了 GPU 的型号,可以支持更多 CPU 的型号。
(3)新设备
今天毫无疑问是移动的世界。所以集成了阿里端侧的 MNN,然后可以在端侧进行优化,将模型应用到端测,其中PAI的一款产品 order learning 的图像相关的产品已经可以去部署到端测,可以进行 order learning 训练以后,通过支付宝在端侧就直接使用新的模型。这个是有一个极大的提高。
四、PAI SDK 公测
实际上很多开发者和很多企业都一直在向我们询问是否有 open API SDK,PAI SDK 正式发布,会先有一个公测版本,这次 PAI SDK,实际集合了 PAI 的所有主键,包含 PAI 的建模,训练任务的查看以及整个模型的管理、模型发布到EAS、整个端到端全链路的 PAI-Plan,整体完成了所有 PAI 的能力。综上所述,PAI 最期望做一个最懂开发者的 AI平台。我们希望 PAI 通过各种各样的能力建设,为 AI 开发者提供更好的应用平台。