科技行者 7月9日 北京消息(文/黄当当):英特尔在很多重要的AI会议,都会提到一个专业名词——BigDL。没错,是英特尔自己造的词。有趣的是,你可以将它拆分理解为Big Data+Deep Learning——大数据+深度学习,事实上,BigDL的目标正是降低普通大数据用户在使用深度学习进行数据分析和构建人工智能应用的门槛。
作为AI民主化战略的重要实践之一,英特尔在2016年的最后一天,选择将基于Apache Spark的分布式深度学习库BigDL开源。目前,这一项目受到了京东、AWS、世界银行等众多行业用户的欢迎,是英特尔推动深度学习民主化的重磅武器,也是英特尔AI开发三大工具之一。
究竟BigDL神奇之处在哪里? 就在近日举办的2018 全球人工智能与机器人峰会(CCF-GAIR)上,我们与BigDL项目的负责人,同时也是英特尔高级首席工程师、大数据技术全球CTO戴金权进行了一次深度对话。
关于BigDL的三个疑问
1、究竟什么是BigDL?
这里需要提一下背景,近年来Spark已经成为了业内大数据处理分析的主流计算框架,它有大量的组件来提供丰富的功能。BigDL是英特尔在Spark上构建的一个面向Apache Spark的开源、分布式的深度学习库。使用 BigDL,用户可以像编写标准 Spark 程序一样编写深度学习应用,并且可以直接将其运行在已有的 Spark 或 Hadoop 集群上。
英特尔希望将深度学习和大数据平台相结合,提供一个统一的大数据分析平台,使深度学习更易于普通的大数据用户和数据科学家使用。通俗来说,从大数据到Deep Learning ,BigDL帮助实现了跨越。
2、BigDL有什么优点,与TensorFlow和Caffe的区别?
BigDL 程序是作为标准的 Spark 程序编写的,并且不需要对底层 Hadoop/Spark 集群进行更改,因此它可以跟现有的大数据平台无缝衔接。
对于公司而言,这意味着可以直接在存储数据的同一个Hadoop/Spark集群上运行深度学习工作负载,使用深度学习来进行数据分析,不需要设置单独的训练集群,也无需在两个集群之间拷贝多版本的数据和模型,从而减少了端到端的学习延迟,并降低了总体成本。
从BigDL本身来说,它具备和主流深度学习框架Caffe、Torch、TensorFlow等相同的功能,并且为大数据平台或大数据集群、Hadoop集群、Spark集群进行了特别优化——这也正是BigDL和其他深度学习框架不一样的地方。目前Hadoop大数据平台上已经积累了大量用户,如果能让用户直接在hadoop现有平台进行深度学习,如此,简化Hadoop用户的AI之路。
除了成本节省之外,BigDL的另一个特点是可以大大降低Hadoop用户的AI学习成本,比如,通过重用Hadoop平台上的现有大数据工具和流程,包括工作流的管理、资源管理等,这样可以大大提高用户深度学习应用的开发效率以及应用部署的效率,还能提高端到端的数据处理分析效率。
目前,BigDL不仅能够与现有大数据生态系统无缝集成,还支持TensorFlow (TensorBoard)、Caffe、Torch等一系列现有深度学习框架,并且能够支持大量开箱即用的高级算法和模型,比如用于视觉处理的OpenCV、还有3D Convolution、Tree-LSTM等等。
3、BigDL能解决什么问题,有哪些应用?
目前,几乎所有的公有云平台,从AWS到阿里云等,用户都可以通过不同的方式使用到基于BigDL的技术。对于AWS、阿里云、京东云这种向客户提供深度学习平台的云服务厂商来说,他们能够让深度学习在集群上运行得更快速、更高效、更受用户欢迎。
在CCF-GAIR2018大会的首日演讲中,戴金权就带来几个例子,其中一个案例是英特尔与京东展开的合作。京东大概有几亿张图片存储在分布式存储系统当中,京东想要把这几亿张图片从系统中读取并处理,一开始京东是构建在GPU上,通过Caffe训练来进行分布式处理,但原来方案在开发、部署、端到端性能方面出现了问题,当迁移到运行Spark的BigDL上后,跑在1200个逻辑的核,一台服务器支持50个逻辑,大致用了24台服务器。利用Spark这样的端到端流水线处理,与之前用GPU的方案相比可以达到差不多3.8倍的性能提升。
除此之外,BigDL具有丰富的应用场景,包括电商、工业制造、3D医疗、情感分析等多个领域,比如欺诈交易侦测、工业制造中的产品缺陷检测、3D医疗影像分析、自然语言的情感分析等等。
真正推动AI民主化,解锁BigDL多个易用技能
BigDL项目在2016年12月30日正式在Github上开源,并且在Github上收到了众多社区用户对于该框架的代码贡献,用于BigDL的优化与迭代。
就在近日的2018 全球人工智能与机器人峰会上,戴金权又带来一个好消息:在Apache Spark和BigDL的基础上,又构建了一个大数据分析+AI平台——Analytics Zoo。从某种意义上讲,Analytics Zoo是Spark 和 BigDL上的扩充,目的是方便用户开发基于大数据、端到端的深度学习应用。
英特尔要推动人工智能的民主化,就要做到高易用性、高效扩展、更低的TCO以及卓越的性能,如此来看,BigDL已经具备某些特质,使深度学习更易于大数据用户和数据科学家使用:
1、在存储数据的同一个Hadoop/Spark集群上使用深度学习来分析大数据。深度学习需要对大量的数据进行分析,BigDL能够让用户在存储数据的集群上直接运行深度学习,略去数据拷贝、模型拷贝等复杂、低效的工作。
2、在大数据(Spark)程序和工作流之中增加深度学习功能。构建真正完整的深度学习、机器学习能力,需要在现有大数据的工作流里增加深度学习功能,而BigDL能和Spark无缝结合,可以直接在工作流里面处理数据。
3、利用已有的Hadoop/Spark集群来运行深度学习应用。BigDL是一个标准的Spark上应用,可以在现有Hadoop、Spark集群上直接运行。BigDL把所有相关库的文件打包到MKL架构,那么所有的EI都会被自动分发到机器和云平台上,在使用BigDL时就不需要安装任何额外的东西,让用户无痛使用BigDL。
4、与其他用户和任务动态共享计算资源。BigDL能直接在Hadoop、Spark集群上运行,和其他用户共享计算资源,还可以重新利用大数据平台现有的一整套机制,来很方便地运维、管理深度学习应用。
总而言之,BigDL不仅可以在Spark平台上和其他组件方便的交流,还能让企业建立起整套的端到端解决方案。其实,整个Hadoop生态环境也给用户提供了很多组件,包括管理机器、引入数据、存储数据以及分析等。这样一个更大的平台上,BigDL能够嵌入进去,让企业在现有的大数据生态上做研发,达到“深度学习民主化”。
当然,这还只是英特尔AI赋能其中的一小部分。正如戴金权所言,“英特尔一直致力于端到端、全栈式人工智能解决方案。在基于英特尔至强服务器的大规模的集群上,大家现有的数据架构基础设施,完全可以使用英特尔开发并开源的BigDL、Analytics Zoo的技术,在现有的大数据平台上构建新的大数据分析和人工智能的应用,提高资源利用率和端到端的开发效率,部署效率,同时,在端到端的性能上也会有非常大的优势。 ”
好文章,需要你的鼓励