当被问到最近旷视「天元」、华为「MindSpore」纷纷开源是否对英特尔造成影响时,技术大牛英特尔大数据技术全球CTO、大数据分析和人工智能创新院院长戴金权坦言,Intel的框架与华为、旷视并非是互相竞争关系。不同的框架在不同的应用场景中各有优势。
硬件方面,英特尔拥有CPU、GPU再到FPGA等多种加速器,从边缘到客户端,再到数据中心端,全面布局。而软件层面,英特尔打造了oneAPI到OpenVINO、BigDL、Analytics Zoo等众多软件工具。
有了PyTorch和TensorFlow,为什么还要Big DL和Analytics Zoo?
BigDL是英特尔研发的一个基于Apache Spark的开源分布式深度学习框架,于2016年12月正式对外开源。
有了PyTorch和TensorFlow,为什么还要Big DL呢?
Big DL相比于其他主流的深度学习框架(TensorFlow/Caffe/PyTorch),算是一个异类。功能上,BigDL能够实现主流框架同样的功能。
对开发者来讲,用TensoFlow, PyTorch写好模型后还是要加载到spark集群,而环境不一致就很容易出问题,BigDL基于Spark来编写,可以和Spark集群无缝集成,原有的pipeline也不需要改变,所以相对TensorFlow, PyTorch部署起来更方便,pipeline的一致性也会让整个工作流的效率更高。
换句话说,他能更好地实现深度学习和大数据平台的无缝结合。
当然有的开发者还是很不习惯,还是想用回TensorFlow训练。但问题来了,
Keras、TensorFlow 和 PyTorch 等大多数库都还不能与 Spark 兼容。
因此,英特尔又在 BigDL 开源半年后推出了 Analytics Zoo,定义为一个统一的大数据分析和人工智能平台,以帮助客户省去拼接各种独立组件的麻烦。
老虎大象同放一个屋檐下,打起来了怎么办?
Zoo,顾名思义,就像一个用来存放“老虎大象”的动物园。API就好比是这家“动物园”里面的一个驯兽师,调和了不同动物“大象”“狮子”之间的矛盾,让整个驯兽表演更加流畅自如。
Analytics Zoo并不是一个简单的整合,它提供了一组丰富的高级 API接口 可以将PyTorch、BigDL、Keras 和 TensorFlow 程序无缝集成到 Spark 的 pipeline 中。这个集成管道可透明地扩展到大型 Apache Hadoop/Spark 集群,以进行分布式训练或推理。
Analytics Zoo会将数据做并行化处理,无论你用的TensorFlow、PyTorch、spark都可以很容易地部署不用自己再去做工程化,最后系统会自动完成集群调度和分布式计算,整个过程行云流水。
戴金权表示,“我们希望解决的问题是在Analytics Zoo如何将这些不同的深度学习的框架,和这些大数据处理分析的平台,能够有机整合在一起,当用户针对他适合的场景和适合的处理方式时,可以很方便的将不同的组件有机统一在一起,很方便地将端到端的工作流构建起来。”
为什么有了这样一个idea呢?
英特尔人工智能创新院在过去一年,一直在思考如何帮助用户更加自动化、更加无缝的将AI进行扩展。
戴金权在分享中详细解读了团队研发软件平台的灵感。
一个数据科学家在他的笔记本上用一些样本数据自己构造一个原型,比如说他写了一个Python的Notebook,他在笔记本上对样本数据进行处理分析,他觉得这个原型工作的不错。
下一步他就要利用一年的数据去做一些试验。
那么问题来了。首先,这些历史数据通常会很大。第二,这些数据通常是你的生产数据,比如说你的数据仓库、大数据集群上的一部分,你通常需要在集群环境下用历史数据做一些试验。
当你发现这个试验效果也不错之后,你会想把这个构建出来的模型、算法、应用能够部署上线,在生产环境上做一些AB测试等等。
今天把你的应用从笔记本电脑搬到集群上,再搬到你的生产环境当中,其实是一个非常复杂的过程,你发现要苦哈哈地重写代码,需要把你的模型进行转换,数据进行传输、拷贝等等,这个过程简直抓狂。
利用Analytics Zoo可以直接构建一个端到端的流水线,直接访问你的生产数据。“我们的愿景就是,当用户需要把AI大数据分析处理的应用从笔记本上搬到集群环境当中时,几乎不需要做任何代码修改就可以直接运行在你的分布式环境甚至是生产环境当中。”戴金权表示。
实际应用:从原子对撞到垃圾检测
BigDL和Analytics Zoo在实际应用当中也大显身手。
在去年阿里云主办的大数据竞赛天池大赛上,英特尔团队和阿里云合作,利用Flink加上Analytics Zoo来提供实时的垃圾分类检测的工作。
你是什么垃圾?
风电厂商金风慧能也基于Analytics Zoo构建AI应用,来进行部分地区的功率预测,准确率从60%提升到80%以上,达到了节能的效果。
更值得一提的是英特尔与CERN的合作。CERN是欧洲的原子研究机构,它运行着世界上最大的强子对撞机,每秒可能要进行4000万次的对撞,要产生1PB的数据。
它利用Analytics Zoo和BigDL进行实时的事件过滤,将很多无用的数据给过滤掉,准确地存下有用的数据供科学家进行分析。
还有一个例子是SK Telecom,它是韩国最大的电信公司,韩国一半的人口都是它的用户。
韩国在5G方面也有非常快速的部署,有大量的5G基站,各种各样移动的基站的时间序列数据需要进行收集分析。有了Analytics Zoo的帮助,他们的智能通讯网络也实现了智能管理、监控和预测。
英特尔AI软件层面的未来规划
英特尔中国研究院在计算机视觉方面的算法做了非常多的工作,其中包括在模型优化上的一些算法方面的工作。
同时未来也会做很多针对中期到近期的软件栈,比如怎么样能够将AI软件栈非常好地运行在超异构的架构上。也包括在库的级别,像oneDNN这样的针对深度学习的计算库,以及在框架层面TensorFlow、PyTorch、MXNet上面的各种优化。
除此之外,戴金权表示,英特尔希望提供高性能计算库或者端到端的平台层给到用户。英特尔公司未来在这几方面的提升,最终可以帮用户提高工作效率。
今年6月份的CVPR戴金权会带领团队进一步分享他们的最新成果。