近日,intel 开源了 bigdl,这是一个基于 apache spark 的分布式深度学习库。使用 bigdl ,用户可以将他们的深度学习应用程序作为标准的 spark 程序,它可以直接运行在现有的 spark 或 hadoop 集群之上。
特性:
丰富的深度学习支持。bigdl 模仿 torch,提供对深度学习的全方位支持,包括数值计算(通过tensor)和高层次神经网络。此外,用户可以使用 bigdl 将预训练的 caffe 或 torch 模型加载到 spark 程序中。
极其高的性能。为了达到高性能,bigdl 在每个 spark 任务中使用 intel mkl和多线程编程。因此,它比单节点 xeon 上的开箱即用的 caffe、torch 或 tensorflow 快几个数量级。
有效地横向扩展。 bigdl 可以通过利用 apache spark 以及高效实施同步 sgd, 全面减少 spark 上的通信,有效地向外扩展,以“大数据规模”执行数据分析。
使用场景:
你想要在在大数据云(hadoop/spark)分析(存储在如 hdfs、hbase、hive上的)海量数据。
你想向你的大数据(spark)程序和/或工作流添加深度学习功能(训练或者预测)。
你想利用已有的 hadoop/spark 集群来运行深度学习程序,然后可以与其他工作负载动态共享(例如,etl、数据仓库、功能引擎、经典机器学习、图像分析等)。