分布式深度学习 CaffeOnSpark

码农软件 · 软件分类 · 神经网络/人工智能 · 2019-10-15 11:14:20

软件介绍

许多现有的DL框架需要一个分离的集群进行深度学习,而一个典型的机器学习管道需要创建一个复杂的程序(如图1)。分离的集群需要大型的数据集在它们之间进行传输,从而系统的复杂性和端到端学习的延迟不请自来。

图1 分离集群上复杂程序的ML Pipeline


雅虎认为,深度学习应该与现有的支持特征工程和传统(非深度)机器学习的数据处理管道在同一个集群中,创建CaffeOnSpark意在使得深度学习训练和测试能被嵌入到Spark应用程序(如图2)中。

图2 单一集群上单程序的ML Pipeline


CaffeOnSpark:API&配置和CLI

CaffeOnSpark被设计成为一个Spark深度学习包。Spark MLlib支持各种非深度学习算法用于分类、回归、聚类、推荐等,但目前缺乏深度学习这一关键能力,而CaffeOnSpark旨在填补这一空白。CaffeOnSpark API支持dataframes,以便易于连接准备使用Spark应用程序的训练数据集,以及提取模型的预测或中间层的特征,用于MLLib或SQL数据分析。

图3 CaffeOnSpark成为一个Spark深度学习package

系统架构:

CaffeOnSpark系统架构如图4所示(和之前相比没有变化)。Spark executor中,Caffe引擎在GPU设备或CPU设备上,通过调用一个细颗粒内存管理的JNI层。不同于传统的Spark应用,CaffeOnSpark executors之间通过MPI allreduce style接口通信,通过TCP/以太网或者RDMA/Infiniband。这个Spark+MPI架构使得CaffeOnSpark能够实现和专用深度学习集群相似的性能。

许多深度学习工作是长期运行的,处理潜在的系统故障很重要。CaffeOnSpark支持定期快照训练状态,因此job出现故障后能够恢复到之前的状态。 

雅虎已经在多个项目中应用CaffeOnSpark,如Flickr小组通过在Hadoop集群上用CaffeOnSpark训练数百万张照片,显著地改进图像识别精度。现在深度学习研究者可以在一个AWS EC2云或自建的Spark集群上进行测试CaffeOnSpark。

本文地址:https://codercto.com/soft/d/16801.html

高性能HTML5

高性能HTML5

Jay Bryant、Mike Jones / 奇舞团 / 电子工业出版社 / 2014-5

《高性能html5》为读者讲解了如何用html5 从一开始就设计一个高性能的网站,以及如何对已有网站进行改良,使得它们具备优越的性能。《高性能html5》中总结了许多实践经验、关键技巧,并提供了丰富的示例,作者有意无意地将软件工程以及前端开发技术之道隐藏于朴实的描述中。 通过学习《高性能html5》,读者能够掌握如何创建自己的高性能网站。《高性能html5》适合于想创建自己网站的初学者,同样......一起来看看 《高性能HTML5》 这本书的介绍吧!

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具