基于多机多卡的卷积神经网络性能优化
本文关键词:基于多机多卡的卷积神经网络性能优化,由笔耕文化传播整理发布。
【摘要】:随着深度学习在各个领域的普及,神经网络参数的规模越来越大,训练的周期也越来越长,多GPU加速成了必然的硬件解决方案。为了最大化多GPU的硬件利用率,本文研究和实现了深度学习的GPU优化策略,包括单机单卡和多机多卡方案。本文在单机单卡方面的主要工作与贡献包括:单机单卡方面,本文详细地介绍了神经网络常用结构以及加速细节,维护了名为"CUDA-CNN"的开源项目。该项目已经支持包括卷积层,池化层,Softmax层,分支层,合并层,NIN层,Inception层以及多种数据扩展方法等。此外,该项目在MNIST数据集上取得公开结果中最高的准确率99.81%。本文在多机多卡方面的主要工作与贡献包括:首先,主要研究如何提高系统的负载均衡能力以及减少并行开销。通过实验证明,在单位时间内,每个GPU分别迭代fetchi次后,再将残差和汇总到参数服务器,这种方法除了减少通信频率之外,又能够根据GPU的计算能力分配不同的规模的任务,提高了系统的负载均衡能力。此外,本文引入了热启动技术,通过动态的修改参数同步频率,有效地提高了训练前期的收敛速度。其次,详细设计了多机卡的任务调度器。首先,为了避免人为分析程序并行性所带来的遗漏或者错误风险,本文沿用Purine中的二分图技术。由于二分图中包含了所有操作之间的数据依赖关系信息,调度器可以自动分析任务的并行性,最大化异步操作:其次,为了减少并行开销,本文在调度器中引入线程池和任务队列,将使用同类型硬件的计算任务放在同一个线程池或者任务队列中,有效地减少了线程的创建和销毁频率,减少由资源竞争引起的并行开销。最后,通过引入CUDA的事件机制来支持调度器的同步操作。最后,实验表明,在单机多卡环境中, Npruine性能比Purine提高了23.7%,与此同时,两个计算能力不相同的GPU利用率都达到96%左右。此外,Purine在使用四个节点的集群上,性能不但没有增加,反而仅是单个节点性能表现的47%。经过优化和改进,新架构Npurine能够在廉价网络连接的集群上运行,其性能是Purine的12.34倍。
【关键词】:Purine 多机多卡 深度学习 负载均衡
【学位授予单位】:中国科学技术大学
【学位级别】:硕士
【学位授予年份】:2016
【分类号】:TP183
【目录】:
- 摘要5-6
- ABSTRACT6-14
- 第1章 绪论14-20
- 1.1 论文研究的背景和意义14-15
- 1.2 国内外研究现状15-17
- 1.3 本文研究内容17
- 1.4 论文的组织结构17-20
- 第2章 卷积神经网络20-34
- 2.1 神经网络构成要素20-22
- 2.1.1 激活函数20-21
- 2.1.2 代价函数21-22
- 2.1.3 神经元连接方式22
- 2.2 神经网络结构设计22-30
- 2.2.1 卷积层22-23
- 2.2.2 池化层23-24
- 2.2.3 Softmax回归层24-25
- 2.2.4 NIN层25-26
- 2.2.5 Dropout层26-27
- 2.2.6 Inception层27-29
- 2.2.7 批量归一化层29-30
- 2.3 卷积神经网络的训练30-33
- 2.3.1 逐层反向传导30-31
- 2.3.2 动量31-32
- 2.3.3 图像数据扩展32-33
- 2.4 本章小结33-34
- 第3章 GPU体系结构及编程34-42
- 3.1 GPU体系结构和CUDA程序设计34-37
- 3.1.1 NVIDIA GPU架构综述34
- 3.1.2 线程调度34-35
- 3.1.3 CUDA内存存储结构35-37
- 3.2 流与事件37-39
- 3.3 GPGPU的编程原则39
- 3.4 辅助分析工具39-41
- 3.5 英伟达cuDNN深度学习库41
- 3.6 本章小结41-42
- 第4章 单机单卡性能优化42-58
- 4.1 数据集扩展优化42-45
- 4.2 卷积层性能优化45-48
- 4.2.1 将卷积运算转化成矩阵乘法运算45-46
- 4.2.2 转化成快速傅里叶变换46-47
- 4.2.3 使用cudnn进行优化47-48
- 4.3 池化层优化48
- 4.4 Softmax层优化48-50
- 4.5 分支与合并层50-51
- 4.6 激活函数51-52
- 4.7 代价函数52
- 4.8 实验设计与实现52-56
- 4.8.1 识别准确率53-55
- 4.8.2 性能分析55-56
- 4.9 本章小结56-58
- 第5章 多机多卡性能优化58-76
- 5.1 依赖库58
- 5.2 并行方案58-59
- 5.3 数据并行方案分析与设计59-65
- 5.3.1 Purine数据并行架构简介59-60
- 5.3.2 减少参数同步的频率60-63
- 5.3.3 负载均衡63-64
- 5.3.4 热启动训练方法64-65
- 5.4 任务调度器模块65-71
- 5.4.1 二分图抽象65-67
- 5.4.2 自动并行性分析67-68
- 5.4.3 减少并行开销68-70
- 5.4.4 任务同步机制70-71
- 5.5 迭代训练71-72
- 5.6 实验与验证72-75
- 5.6.1 单机多卡73-75
- 5.6.2 多机多卡75
- 5.7 本章小结75-76
- 第6章 总结与展望76-78
- 6.1 论文工作总结76-77
- 6.2 论文工作展望77-78
- 参考文献78-84
- 致谢84-86
- 在读期间发表的学术论文与取得的其他研究成果86
【相似文献】
中国期刊全文数据库 前10条
1 云中客;新的神经网络来自于仿生学[J];物理;2001年10期
2 唐春明,高协平;进化神经网络的研究进展[J];系统工程与电子技术;2001年10期
3 李智;一种基于神经网络的煤炭调运优化方法[J];长沙铁道学院学报;2003年02期
4 程科,王士同,杨静宇;新型模糊形态神经网络及其应用研究[J];计算机工程与应用;2004年21期
5 王凡,孟立凡;关于使用神经网络推定操作者疲劳的研究[J];人类工效学;2004年03期
6 周丽晖;从统计角度看神经网络[J];统计教育;2005年06期
7 赵奇 ,刘开第 ,庞彦军;灰色补偿神经网络及其应用研究[J];微计算机信息;2005年14期
8 袁婷;;神经网络在股票市场预测中的应用[J];软件导刊;2006年05期
9 尚晋;杨有;;从神经网络的过去谈科学发展观[J];重庆三峡学院学报;2006年03期
10 杨钟瑾;;神经网络的过去、现在和将来[J];青年探索;2006年04期
中国重要会议论文全文数据库 前10条
1 徐春玉;;基于泛集的神经网络的混沌性[A];1996中国控制与决策学术年会论文集[C];1996年
2 周树德;王岩;孙增圻;孙富春;;量子神经网络[A];2003年中国智能自动化会议论文集(上册)[C];2003年
3 罗山;张琳;范文新;;基于神经网络和简单规划的识别融合算法[A];2009系统仿真技术及其应用学术会议论文集[C];2009年
4 郭爱克;马尽文;丁康;;序言(二)[A];1999年中国神经网络与信号处理学术会议论文集[C];1999年
5 钟义信;;知识论:神经网络的新机遇——纪念中国神经网络10周年[A];1999年中国神经网络与信号处理学术会议论文集[C];1999年
6 许进;保铮;;神经网络与图论[A];1999年中国神经网络与信号处理学术会议论文集[C];1999年
7 金龙;朱诗武;赵成志;陈宁;;数值预报产品的神经网络释用预报应用[A];1999年中国神经网络与信号处理学术会议论文集[C];1999年
8 田金亭;;神经网络在中学生创造力评估中的应用[A];第十二届全国心理学学术大会论文摘要集[C];2009年
9 唐墨;王科俊;;自发展神经网络的混沌特性研究[A];2009年中国智能自动化会议论文集(第七分册)[南京理工大学学报(增刊)][C];2009年
10 张广远;万强;曹海源;田方涛;;基于遗传算法优化神经网络的故障诊断方法研究[A];第十二届全国设备故障诊断学术会议论文集[C];2010年
中国重要报纸全文数据库 前10条
1 美国明尼苏达大学社会学博士 密西西比州立大学国家战略规划与分析研究中心资深助理研究员 陈心想;维护好创新的“神经网络硬件”[N];中国教师报;2014年
2 卢业忠;脑控电脑 惊世骇俗[N];计算机世界;2001年
3 葛一鸣 路边文;人工神经网络将大显身手[N];中国纺织报;2003年
4 中国科技大学计算机系 邢方亮;神经网络挑战人类大脑[N];计算机世界;2003年
5 记者 孙刚;“神经网络”:打开复杂工艺“黑箱”[N];解放日报;2007年
6 本报记者 刘霞;美用DNA制造出首个人造神经网络[N];科技日报;2011年
7 健康时报特约记者 张献怀;干细胞移植:修复受损的神经网络[N];健康时报;2006年
8 刘力;我半导体神经网络技术及应用研究达国际先进水平[N];中国电子报;2001年
9 ;神经网络和模糊逻辑[N];世界金属导报;2002年
10 邹丽梅 陈耀群;江苏科大神经网络应用研究通过鉴定[N];中国船舶报;2006年
中国博士学位论文全文数据库 前10条
1 杨旭华;神经网络及其在控制中的应用研究[D];浙江大学;2004年
2 李素芳;基于神经网络的无线通信算法研究[D];山东大学;2015年
3 石艳超;忆阻神经网络的混沌性及几类时滞神经网络的同步研究[D];电子科技大学;2014年
4 王新迎;基于随机映射神经网络的多元时间序列预测方法研究[D];大连理工大学;2015年
5 付爱民;极速学习机的训练残差、稳定性及泛化能力研究[D];中国农业大学;2015年
6 李辉;基于粒计算的神经网络及集成方法研究[D];中国矿业大学;2015年
7 王卫苹;复杂网络几类同步控制策略研究及稳定性分析[D];北京邮电大学;2015年
8 张海军;基于云计算的神经网络并行实现及其学习方法研究[D];华南理工大学;2015年
9 李艳晴;风速时间序列预测算法研究[D];北京科技大学;2016年
10 陈辉;多维超精密定位系统建模与控制关键技术研究[D];东南大学;2015年
中国硕士学位论文全文数据库 前10条
1 章颖;混合不确定性模块化神经网络与高校效益预测的研究[D];华南理工大学;2015年
2 贾文静;基于改进型神经网络的风力发电系统预测及控制研究[D];燕山大学;2015年
3 李慧芳;基于忆阻器的涡卷混沌系统及其电路仿真[D];西南大学;2015年
4 陈彦至;神经网络降维算法研究与应用[D];华南理工大学;2015年
5 董哲康;基于忆阻器的组合电路及神经网络研究[D];西南大学;2015年
6 武创举;基于神经网络的遥感图像分类研究[D];昆明理工大学;2015年
7 李志杰;基于神经网络的上证指数预测研究[D];华南理工大学;2015年
8 陈少吉;基于神经网络血压预测研究与系统实现[D];华南理工大学;2015年
9 张韬;几类时滞神经网络稳定性分析[D];渤海大学;2015年
10 邵雪莹;几类时滞不确定神经网络的稳定性分析[D];渤海大学;2015年
本文关键词:基于多机多卡的卷积神经网络性能优化,,由笔耕文化传播整理发布。
本文编号:450653
本文链接:https://www.wllwen.com/kejilunwen/zidonghuakongzhilunwen/450653.html