Intel开源了基于Apache Spark的分布式深度学习框架BigDL

简介:

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的深度学习扩展)。

本文转自d1net(转载)

相关文章
|
SQL 分布式计算 大数据
大数据Spark框架概述
大数据Spark框架概述
220 0
|
15天前
|
SQL 分布式计算 Java
Spark SQL向量化执行引擎框架Gluten-Velox在AArch64使能和优化
本文摘自 Arm China的工程师顾煜祺关于“在 Arm 平台上使用 Native 算子库加速 Spark”的分享,主要内容包括以下四个部分: 1.技术背景 2.算子库构成 3.算子操作优化 4.未来工作
|
6月前
|
分布式计算 资源调度 Shell
如何开始使用Spark框架?
【8月更文挑战第31天】如何开始使用Spark框架?
115 2
|
6月前
|
SQL 机器学习/深度学习 分布式计算
Spark框架
【8月更文挑战第31天】Spark框架
58 2
|
9月前
|
分布式计算 Hadoop 大数据
分布式计算框架比较:Hadoop、Spark 与 Flink
【5月更文挑战第31天】Hadoop是大数据处理的开创性框架,专注于大规模批量数据处理,具有高扩展性和容错性。然而,它在实时任务上表现不足。以下是一个简单的Hadoop MapReduce的WordCount程序示例,展示如何统计文本中单词出现次数。
247 0
|
9月前
|
机器学习/深度学习 分布式计算 数据处理
在Python中应用Spark框架
在Python中应用Spark框架
90 1
|
9月前
|
SQL 分布式计算 Hadoop
Spark分布式内存计算框架
Spark分布式内存计算框架
238 0
|
SQL 存储 分布式计算
Storm与Spark、Hadoop三种框架对比
Storm与Spark、Hadoop这三种框架,各有各的优点,每个框架都有自己的最佳应用场景。所以,在不同的应用场景下,应该选择不同的框架。
529 0
Storm与Spark、Hadoop三种框架对比
|
9月前
|
分布式计算 Hadoop Java
Spark_Day01:Spark 框架概述和Spark 快速入门
Spark_Day01:Spark 框架概述和Spark 快速入门
114 0
|
SQL 分布式计算 算法
【大数据处理框架】Spark大数据处理框架,包括其底层原理、架构、编程模型、生态圈
【大数据处理框架】Spark大数据处理框架,包括其底层原理、架构、编程模型、生态圈
568 0

推荐镜像

更多