按关键词阅读:
文章图片
雷锋网按:8 月 7 日 - 9 日 , 由中国计算机学会(CCF)主办 , 香港中文大学(深圳)雷锋网联合承办 , 鹏城实验室、深圳市人工智能与机器人研究院协办的第五届 CCF-GAIR 2020 全球人工智能与机器人峰会如期落地 。
8 日 , 大会与 AI 研习社、OpenI 启智社区联合举办“AI 源创专场”重点讨论了新基建背景下 , 国内开源创新建设将催生的新势能 , 以及其将引发和促进的新产业机会 。
会上 , 百度深度学习技术平台部高级总监马艳军做了主题为《开源深度学习平台助力产业智能化:百度飞桨的实践》的 , 他从开源如何为产业赋能的角度切入 , 结合飞桨四年来的成长与实践案例 , 就开源深度学习框架如何进行生态构建、深度学习如何赋能产业、飞桨的智能化落地案例等给出了清晰的解读 。 雷锋网将马艳军的演讲进行了不改变原意的 , 以下为全
我跟大家的主题是“开源深度学习平台助力产业智能化”我会从开源如何给产业赋能这个角度 。
飞桨在 2016 年已经开源了 , 时间是比较早的 , 在这个过程中 , 我们一直认为 , 技术的迭代有两个方面:
首先 , 在百度内部会有大量的应用 , 并且非常注重配合大量的落地场景 , 这会驱动我们做一些事情 , 比如速度做得更快 , 部署做得更好 。
文章图片
在这个循环过程中持续打磨开源项目 。 开源以后 , 我们社区里的者非常多 , 他们的要求非常苛刻 。 社区里开源的工程师把代码亮出来以后 , 大家都能知道你是如何设计的 , 以及你的代码、文档有没有问题 。 这就对整个编程的易用性、API 的完备性提出了新的要求 , 这些要求以前在公司内不做开源时就不会考虑太多 。
这两个循环同时进行 , 就形成了一个产品 。
文章图片
现在的飞桨框架部分已经满 70 万行代码 , 是工程量非常大的工作 。 如果再加上围绕核心框架的周边一系列的模型、工具 , 现在飞桨有 200 万行代码 。 这样规模的工程量 , 要想真正让它打磨得比较顺畅 , 需要慢慢做 , 确实没办法一下子放出一个跑起来不出问题的大型的工程 。
飞桨经过这么长时间 , 已经形成完整的体系 , 现在有一些能力可以直接在平台上使用 。
文章图片
开源深度学习框架的建设和很多开源项目有一定的差异性 。 很多开源项目是把这个开源项目做好 , 其他人拿去用就可以了 。 但深度学习框架上下游的生态比较复杂 , 我们经常说 , 它是一个生态的问题 。 生态里要和很多芯片做对接 , 因为要基于它做算法研发 , 再被集成解决方案 , 形成比较深的产业链条 , 由此就形成了生态 。
所以 , 开源深度学习框架和一般开源项目的差异性就在于 , 它的生态体系构建非常关键 , 比如说 飞桨放在这儿没人用那它就挂了 , 因为没有生态体系和它一起联动 。 没有生态的构建很成问题 , 现在国内的深度学习框架一直朝着生态构建的方向发展 , 开源就是帮助构建生态的很好的方式 。分页标题#e#
文章图片
飞桨发展了这么长时间 , 在很多行业中已经被应用 , 使用的场景也很多 。 AI 在应用时和行业绑定非常紧密 , 需要结合很多行业专家的知识 , 并和 AI 技术平台一起设计可在企业中应用的更完整方案 。
现在真实应用中使用的芯片类型也是不一样的 , 环境差别很大 。 真正要让深度学习框架在芯片上跑起来 , 是非常大的工程 , 可能得投入不小的工程团队一年左右 , 才能把整个硬件的功能进行很好的适配 。
咱们国家做开源很重要 , 需要时间投入 , 耐心把这事儿做了 , 没有巧妙的办法把工程的时间绕过去 。 一定要投入时间 , 把这些工程做了才有更好的发展基础 。
文章图片
飞桨一直和国内外的芯片企业都有非常紧密的合作 , 做软硬件的适配 , 社区也有快速的成长 。 到现在 , 整个飞桨在 Github 共有 45000 的 Star 。
飞桨也有一个者专家计划(PPDE)希望不同层次的者都能够加入到这里面做贡献 , 可以给框架做贡献 , 也可以贡献算法库 , 贡献各种各样的应用工具 , 由此形成整套体系 。 非常欢迎者加入这个项目来 。
飞桨核心技术
我们常常说飞桨有几个特点:
一是框架层 , 我们是动态图和静态图统一设计的框架 , 希望可以从动态图编程转成静态图部署 , 并做到极致 。
文章图片
另外是训练 。 百度做大规模的数据处理 , 天然需要有大规模训练能力 。 这个大规模训练也有很大的 , 包括真正做了大规模、分布式 , 飞桨的大规模分布式训练已经经过了实践验证 , 比如速度提上来了 , 收敛性怎么样 , 精度是否有保证 , 这些都需要在实践检验中持续打磨 。
再就是部署 , 对多种硬件的支持 。 飞桨目前已经支持非常多的硬件 , 尤其对国产芯片也进行了深入的适配融合 。
最后是模型算法 。 飞桨开放了很多的算法 , 这上面的算法有 146 个 , 工业界使用比较广泛的基本都涵盖了 。
动态图的编程是飞桨主推的 , 代码的行数、编程灵活性都提升很多 , 语义理解的算法现在都是动态图实现 。
大规模分布式训练在 CPU 和 GPU 上都有做 , 并且支持异构硬件的训练 , 我们也做了大规模的稀疏参数训练 , 这些在公司内用得很多 , 多种大规模的分布式训练模式都能支持 。
文章图片
大家可以看到 , 部署是多种平台、多种操作都支持 。 这就是部署麻烦的地方 , 要适配的环境很多、很复杂 , 需要很多的工程化工作才能把部署做上去 。
现在飞桨的模型库算法很多 , 涵盖的任务也很多 , 这些算法我们都做了比较多的调优工作 , 把算法的速度、训练的速度、参数本身设计到最优 。
文章图片
飞桨助力产业智能化:案例剖析
我们是制造业大国 , 制造在我们国家占的 GDP 比重非常大 。 在真实的生活中 , 很多事情需要检测 , 比如设备是否可以正常运转;工厂里也常常有很多检查 , 比如听到设备发生异响 , 这些都是真实场景里遇到的 。分页标题#e#
深度学习在真实场景中的应用面临的非常多 , 比如它有可能算力非常低 , 不像很多互联网公司有大型的 。 在很多真实的行业场景 , 不仅很多算力很低 , 也没那么多的内存 , 这种情况下 , 要把深度学习技术真正应用到行业中就需要克服很多不一样的 。
文章图片
举一个例子 , 要监测哪儿有没有着火 , 需要在某个位置架设一个摄像头 , 把深度学习影像拍到 。 这是挺复杂的 , 深度学习的模型训练只是其中一环 , 行业里的业务是比较复杂的 , 即使设计了一个 , 跟业务再对接也是非常复杂的工作 。 这个过程就需要后台的训练 , 从数据标注到模型训练 , 通过摄像头、相机、光源一系列的因素 , 包括无人机的配合 , 在边缘端进行计算 , 和后台形成联动 , 最后形成预警 。
文章图片
整个搭建需要很复杂的设计 , 这个理念会涉及比较难的技术点 , 比如检测有没有着火 , 需要目标检测技术 。 飞桨开源的目标检测工具 PaddleDetection 里面有一些非常经典和实用的算法 , 结合真实的场景、少量的数据 , 效果基本上足够你用 。 内存要求有限 , ARM 算力有限 , 可以通过 PaddleSlim 把模型变小 。
另外需要部署 , 要部署在 ARM 架构的芯片上面 , 快速运行 , 这其中的技术选型就非常关键 。
我们通过技术使得很小的模型识别的精度也可以非常高 。 烟雾检测一方面要有高准确率 , 再就是推理速度 , 比如着火这种应急场景下 , 对性能的要求非常高 。
这是今年在淄博发生的一件真实的事情 。 高压线底下着火 , 通过刚刚的技术方案 , 可以真正发现并解决问题 。
文章图片
文章图片
目标检测在真实场景中应用非常多 , 是复杂的技术 , 里面涉及到的组件非常丰富 , 另外还需要把压缩能力和部署能力打通 , 涉及到的工程化工作非常多 。 这些都是通过 PaddleDetection 开源的 。 我们了一系列的算法 , 者可以非常灵活地组合自己想要的算法 。 当然我们也了在什么场景下用什么最好的组合方案 , 直接给出了几款应用最多、效果最好的算法 。
算法丰富性、精度、速度以及一系列的验证 , 这个套件已经在很多场景下做了很多工作 , 基本上可以放心用到工业、企业里 。
文章图片
训练完这些模型以后 , 我们需要做一些压缩工作 。 算力毕竟有限 , 部署的场景非常复杂 , 有可能是 , 有可能是边缘端、网页端的程序 , 也有可能集成到软件上或是做服务 , 部署的环节是非常复杂的流程 , 需要做非常多的工作 。
我们把主流的压缩方案都做了 , 跟检测、分割算法库结合可以直接实现模型的压缩和使用 。 通过 Paddle Lite , 可以实现的算法适用比较多 , 现在在飞腾、寒武纪、百度昆仑、RK、华为NPU、MTK APU 等多种芯片都可以实现端到端的使用 。分页标题#e#
文章图片
飞桨在百度 AI 中是基础底座 , 对于整个 AI 平台而言是底层技术 , 这个基础上会有一系列的定制化以及 AI 能力 , 比如语音、语言、视觉 , 再结合一些场景化的方案 , 最终会形成一整套具备 AI 能力的完整方案 。
本文相关词条概念解析:
【平台而言是底层技术,就开源深度学习框架如何进行生态构建,没有生态的构建很成问题,深度学习如何赋能产业,CCF-GAIR,2020】开源
【平台而言是底层技术,就开源深度学习框架如何进行生态构建,没有生态的构建很成问题,深度学习如何赋能产业,CCF-GAIR,2020】开源(OpenSource , 开放源码)被非盈利软件组织(美国的OpenSourceInitiative协会)注册为认证标记 , 并对其进行了正式的定义 , 用于描述那些源码可以被公众使用的软件 , 并且此软件的使用、修改和发行也不受许可证的限制 。 人们需要知道的是组成软件的包和它们的许可证是开放的源代码 。 此外 , 单独的许可证可能不是"货物" , 它由美国专利和商标局注册认证标志 。 但是软件的作者显然必须能够自我认证、在适当的时刻确认他们的软件是按照OSICertified的开放源代码方式发布的 。

来源:(未知)
【】网址:/a/2020/0813/kd412492.html
标题:平台而言是底层技术,就开源深度学习框架如何进行生态构建,没有生态的构建很成问题,深度学习如何赋能产业,CCF-GAIR,2020