AI系统化风潮渐显,PaddlePaddle如何应对开发者争夺战

最近很多海外企业之中在发生一种很有趣的改变,那就是AI正在脱离其他部门附属品的角色,成为一个独立的部门或事业部。

先是CEO纳德拉对微软大动干戈地进行了重组,将原Windows部门重组成“设备与体验”和“云计算与人工智能平台”。很快谷歌也宣布将原来的人工智能及搜索部门一分为二,将人工智能部分独立出来,归由原来谷歌大脑的负责人Jeff Dean领导。不久苹果又挖角了谷歌前人工智能及搜索部门主管John Giannandrea,任命其领导机器学习和人工智能战略并直接向Tim Cook汇报。

对于AI行业来说,这显然是好消息。谷歌和微软一样,原本将AI与自身最核心的业务归拢在一起,如今将两者区分开来,无疑是一种提升对AI重视程度的表现。未来的风向或许是,深度学习不再是某一项业务的衍生品或附庸,甩掉原生根系的纠缠,走向独立发展、高频竞争的快车道时代。

而在整个AI快道比拼当中,硬件算力、数据算法等等元素无一不处于白热化的竞赛之中,几乎每天都有新的论文、新的产品问世。可隐藏在快道底层的,却是一个极易被忽视,但却实际至关重要的问题——深度学习开发框架。

每位AI开发者每天都会使用它,可外界对它的关注却少之又少。但深度学习开发框架绝非一滩死水,悄然之中谷歌、Facebook、百度三大AI巨头,正在围绕深度学习框架展开一场新的“三国杀”。

AI要冲:深度学习正在变成一件更专注、更系统的事

在谷歌原来的业务结构中,谷歌大脑本是一个偏重于研究的团队,在深度学习、NLP、CV等等领域的国际期刊和学术上发表了大量论文,并且将开发框架TensorFlow归拢到自己旗下。

随着近一两年间AI相关技术的应用性增强,谷歌大脑的上述研究结果也开始有机会进一步投入产业。谷歌这一次提升AI业务的重要性,或许是在谋划AI业务独立开发和系统性业务布局的可能——AI与工业、AI医疗影像……当技术前景越来越广阔时,就进一步展现出了深度学习开发框架在产业关系中的战略要冲地位。深度学习开发框架可以圈定开发者和应用,从而释放谷歌在AI方面的技术能力和未来TPU的计算能力。

巨头们纷纷开始调整架构,意味着深度学习正在走向系统化和专注化,这以数据、感知与运算的深度缠绕的产业领域,开发以及开发者生态自然成为了产业活跃度的基石,有关开发生态的竞争则直接体现在了深度学习开发框架的发展中。

比如,Facebook就不愿让谷歌独享深度学习开发平台带来生态收益,在去年年初推出了针对意味十足的开发平台PyTorch。并且在去年9月联手微软旗下的CNTK和Caffe2,推出了一套开放的神经网络交换格式,为的是在谷歌生态愈发封闭时,提升场内其他选手之间框架格式的互通性。

而在中国,百度的PaddlePaddle也在不断发展,凭借本土化特色吸引了国内的开发者,综合GitHub pull request的数据来看,PaddlePaddle已经成为了全球开发热度增速最高的开源深度学习平台。同时随着百度在斯坦福、加州伯克利等海外高校频繁开展技术交流活动,PaddlePaddle甚至在逐步走向世界舞台。

不知不觉间,这三大科技巨头专属的深度学习框架,正在展开一场新的三强争霸。

降低一切门槛:开发框架三国杀在争什么?

在我们谈论AI开发时,我们就究竟在谈论什么?

·更多的开发者:开发者数量显然是一切的前提,数量广阔的开发者就像蒲公英的种子,会把深度学习开发框架以及相关的软硬件服务带到各个企业中去,帮助巨头们的AI布局在四处扎根生长。

·更活跃的开发生态:建立在大量开发者数量之上,用案例和经验对开发社区进行填充,鼓励开源和共享,让AI的开发变得更加简单,从而进入更多行业和场景。

·更高级别的开发项目:自身框架中诞生一款杀手级应用,可能是每个巨头都会有的理想目标。高价值和高效用的应用AI很可能带来大量簇拥者,一齐涌向该框架的生态之中。

总之,如何降低门槛以一切手段吸引开发者进入,成为了三大开发框架的共同目标。

最典型的例子就是TensorFlow与PyTorch之间的竞争。

在目前的开发框架中,TensorFlow凭借着谷歌的技术优势一直表现的较为强势,在开发者越来越多时,其开发社区生态也在进行良性发展。

但占据了优势后,TensorFlow开始随着谷歌一同收拢自身的开发生态。比如谷歌曾经推出过一系列赋能开发者的培训计划,向开发者提供课程教学。但结果是所有的教学全部都建立在TensorFlow之上,所提供的硬件API也只能接入TensorFlow,而TensorFlow的社区资源和开发工具更新,又部署在谷歌云之上。并且TensorFlow在最近单方面和Caffe等开发平台“友尽”,使得开发者们无法进行平台之间的迁移。

而Facebook就抓住了这一点。将原来的开发工具Torch进行升级,联手微软打造神经网络交换格式帮助开发者降低迁移成本。同时PyTorch设计了更方便的数据加载API接口,使开发过程中加载并行数据更加顺畅,相比TensorFlow降低了不少API方面的学习成本。

在自定义扩展上,PyTorch也改变了TensorFlow依靠样板代码才能实现的情况,通过为CPU/GPU编写接口这种更易行的方式添加自定义拓展,使得开发过程中的自由度大大提高。

综合来看,在开发框架的竞争中,赛点在于更低的学习成本和迁移成本,以及更高的易用性和社区友好度。

在这几个方面,西方战场之外的PaddlePaddle也以灵活、易用著称。

在应用效率上,PaddlePaddle在运行RNN算法时比其他主流框架占用更少的内存,速度却提升了1-2倍。

在训练部分的调用方式上PaddlePaddle集中了浏览器和客户端等多种主流调用方式,并支持CPU、GPU、FPGA等多种硬件,从而极力降低开发成本。同时还支持多种深度学习模型,使得开发者可以更关注模型的高层结构,抛开底层编码,使得 TensorFlow 里需要数行代码才能实现的功能,在 PaddlePaddle 里可能只需要一两行。

除此之外,PaddlePaddle还展示出了很多适用于应用层面的功能。例如在最新的Fluid版本中让开发过程更接近常见的高级语言,减少深度学习中“黑箱”状况的出现,让开发者不再用“玄学”调参,更进一步明晰开发和优化中产生的对应关系,使得开发过程更有可复制性。

还包括PaddlePaddle支持弹性使用计算资源完成深度学习训练,根据需求变化设置资源消耗的弹性区间。对于时常面对着繁多计算任务的大型企业来说,此举可以帮助他们节约大量资源,让深度学习的开发和训练成本进一步降低。

近日有新闻报道,Google发布TensorFlow.js,支持在浏览器上进行机器学习的相关工作,但在降低开发者使用浏览器发展机器学习的门槛方面,PaddlePaddle确实做得更早也相对成熟。同时为了让更多开发者和企业能够将现有项目接入到中PaddlePaddle,PaddlePaddle做到了从基础训练到分布架构彻底开源。这一点即使在以开源精神著称的硅谷都很稀有。

当然在中国市场范围来看,PaddlePaddle最大的优势还是拥有唯一提供适用中文文档与数据集的开发框架社区。中国市场作为区别于欧美世界之外的独立极,坐拥庞大的中国AI产业与开发集群,这些产业和开发者都需要适用于本土的经验体系,也自然会被PaddlePaddle的社区氛围吸引。综合这些优势,PaddlePaddle完全可以与欧美巨头们一战。

关注未来红利:PaddlePaddle的崛起带来中美AI对标新命题

在理想状态下,通过开发框架牢牢把控开发者体系,在自身平台上不断产生生态效应,收割未来必然出现的AI时代现象级产品与应用,这一流程才是巨头们所关注的目标。

同时我们要知道,所谓的把现象级产品和应用放到AI这一定语之下,就意味着这些应用可能与社交媒体联系,关乎着我们的舆情数据,也可能与自动驾驶联系,关乎着每一辆汽车的行驶路线。

在这时我们不得不提出另一个可能,在中美贸易战的大背景下,中国AI开发群体,尤其是AI企业,使用TensorFlow等平台的风险指数正在提升。

就拿美国向全球提供免费GPS技术来说,曾经很多国家甚至在军用设施上也利用GPS进行定位技术,但在99年印巴战争时,美国出于利益直接关闭了印巴地区所有的GPS服务。想象一下,两军交战之时,忽然所有人都不知道自己的位置信息,这是一件多么恐怖的事情?

最近中兴被裹挟在中美贸易战争中,进而引发的芯片恐慌更提醒了我们,市场经济和全球化不会是一柄绝对中立的保护伞,技术的自主权很可能在关键时刻成为阿克琉斯之踵。这一点在人工智能中更是如此。

如今TensorFlow早已不再是单纯的开发框架,而关系着技术、云服务等等多种模块。如果同样的状况复制到AI上,如果有一天深度学习模型已经埋藏在我们生活作业的种种细节深处,谷歌却因为种种原因停止向中国提供云服务,我们连迁移模型都十分被动。因而造成的结果很可能比今天的芯片问题更加恐怖,自动驾驶突然失灵,自动化工业生产突然向人力求救,这一切造成的不仅仅是生产效率的降低,而是人们的生活陷入混乱。

这时PaddlePaddle对于中国开发者的优势,就不仅仅是易用性和灵活性了。PaddlePaddle的适时崛起,似乎在将开发者引入另一种可能:建立完全本土化的开发框架和社区,连接在地化的数据、计算服务和技术,中国AI可以实现由开发到技术创新,再到产业模块与商业化的完全自生态流程。而PaddlePaddle的快速部署优势,可以让中国开发者在世界范围内的AI应用竞赛上获得更多速度优势。或许当海外还在利用TensorFlow调试底层代码时,中国开发者就已经通过PaddlePaddle实现模型的应用了。AI自生态的靠拢过程不是因为躲避风险,而是因为本土化的确是更高效的选择。

这样一来,中国AI领域就可以完全脱离对美国的依赖,这在两国科技产业竞争的大背景下,由此带来的自主和安全就显得尤为关键和重要。如今深度学习开发框架的竞赛刚刚开始,代表着中国AI开发品牌,甚至中国AI未来红利的PaddlePaddle如何布局,或许会为这场竞争增加更多看点。

原文地址:http://blog.51cto.com/naojiti/2106636

时间: 2024-08-30 09:36:43

AI系统化风潮渐显,PaddlePaddle如何应对开发者争夺战的相关文章

原生js实现图片网格式渐显、渐隐效果

写正文前先吐槽一下:端午放假完第一天去某千人以上公司面试前端工程师,第一轮是我应聘职位的部门小领导,谈的不错,面试主要围绕要用到的技术来:第二轮来了我要说的正主,我了个去,问的问题一个和前端无关,问我什么是"死锁",实现二叉树的先序遍历的算法,我真的想知道我面试的是前端么,职责不是用React框架实现公司官网的维护和迭代么.我不否认他问的这些知识点属于某一领域内的基础,但是我哪个前端工程师非必要的情况下在工作2,3年内专门去了解这些工作中几乎用不到的知识呢.我前端都学不完,没学透呢.

JavaScript让网页出现渐隐渐显的背景颜色

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>渐隐渐显的背景颜色</title> <style fprolloverstyle>A:hover {color: #00FFFF} </style> </head> <body onLoa

wordpress图片插件之图片随滚动条渐显延迟加载效果

在逛其它人的博客时,经常会看到有些图片多的博客站点,拉动浏览器滚动条时,博客中图片出现延时加载的特效,也就是常说的站点中图片随滚动条渐显的特效了,闲吧资源站经过反复的搜索以及求助,终于在金光群里面有人跟了答案.感谢当时给我搜索名称的群中好友了.找到后,那当然是立马行动,将闲吧站也加上这个特效.下面描述下具体的过程:特效优点:1. 加速wordpress站点的页面载入速度:2. 不唐突的图片渐显方式:3. 代码精简,便于操作维护,JS代码仅仅 1.6KB 先决条件是:你的站加载了 Jquery.j

Android实现渐显按钮的左右滑动效果

本示例演示在Android中实现带渐显按钮的左右滑动效果. 关于滑动效果,在我的上一篇博文中提到过,有兴趣的朋友可以访问: http://www.cnblogs.com/hanyonglu/archive/2012/02/13/2349827.html 如果大家想实现带指引效果的左右滑动,请访问博文:http://www.cnblogs.com/hanyonglu/archive/2012/04/07/2435589.html 先看下运行效果:    程序结构: MainActivity文件中代

网站设计之Flash简单动画入门介绍(一)字体闪烁及渐显

在制作网站过程中,增加些动画效果是非常美妙的一件事.由于最近在当Flash和PS课程的助教,也辅导学生完成PS.Flash.HTML等操作,所以这篇文章主要是对Flash动画的入门介绍,希望对你有所帮助,因为是非常基础甚至没有涉及到代码的文章,如果文章中存在错误或不足之处,还请海涵~ 一. 软件介绍 该软件主要使用Macromedia Flash Professional 8实习,而最常用的软件是Adobe Flash CS5,原理和操作基本类似.        首先创建一个Flash文档,Ad

Windows Phone 7 ListBox 列表项渐显加载动画学习笔记

在wp7程序中,当程序功能越来越复杂时,性能问题是我们不得不考虑的一个问题.在聊天列表中,如果聊天项过多,而且项目UI组件足够复杂时, 我们不得不想尽办法让UI尽快加载.所以有一种可行的方案,就是像QQ聊天列表一样,从上至下,列表项逐一加载(加载完第一项,再加载第二项,再加载第三项,给用户尽快的UI响应,也不至于等待到显示所有的列表项. 在我们的例子中,我还给每个列表项显示的过程中加入了渐显动画,这样当列表项足够复杂时,也能表现出比较好的展示效果. 实现的基本原理: 实现的原理也不难,主要的思路

【分享】JS图片滑动渐显渐隐插件-附使用方法。

前阵子总监要说做一个邀请函 效果 点击这里 鼠标拖拽进行浏览 它用的是Adobe edge软件生成的,代码量过大,冗余太多. 再加上我也没学过这个软件怎么使用,增加学习成本影响项目进度. 于是就自己写了个简单的.鼠标移动到右下角窗口滚动看效果→DEMO 不过是单体的 没有使用多个图片分频运动 ,当然如果项目需要的话,改起来也不费劲,比上面的要简单许多. 使用方法在下方: #bg{ position:fixed; width: 100%; height: 200%; background: url

js渐显文字 时间间隔

文字指定时间间隔,逐渐显现所有文字. 一日,看到一官网首页有个文字渐显,感觉和手写上去一样,很是炫酷.F12发现不是动画,于是研究了下. <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>渐显</title> </head> <body> <div style="fo

[Xcode10 实际操作]六、媒体与动画-(8)使用CATransaction Reveal制作渐显动画

本文将演示如何制作渐显动画. 图片的不透明度逐渐发生了变化,从而产生作渐显动画的效果. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the v