服务器 频道

英特尔戴金权:详解全新大数据分析+AI平台Analytics Zoo

  本文根据戴金权老师在2018年7月【2018全球人工智能与机器人峰会】现场演讲内容整理而成。

  讲师介绍:

  英特尔高级首席工程师、大数据技术全球CTO戴金权

  戴金权负责领导英特尔全球(位于硅谷和上海)的工程团队在高级大数据分析(包括分布式机器学习和深度学习)上的研发工作,他带领团队一手研发了基于Apache Spark框架的分布式深度学习库BigDL,在这次演讲中,他还着重介绍了一个新产品。

  英特尔AI软件工具图谱

  近一年来,英特尔反复提到的“人工智能全栈解决方案”是其人工智能战略布局的最好诠释。

  戴金权介绍到,英特尔一直致力于提供一个完整的端到端的全栈人工智能解决方案,从终端设备端到网络,再到数据中心的云端。

  这一套解决方案的底层技术包括了至强可扩展处理器、NNP芯片、FPGA、网络以及存储技术,其上则是各种数据库、人工智能平台和具体的体验。

  此次,戴金权更为详细地解释了英特尔的人工智能软件层。

  在基础层,有英特尔针对机器学习优化的英特尔发行版Python、优化的DAAL的发行版、MKL-DNN和clDNN神经网络函数的优化库、开源的nGraph编译器等;在库这一层,有机器学习库的优化、TensorFlow/MXNet/Caffe/BigDL等的优化,再到工具包这一层,有开源视觉推断和神经网络优化工具包OpenVINO、VPU上的优化推断开发的英特尔Movidius SDK、CPU上的认知解决方案英特尔Saffron AI。这些端到端的解决方案可以帮助开发者更快速地开发AI应用。

  戴金权一直致力于大数据分析,开发出基于Spark的分布式深度学习框架BigDL和Analytics Zoo,让更多的大数据用户、数据工程师、数据科学家、数据分析师能够更好地在大数据的平台上使用人工智能技术。

  BigDL是将英特尔大数据平台与人工智能结合的产物,为什么要做这样的结合呢?

  戴金权介绍了三个趋势

  第一个趋势,今天深度学习的发展很大程度上是由于数据规模来推动的。由下图可见,随着横坐标数据规模的增长,纵坐标显示的神经网络模型就越有效,越准确。任何深度学习的系统、框架、应用都要能够处理大规模的数据。

  第二个趋势是业界大数据的发展,不管是互联网公司还是传统企业,大家都以Apache Hadoop建立起数据平台,这个平台聚集大家处理过的和未处理的数据,从而你能够将各种数据的处理、分析和应用,应用到这个平台上。从这个意义上说,任何数据处理和分析的框架、应用,包括深度学习的应用,都要能够非常好地和Apache Hadoop为标准的数据平台交互。

  第三个趋势,深度学习的模型只是整个流程的一部分,要构建和应用深度学习模型,还有数据的导入、数据清洗、特征提取、对整个集群的资源的管理和各个应用之间对这个资源的共享等,这些工作事实上占据了机器学习或者深度学习这样一个工业级应用开发的大部分的时间和资源。所以,数据处理、机器学习,以及算法必须很好地和现有的大数据处理的工作流整合在一起。

  戴金权深刻感觉到,在大数据处理工作和深度学习模型算法之间有很大的断层。深度学习顶尖研究人员不断在突破模型,但是数据科学家、分析师、普通用户却很难将模型应用到现实的生产环境当中去。深度学习处理的一大瓶颈就是数据,特别是生产数据,都是采用分布式存储,很难将其拷贝到另一个环境再来进行处理。

  在戴金权看来,Apache Spark是业界最广泛应用的分布式集群计算引擎,它里面有大量的对数据分析处理的组件,比如说SQL的处理、实时流的处理,还有进行图分析的库。

  基于Spark推出的BigDL是Spark上标准的库、标准的组件,能够和这些大数据、生态系统里面的不同的分析、处理的组件非常好地整合在一起。BigDL与目前主流的深度学习框架Caffe、Torch、TensorFlow所能实现的功能相同。虽然市面上已经有主流的深度学习框架,英特尔推出BigDL则是因为看到了将大数据分析与人工智能结合起来的一个空白点。BigDL可以直接在现有的Hadoop和Spark的集群上运行,不需要对集群做任何修改。

  Analytics Zoo

  自2017年1月英特尔开源BigDL起,已经有广泛的合作案例。在去年年中,戴金权的团队在Apache Spark和BigDL的基础上又构建了Analytics Zoo大数据分析和人工智能的平台。

  差不多是在BigDL开源半年后,戴金权开始着手Analytics Zoo的构建。他谈到,在跟很多客户合作BigDL时,他感到,BigDL、Tensorflow这些框架里最终的AI应用还是有很长的距离。

  应用开发本身是非常复杂的工作流水线,戴金权思考如何才能提供像Spark上的Streaming这样很方便地对特征进行处理的流水线,提供内置的模型、特征工程操作、迁移学习的流水线的支持。Analytics Zoo正是这样一个更高级别的数据分析+AI平台,能够利用Spark的各种流水线、内置模型、特征操作等,方便用户构建深度学习端到端应用。

  某种意义上它是Spark和BigDL的扩充,它的目的是方便用户开发基于大数据端到端学习的应用,除了内置的模型、内置的一些非常简单的操作之外,它里面还提供了大量的高级的流水线的支持,能够使用Spark DataFrames、ML Pipelines的深度学习流水线,能够通过迁移学习的API构建API模型的定义,在这个基础上就可以很方便地将我们提供的Model Zoo的模型甚至端到端的参考应用,比如说异常检测等等,可以通过非常少的代码,使用这些高级的API,并且使用内置的模型,很方便地就能将一个端到端的大数据分析加上深度学习的应用构建起来。

  合作案例

  戴金权介绍了用户如何使用Analytics Zoo for BigDL在他们现有的大数据集群,通常是有非常大规模的至强的处理器上应用大数据的集群或者平台上,构建新的深度学习的应用。

  目前,BigDL和Analytics Zoo的技术能在包括AWS、阿里云、百度云等几乎所有的公有云平台上使用。

  第一个例子是英特尔与京东展开的合作。京东有大概几亿张的图片存储在分布式存储系统当中,他们想要把这几亿张图片从大数据系统里面读出来,然后对它进行处理。在这个案例中,用了SSD的模型来试图识别图片里面有什么物品,探后再用DeepBit的模型,将物品的特征提取出来。原来京东已经在GPU卡上做了一些应用,但是这里面有一些问题,包括如何处理端到端数据的流水线,包括如何提高端到端处理的效率。戴金权介绍到,“当我们把整个处理的应用迁移到Spark和BigDL平台上,可以看到它提升了很多的运维的效率,使用BigDL/Spark在Intel Xeon(英特尔至强可扩展处理器)集群有效扩展,取得相对于GPU集群3.8倍性能提升。”

  AI的三个核心点在大数据、算法、算力,现在很多人认为要有足够的AI算力,非GPU不可。京东的这个案例体现了BigDL与英特尔至强可扩展处理器配合,对整体深度学习表现的提升。戴金权告诉雷锋网,京东这个案例一开始是建立在多个GPU之上的,他们的团队在Caffe上训练,在开发、部署、性能方面都碰到问题。英特尔将京东方面迁移到Spark上面,跑在1200个逻辑的核,一台服务器支持50个逻辑,大致用了24台服务器,利用Spark这样的端到端流水线处理,与之前用GPU的方案相比可以达到差不多3.8倍的性能提升。

  第二个案例是英特尔和MLSListings合作的案例,他们是加州的不动产交易商,他们可以识别用户浏览的房屋图片,为用户推荐相似的房屋。这套系统构建在Microsoft Azure上。

  第三个案例是和世界银行在AWS上合作。世界银行通过志愿者上传的世界各地的食物图片,帮助大家来分析在世界各地的物价水平。其中如何通过大数据处理对图片进行清洗、处理,再用迁移学习来构建图片分类模型是值得关注的问题。

  第四个案例是与UCSF的合作,通过3D的模型对医疗图象进行分类,首先对3D的MRI照片进行识别,然后对它进行分类,可以试图诊断膝盖上面的一些病症。

  第五个案例是们和Cray公司(美国做超级电脑的公司)合作。合作内容是做近期的降水云图的预测,通过Seq2Seq的模型,把过去一小时的卫星云图做了一个序列,输入到模型里面,能帮预测下一个小时每10分钟这个卫星云图的变化,通过这个来进行一些降水的分析。

  第六个案例是和GigaSpaces合作的通过基于自然语言处理对呼叫中心进行管理。当有用户打电话进来,把其语音转成文本以后,导入到BigDL系统里面,然后对它进行实时的流式处理,使用BigDL上的文本分类模型可以知道用户打电话进来是为什么,他是Windows出了问题还是Mac出了问题,自动就会把呼叫中心的电话录入到不同的部门。

  最后,戴金权总结到,英特尔致力于端到端全栈人工智能解决方案。BigDL和Anaylitics Zoo致力于架起大数据和人工智能之间的桥梁,当用户已有基于Apache的大数据集群,就可以很方便地进行大数据分析和上人工智能应用,不仅能够有更高的资源利用率,还可以提升端到端的开发效率,以及提升部署效率。

0
相关文章