前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >腾讯大数据能力和经验的开放将会让行业体会到数据的价值

腾讯大数据能力和经验的开放将会让行业体会到数据的价值

原创
作者头像
腾讯技术工程官方号
修改2017-07-04 17:03:41
1.3K0
修改2017-07-04 17:03:41
举报
文章被收录于专栏:腾讯技术工程官方号的专栏

导读:6月22日,腾讯“云+未来”峰会进入到各专场的环节。来自腾讯技术工程事业群(TEG)的领导及员工作为演讲嘉宾参加了政企、AI大数据、开发者3个专场,并向行业合作伙伴介绍了TEG在该领域的沉淀和探索。TEG数据平台部负责人蒋杰为AI大数据专场致辞,来自TEG数据平台部的智能学习组及海量计算组组长、T4专家黄明发表了演讲。以下为现场内容的整理报道。

TEG数据平台部负责人蒋杰提到,在过去的一年里面腾讯云开放了腾讯数智方略1.0产品,这个产品包含了腾讯10年的大数据能力和经验。开放出来给政府或企业进行部署,能够帮助大家避免初涉的问题。在这过程中,腾讯大数据的能力也在不断的提升。就在去年,腾讯大数据参加了具有全球计算奥运大会之称的Sort Benchmark全球排序竞赛,夺得GraySort和MinuteSort的冠军,刷新了4项世界纪录,腾讯大数据的运算能力达到世界级水平。今年腾讯大数据将继续抱着开放的心态,在腾讯云上把轻量的数据服务能力、实时的多维分析能力、EMR的托管服务能力开放出来。更为重要的是,腾讯的智能服务、数字营销服务这样的重量级服务也会一并开放,让整个行业真正感受到数据的价值。

演讲主题:DI-X:腾讯云上的深度学习平台

演讲嘉宾:TEG数据平台部智能学习组及海量计算组组长、T4专家黄明

大家好,今天由分享的是由腾讯TEG数据平台部和腾讯云联袂合作的打造的产品,DI-X。这是腾讯云上的深度学习平台,对腾讯云升级为AI云有着重要的意义。

今天是AI大数据的专场,大家都知道在过去两年,人工智能得到了迅猛的发展,这主要是因为三个要素:第一个是大数据,从2010年—2015年,互联网行业有了丰富的大数据积累,这给人工智能提供了一个充分的训练数据。第二个是大计算,在过去两年,基于GPU的计算能力突飞猛进,给人工智能提供了一个非常好的加速器。第三个就是深度学习,在2015年到2017年,各种深度学习的框架、算法和模型纷纷涌现,改变了人工智能的派系格局和研究的方向。基于这三个要素,在过去两年期间,人工智能得到了迅猛的发展。

参考这三大要素,我们来对标一下腾讯云的产品。 首先腾讯云有COS,这是一款比较经典的产品,目前它的存储量已经达到了1000P+,这是非常可观的数字,大数据我们已经有了。其次我们有GPU云服务器,这是我们今年刚刚推出的产品,在上面用户可以进行GPU的申请,获得一个单机实例,并进行GPU的计算,这样大计算我们也有了。那接下来就是深度学习平台了,我们推出了DI-X,通过它把COS和GPU连接到一起,打通这两个产品,形成合力。

我们来看一下DI-X这个平台的架构。首先我们可以看到DI-X是接入到COS存储的,在上面有丰富的用户数据,包括各种各样的文本、图片、语音和视频。而在DI-X的底层,我们通过GaiaStack这个资源管理器,对底层的CPU、GPU、内存和硬盘进行统一化的管理。在上面是框架层,我们结合了三大框架,包括TensorFlow、Caffe和Torch,基本可以满足大部分用户的需求。再上一层是算法层,目前我们集成了RNN、LSTM、CNN、DBN这几类,在上线之后,我们会根据用户的反馈做进一步的丰富。再上面是模型层,用户对数据计算之后会产生一系列的模型,包括图形模型、语音模型、时序模型、视频模型和NLP模型等等,这些我们会在DI-X里面进行一个统一的管理。整体基于这个平台,我们给上层的用户,包括其它中小企业提供更好的AI服务,包括图像识别、语音识别、精准推荐、实时风控等等。

有些用户可能会觉得,有了COS和GPU之后,我们其实并不需要这样一个DI-X平台,用户也可以在上面玩深度学习,有一个平台反而会束手束脚。那DI-X到底会带来什么样的变化呢?接下来,我从6个方面来介绍一下DI-X带来的变化,包括资源、框架、调度、调参、模型和预测这6个方面。

首先我们来看一下资源,如果没有DI-X的话,它的资源申请是一个用户到实例的级别,在GPU云服务器上,现在有两个类型,一个是G2,一个是G2large,用户申请之后是要按月付费的,这是一个比较粗的力度。有了DI-X之后,我们现在是基于GaiaStack,它使用docker和Kubernates的技术,能够对GPU底层的资源进行优化和管理,这样分配资源的粒度就按照工程和GPU卡数的关系来分配的,它的粒度更细,也更灵活,而且后续也可以做到按照运行时长来收费。

第二部分我们看看框架,在没有DI-X的情况下,从运行一个实例到跑出一个算法,如果是没有经验的人折腾一两天是很正常的事情。我们可以看到,在整个的过程,包括了系统准备、Docker安装,安装Cuda、安装深度学习框架、对接COS存储,也就是需要把你的代码和COS存储做一个对接,当这些打通了之后,算法规程师才可以上传算法,然后启动一个脚本,把这个任务运行起来。这个过程中只有一个是红色的,只有这一步是算法工程师是擅长的,其它几步对工程能力弱的人来说都无疑是很难的,分分钟会可能卡住走不下去,而且这都是重复性的事情,A用户做了,B用户还要继续做,他们的工作不能被复用。

有了DI-X,这个事情就非常简单了,基于一个可视化的拖拽过程,用户只需要拖一个组件出来,然后设置一下参数,包括算法参数和资源参数,点一下运行就可以了,省去了大量重复的劳动,目前我们支持Caffe、TensorFlow和Torch三个组件,算法方面我们也支持这样的方式,让用户做到即拖即用,释放一个算法工程师的生产力。

第三方面我们看一下调度,如果没有DI-X的话,用户可能写完了一个算法之后,调试好了,它需要定期运行。很传统的做法是用一个CronTab或者它的增强工具,这个工具是很灵活的,它有很复杂的配置语法和条件,配合一些奇怪的需要的脚本,其实它是能做很多事情的。但它的缺陷也是很明显的,就是它的可维护性是非常差的,需要人工大量的干预。为此我们DI-X在调度上有4种驱动方式,除了正常的手工驱动之外,我们还支持定时驱动、重调驱动和参数驱动这三种方式,每种方式都有良好的调试界面可调节,用户可以自主设置三种驱动方式的并发度,让用户得到一个最大的便利性。

第四是调参。我们刚刚留意到有一种调度方式就是叫参数,这是为了深度学习的调参功能,在DI-X之前,用户需要写脚本,进行各种各样的参数调节,通过多种循环来进行参数的组合,然后传给具体的任务,达到调参的目的,但是这种方式其实是风险比较高的,对于写脚本的人来说,对他的能力有一定的高要求。而且一旦习惯了这种方式,很多人就会对平台有一个奇怪的要求,希望我们平台DI-X可以去支持一个组件,在这个组件里面写一个循环来调Caffe、TensorFlow或者Torch,这是非常危险的方式,会让系统形成一些黑洞,这是不好的。为此di-x增加了一个自动化的调参工具,它有4个步骤,第一个是它能够进行多参数的循环组合,第二是它会预生成实例,因为参数形成组合之后,它会有很多的组合产生,这时候是预生成的,当系统的并发度满足条件的情况下,我们才会进行这个参数的真实替换,并且生成多实例并发运行。

这里我们举一个简单的例子,在机器学习中是非常简单的,类似于超参数调节的东西,它有两个参数,第一个是数字型的,第二个是字符串型的,DI-X提供这样的功能,经过这样调参之后,可以方便用户进行比较。这是DI-X目前的自动化调参,后续我们会针对深度学习的超参数调节进一步优化。

第五个模型。在DI-X之前,其实用户训练完了之后会有一个模型文件的生成,Caffe、TensorFlow和Torch都有自己的格式。用户为了把这个模型进行一个同步和上线,其实有一种最常见的方法就是用SCP,在不同的用户之间SCP来,SCP去,在这里面它没有版本的管理,同时它也依赖具体运维人员的靠谱程度,决定模型的命运,包括它如果覆盖错了,有可能一个效果好的模型,就会被效果差的模型覆盖掉,这时候效果是非常难以把控的。

为此我们推出了一个模型的概念,在DI-X中对模型进行了针对性的设计,我们把这个设计叫做小尾巴,目的就是把一个模型具像化,在一个深度学习算法里面,它的左边有一个小尾巴,里边有一个小沙瓶,在算法模型运行的过程中,这个小烧瓶不停地冒泡泡,代表它是在运行,在炼丹,这在机器学习中是一个非常常见的名词比喻。当算法结束之后,这个小烧瓶也就满了,代表机器学习过程完成了。这是一个把模型从抽象到具像的过程,当这个模型训练完之后,它有丰富的行为,我们可以把这个模型进行收藏、导出和分享。收藏模型之后,这个模型就会被收到个人模型这里,成为一个模块,它可以被拖拽出来到画布,而分享模型,你可以把它分享给你想要合作的同事,你的模型就会出现在他的共享模型里面,他也可以直接把它拖拽出来使用。

第6个就是预测。其实就是一个训练和预测分离。我们知道深度学习里面,预测是一个非常重要的概念,模型训练完之后只是走了第一步,模型的使用,也就是预测才是更加重要的一个工作。目前我们这样一个模型拖拽出来之后,它会变成一个圆圆的一个大节点,可以对数据进行Offline的预测(推理),关于模型的在线预测(online-inference)功能,我们正在加紧上线中。

那综合以上6点,我们来看一个di-x预发环境的线上任务流:第一个是六边型数据节点,它会去检查COS路径上的数据在不在,并将路径传递给下一个节点作为输入;第二个是长方形的算法节点,带着一个模型训练的小尾巴,跑完之后,它的输出继续传给下一个节点;第三个是圆形的模型节点,它是之前训练好模型,用于对上游节点的数据,进行直接批量的预测,得到最终的结果;整体上看,这是一个多元素的任务流,有点复杂,但是相当灵活。门槛不高,用户熟悉了之后,很容易上手。

整体来看,DI-X是一个融合了深度学习的框架、算法、模型训练、模型推理和协作的一站式深度学习平台,在它上面可以完成一个深度学习的闭环,直接对之前存储在COS上的数据快速的进行挖掘,而得到的模型又能够快速的部署,降低人工智能的门槛。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档