导读 Intel开源了基于Apache Spark的分布式深度学习框架BigDL,BigDL借助现有的Spark集群来运行深度学习计算,并简化存储在Hadoop中的大数据集的数据加载。

在Xeon服务器上运行的测试结果表明,BigDL比其他开源框架Caffe、Torch和TensorFlow有显著的性能提升。BigDL速度可与主流GPU匹敌,而且能够扩展到数十个Xeon服务器,BigDL库支持Spark 1.5、1.6和2.0版本,并容许将深度学习嵌入在现有的Spark程序中,BigDL库中有把Spark RDDs转换为BigDL DataSet的方法,并且可以直接与Spark ML Pipelines一起使用。

对于模型训练,BigDL使用了在多个执行器中执行单个Spark任务的同步小批量SGD(Stochastic Gradient Descent),每个执行器运行一个多线程引擎并处理一部分微批次数据,在当前版本中,所有的训练和验证数据都存储到存储器中。

BigDL使用Scala开发,并参考了Torch的模型;像Torch一样,它有一个使用Intel MKL库进行计算的Tensor类,Intel MKL(Math Kernel Library)是由一系列为计算优化过的小程序所组成的库,这些小程序从FFT(快速傅立叶变换)到矩阵乘法均有涉及,常用于深度学习模型训练,Module是另一个从Torch借鉴而来的概念,它的灵感来自Torch的nn package,Module代表单独的神经网络层、Table和Criterion。

BigDL提供了一个AWS EC2镜像和一些示例,比如使用卷积神经网络进行文本分类,还有图像分类以及如何将在Torch或Caffe中预训练过的模型加载到Spark中进行预测计算,来自社区的请求主要包括提供对Python的支持和MKL-DNN(MKL的深度学习扩展)。

原文来自:http://www.linuxidc.com/Linux/2017-01/139699.htm

本文地址:http://www.linuxprobe.com/base-spark-bigdl.html编辑:张宏宇,审核员:逄增宝