The present invention proposes a convolution neural network acceleration method based on OpenCL standard, which mainly solves the problem that the existing CPU processing convolutional neural network has low efficiency. The method comprises the following steps: three-dimensional image data read the original 1., pass it to the global memory GPU; global memory 2. reads the weights and bias data to GPU; 3. global memory GPU read the original image data to local memory in GPU; 4. initialization parameters, constructing linear activation function Leaky ReLU the 5. picture data; calculate the convolution neural network of twelfth layers; the picture data calculation 6. convolutional neural network fifteenth layer; image data of 7. convolution neural network of eighteenth layers, and the image data are stored in GPU, and then back to the main memory, the computation time is given. The method improves the speed of convolution neural network, and can be used for object detection in computer vision.
【技术实现步骤摘要】
基于OpenCL标准的卷积神经网络加速方法
本专利技术属于无人驾驶感知
,特别涉及一种卷积神经网络加速方法,可用于计算机视觉的物体检测。
技术介绍
随着神经网络研究的深入,研究人员发现对图片输入做卷积操作和生物视觉中的神经元接受局部内的输入有相似性,在神经网络中加上卷积操作成为主流趋势。由于卷积神经网络CNN在神经网络的结构上针对视觉输入本身特点做的特定设计,所以卷积神经网络成为计算机视觉领域的必然选择。无人驾驶的感知部分作为计算机视觉的领域范围,不可避免地成为CNN发挥作用的舞台。传统的深度学习算法主要计算工具是CPU,因为CPU的通用性好,硬件架构已经成熟。然而,当深度学习算法对运算能力需求越来越大时,特别是卷积神经网络算法,CPU执行的效率不能满足需求。此时GPU进入了深度学习的研究者视野,GPU提供大量的并行运算单元,可以同时对图像像素进行并行处理,这个架构正好可以运用到深度学习算法上。深度学习卷积神经网络模型中的参数是通过从大数据中学习获得的,能够应对车辆行驶过程中复杂的情形,且精确度高。但是对数据的质量和数量要求高,对计算能力也有很高的要求,所以用GPU做计算载体更具有优势。而且在GPU上编程技术门槛较低,算法开发周期较短。
技术实现思路
本专利技术的目的在于针对上述现有技术的不足,提供一种基于OpenCL标准的卷积神经网络加速方法,以在应对复杂的交通环境时,满足高的精确度要求和实时性要求。本专利技术的技术方案完成如下:一、技术原理OpenCL(OpenComputingLanguage)是第一个面向异构系统通用目的并行编程的标准,也是一个统 ...
【技术保护点】
一种基于OpenCL标准的卷积神经网络加速方法,包括:1)将原始的三维图像数据读入到主机内存中,经过边缘扩展处理后,再将图像数据传递到GPU的全局内存中;2)将训练得到的用于和图片数据卷积的权重和偏置数据从文本文件读入到主机内存中,再将权重和偏置数据传递到GPU的全局内存中;3)将GPU的全局内存原始图片数据分块读入到GPU的局部内存中;4)初始化卷积核尺寸为k=3*3,卷积层步长s=1,降采样层尺寸p=2*2,降采样层步长d=2,图片边缘扩展尺寸z=1;5)构造含有阈值L的线性激活函数Leaky‑ReLU模型:
【技术特征摘要】
1.一种基于OpenCL标准的卷积神经网络加速方法,包括:1)将原始的三维图像数据读入到主机内存中,经过边缘扩展处理后,再将图像数据传递到GPU的全局内存中;2)将训练得到的用于和图片数据卷积的权重和偏置数据从文本文件读入到主机内存中,再将权重和偏置数据传递到GPU的全局内存中;3)将GPU的全局内存原始图片数据分块读入到GPU的局部内存中;4)初始化卷积核尺寸为k=3*3,卷积层步长s=1,降采样层尺寸p=2*2,降采样层步长d=2,图片边缘扩展尺寸z=1;5)构造含有阈值L的线性激活函数Leaky-ReLU模型:其中,L为线性激活函数Leaky-ReLU模型的阈值,取值为L=0.1,x为大小1*1的图片数据;6)计算卷积神经网络第十二层的图片数据:将经过步骤1)和步骤3)得到的GPU局部内存中的原始图片数据与步骤2)得到的卷积神经网络第一层的权重数据进行卷积运算,并加上偏置数据进行激活函数Leaky-ReLU运算,再进行降采样处理,得到卷积神经网络第一层的图片数据,再依次进行卷积运算、激活函数Leaky-ReLU运算和降采样运算共六次,得到卷积神经网络第十二层的图片数据;7)计算卷积神经网络第十五层的图片数据:将由步骤6)得到的卷积神经网络第十二层的图片数据与卷积神经网络第十三层的权重数据进行卷积运算,得到卷积神经网络第十三层的图片数据,再依次经过两次卷积运算和激活函数Leaky-ReLU运算共二次,得到卷积神经网络第十五层的图片数据;8)计算卷积神经网络第十八层的图片数据:8a)将卷积神经网络第十五层的图片数据全部展成大小为1*1的一维数据,并将展开的一维数据与卷积神经网络第十六层的权重数据相乘相加,再加上偏置数据,得出卷积神经网络第十六层的图片数据;8b)将卷积神经网络第十六层的图片数据与卷积神经网络第十七层的权重数据进行相乘相加,并加上偏置数据,再经过激活函数Leaky-ReLU运算后输出卷积神经网络第十七层的图片数据;8c)将卷积神经网络第十七层的图片数据与卷积神经网络第十八层的权重数据进行相乘相加,并加上偏置数据,得出卷积神经网络第十八层的图片数据,即最终的计算结果,将该计算结果传回GPU全局内存;9)将GPU的全局内存中的计算结果再传回到主机内存中,得出识别结果和运算时间。2.根据权利要求1所述的方法,其特征在于:步骤6)中卷积神经网络第十二层的图片数据,按如下步骤计算获得:6a)对卷积神经网络第一层的图片数据进行降采样处理,求出2*2窗口中四个数据的最大值,其中窗口移动步长为2;再将每张输出图片的四个边缘扩展一位后输出卷积神经网络第二层的图片数据;6b)将卷积神经网络第二层的图片数据与卷积神经网络第...
【专利技术属性】
技术研发人员:王树龙,殷伟,刘而云,刘红侠,杜守刚,
申请(专利权)人:西安电子科技大学,
类型:发明
国别省市:陕西,61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。