英特尔AI策略全解析(2):软件的优化提供强大效能
扫描二维码
随时随地手机看文章
想要在AI占有一席之地,英特尔单靠处理器的硬件并不足以抢市,透过软件的优化提供强大效能,以及增进开发应用系统的便利性,将是布局能否成功的关键
上篇:英特尔AI策略全解析(1):延伸四大产品线
【英特尔强化AI软件应用的4大层面】英特尔对于AI应用的支持,首先是处理器内建低阶软件原始指令,例如MKL-DNN;针对深度学习软件框架,提供优化程序代码;对于大数据分析应用平台,投入Hadoop、Spark的版本提供或贡献程序代码;而在集成软件开发工具,他们也推出Deep Learning SDK。
图片来源:iThome
看好人工智能带来的运算处理需求与未来的蓬勃发展,英特尔不只是推出多种服务器端处理器来因应,在2016年11月举行的Intel AI Day活动期间,他们宣布将更积极发展深度学习应用的运算与沟通处理的链接库,并以基本指令(primiTIves)的形式整合到处理器硬件上。而在AI应用软件开发的支持上,他们陆续开始提供的部分,包含:链接库、程序语言的支持、平台、软件开发工具包、程序开发框架。
无独有偶,IBM与Nvidia也在11月宣布,双方将连手开发新的深度学习专用软件开发工具包PowerAI,可搭配IBM 专为AI应用所特别设计的服务器——OpenPOWER LC(采用Power运算架构与Nvidia NVLink互连技术),藉此提供企业级的深度学习解决方案。
英特尔在Intel AI Day提出人工智能的策略,正巧IBM与Nvidia也在之前宣布了PowerAI,在那一周期间,同时,又适逢全球高效能运算界关注的SuperComputer 2016大会举行。显然两大阵营争相较劲的意味相当浓厚,而且他们最终竞逐的目标,其实都是下一波企业应用。
英特尔AI解决方案总览
在AI应用的布局上,英特尔不只是单纯提供处理器平台,软件的支持更是重点——他们发展多种链接库、软件开发平台,积极支持多种深度学习应用框架,同时也会推出整合式的解决方案。
积极支持多种深度学习框架,陆续提供IA架构效能优化的程序代码以发展AI应用系统所采用的各种程序开发框架为例,英特尔承诺,将针对在Intel Architecture运算架构(IA)的系统环境,提供经过优化的程序代码,以提升执行效能。
例如,在深度学习技术的应用领域当中,较为风行的几种开放原始码软件框架(Deep Learning Framework),像是Caffe、Theano、Torch、MXNet、Neon,英特尔已经提供Intel Architecture优化程序代码。至于TensorFlow的部分,英特尔与Google Cloud Platform在11月的Intel AI Day活动上,正式宣布策略合作后,最快于2017年初,才会释出相关的程序代码。
Caffe
这是由美国柏克莱视觉与学习中心(BLVC)所开发的框架,英特尔提供了特制版本Intel OpTImized Caffe,可适用于Xeon与Xeon Phi处理器平台,当中整合了英特尔发展的数学核心链接库MKL(Math Kernel Library),并且已针对AVX2和AVX-512指令集,进行软件效能优化的工程。
而Caffe经过改良的成效如何?英特尔提出的实例,是影音服务业者乐视云(LeTV Cloud)的非法影片侦测应用。他们是在Xeon E5-2680 v3服务器平台上,搭配Intel OpTImized Caffe来进行影片分类的训练,结果得到了30倍的效能提升(相较于他们先前使用的BLVC Caffe,搭配OpenBlas链接库作为卷积式类神经网络)。
Theano
它是由加拿大蒙特娄大学LISA实验室发展的深度学习框架,英特尔也提供了改良的链接库,是针对多核心运算环境予以优化而成的版本,而在京都大学大学院医学研究科的应用案例当中,当他们以此进行新药探索模拟运算的测试上,精准度最高可达到98.1%,而另一个深度学习网络(Deep Belief Networks,DBN)的测试当中,也获得8倍的效能增长。
Torch
Torch也是许多人很关注的深度学习框架之一,目前主要维护的成员,是来自Facebook、Twitter、Google DeepMind公司的研究科学家和软件工程师。英特尔对这套框架提供优化支持之余,同时整合了MKL链接库,进而针对服务器硬件端执行的深度神经网络指令集,提升效率。
而在这样的环境搭配下,英特尔举出的例子是他们与Pikazo软件公司合作,针对他们开发的图像风格转换App,协助后端处理效能强化——若以App刚推出的效能作为基准,现在Pizako App在图形上色(render)的速度,可提升到28倍,而能够处理的图档尺寸也扩充到15倍之大。
Neon
Neon是英特尔并购的Nervana Systems公司所发展出来的链接库,强调易用与高效能,在其现有的技术架构当中,可区分为深度学习功能(算法)、数据模型、解决方案等三层。
在这次的Intel AI Day大会上,英特尔也预告将推出Intel Nervana Graph Compiler,作为AI应用软件层的共通基础,以此对于深度学习应用的架构型态,提供更进阶的描绘方式,以及调校作法。
针对类神经网?络,提供高阶的图学运算编译程序
深度学习框架Neon对于硬件资源的存取,会透过不同平台的转换API来介接,因此上层应用无须考虑硬件差异,接下来,英特尔会在Neon原本的架构与硬件转换层之间,新增一层Nervana Graph Compiler,主要是为了针对类神经网络应用,提供高阶的处理,以便同时横跨多台硬设备执行。