深度学习平台介绍:

什么是深度学习框架?

深度学习框架是进行深度学习的工具。简单来说,一套深度学习框架就是一套积木,各个组件就是某个模型或算法;开发者通过简单设计和组装就能获得自己的一套方案。深度学习框架的出现降低了深度学习门槛。开发者不需要编写复杂的神经网络代码,只需要根据自己的数据集,使用已有模型通过简单配置训练出参数。

TensorFlow、Caffe和MXNet是三大主流的深度学习开源框架:TensorFlow的优势是社区最活跃,开源算法和模型最丰富;Caffe则是经典的图形领域框架,使用简单,在科研领域占有重要地位;MXNet在分布式性能上表现优异。PaddlePaddle、鲲鹏、Angel则是百度、阿里、腾讯分别推出的分布式计算框架。

2015年底,Google开源了TensorFlow深度学习框架,可以让开发者方便地组合CNN、RNN等模块实现复杂的神经网络模型。TensorFlow是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。

2016年,百度开源了PaddlePaddle(PArallel Distributed Deep LEarning 并行分布式深度学习)深度学习框架。PaddlePaddle具有易用,高效,灵活和可伸缩等特点,为百度内部多项产品提供深度学习算法支持。

什么是深度学习平台?

深度学习平台就是整合深度学习各环节,为开发者提供一体化服务的平台。深度学习平台能够加快深度学习的开发速度,缩减迭代周期;同时,深度学习平台能够将计算能力、模型开发能力共享,提升开发效率和业务效果,也能够将资源合理调度,提高资源利用率。

百度深度学习平台是一个面向海量数据的深度学习平台,基于PaddlePaddle和TensorFlow开源计算框架,支持GPU运算,为深度学习技术的研发和应用提供可靠性高、扩展灵活的云端托管服务。通过百度深度学习平台,不仅可以轻松训练神经网络,实现情感分析、机器翻译、图像识别,也可以利用百度云的存储和虚拟化产品直接将模型部署至应用环境。

 微博深度学习平台架构

机器学习工作流WeiFlow

WeiFlow的设计初衷就是将微博机器学习流的开发简单化、傻瓜化,让业务开发人员从纷繁复杂的数据处理、特征工程、模型工程中解脱出来,将宝贵的时间和精力投入到业务场景的开发和优化当中,彻底解放业务人员的生产力,大幅提升开发效率。

控制中心WeiCenter

控制中心WeiCenter的目标就是简单、方便、易用,让大家便利地使用微博深度学习平台。下面将介绍控制中心的作业管理、数据管理和调度管理等部分。

  • 作业管理:我们在进行深度学习、大规模机器学习、实时处理的过程中,由于需要各种不同框架的配合使用共同完成一个任务,比如TensorFlow适合进行高性能学习、Spark适合大规模亿维特征训练、Storm或者Flink适合实时特征生成以及实时模型生成等,将这些结合到一起才能完成从离线训练到线上实时预测。以前这需要开发者去学习各种框架复杂的底层开发,现在通过控制中心选择不同的作业类型,可以方便地生成各种类型的作业任务。用户只需要在可视化UI上进行作业类型选择、数据源选择、输出目的地选择或者使用WeiFlow进行编程,就能生成一个高大上的深度学习或机器学习作业。

  • 数据管理:当大数据的数据量,每天按P级增长,使用人员每天上百人时,数据管理就显得尤为重要。如果模型训练的集群和数据所在的集群,不是同一个集群,如何高效地将数据同步到模型训练的集群是一个难点。并且在完成模型训练后,能自动根据训练结果作出评估,对训练数据进行删除。由于使用集群的开发人员素质不齐,你会发现总是有很多冗余数据没删除,而且总有无用数据生成,这个时候需要一个统一的数据管理平台,去约束大家生成数据的同时删除数据,去各个平台上探测长时间无访问的数据并进行确认清理。

  • 调度管理:作业有多种分类,按重要程度分:高、中、低;按占用资源量分:占用多、占用一般、占用少;按调度器分:Yarn、Mesos、Kubernetes等。Spark、Hadoop利用Yarn调度解决了优先级高的作业和资源占用多作业之间的矛盾;TensorFlow利用成熟的Kubernetes或Mesos调度TensorFlow节点进行GPU集群化任务管理;普通离线作业和服务部署利用Mesos进行资源调度。控制中心集成了多种调度器,利用各种成熟的解决方案,简化了作业负责调度这一难题。

  • 深度学习模型训练集群

    • 单机多GPU卡:深度学习模型训练大部分情况下单机运算,且几乎完全依靠GPU,因此选用能挂载2/4/8块GPU的服务器,尽量提高单机运算能力。

    • 分布式训练:如果训练时间长或者样本规模大,超过单台服务器能力时,需要支持分布式训练。以TensorFlow分布式运行方式为例进行说明,如图5所示。一个TensorFlow分布式程序对应一个抽象的集群,集群(cluster)由工作节点(worker)和参数服务器(parameter server)组成。工作节点(worker)承担矩阵乘、向量加等具体计算任务,计算出相应参数(weight和bias),并把参数汇总到参数服务器;参数服务器(parameter server)把从众多工作节点收集参数汇总并计算,并传递给相应工作节点,由工作节点进行下一轮计算,如此循环往复。

转载于:https://www.cnblogs.com/zyt-bg/p/10989275.html

微博深度学习平台架构和实践相关推荐

  1. 感悟:微博深度学习平台架构和实践

    TensorFlow.Caffe和MXNet是三大主流的深度学习开源框架:TensorFlow的优势是社区最活跃,开源算法和模型最丰富:Caffe则是经典的图形领域框架,使用简单,在科研领域占有重要地 ...

  2. 云计算深度学习平台架构与实践的必经之路

    定义云深度学习平台什么是云深度学习?随着机器学习的发展,单机运行的机器学习任务存在缺少资源隔离.无法动态伸缩等问题,因此要用到基于云计算的基础架构服务.云机器学习平台并不是一个全新的概念,Google ...

  3. 独家揭秘:微博深度学习平台如何支撑4亿用户愉快吃瓜?

    随着深度学习在微博业务场景中的广泛使用,深度学习平台也遇到一些挑战:在离线训练方面,各业务方需求丰富多样,任务管理纷繁复杂,大数据与大模型带来训练时长的压力:在线推理方面,基于模型服务的特殊性,如何在 ...

  4. 打造企业级云深度学习平台——小米云深度学习平台的架构设计与实现

    作者:陈迪豪,小米深度学习工程师,负责小米云深度学习平台的架构和实现,目前专注于TensorFlow和Kubernetes社区. 责编:何永灿,欢迎人工智能领域技术投稿.约稿.给文章纠错,请发送邮件至 ...

  5. 华为在深度学习平台上的优化实践

    "Kubernetes Meetup 中国 2017"--北京站3.18落幕啦!本次分享嘉宾彭靖田来自华为,他的分享题目是<华为在深度学习平台上的优化实践>.实录将从深 ...

  6. 【深度学习】老师木讲架构:深度学习平台技术演进

    新智元推荐   来源:OneFlow [新智元导读]近日,袁进辉(老师木)代表OneFlow团队在全球互联网架构大会上海站做了<深度学习平台技术演进>的报告.报告包括深度学习的计算力问题. ...

  7. 小米云深度学习平台的架构设计与实现

    深度学习服务介绍 机器学习与人工智能,相信大家已经耳熟能详,随着大规模标记数据的积累.神经网络算法的成熟以及高性能通用GPU的推广,深度学习逐渐成为计算机专家以及大数据科学家的研究重点.近年来,无论是 ...

  8. 美团深度学习系统的工程实践

    背景 深度学习作为AI时代的核心技术,已经被应用于多个场景.在系统设计层面,由于其具有计算密集型的特性,所以与传统的机器学习算法在工程实践过程中存在诸多的不同.本文将介绍美团平台在应用深度学习技术的过 ...

  9. 一口气发布11项新升级,免费送出1亿元算力:国产深度学习平台PaddlePaddle大更新...

    郭一璞 夏乙 发自 香格里拉 量子位 出品 | 公众号 QbitAI 深度学习框架里的唯一国货PaddlePaddle,集中迎来一大波更新. 百度PaddlePaddle全景图也首次曝光. 在框架核心 ...

最新文章

  1. AI手语主播通过朱广权魔鬼面试,残影级手速无惧贯口,今已正式上岗助力冰雪盛会...
  2. linux java静默安装软件,linux纯净版脚本执行安装JDK、静默安装Weblogic
  3. javascript访问ACCESS数据库
  4. MapReduce简述
  5. canvas换图时候会闪烁_Canvas实现图片上标注、缩放、移动和保存历史状态,纯干货(附CSS 3变化公式)...
  6. 从pheatmap无缝迁移至ComplexHeatmap
  7. java 获取组件大小_java - 如何初始化取决于组件大小的图像抓取? - 堆栈内存溢出...
  8. 【报告分享】疫情期间抖音、快手带货趋势分析报告.pdf(附下载链接)
  9. 程序员摆脱疲劳的 11 个建议
  10. javascript中this值的引用
  11. .net reactor 学习系列(四)---.net reactor应用场景
  12. 遗传算法的手工模拟计算示例(通俗易懂)(包含遗传算法原理、遗传算法代码)
  13. 20个经典Android游戏源码下载地址(持续更新~)
  14. android手机投影到电视软件下载,安卓手机怎么投屏到电视?这两种方法最简单!...
  15. iPhone iPad游戏应用开发视频教程
  16. 代码该怎么写——设计原则
  17. 关系模型中的3中关系(一对一,一对多,多对多)
  18. 质因数分解-P1069 [NOIP2009 普及组] 细胞分裂
  19. 计算机无法登录到你的账户,Windows10系统提示“无法登录到你的账户”如何解决...
  20. 查询ip区间的ip地址的sql语句

热门文章

  1. 旋转函数_一招搞定高中数学函数平移旋转问题
  2. KVM中I/O设备直接分配和SR-IOV(十六)
  3. leetcode @38报数-js
  4. RxJava 2.x 使用最佳实践
  5. 打印九九口诀表(15)
  6. 安卓Activity界面切换添加动画特效
  7. ***“出更”---获取源码的***
  8. (MS SQL)如何实现相关文章功能(多关键字匹配)
  9. 结构体的嵌套 自身嵌套 相互嵌套
  10. RT ROM boot简介