深度学习平台如何开启深度学习之旅

深度学习平台  时间:2021-06-22  阅读:()

Google这次发布的新机器学习平台有什么来头

Google Cloud Machine Learning是一个管理平台,可以让开发者更易于创建自己的机器学习模型,并且可以基于任何规模的数据类型运行。

TensorFlow框架现已支持Google多项服务,包括 Google Photos及 Cloud Speech——即图像识别和语音识别技术。

Cloud Machine Learning管理平台结合TensorFlow,其一大亮点是支持异构设备分布式计算,它能够在各个平台上自动运行模型,从电话、单个CPU / GPU到成百上千GPU卡组成的分布式系统。

开发者因此无需把时间花费在处理集群上,而更专注于模型创建。

在TensorFlow框架的支持下上,利用全新的Cloud Machine Learning可以创建并训练自己的学习模型,并且具有深度学习的能力。

由于Google拥有强大的数据库,其可以支持成千上万用户和海量TB数据的全球预测平台,使得开发者训练的模型能够即插即用——这是新机器学习平台最强有力的支持,因为这意味着开发者能够在短时间内让自己的应用接触到全球的用户。

该预测平台整合了Google云分析系统Cloud Dataflow,允许开发者访问Google Cloud Storage和BigQuery上的数据

如何评价Tensorflow和其它深度学习系统

Google开源了新一代深度学习引擎TensorFlow。

本文解释了一些TF里面我觉得可以从系统方面值得看的地方。

编程模型 TF目前的编程模型是符号编程 (putation)。

大致的想法就是使用符号API去描述计算通过计算流图的方式,以及更新逻辑,然后通过像服务器去发送计算流图的方式来进行计算。

原因是所有的计算全部需要通过计算流图来描述,也就是其实通pythonAPI编写的主要是Tensorflow这一门新的语言。

然后通过session的run来进行一些交互。

这样子做的主要好处是计算流图的执行可以进行比较多的优化,因为用户只是指定了数据关系,以及需要什么,计算的中间变量如何分配,是否需要保留,都是可以进行优化的。

这一点是相比于Torch和numpy的库相对可以更多优化的地方。

不过反过来说,和原有host语言的交互会相对比较有限一些,会比较难利用一些host语言(python)的特性来编写如条件和更新法则之类的东西。

作为一个工程师,从优化性能的角度,很容易倾向于用symbolic描述所有东西,然后做尽量多的优化。

而作为researcher(Torch来自NYU),更容易倾向于灵活性,而选择过程计算风格的编程。

支持Mutation 和目前的符号语言比起来,TF最大的特点是强化了数据流图,引入了mutation的概念。

这一点是TF和包括Theano在内的符号编程框架最大的不同。

所谓mutation,就是可以在计算的过程更改一个变量的值,而这个变量在计算的过程中会被带入到下一轮迭代里面去。

Mutation是机器学习优化算法几乎必须要引入的东西(虽然也可以通过immutablereplacement来代替,但是会有效率的问题)。

Theano的做法是引入了updatestatement来处理mutation。

TF选择了纯符号计算的路线,并且直接把更新引入了数据流图中去。

从目前的白皮书看还会支持条件和循环。

这样就几乎让TF本身成为一门独立的语言。

不过这一点会导致最后的API设计和使用需要特别小心,把mutation引入到数据流图中会带来一些新的问题,比如如何处理写与写之间的依赖。

细粒度操作优化 这一点是Google作为一个公司的资源带来的优势。

TF大部分的操作是细粒度操作,可以来带比较大的灵活性,不过反过来,也在工程上面需要比较多的优化开销。

一个更加偷懒的做法是直接支持常见的粗粒度操作,加上比较少的细粒度操作来做辅助,这样基本上可以减低优化带来的overhead,而对于大部分的问题也就可以比较轻松的应对了。

caffe2和走了粗粒度操作加细粒度这条路也是基于同样的原因。

这属于是在有限资源constraint下面做出的更加轻量级的选择。

分布式支持 TF目前并没有直接放出分布式的支持。

从放出来的白皮书看,分布式的容错采取了consistent checkpointrestart策略,似乎没有更加fancy容错,但是又非常实用。

可以看到google对于系统的选择还是非常现实的。

同样的也可以反思现在的分布式系统,机器学习是不是真的需要像比如lineage这样的容错机制其实要打一个很大的问号。

Parameter Server已经过时了? 在TF白皮书里面提到的一点是PS因为系统的abstraction直接成为计算流图的一部分,相对弱化了PS作为一个系统的地位。

这一点的主要原因是dependencytracking在计算流图里面得到的强化,而PS本身的一大功能就是完成dependencytracking。

如果你仔细看本身的kvstore的实现,就会发现本地的参数整合代码几乎完全是利用依赖引擎完成的,这样的确可以大大简化PS的代码实现。

不过PS本身作为一个abstraction,在通信和数据consistency上面还是可以提供一些不错的dataparallel 解决方案。

未来的方向应该是各个系统更加融合,ps本身也作为一个依赖调度中的primitive直接整合入深度学习引擎,而不再作为一个宿主系统存在了。

目前系统的关系 TF在编程模型上面最相似的是Theano,基本涵盖了Theano所有的功能。

在最近新的编程框架上面,比较相关的两个,一个是caffe2,另外一个是。

caffe2的设计风格基本和TF一致,走的是符号计算的路线,唯一的不同是支持粗粒度的操作,这一点在之前也有提到,是为了轻量级而做的选择。

目前主要由yangqing一个人完成,可以认为是轻量级的TF。

的设计思路是符号计算和过程计算混合。

在符号计算部分没有引入mutation,而是允许把符号计算融入到过程计算中,通过host语言来表述更新法则,同时动态调度过程计算的和符号计算的指令。

这么做对于调度引擎需要更多的一些要求,并且也可能带来一些效率的影响(过程计算是动态执行的,有动态内存开销,更少一些优化),不过如果合理地把主要的瓶颈部分放到符号计算里面去,剩下的部分用更加灵活的过程计算来做,最终的效率影响不会特别大。

这两个系统在依赖调度和系统优化上面的思想应该和TF基本一致,有兴趣的同学可以对比学习一下。

选择什么 我本人参与了的设计,因此比较难公正地回答这个问题。

不过有一点是肯定的,计算流图和优化的思想,以及依赖关系的调度,和计算优化会是下一代深度学习系统的主题。

一些个人的note DMLC团队从五月份开始决定联合三个项目做,六月份设计完成,到九月份初步版本确立。

我个人在参与设计之后七月到G brain实习,接触到了TF和内部的东西。

个人的感觉,不同的项目设计是在不同的人力资源,目标(灵活度,效率)和taste的权衡下面做出不同优化的设计决定。

,caffe2和TF的设计实现差别大概就在于此。

没有对错,只看每个设计者的品味和想法了。

因为这一点,让我确信我们做了正确的选择,并且决定继续九月份结束实习后帮助团队到目前相对完整的阶段。

yangqing因为工作的缘故可能限制更多一些,不过也希往每个人也都有机会实现每心中理想的系统。

如何开启深度学习之旅

1.第一步就是理解机器学习 2.接下来就是开发你自己的神经网络。

所以大胆向前尝试吧,写下你的第一个神经网络(first Neural Network ),并且尽情享受乐趣。

3.理解神经网络是非常重要的,但是简单的神经网络却不足以解决那些最有趣的实际问题。

而变化的卷积神经网络在视觉任务的处理上表现非常出色。

斯坦福大学的教程笔记和PPT都在这里提供大家参考:CS231n Convolutional Neural Networks for Visual Recognition(notes), and CS231n: Convolutional Neural Networks for Visual Recognition (lecture slides)。

4.下一步就是根据之前做的工作,在自己电脑上运行你首个CNN网络。

· 购买GPU并且安装CUDA · 安装Caffe框架和它的GUI Digit平台 · 安装Boinc(这或许不能再深度学习方面对你产生帮助,但是能够让其他的研究者在空闲时间使用你的GPU) 5.Digit为你提供了一些算法,诸如-用于字符识别的,用于图像分类算法的GoogleNet.你需要下载的数据集和GoogleNet的数据集来运行这些算法。

你也可以修改这些算法,并且尝试其他有趣的图片识别任务,像我们在这儿做的(here)。

6.针对很多自然语言处理(NLP)任务,RNNs(回馈神经网络)是最好的解决办法。

而学习RNNs的最好方法是斯坦福的课程讲义视频(Stanford lecture videos here)。

你可以下载Tensorflow并且用它来建立RNNs。

7.到了现在,你可以继续向前进并且选择一个深度学习问题,从人脸检测到自动驾驶的语音识别,并且尝试去解决这些问题。

如果你已经将以上的步骤完成,

腾讯云轻量服务器两款低价年付套餐 2核4GB内存8M带宽 年74元

昨天,有在"阿里云秋季促销活动 轻量云服务器2G5M配置新购年60元"文章中记录到阿里云轻量服务器2GB内存、5M带宽一年60元的活动,当然这个也是国内机房的。我们很多人都清楚备案是需要接入的,如果我们在其他服务商的域名备案的,那是不能解析的。除非我们不是用来建站,而是用来云端的,是可以用的。这不看到其对手腾讯云也有推出两款轻量服务器活动。其中一款是4GB内存、8M带宽,这个比阿里云还要狠。这个真...

HostYun(月18元),CN2直连香港大带宽VPS 50M带宽起

对于如今的云服务商的竞争着实很激烈,我们可以看到国内国外服务商的各种内卷,使得我们很多个人服务商压力还是比较大的。我们看到这几年的服务商变动还是比较大的,很多新服务商坚持不超过三个月,有的是多个品牌同步进行然后分别的跑路赚一波走人。对于我们用户来说,便宜的服务商固然可以试试,但是如果是不确定的,建议月付或者主力业务尽量的还是注意备份。HostYun 最近几个月还是比较活跃的,在前面也有多次介绍到商...

Virmach款低价VPS可选可以选择多个机房,新增多款低价便宜VPS主机7.2美元起

Virmach商家我们是不是比较熟悉?速度一般,但是人家价格低,而且机房是比较多的。早年的时候有帮助一个有做外贸也许需要多个机房且便宜服务商的时候接触到这个商家,有曾经帮助够买过上百台这样的低价机器。这里需要提醒的,便宜但是速度一般,尤其是中文业务速度确实不快,如果是外贸业务,那肯定是没有问题。这几天,我们有看到Virmach推出了夏季优惠促销,VPS首年8折,最低年付仅7.2美元,多机房可选,如...

深度学习平台为你推荐
flash实例Flash元件和实例的概念及关系?shoujiao手机电池突然充不上电,是怎么回事?该怎么办?yui3求Yui的详细资料100days英文的一百天怎么说免费分享网给个免费电影网camel是什么意思cantorp与骆驼是什么关系,想买一双骆驼鞋,分不清cantorp和camel骆驼是什么关系android权限大全安卓root权限获取方法是什么?wap服务wap业务是什么意思?soso图片谁知道怎么创建SOSO图片册??soliddbSOLIDworks 中文名叫啥
到期域名查询 vps是什么意思 vps推荐 Vultr 搬瓦工官网 mediafire下载 unsplash parseerror 租空间 云全民 中国电信测速112 ftp教程 web服务器的架设 200g硬盘 东莞数据中心 卡巴斯基破解版 中国电信宽带测速器 华为云服务登录 cloudlink 数据库空间 更多