郭一璞 夏乙 发自 香格里拉
量子位 出品 | 公众号 QbitAI
深度学习框架里的唯一国货PaddlePaddle,集中迎来一大波更新。
百度PaddlePaddle全景图也首次曝光。
在框架核心覆盖的整个深度学习流程中,PaddlePaddle为从开发、训练到部署、预测的每一个环节都做了新升级。同时,百度还免费放出了总价值1亿元的计算力福利,甚至能“人手一张英伟达Tesla V100计算卡”。
众多新功能、新特性中,不仅有全新的自然语言处理(NLP)和视频工具集发布,升级了大规模分布式训练、大数据处理等等能力,还响应开发者要求,将百度实际业务中使用的Serving部署能力完整开放了出来。
在核心框架之外,PaddlePaddle还提供了自动机器学习、强化学习、迁移学习三大新组件。
除了一口气放出11项升级之外,这款两岁多的国产深度学习框架,也终于有了中文名:
飞桨
百度深度学习技术平台部总监马艳军介绍说,这个名字出自朱熹的两句诗“闻说双飞桨,翩然下广津”, 飞桨表示急速划动的船桨或船,意指PaddlePaddle是快速成长,性能优异的平台。从古诗词里找灵感起名字,还蛮符合百度这家科技公司一贯的文艺倾向。
新特性、新组件、新名字的集中宣布,就在昨天(4月23日)下午,开发者云集的国内首场深度学习峰会上。
这场峰会上,数百人的会场挤得座无虚席,甚至还有一大群开发者找不到座位,在后排站着围观。
除了各家公司的工程师,参会者里还有不少年轻的面孔,一直在拍照。
其中坐在量子位旁边的是位本科生,这个在天津大学计算机专业就读的男孩为此专程跑来了北京,自称是PaddlePaddle的粉丝。
前来参会的可不只年轻人,现场至少有3位头发花白的老人。其中一位来自清华计算机系的老先生,和一旁清华软院毕业的百度工程师讨论起了人工智能与数学的种种联系。据称,老先生是清华55级的校友,从50年代开始就做人工智能研究,今年83岁,还在带博士。当年也是清华大学计算机系建系第一届入学的本科生。
而在会议开始后,全场都安静了,观众们像听课一样,齐刷刷的抬头望着PPT,如果不是台上有人在演讲,现场几乎安静的让人不敢窃窃私语。
这些聚集在现场的开发者,见证了“飞桨”开源近三年来的成长,也第一时间赶上了百度发放的算力福利。
这些新发布,都是面向深度学习在各行各业落地的需求,应运而生。
智能时代的操作系统
在这个深度学习渗透各行各业的时代,框架有着至关重要的作用。百度高级副总裁、深度学习技术及应用国家工程实验室主任王海峰将它称为“智能时代的操作系统”。
智能时代的一个重要特征,就是人工智能进入了工业化大生产阶段,背后的推动力正是比前几代技术更加通用的深度学习。
比如在我们日常生活离不开的地图导航里,深度学习就起着重要的作用。地图每次找到路线之后估算要花费的时间,都要考虑到路上动态出现的各种情况,把历史路况、实时路况、限行等等大量信息作为特征输入到一个深度学习模型中,统一建模,才能准确地预估时间。
王海峰说,百度地图每天提供大约5亿次时间预估,每一次都是深度学习在背后起作用。
从全行业来看,深度学习也为各个行业带来了商业增值潜力。麦肯锡《深度学习的应用和价值》报告显示,旅游、交通、零售、高科技、媒体娱乐、半导体、通信等19个行业都会受益于深度学习。对旅游业来说,深度学习会带来128%的增值,各行业平均来看,也会带来62%的提升。
深度学习为各个行业输送价值,体现在具体的行业应用上,而它们和底层硬件之间,有一个重要的中间层,就是深度学习框架。
深度学习框架起着承上启下的作用,向下对接系统和芯片层,很多基本算子都和芯片的指令集非常类似;而向上对接各种业务、领域的模型和行业应用,就表现出操作系统的属性。
飞桨,就是百度版“智能时代操作系统”。
作为一个完整的深度学习平台,它当然包含核心框架部分,支持训练、预测、组网等等能力。
同时,它还提供了视觉、自然语言等领域的模型,形成一个完整的模型库,以模块化的方式呈现。在想要实现智能应用的时候,选择合适的模型,简化了前期收集、整理数据和从头开始训练的过程。
这些还不足以应对工业化生产的需求,因此,飞桨还包含迁移学习、强化学习、自动组网(AutoDL)、弹性深度学习计算等等组件,以及EasyDL和AI Studio平台。
王海峰介绍说,AutoDL设计的网络已经超过了很多专家设计的深度学习系统,而EasyDL上已经有超过3万个模型,很多行业都在EasyDL上解决自己的问题,比如零售、工业、医疗等等。它们都让深度学习任务更加自动化了。
可以说,无论是整个飞桨的设计还是刚刚发布的更新,都在适应工业化大生产的需求:具有通用性,朝着标准化、自动化和模块化的方向发展。
「飞桨」新升级
还记得我们前面讲过的飞桨三层架构吗?这一波大更新,遍布每层架构每个模块,可以说是整个框架平台的大变身。
在核心框架层,飞桨在模型库中发布了用于NLP和视频理解的新工具集,还在训练和预测环节更新了众多功能,工具组件层有三款新品发布。
在AI Studio平台上,百度还发放了一波开发者福利。
新特性众多,我们从重头戏PaddleNLP说起。
飞桨对60多个主流模型提供官方支持,这些模型构成了计算机视觉、NLP、推荐算法三大类工具集。
其中的NLP工具集这一次做了非常多升级。这些升级,都是百度在NLP领域的积累和工业化前沿经验的呈现。前不久,百度发布了中文任务上全面超越BERT的语言表示ERNIE,就在PaddleNLP的基础网络层中开源了,还包含预训练模型。
这个工具集能够灵活插拔,还覆盖了几乎所有的常见NLP场景,全面支持主流的中文处理任务,并且能达到工业级的应用效果。
另外,其中的所有模型共享同一套骨架代码,无论要跑其中哪一个模型,任何模型都可以用一套API和类似的模式,不需要每个模型执行不同的方法。
在PaddleNLP的基础网络层中,包含最基本的的BERT、ERNIE、ELMo等语义表示模型和语言模型组网集,以及序列标注、文本分类、语义匹配、语言生成与复杂任务上的组网集。
在应用任务上,它支持中文词法分析、文本情感分类、短文语义匹配、阅读理解、机器翻译、对话等多种任务。
用PaddleNLP,能用共享的组网集灵活搭配,构建自己的网络,还可以针对任务进行后处理:
除了NLP,飞桨在视觉领域也有更新:视频领域工具集。
马艳军说,现在视频内容越来越多,视频处理已经成为一个主流任务,用通用方法来处理和理解它非常关键。
视频工具集也是一套共享通用架构和配置文件,7个模型共享同一套数据读取、评估代码。
在这7个模型中,stNet、Attention LSTM和Attention三个都是百度在工业实践中开发出来的。
百度自身业务就对视频理解有很大的需求。
比如说这段跑男的视频,Paddle的视频工具集能将所有的声音都转换成文本,识别出里边各位明星的脸和所有物品,然后就可以对视频做自动分类、打标签了。
通过这种处理,还能得到一个视频语义向量,在涉及视频的搜索、推荐等场景下,用这个语义向量都能达到更好的效果。
在分布式训练方面,飞桨也有三个主要功能发布。
第一是对多机多卡的全面、全方位的支持,提升了速度。
第二是在CPU的应用场景设计并开放了大规模稀疏参数服务器。
第三是大规模分布式训练支持各种容器,也支持了K8S。
分布式训练效果怎么样?下图就是ResNet-50两种精度下在ImageNet上的训练benchmark,随着卡和机器数量的增加能实现很好的线性增长:
在网络条件不太好的情况下,也可以通过稀疏通信技术,实现稳定的训练:
在CPU场景下,飞桨分布式训练的吞吐量和加速比也都能呈现线性增长。
在部署和预测上,关键部分就是推理引擎,另外,飞桨还应开发者要求,开放了百度自身业务中使用的一个服务器端部署系统Paddle Serving,还在移动端提供了压缩工具PaddleSlim。
在服务器端,飞桨支持主流的CPU、GPU,也支持移动端多种CPU和GPU硬件。
在Benchmark上可以看出,在英特尔的至强处理器上、P4 GPU上,飞桨的推理引擎都做了很好的优化。
移动端性能的优化更加关键,百度在多款芯片上测试了MobileNet网络的延迟,也可以看到非常明显的优化。
这些优化和飞桨新发布的模型压缩能力密切相关。现在,模型优化已经成为一个刚需,飞桨通过支持剪枝、量化、蒸馏三种主要压缩方式,让用户可以通过两行Python代码简单调用自动化模型压缩。
飞桨对语言的支持也在逐渐完备,目前已经支持Python和C++,后续也会支持更多语言。
展示了种种能力之后,飞桨联合嘉楠、软通等合作伙伴,发布了一款软硬一体的产品:Paddle派210芯片板卡,售价不到100块,5月将在百度AI市场发售。
除了这些框架之中支撑深度学习全流程的功能之外,PaddlePaddle还有三款工具组件亮相:
一是正式开源模型架构自动搜索工具AutoDL Design,以及这个AI设计出来的一些预训练模型,有的能在图像分类数据集CIFAR10上,达到98%的准确率;
二是强化学习工具PARL,7分钟就能训练出一个会玩雅达利乒乓球游戏Pong的智能体。
三是预训练的一站式管理平台PaddleHub,10行代码就能实现迁移学习。
新升级就是以上这些,量子位拿到了一份完整的马艳军的演讲PPT,对飞桨的新功能、新特性有更为详细的介绍。给量子位公众号(QbitAI)发送“飞桨”两个字索取。
那么百度的1亿元算力福利具体是怎么回事呢?
基于免安装的集成环境AI Studio,百度为开发者提供了总共1亿元的免费算力。算力的发放有两种方式,一种是人手一张V100训练卡,用户通过邀请码获取AI Studio平台上的免费算力时长,还能邀请好友获得更多时长;另一种是远程集群模式,只要登录AI Studio就能通过这种方式免费使用单卡12GB显存的算力。
国货的进击之路
PaddlePaddle发布之时,谷歌的TensorFlow已经开源近一年,位列GitHub最受欢迎机器学习项目之首,更有Torch、Caffe、MXNet等前辈环伺。
当时的PaddlePaddle,虽然收到了运行速度快等赞誉,但是在大量同类产品之后“重复造轮子”,还是引来了文档太少、资源太少、“短期内难以改变科研格局”等等吐槽。
如今,深度学习框架版图早已不是两年前的模样,PaddlePaddle也经历了翻天覆地的变化。
,PaddlePaddle Fluid发布,还发布了新的API,大幅精简了代码量,提供“训练、“测试”、“推理”等新的高级API,并支持Kubernetes。
,PaddlePaddle支持了Python 3、计算图分析、cuda8,1.0正式版本也就此出炉,为推荐系统、视觉和自然语言处理任务提供了大量的官方模型,还增加了对windows环境的支持,全面支持了Linux、Mac、 windows三大环境,最终升级为了端到端的深度学习平台。
而在今年年初,PaddlePaddle更新至 Fluid v1.3 版本,新增发布视频模型库,支持了BERT模型。
伴随着这些升级而来的,是用户量的提升。马艳军说,PaddlePaddle现在已经覆盖10万开发者,并且增速非常可观,在过去的一个季度内有了两位数百分比的增长,用户多数集中于产业界,从互联网公司,AI公司到中国石油、南方电网这类传统公司都在用PaddlePaddle,甚至像ERNIE这类研究还吸引了一些国外用户下载使用。
相比TensorFlow和PyTorch这些模型,马艳军认为,PaddlePaddle有独特的优点。
一方面PaddlePaddle是在企业实践中做出来的,超大规模数据处理能力、高速推理能力强,场景和实际应用贴合,更为实用;
另一方面,PaddlePaddle不仅仅包含深度学习框架,提供一整套紧密关联、灵活组合的完整工具组件和服务平台,更加有利于深度学习技术的应用落地。加上百度在自然语言处理等方面的优势,最终PaddlePaddle是十分易用的平台。
下一步,马艳军说,PaddlePaddle还将在硬件的适配性等方面进一步提升,在今年内完善动态图功能,提升动态图训练速度,实现动态图与静态图的灵活转换;新增流水线并行能力,提供视觉检测、生成工具集,并且还会发布PaddleHub 2.0,基于最完备的预训练模型库进行迁移学习。
One more thing
量子位向现场的朋友要了一个远程使用V100 GPU的邀请码,当然要转赠读者啦!4月25日13:00,我们会定位评论区点赞数最高的读者,转送出这份福利。
你可以获得最多120小时的使用时间,还可以额外赠送给你的3名开发者小伙伴免费用的机会。
—完—
订阅AI内参,获取AI行业资讯
加入社群
量子位AI社群开始招募啦,量子位社群分:AI讨论群、AI+行业群、AI技术群;
欢迎对AI感兴趣的同学,在量子位公众号(QbitAI)对话界面回复关键字“微信群”,获取入群方式。(技术群与AI+行业群需经过审核,审核较严,敬请谅解)
诚挚招聘
量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。
量子位QbitAI · 头条号签约作者
վ'ᴗ' ի 追踪AI技术和产品新动态
喜欢就点「好看」吧 !