作家
登录

微博深度学习平台架构和实践

作者: 来源: 2017-10-13 15:49:11 阅读 我要评论

微博深度进修平台支撑如下特点:

  • 便利易用:支撑数据输入、数据处理、模型练习、模型猜测等工作流,可以经由过程简单设备就能完成复杂机械进修和深度进修义务。特别是针对深度进修,仅需选择框架类型和计算资本范围,就能模型练习。
  • 灵活扩大:支撑通用的机械进修算法和模型,以及用户自定义的算法和模型。
  • 多种深度进修框架:今朝支撑TensorFlow、Caffe等多种主流深度进修框架,并进行了针对性优化。
  • 异构计算:支撑GPU和CPU进行模型练习,进步模型练习的效力。
  • 资本治理:支撑用户治理、资本共享、功课调剂、故障恢复等功能。
  • 模型猜测:支撑一键安排深度进修模型在线猜测办事。

微博深度进修平台架构和实践

微博深度进修平台是微博机械进修平台的重要构成部分,除持续微博机械进修平台的特点和功能以外,支撑TensorFlow、Caffe等多种主流深度进修框架,支撑GPU等高机能计算集群。微博深度进修平台架构如图1所示。

图1 微博深度进修平台架构

下面将以机械进修工作流、控制中间、深度进修模型练习集群、模型在线猜测办事等典范模块为例,介绍微博深度进修平台的实践。

机械进修工作流WeiFlow

微博深度进修和机械进修工作流中,原始数据收集、数据处理、特点工程、样本生成、模型评估等流程占据了大年夜量的时光和精力。为了可以或许高效地端到端进行深度进修和机械进修的开辟,我们惹人了微博机械进修工作流框架WeiFlow。

WeiFlow的设计初志就是将微博机械进修流的开辟简单化、傻瓜化,让营业开辟人员大年夜纷纷复杂的数据处理、特点工程、模型工程中摆脱出来,将宝贵的时光和精力投入到营业场景的开辟和优化傍边,彻调剂放营业人员的临盆力,大年夜幅晋升开辟效力。

WeiFlow的出生源自于微博机械进修的营业需求。在微博的机械进修工作流中(如图2所示),多种数据流经由及时数据处理,存储至特点工程并生成离线的原始样本。在离线体系,对原始样本进行各种各样的数据处理、特点处理、特点映射,大年夜而生成练习样本;营业人员根据实际营业场景(排序、推荐),选择不合的算法模型,进行模型练习、猜测、测试和评估;待模型迭代知足请求后,经由过程主动安排将模型文件和映射规矩安排到线上。线上体系根据模型文件和映射规矩,大年夜特点工程中拉取相干特点,根据映射规矩进行预处理,生成可用于猜测的样本格局,进行线上及时猜测,最终将猜测结不雅(用户对微博内容的兴趣程度)输出,供线上办事调用。

为了应对微博多样的计算情况,WeiFlow采取了双层的DAG义务流设计,如图3所示。外层的DAG由不合的Node构成,每一个Node是一个内层的DAG,具备自力的履行情况,即上文说起的Spark、TensorFlow、Hive、Storm、Flink等计算引擎。

图3 WeiFlow双层DAG义务流设计

外层DAG设计的初志是应用各个计算引擎的特长,同时解决各个计算引擎间的依附关系和数据传输问题。内层的DAG,应用引擎的特点与优化机制,实现不合的抽象作为DAG上钩算模块之间数据交互的载体。

在应用方面,营业人员根据事先商定好的规范和格局,将双层DAG的计算逻辑定义在XML设备文件中。根据用户在XML指定的依附关系和处理模块,WeiFlow主动生成DAG义务流图,并在运行时阶段调用处理模块的实现来完采取户指定的义务流。经由过程在XML设备文件中将所需计算模块按照依附关系堆叠,即可以搭积木的方法完成设备化、模块化的流水线功课开辟。

控制中间WeiCenter

单机多GPU卡:深度进修模型练习大年夜部分情况下单机运算,且几乎完全依附GPU,是以选用能挂载2/4/8块GPU的办事器,尽量进步单机运算才能。

控制中间WeiCenter的目标就是简单、便利、易用,让大年夜简便利地应用微博深度进修平台。下面将介绍控制中间的功课治理、数据治理和调剂治理等部分。

数据治理:昔时夜数据的数据量,天天按P级增长,应用人员天天上百人时,数据治理就显得尤为重要。如不雅模型练习的集群和数据地点的集群,不是同一个集群,若何高效地将数据同步到模型练习的集群是一个可贵。并且在完成模型练习后,能主动根据练习结不雅作出评估,对练习数据进行删除。因为应用集群的开辟人员本质不齐,你会发明老是有很多冗余数据没删除,并且总有无用数据生成,这个时刻须要一个同一的数据治理平台,去束缚大年夜家生成数据的同时删除数据,去付啦媒台上探测长时光无拜访的数据并进行确认清理。

调剂治理:功课有多种分类,按重要水等分:高、中、低;按占用资本量分:占用多、占用一般、占用少;按调剂器分:Yarn、Mesos、Kubernetes等。Spark、Hadoop应用Yarn调剂解决了优先级高的功课和资本占用多功课之间的抵触;TensorFlow应用成熟的Kubernetes或Mesos调剂TensorFlow节点进行GPU集群化义务治理;通俗离线功课和办事安排应用Mesos进行资本调剂。控制中间集成了多种调剂器,应用各类成熟的解决筹划,简化了功课负责调剂这一难题。

总之,控制中间负责用户权限控制、功课图依附治理、数据依附治理等,调剂办事负责具体的功课履行、资本抽象、资本治理。控制中间和调剂办事如图4所示。

图4 控制中间和调剂办事

深度进修模型练习集群

微博深度进修练习集群与传统HPC集群有重大年夜差别,分别表如今计算办事器选型、分布式练习、收集设备、存储体系、功课调剂体系。

分布式练习:如不雅练习时光长或者样本范围大年夜,跨越单台办事器才能时,须要支撑分布式练习。以TensorFlow分布式运行方法为例进行解释,如图5所示。一个TensorFlow分布式法度榜样对应一个抽象的集群,集群(cluster)由工作节点(worker)和参数办事器(parameter server)构成。工作节点(worker)承担矩阵乘、向量加等具体计算义务,计算出响应参数(weight和bias),并把参数汇总履新数办事器;参数办事器(parameter server)把大年夜浩瀚工作节点收集参数汇总并计算,并传递给响应工作节点,由工作节点进行下一轮计算,如斯轮回来去。


  推荐阅读

  十张图读懂PHP、Python、 Ruby三大语言的差异

图1、PHP vs Python vs Ruby: 市场份额Winner - PHP图2、PHP vs Python vs Ruby: 主流网站应用情况Winner - 平局【编辑推荐】Go说话大年夜神亲述:历七劫方可成为法度榜样员!2017年10月编程>>>详细阅读


本文标题:微博深度学习平台架构和实践

地址:http://www.17bianji.com/lsqh/37891.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)