机器学习框架从开源走向融合
发布日期:2021-06-29 02:57:14 浏览次数:3 分类:技术文章

本文共 5231 字,大约阅读时间需要 17 分钟。

机器学习框架如PyTorch和TensorFlow的发展,改变了机器学习工程师产品研发的思路和方式。

 

“从某种意义上说,这是一个突破,让研发速度比以前快了一两个数量级。”PyTorch创始人Soumith Chintala在评价机器学习框架的作用时表示。

 

轨道在线智能巡检,预测性故障维修,油气田勘探辅助支持,银行欺诈风险智能判断,高风险用户自动识别,人体肿瘤智能检查等等,目前,人工智能特别是机器学习正在改变世界,大量的机器学习应用让人们的工作和生活智能化。

 

同时,机器学习也让以前几乎无法实现的工作,变得伸手可及,让高不可攀的智能化落地。

 

自从深度学习在2012年重新占据主导地位以来,许多机器学习框架争相成为研究人员和从业者的新宠。机器学习框架也从开源起步,成就一片新天地。

01

机器学习框架发展的三大“关键词”

在人工智能时代,机器学习框架下接芯片,上承各种应用,被称为是“智能时代的操作系统”。

 

在机器学习中,一般经过数据收集、特征工程、模型建立、模型训练、模型验证等阶段,它是一个往复循环的工程,直到获得满意的模型,并在生产环境中部署模型,在生产中通过数据提供服务。

 

机器学习框架就是帮助机器学习工程师,快速地开发产品和构建算法,并确保其可靠、快速和成规模地工作。

 

中国软件网发现,2020年以来,机器学习中的深度学习框架在发展上呈现出三大趋势:

 

一是开源。软件开源成就了操作系统Linux和安卓,成就了NoSQL数据库和关系型数据库MySQL,成就了消息中间件,成就云原生技术中的容器等。

 

同样,开源成就了AI和机器学习。几乎有名的机器学习框架都开源了,也通过开源不断发展壮大。

 

创建开源机器学习平台H2O的H2O.ai的创始人兼CEO Sri Ambati就认为,人工智能软件库和算法都免费提供给开发人员和企业家,使企业能够更容易地尝试人工智能,并建立对人工智能技术更大的信任,这是开源人工智能和机器学习框架发展的根本动力。

 

另外,开源机器学习框架培养了"开源"文化,使企业有更大的自由与开源社区一起创新,并利用同行的想法将机器学习嵌入到其业务中。

 

相比之下,封闭式机器学习应用开发方法往往会抑制增长。它无助于创建反馈循环、解决问题和改进产品、促进急需的人工智能人才的发展,也无法激发对人工智能模型和预测的信任。

 

围绕人工智能和机器学习的开源社区可以通过减少高许可费、共享相关成果,减少对人才的需求等更快的实现目标。

 

开源人工智能社区发展的社区思维,将平衡小组织、大组织、社区之间的力量对比,让每一种组织都可以享受AI的好处。

 

二是融合。PyTorch是当今世界上最受欢迎的机器学习框架,而TensorFlow则是最流行的Ml框架。这两个开源的机器学习框架,分别由Facebook和谷歌提供并开源的,分别拥有各自的拥戴者,但也不可避免的有互补关系。

PyTorch创始人Soumith Chintala就预言,机器学习框架将走向大融合。

 

市场上出现大量的机器学习框架,如PyTorch和TensorFlow。Chintala认为:“目前框架的融合过程已经开始。之所以现在框架推出了量化功能,以及其他一系列较低层级的工具,是因为下一场战争是框架的编译器之争,比如XLA、TVM,以及PyTorch的Glow。

 

在接下来的几年中,深度学习框架的焦点将是如何更智能地实现量化,如何更好地促进框架间的融合,如何更有效地使用GPU,如何为新硬件进行自动编译等。”

 

在用户的实际应用中,一些ML框架也被结合起来用。如TensorFlow与Keras就是一个强大的组合。

 

对于一个普通的ML从业者来说,TensorFlow的初始版本很难学习和实现。它被认为是一个科学计算工具包,与处理极端并行性和高性能计算的研究项目保持一致。

 

TensorFlow和Keras的完美结合为构建复杂的深度学习模型提供了动力和简单性。使用TensorFlow 2.0,工具包采用了流行的Keras框架,Keras以其简单和直观的方法而闻名。

 

据悉,Keras的创始人François Chollet后来加入谷歌,之后谷歌就推出了TensorFlow。

 

三是竞技场。机器学习框架开源、融合,但是依然存在竞争。同场竞技是目前机器学习框架市场的主流声音。

 

一家研究机构的数据显示,虽然TensorFlow和PyTorch是目前使用最多和最流行的机器学习框架,各自市场份额也互有涨跌,但是其他机器学习框架所占比例依然高达35~40%。

 

在2020年第一个月的数据看,大约23%的学术论文使用TensorFlow,但到了2020年12月,这一数字已经下降到11%。

 

有人认为,机器学习框架竞争的背后,是为机器学习提供服务支持的开源服务商和其发行的商业版,同时也会给机器学习框架云服务商带来商业利益。

 

无利不起早,机器学习框架依然是一个创造价值的技术市场。

 

02

机器学习框架三大“势力”

如前文所言,机器学习框架层出不穷,不同的技术集团推出自己的框架。从早期的学术成果Caffe、Theano,到获得庞大工业支持的 PyTorch、TensorFlow等。

市场上的机器学习框架

 

中国软件网认为,从机器学习框架的使用量以及产品更新的程度来看,机器学习框架出现了三大力量,分别代表不同的阵营。

 

TensorFlow由谷歌团队开发,于2015 年发布。

 

TensorFlow是一个使用数据流图进行数值运算的开源软件库,它实现了数据流图,其中,张量(“tensors”)可由一系列图形描述的算法来处理,数据在该系统中的变化被称为“流”。数据流可用C++或Python编码后在CPU或GPU的设备上运行。

 

目前,Tensorflow已经进入了2.x版时代。TensorFlow 1和TensorFlow 2.x之间不同包括:

 

新推出的Tensorflow.js.,可以使用Node在浏览器中运行现有的pyThon模型、重新训练现有的模型,并使用Javascript完全构建和训练模型,却不需要pyThon。

 

轻量级库Tensorflow Lite,则用于在移动和嵌入式设备上部署模型,可将现有模型转换为“compressed flat buffer”,将buffer加载到移动设备或任何其他嵌入式设备上。

 

新发布的Tensorflow Extended(TFX),用于部署生产ML pipeline的端到端平台,并在web应用程序、移动应用程序和生产管理方面表现出色。TFX可以应对经典的软件生产挑战,如可扩展性、可维护性和模块化,还可以帮助解决机器学习的特定挑战,如持续在线学习、数据验证、数据管理等。

 

PyTorch则由Facebook的团队开发,并于2017年在GitHub上开源。

 

Torch是纽约大学与Facebook的开源机器学习库、科学计算框架和基于Lua编程语言的脚本语言。它提供了广泛的深度学习算法,被Facebook、IBM、Yandex和其他公司用于解决数据流的硬件问题。

 

之后,在Torch基础之上,Facebook研发开源了PyTorch,并在学术研究中广受欢迎。PyTorch采用了被已为研究、开发和数据科学家所熟悉的Python命令式编程风格。

 

Facebook主导的开源机器学习框架PyTorch已经推出了1.8版。与Tensorflow Lite相似,PyTorch改进了其现有的Pytorch Mobile。该框架可以量化、跟踪、优化和保存适用于Android和iOS的模型。

 

新的发布Pytorch Lite Interpreter的原型可减小移动设备上二进制运行时的大小。Pytorch Profiler用于分析APP、模型的执行时间、执行流程、内存消耗等。

 

开源世界很精彩,但是开源世界依然存在限制使用、下载等风险。因此,在开源软件托管还是机器学习框架托管方面,国产系统依然的一个发展方向。

 

今年3月,我国首个自主研发、功能完备、开源开放的产业级深度学习框架飞桨发布了 2.0 正式版,可以说是一次“基础设施”的更新换代

 

距离飞桨开源框架2.0版本发布刚过去两个月,5月20日,百度发布了新的飞桨开源框架 2.1 版本,同时飞桨企业版也有新升级。

 

百度首席技术官、深度学习技术及应用国家工程实验室主任王海峰介绍,飞桨已凝聚320万开发者,相比一年前增加近70%;服务的企事业单位达到12万家。

 

飞桨开源框架V2.1版集自动混合精度优化、动态图功能增强、高层API、自定义OP功能优化四大技术亮点于一身,启动后可将训练速度提升3倍,即时执行效率提升11%。

 

通过这些技术升级,飞桨开源框架V2.1版将打造更开放、更具扩展性的算法平台。

 

03

好用基础上机器学习框架的三大“看点”

机器学习框架的核心目的是帮助机器学习工程师落地模型和算法,提高效率,降低成本。因此,机器学习框架必须得从能用,向好用发展,在机器学习螺旋式发展中,造就新的竞争力。

 

中国软件网观察,机器学习框架在发展有三大看点,不容忽视。

 

一是平台与芯片软硬一体融合创新。

 

从平台的角度,机器学习框架中平台与芯片软硬一体融合创新,满足算力、功耗、时延等的多样化需求,让机器学习取得最佳的应用效果。

 

如TensorFlow是可用于运行从云到最微小的微控制器设备的机器学习模型的框架。使用 TensorFlow训练的模型可以针对CPU和GPU进行优化,从x86到ARM64。

 

使用TensorFlow精简版,相同型号可以针对手机、物联网设备和边缘计算环境。这使得它有可能训练模型一次,并将其部署到Android手机和更多的微控制器上。

 

飞桨针对多种芯片并存的环境,研制了异构参数服务器训练技术,突破了超大模型的高效训练难题。

 

据介绍,截至2021年5月,飞桨硬件生态与22家国内外硬件厂商开展适配和联合优化,已完成和正在适配的芯片或IP达到31款。

 

英特尔、英伟达、Arm等国际芯片大厂均主动在开源社区为飞桨贡献代码。飞桨也同飞腾、申威、海光、鲲鹏、龙芯、兆芯、等国产CPU进行深入融合适配,并结合麒麟、统信、普华操作系统,以及百度昆仑、海光DCU、寒武纪、华为昇腾、比特大陆、登临、瑞芯微、高通、苹果、联发科等AI芯片深度融合。

 

让ML框架成为云计算的一部分。

 

目前,大多数的公有云服务商已经将ML作为企业业务增长的主要方向,因此在云上支持开源的机器学习框架,或者支持机器学习框架的商业版,成为一个趋势和方向。

 

TensorFlow是主流公有云管理ML PaaS 的一部分,是公有云平台不可分割的一部分。它为计算机视觉、自然语言处理、个性化和推荐服务等应用提供API。主流机器学习平台作为一种服务(MLaaS)品对TensorFlow有着广泛的支持。亚马逊云服务、Azure ML、谷歌AI平台、IBM沃森机器学习、阿里云等均将在其平台上紧密的集成TensorFlow。

 

AWS CEO Andy Jassy2019年演讲

 

在AWS re:Invent 2019 上,AWS CEO Andy Jassy声称,在应用最多的机器学习框架方面,85%的TensorFlow用户在云上的工作负载都运行在亚马逊云科技上,而到了2020年,这一数字达到92%。同时,91%的PyTorch在云上的工作负载都跑在亚马逊云科技,在云上面进行机器学习已经是非常成熟的选择。

 

研发集团的支持与降低应用门槛同步同进。

 

目前来看,不管是那种机器学习框架,在依靠开源社区的基础上,依然有强大的机构研发力量的支持。

 

TensorFlow是谷歌的关键项目。谷歌已投入数百万美元用于研发,以推进机器学习,并将这些能力带到TensorFlow。谷歌正在利用TensorFlow为其许多产品和服务,包括谷歌助手、安卓等服务。

 

在今年上半年,Facebook联手微软宣布推出PyTorch企业支持计划,该计划使服务提供商能够为其客户开发和提供定制的企业级支持。Facebook与微软合作建立的新产品是根据PyTorch企业用户在生产中为关键任务应用开发模型的反馈而创建的。

 

另一个机器学习框架Azure ML Studio允许微软Azure的用户创建和训练模型,随后将这些模型转化为能被其他服务使用的API。在Azure中有大量的算法可供使用。

 

飞桨一直致力于降低用户使用的门槛,既有支持动静统一的核心框架,也有产业级模型库、开发套件和工具组件,以及提高企业生产效率的飞桨企业版等,满足不一样行业、不一样阶段、不一样层次开发者的需要。

 

使用门槛的下降,比如会加快人工智能应用的多样化和规模化,加快了产业智能化的进程。

活动推荐

海比研究院即将发布

《2021中国中台市场研究报告》

敬请关注

扫码报名参加

CDEC2021 成都站

转载地址:https://blog.csdn.net/Z1Y492Vn3ZYD9et3B06/article/details/117457668 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:阿里腾讯等纷纷入局,隐私计算到底有何魅力?
下一篇:金蝶数据中台绽放数澜之花以后……

发表评论

最新留言

很好
[***.229.124.182]2024年04月10日 08时38分22秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

安卓开发工程师岗位职责!Android初级开发是如何一步步成为高级开发?一线互联网公司面经总结 2019-04-29
安卓开发快速上手!我的Android美团求职之路,安卓系列学习进阶视频 2019-04-29
安卓开发招聘!免费Android高级工程师学习资源,2年以上经验必看 2019-04-29
最新整理《Android架构师面试题解析大全》,深度解析跳槽从开始到结束完整流程,面试建议 2019-04-29
泪目!带你全面解析Android框架体系架构view篇,年薪50W 2019-04-29
大厂架构师经验分享!我离职后面试收割小米等大厂offer,知乎上已获万赞 2019-04-29
安卓开发视频教学!10天用Flutter撸了个高仿携程App,内含福利 2019-04-29
Spring @Autowired注解使用总结 2019-04-29
Spring bean的生命周期总结 2019-04-29
报错TypeError: Cannot read property 'dispatch' of undefined----vue和uniapp 2019-04-29
location.protocol的作用vue-uniapp 2019-04-29
vue使用swiper插件修改左右箭头的默认样式 2019-04-29
微信小程序--拿到时间戳 转换 并绑定 2019-04-29
关于转换十位时间戳出现1970的问题 2019-04-29
【vue系列】在Vue项目中使用Sass-----(scss)安装详解,新手跟着做即可 2019-04-29
elementui 表格上加小问号 鼠标移入提示文字 2019-04-29
layui富文本编辑器的使用 2019-04-29
laydate日期插件时间 2019-04-29
h5页面微信分享代码 2019-04-29
phpqrcode生成二维码及使用方法 2019-04-29