登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 文献综述 > 计算机类 > 计算机科学与技术 > 正文

分布式深度学习算法的部署及其实现文献综述

 2020-04-14 20:00:24  

1.目的及意义

1、背景及意义

深度学习[1]是机器学习研究中的一个新领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,是机器学习中一种基于对数据进行表征学习的方法。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。

2012年,Hinton课题组为了证明深度学习的实力,首次参加ImageNet图像识别比赛,通过其构建的卷积神经网络AlexNet[2]一举夺得冠军,远远超过第二名(SVM方法)的分类性能。也正由于该比赛,CNN吸引到了众多研究者的注意。目前,卷积神经网络已成为当前语音分析和图像识别领域的研究热点[3],它是第一个真正意义上的成功训练多层神经网络的学习算法模型,对于网络的输入十多位信号时具有更明显的优势。随着深度学习掀起的新的机器学习热潮,卷积神经网络已经应用于语义识别图像识别和自然语言处理等不同的大规模机器学习问题中。

为了可以更方便地研究超大规模的深度学习神经网络,Google公司在Jeff Dean的带领下于2011年启动了Google Brain项目,同时开发出了第一代分布式机器学习框架DistBelief,但是DistBelief并没有被Google开源,而是在公司内部大规模使用。而TensorFlow是由Google Brain的研究员和工程师基于DistBelief进行了各方面的改进而研发出的第二代分布式机器学习框架。

TensorFlow[4]命名来源于本身的运行原理,Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从图像的一端流动到另一端的计算过程。TensorFlow具有灵活的架构,能够在多平台上展开计算,能够在中央处理器和图形处理器上运行,支持移动设备、服务器等,并支持Linux、Windows得病操作系统,具有可移植性。此外TensorFlow支持多种语言,可以使用C 、Python、Java等编程语言实现。

Kubernetes[5]是一个基于容器技术的分布式云平台架构,具有资源管理自动化、资源利用率最大化、微服务架构等优点,是谷歌十几年以来大规模应用容器技术的经验累积和升华的一个重要成果。在谷歌的内部,Google Brain以及TensorFlow都运行在其内部的机群管理系统Brog上;而在谷歌外,我们可以将TensorFlow运行在Kubernetes上。确切地说,Kubernetes是谷歌的Brog的一个开源版本。

2、国内外研究现状

手写字符识别[6]可用于识别票据数字,车牌号等,应用广泛。字符识别方法可分为传统方法和基于深度学习的方法。传统方法实现,如k-近邻算法、贝叶斯方法等,首先要对图像进行预处理,然后由人工设计特征提取方法。而作为深度学习方法的一种,卷积神经网络对平移、旋转、缩放具有高度不变性,能够通过隐藏层逐层提取出图像特征,因而被广泛应用于图像识别领域。

随着对深度学习领域研究的深入,有证据表明增大参数规模和训练数据集,能有效的提高模型精度。但精度提升同时也带来了巨大的训练时间成本。比如在Google Brain实验室发表的论文《Outrageously LargeNeural Networks: The Sparsely-Gated Mixture-of-Experts Layer》[7]中提到,一个680亿个参数的模型,如果只能单机训练,那耗时将难以接受。通过分布式TensorFlow,可以利用大量服务器构建分布式TensorFlow集群来提高训练效率,减少训练时间。然而分布式TensorFlow也具有一些先天不足[8]:训练时各个Task资源无法隔离、缺乏调度能力、集群规模大时管理麻烦等。面对这些不足,Kubernetes中资源管理机制、任务的计算资源配置和调度机制等,能够更好地将这些不足解决。{title}

2. 研究的基本内容与方案

{title}

1、基本内容及目标

使用基于分布式下卷积神经网络的方法进行字符数据识别,将训练集样本进行处理,训练出的网络模型并进行测试。将其与集中式下基于卷积神经网路的字符数据识别方法作对比,对识别结果进行性能比较分析。

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图