数据科学家,指采用科学方法,运用数据挖掘工具寻找新的数据洞察的工程师。这个概念比较广泛,在不同的行业、不同的公司里,数据科学家的工作可能都是不同的。如我们所见,数据科学家需要掌握的能力一般有:数学、计算机科学、SQL、统计、建模和编程、Hadoop、可视化……当然,这并不是全部。而且随着更多新技术的出现,数据科学家所需要掌握的能力也将更多。
深度学习也可以说是数据科学家需要掌握的技能之一。深度学习是基于数据的,任何一种深度学习模型都需要大量的数据进行训练,才能达到我们想要的推理、分析、预测等一系列结果。某种程度上讲,深度学习也是数据科学的一部分。
大数据与深度学习间存在断层
业界对深度学习的推崇自然不用多说,我们几乎每周都会看到深度学习在某个领域的突破性成果,也有很多亮点新闻。不过这些成果,大多来自于深度学习社区中的顶尖研究人员,如大学教授、博士等,也就是我们所说的“学术派”。他们的研究使深度学习得到了长足的发展,使深度学习的价值能够被更多人接受。
现在有越来越多的企业希望将深度学习嵌入到实际生产应用中,希望提高自己的竞争力。这其中,很多企业自身都拥有海量的、多样化的数据,也就是我们常说的大数据,这些与大数据打了很长时间交道的用户、数据科学家、数据分析师,在以Hadoop、Spark等为中心的平台帮助下,可以很好地管理数据、对数据进行SQL处理、流分析,甚至进行数据挖掘。但他们往往对深度学习的掌握不如“学术派”一般透彻——当然,作为处于应用层的“工程派”,他们或许根本无需理解得那么透彻,但想用好深度学习仍有困难。在英特尔高级首席工程师、大数据技术全球CTO戴金权先生看来,关于大数据的这一整套工具和架构,与深度学习的架构之间是存在断层的。
“在与许多客户和用户的合作中,我们发现了这一现象。” 戴金权说,“我们希望能够帮助我们的用户,特别是普通用户跨越这个断层,让他们能够使用比较熟悉,对他们来说更加友好的框架和软硬件架构,帮助他们在现有的应用环境当中使用新的深度学习技术。因此,我们构建了BigDL项目,并将其开源。”
关于BigDL
BigDL是一个将深度学习和大数据平台结合,面向Apache Spark的开源、分布式深度学习框架。正如戴金权先生所说,其目的是使深度学习更易于大数据和数据科学社区的使用。BigDL可以帮助用户直接在已有的Hadoop/Spark集群上运行深度学习工作负载,无需特意将数据从大数据集群上拷贝到独立的深度学习集群上进行训练,充分了利用现有资源。也可在存储数据的同一个集群上使用深度学习来进行分析,重用现有的大数据工具(如Spark工作流)构建大规模深度学习应用。除了对大数据生态系统的无缝集成外,它的功能亮点还包括:
极高的性能与扩展能力。为了实现极高的性能,BigDL使用硬件指令(如AVX-512)、MKL数学库以及多线程编程等。因此BigDL比其他开源框架如Caffe、Torch和TensorFlow有明显的性能提升。充分利用Spark架构,支持高效横向扩展、大规模分布式训练和推理,为BigDL提供了超高的扩展能力。
丰富的深度学习支持。用户可以在BigDL中直接使用现有的TensorFlow、Keras、Caffe、Torch模型,将现有单节点训练的模型无缝部署与大规模、分布式应用中,帮助研究人员和生产环境中的工程师共享模型。BigDL内置了大量开箱即用的高级算法和模型,可以透明、无缝地运行在大规模、分布式环境中。
BigDL于2016年12月30日开源,目前共发布了4个版本。该项目自开源以来收到了众多英特尔以外的社区用户如阿里巴巴、Cloudera等的代码贡献,在社区用户与英特尔开发人员的共同努力下得到了长足的发展。以京东、MasterCard、MLSListings等为代表的众多用户,借助BigDL构建应用,获得了更高的资源利用率、更低的成本、更高效的开发部署效率及性能提升。
总结
深度学习已成为企业创新、提高自身竞争力的有力工具,也是深入挖掘大数据商业价值的一大助力。但是,诚如戴金权先生所说,普通大数据用户、数据科学家与深度学习之间的鸿沟是存在的。目前业内也有很多类似的框架或工具,通过集成相关框架,预置算法与模型,帮助用户更简单地构建深度学习应用,提高深度学习易用性。BigDL的独到之处在于帮助深度学习完成对大数据生态的无缝衔接,直接在现有大数据集群上运行深度学习工作负载,在充分利用现有资源的同时,拥有更高的效率。可以说,BigDL很好地填补了大数据与深度学习间的断层,也能帮助数据科学家更快地迈向深度学习。
来源:it168