ITPub博客

首页 > 人工智能 > 人工智能 > 解读 AI 引擎 MindSpore 开发实践与技术细节

解读 AI 引擎 MindSpore 开发实践与技术细节

人工智能 作者:AIBigbull2050 时间:2020-04-04 14:17:56 0 删除 编辑
  2020-04-02 17:06:54

过去一年,开发者生态发生了一些或巨大、或微妙的变化,大的变化如巨头云厂商正在通过开源、收购等方式争夺开发者生态,比如微软以 75 亿美金收购 GitHub,谷歌 1 亿美金领投 Gitlab,使得后者估值突破 10 亿美金,企业级研发管理平台 Coding 获腾讯云一亿元 B+ 轮融资等。

解读 AI 引擎 MindSpore 开发实践与技术细节|文末福利

微妙的变化正发生于开源厂商与云厂商之间。广受欢迎的开源数据库 MongoDB、Kafka、Redis 等纷纷修改开源协议,Neo4j 企业版不再提供免费下载,意在限制一些云厂商从中牟利却不做贡献的行径。

这一年,微软似乎变得更加开放,加大了在开源上的投入,收购 GitHub,加入 OIN(开放创新网络,Open Invention Network),旗下 60000 多项专利开源授权给 Linux 系统,其产品 VSCode 成为 2018 年 GitHub上吸引到最多 contributor 的项目,微软内部覆盖 NLP、CV 等 9 个领域的研究数据集正式对外开放…此外,Pivotal、ElasticSearch 上市,Confluent、Databricks、PingCAP 各自完成新一轮融资,阿里巴巴收购 Flink 母公司等,让开源厂商和云厂商之间的关系变得更加复杂。

在这样的变化下,云厂商应该如何自处,才能在日益激烈的竞争中寻找好自己的定位,发挥各自的优势?开发者又该如何适应这样的变化?

针对以上问题,华为云EI(企业智能)开发者生态专家、开源社理事林旅强给出了他的看法。他认为,近年来整个开发者生态的确发生了这些变化。在之前,云厂商可能注重的是如何把商品销售给买家,但现在,商家的思路开始向如何把云资源以能力的方式赋予开发者转变。随着云化让一切变得虚拟化,云厂商更重视开发者的体验,以及开发者是否能够反过来影响到公司的采购行为。林旅强强调,这一点很重要。

另一方面,开源开放使得每一个开发者在公司里的声音更强,甚至影响到采购和销售,这也是世界上各个厂商都在做开源、开放的原因。华为自然跟上了这个潮流。

华为一直以来是以客户为中心,现在不仅是客户,开发者也是华为云生态中非常重要的角色,因此也要“以开发者为中心”,面向开发者,把资源型的产品转化成能力型的资源来加速开发者的开发效率,并降低开发门槛和成本。

开发者生态存在的问题

随着各大开发者平台的完善,开源开放的理念被更多人接受推崇,开发者生态呈现出一片欣欣向荣的局面,更多开发者拥抱生态,从生态中汲取营养的同时将自己的成果贡献分享出来。然而,由于开源开放本身存在一定的漏洞,所以,至今开源开放与封闭仍然是一个时不时会引起讨论的话题,比如近年来云厂商与开源厂商之间矛盾渐显,MongoDB、Kafka、Redis 纷纷修改开源协议,限制云厂商从中牟利却不贡献的行为就暴露了开源开放会引发的问题。林旅强也曾在公开演讲中提到,开源和闭源的结合可能会给一些企业者创造一定的技术性壁垒,给他们造就一定的优势。

在利益的纠葛下,我们应该如何化解云厂商与开源厂商之间的矛盾?选择开源或闭源有何标准?林旅强对这一话题给出了他的看法。

林旅强坦陈,实际上并没有一个统一标准来衡量哪些技术应该开源,哪些技术应该闭源,因为在同一领域或同一应用产业中,开源技术强过闭源技术的情况比比皆是,反之亦然。

他以手机操作系统为例,分析了开源与闭源之间的关系并不冲突。移动时代初始,手机操作系统领域出现“百家争鸣”的局面,但到现在只剩下两家:iOS 和安卓。林旅强说到,虽然我们很难说这两家谁更强,但能说明一件事情,以苹果公司为例,它引领了移动时代的到来,从一开始就吸纳了众多开发人员跟随,很简单,因为跟着 iOS 走就“有饭吃”。所以,在他看来,并不是说哪些技术比较适合开源或闭源,而是作为 follower,如果某个技术领域想要赶超,就必须创造更多的各种条件让开发者愿意转移及加入到自己的阵地。

现在,Linux 的开源操作系统,苹果和微软闭源的操作系统未必要分出胜负,但如果是站在开发者的立场,一定是开源更好。因为开发人员喜欢深究细节,探究系统如何与他们开发的产品或服务进行结合。此外,闭源产品的绑定关系很重,但开发者不喜欢被绑定,他们更喜欢松的耦合,所以,越是紧密的耦合,可能不利于整体开放生态。所以,林旅强认为越是底层,或者越是平台型的技术,走开源路线会比较容易胜出。另外,越是后进入生态的对象,如 MySQL 用开源去打破 Oracle 的垄断地位就很成功。因此,对于后入者或小公司,开源是一个很好的竞争方法。

至于云厂商与开源厂商因为开源导致的利益冲突,林旅强认为其实并没有很好的方法彻底解决。据他的观察,MongoDB、Kafka、Redis 等厂商之所以认为原来的开源协议对他们来说不公平,是因为从商业逻辑上来看,他们的投入收益被某些云厂商“截胡”了。这些厂商在做了巨大投资之后却发现收益流向云厂商,这让他们感到原来的开源许可证有问题,于是他们通过创设新的协议来保护自己的利益。

当然,开源厂商创设新协议也遭遇很大的争议,因为从开发人员的立场来看,即使明知新条款对他们实际上并无根本影响,但是修改许可证的动作会让他们担心原有的权利被限制,因此产生焦虑和抵制的情绪,认为这与开源的精神背道而驰,也隐藏了未知的新风险;另一方面,条款被修改后提交第三方开源认证组织 OSI(Open Source Initiative)时也很可能会被拒绝,因为经常无法符合社区公认的开源定义(Open Source Definition)了。

对于一些云厂商来说,原先赚到的钱要分给开源厂商,这就产生利益分配不均,所以只能修改成SSPL 等条款。改完条款之后,云厂商一般有两种做法。第一种做法是继续开发原来开源的版本的分支,因为原来的开源版本不能撤回;第二种是新版本改用别的协议,但是这会产生一个问题,即公司如果不支持原来的开源版本,它就成了一个社区版本或“孤儿”版本。

在林旅强看来,其实利益不均还是要从商业上去解决,云厂商和开源厂商以实力见分晓,看谁有讨价还价的底气,并在博弈中占主动权。当商业的 SSPL 等出来之后,这些厂商的选择就是一家一家地去谈,谈成什么结果谁也没有定论。

总之,林旅强认为,如果产生了利益不均,原来觉得受损最大的厂商肯定会去改变游戏规则。这印证了“得开发者得天下”这句话,得开发者的方式就是开源,正是因为这些厂商一开始就用开源锁定了用户,很多开发者真的使用了开源产品,所以这些厂商才有底气“拍板”提出利益不均的问题,并要求云厂商和开发者做出改变。

“所以,在我看来,开源未必是对整体产业利润最大化的最好方式,但却是一个厂商获得开发者的很好的竞争手段。”林旅强如此说道。

华为云EI能发挥什么作用?

开发者是生态中还存在着各种各样的问题待解决,华为云 EI 能在其中扮演什么角色呢?

林旅强说道,华为云 EI 不只面向采购产品的客户,还面向开发者,运用华为云 EI 的平台和能力来帮助开发者进行开发。

他介绍道,华为云 EI 是华为云中的AI部门,是华为云的重中之重,主要提供三大产品和服务:

第一是一站式AI 开发平台ModelArts,让 AI 开发者把线下开发 AI 的工作上云以提升开发效率并降低门槛,开发者仍然可以使用惯用的TensorFlow、PyTorch 等框架和PyCharm环境,利用平台上的AI市场的开源数据集,通过云上的训练和部署完成AI模型、形成服务,还可端云协同以HiLens将模型部署于端测的深度学习摄像头进行推理;

第二是提供大量开放 API 供模型调用,如人脸识别、OCR、对话机器人、自然语言处理、知识图谱等,华为云 EI 开放了大量的 API 让开发者免费调用(限次数),商用时则会按照调用次数进行收费;

第三是针对行业及场景推出交通、园区、工农、汽车、网络等“智能体”及许多行业专项解决方案如医疗、制造业、电商和车联网等,帮助企业实现 AI 落地,降低成本,赋能行业。

在云时代,云+AI 早已成为标配。林旅强说道,华为云 EI 本身就是一个结合了云和 AI 的综合体。云是一种集中化的服务,过去开发者在自己的 PC 上进行开发时常常会受到存储空间、算力等各种资源不足问题的限制,而云上的资源的特点是虚拟化、分布式,所以用户可以按需获得自己所需的资源,相当于共享经济资源。所以,云计算和云资源的发展有利于行业发展。

AI 技术与云的结合使得 AI 技术落实有了载体,利用云上的资源进行算法和模型训练、部署更加高效。另一方面,当前的开发者更多的是中小型开发者,线下取得GPU计算资源的成本过高,华为云 EI 和所有结合 AI 的云服务商都在解决这个问题。

”华为云 EI 希望通过AI产品和服务赋能包含中小企业、个人、高校开发者在内的所有开发者,让大家成为未来 AI 时代真正崛起的力量。”林旅强表示,“可能再过五年到十年,AI 将变成每一个程序员都掌握的技能,在此之前,云厂商的“推波助澜”,用普惠的AI服务让开发者获取资源、跨越门槛和做出案例,是极其关键的。甚至可以说,华为用开源、开放的精神投入开发者生态和AI开发平台,不只对华为的业务有帮助,对于中国整个开发者生态的完善都有好处。”

值得一提的是,在 2018 年的华为全连接大会上,华为公布了 AI 引擎 MindSpore,它是一款支持端、边、云独立的和协同的统一训练和推理框架,与 TensorFlow、PyTorch、MXNet 等框架并列。林旅强透露,华为云未来将把这个深度学习框架开源出来,供开发者使用,在明年 2020 年2 月11 日-12 日于深圳举办的“华为开发者大会HDC”上,华为将解读 MindSpore 的更多开发实践和技术细节。

留给开发者社区的机会还有哪些?

在开发者生态中,开发者社区发挥着越来越重要的作用,各种开发者社区中聚集了来自各个领域的大牛和优秀项目,帮助开发者成长,为他们提供了技术、职场交流的重要平台。

现在,开发者社区琳琅满目,但做得好、得到开发者青睐的社区屈指可数,人们更倾向于聚集在那些资源丰富、问题能得到即使反馈和解决的地方。这给创业者创造了珍贵的机会。

林旅强将开发者社区分为两类:一种是类似于 CSDN、StackOverflow 和 Reddit 等的综合性平台,开发者可以在这里发现各种各样开发者相关的信息,它们相当于知识库,未来的发展将会越来越蓬勃,甚至逐渐取代搜索引擎的一部分功能;另一种是垂直型社区,开发者可以加入微信群等交流圈,与社区成员真正互动起来,解决自己关心的问题。

林旅强笑称,他自己也会经常逛一些技术社区,在那里交流技术问题,同时搜罗人才。他认为,社区应当有且不限于两个功能:一是技术知识学习和交流,二是相关的配套服务,如学习方法、工作机会、人脉交流等。不管是综合性技术社区还是垂直类社区,能做到满足开发者真正诉求,就可以在竞争中获得优势。

当下技术社区存在的问题和不完善之处给技术社区创业者留下很多机会,林旅强以自己的经验给出了自己的建议:首先,社区与产品服务应相辅相成,想要做好社区,产品一定是真的好,产品与社区“两条腿”走路,先把产品做好,然后用开源或开放的方式提供给开发者用,形成自己的阵地,去影响更多的开发人员使用,开发团队根据反馈再去改进产品和服务。

有趣的是,林旅强毫不吝啬赞美之词,以 PingCAP 为例阐述了“两条腿”走路的重要性。他认为,PingCAP是国内做得相当好的一个创业公司,它就是有办法把产品在一个垂直领域中做到极致,在开源方面的玩法也很地道。如果有创业公司如果想要利用开源,又想要在某个垂直领域把技术做深做强,PingCAP的模式是一个值得学习的对象。


https://www.toutiao.com/i6811038227210699267/



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69946223/viewspace-2684432/,如需转载,请注明出处,否则将追究法律责任。

全部评论
向AI大牛学习,成为AI大牛!

注册时间:2019-08-22

  • 博文量
    913
  • 访问量
    439769