卷积神经网络并行化研究卷积神经网络串行实现的不足:训练时间长无法处理分布式海量数据传统单机串行实现的卷积神经网络处理大量数据时性能急剧下降,甚至会因为内存不足而宕机。卷积神经网络可以并行化的原因信息主要是由各个结构和功能简单的神经元分散保存和处理。具有天然的分布式存储和并行处理的特性在网络训练过程中,训练数据和同层特征图、同层神经元信息处理及训练参数的更新可以同时进行。相关技术介绍HadoopMapReduce:云计算平台上的并行编程模型。工作流程:输入阶段Map阶段Reduce阶段输出阶段相关技术介绍图1.1hadhoopMapReduce工作流程相关技术介绍CUDA技术NVIDIA公司2007年提出的支持其GPU进行通用计算的编程模型和开发环境。相关技术介绍图1.2支持CUDA的GPU架构相关技术介绍CPU+GPU架构总线内存CPU全局内存共享内存共享内存计算单元卷积神经网络网络结构三个结构特征:局部感受域、权值共享和子采样卷积神经网络在线更新:网络的权值和偏置是在每个样本经过前向传播和反向传播处理之后进行更新的。批量更新:网络的权值和偏置是在所有的样本被处理完之后进行更新的。卷积神经网络的并行化设计与实现卷积神经网络并行化策略数据集中各训练样本每个层(前向和反向)每层各特征图特征图上各神经元神经元各权值卷积神经网络并行化设计实现图1.1hadhoopMapReduce工作流程卷积神经网络的并行化设计实现CNN.MR算法设计与实现表3.1Map任务计算过程表3.2Reduce任务计算过程卷积神经网络并行化设计实现表3.3CNN.MR算法卷积神经网络并行化设计实现CNN.MR.G算法将每一个特征图映射到一个线程块上,特征图上的各个神经元映射到线程块上的各个线程上,即用线程格(grid)的X、Y、Z三个维度分别对应到每层特征图的宽、高、数量上。卷积神经网络并行化设计实现图3.1线程格与特征图、神经元映射示意图图3.2Hadoop平台数据流图3.3G.Hadoop平台数据流分布式文件系统从节点从节点CPU线程CPU线程Map()函数Map()函数……卷积神经网络并行化设计实现分布式文件系统从节点从节点……GPU线程GPU线程GPU线程GPU线程Map()函数Map()函数…………表3.9CNN.MR.G算法实验结果及分析两组对比试验:第一组将网络单机串行实现与CNN.MR做了性能上的对比第二组将CNN.MR算法与CNN.MR.G算法做了性能上的对比实验结果及分析表4.2单机串行网络与CNN.MR性能对比实验结果及分析图4.2CNN.MR算法与CNN.MR-G算法在MNIST数据集上的运行时间实验结果及分析图4.3CNN.MR-G算法在不同结点数目下的运行时间谢谢!