一种兼容多种算法框架的机器学习平台制造技术

技术编号:19859228 阅读:18 留言:0更新日期:2018-12-22 12:04
本发明专利技术公开一种兼容多种算法框架的机器学习平台,该平台通过搭建一个集群兼容所有主流的机器学习框架,统一进行资源调度和用户隔离。主流的机器学习框架搭建在Hadoop+Spark的集群之上,并使用RDD作为数据存储。本发明专利技术优点如下:一、利用yarn进行统一的资源管理,因此继承所有yarn的优点;二、使用Spark作为统一底层计算框架,Spark RDD作为统一数据存储,因此继承所有Spark优点;三、调度多种计算框架,支持所有框架的原生优点,包括同步/异步训练,模型/数据并行计算,在线预测等;四、完成了异构计算框架的整合;五、底层支持CPU和GPU。

【技术实现步骤摘要】
一种兼容多种算法框架的机器学习平台
本专利技术涉及一种机器学习平台,尤其涉及一种兼容多种算法框架的机器学习平台。
技术介绍
机器学习已经发展了几十年,在不同时期,为了解决不同的场景的问题,出现了多种机器学习框架,如传统的机器学习框架ScikitLearn,分布式并行计算框架SparkML,以及深度学习框架TensorFlow,Caffe,IntelBigDL等。在实际的场景中,往往需要同时使用这些异构的计算框架解决具体的问题,来达到最优的效果。如果为每一种计算框架都搭建一个单独的集群,这样做存在较大的硬件资源浪费,开发和运维成本也非常高,并且不利于数据共享。
技术实现思路
本专利技术的目的在于通过一种兼容多种算法框架的机器学习平台,来解决以上
技术介绍
部分提到的问题。为达此目的,本专利技术采用以下技术方案:一种兼容多种算法框架的机器学习平台,该平台通过搭建一个集群兼容所有主流的机器学习框架,统一进行资源调度和用户隔离。特别地,所述主流的机器学习框架搭建在Hadoop+Spark的集群之上,并使用RDD作为数据存储。特别地,所述通过搭建一个集群兼容所有主流的机器学习框架,统一进行资源调度和用户隔离,具体包括:Spark原生支持SparkML;对于深度并行学习框架TensorFlow、Caffe以及BigDL,在启动每个SparkExecutor之后:启动TensorFlow,Caffe,BigDLworker,并且为数据和事件添加侦听;通过各个框架对应的feed机制,将SparkRDD数据从包括但不限于HDFS在内的存储介质进行读取并发送到TensorFlow,Caffe,BigDL;各个框架进行分布式并行计算,并自动进行模型的跨节点同步;结算结束后,关闭TensorFlow,Caffe,BigDLworker。特别地,对于机器学习框架ScikitLearn,并不支持分布式计算,但是同样可以利用yarn的调度机制,启动单个的SparkExecutor;在启动SparkExecutor后,将RDD数据转换为ScikitLearn所需数据类型进行单机计算,计算完成后将模型或者数据表写回包括但不限于HDFS在内的存储介质。本专利技术提出的兼容多种算法框架的机器学习平台优点如下:一、利用yarn进行统一的资源管理,因此继承所有yarn的优点;二、使用Spark作为统一底层计算框架,SparkRDD作为统一数据存储,因此继承所有Spark优点;三、调度多种计算框架,支持所有框架的原生优点,包括同步/异步训练,模型/数据并行计算,在线预测等;四、完成了异构计算框架的整合;五、底层支持CPU和GPU。附图说明图1为本专利技术实施例提供的兼容多种算法框架的机器学习平台示意图;图2为本专利技术实施例提供的兼容多种算法框架的机器学习平台的工作原理示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部内容。除非另有定义,本文所使用的所有的技术和科学术语与属于本专利技术的
的技术人员通常理解的含义相同。本文中在本专利技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本专利技术。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。本实施例中兼容多种算法框架的机器学习平台通过搭建一个集群兼容所有主流的机器学习框架,统一进行资源调度和用户隔离。如图1所示,在本实施例中所述主流的机器学习框架搭建在Hadoop+Spark的集群之上,并使用RDD作为数据存储。需要说明的是,图中各英文名词均为计算机领域的惯用技术术语,在计算机领域的释义唯一,对本领域的普通技术人员来说无任何异议,因此,在此就不再赘述。具体的,如图2所示,通过搭建一个集群兼容所有主流的机器学习框架,统一进行资源调度和用户隔离,具体包括:Spark原生支持SparkML;对于深度并行学习框架TensorFlow、Caffe以及BigDL,在启动每个SparkExecutor之后:启动TensorFlow,Caffe,BigDLworker,并且为数据和事件添加侦听;通过各个框架对应的feed机制,将SparkRDD数据从包括但不限于HDFS在内的存储介质进行读取并发送到TensorFlow,Caffe,BigDL;各个框架进行分布式并行计算,并自动进行模型的跨节点同步;结算结束后,关闭TensorFlow,Caffe,BigDLworker。其中,图中各英文名词均为计算机领域的惯用技术术语,在计算机领域的释义唯一,对本领域的普通技术人员来说无任何异议,因此,在此就不再赘述。值得一提的是,对于机器学习框架ScikitLearn,并不支持分布式计算,但是同样可以利用yarn的调度机制,启动单个的SparkExecutor;在启动SparkExecutor后,将RDD数据转换为ScikitLearn所需数据类型进行单机计算,计算完成后将模型或者数据表写回包括但不限于HDFS在内的存储介质。本专利技术提出的技术方案优点如下:一、利用yarn进行统一的资源管理,因此继承所有yarn的优点;二、使用Spark作为统一底层计算框架,SparkRDD作为统一数据存储,因此继承所有Spark优点;三、调度多种计算框架,支持所有框架的原生优点,包括同步/异步训练,模型/数据并行计算,在线预测等;四、完成了异构计算框架的整合;五、底层支持CPU和GPU。本领域普通技术人员可以理解实现上述实施例中的全部部分是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。注意,上述仅为本专利技术的较佳实施例及所运用技术原理。本领域技术人员会理解,本专利技术不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本专利技术的保护范围。因此,虽然通过以上实施例对本专利技术进行了较为详细的说明,但是本专利技术不仅仅限于以上实施例,在不脱离本专利技术构思的情况下,还可以包括更多其他等效实施例,而本专利技术的范围由所附的权利要求范围决定。本文档来自技高网
...

【技术保护点】
1.一种兼容多种算法框架的机器学习平台,其特征在于,该平台通过搭建一个集群兼容所有主流的机器学习框架,统一进行资源调度和用户隔离。

【技术特征摘要】
1.一种兼容多种算法框架的机器学习平台,其特征在于,该平台通过搭建一个集群兼容所有主流的机器学习框架,统一进行资源调度和用户隔离。2.根据权利要求1所述的兼容多种算法框架的机器学习平台,其特征在于,所述主流的机器学习框架搭建在Hadoop+Spark的集群之上,并使用RDD作为数据存储。3.根据权利要求2所述的兼容多种算法框架的机器学习平台,其特征在于,所述通过搭建一个集群兼容所有主流的机器学习框架,统一进行资源调度和用户隔离,具体包括:Spark原生支持SparkML;对于深度并行学习框架TensorFlow、Caffe以及BigDL,在启动每个SparkExecutor之后:启动TensorFlow,Caffe,BigDLworker,并且为数据和事件添...

【专利技术属性】
技术研发人员:王峰
申请(专利权)人:无锡雪浪数制科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1