公务员期刊网 精选范文 卷积神经网络的算法范文

卷积神经网络的算法精选(九篇)

前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的卷积神经网络的算法主题范文,仅供参考,欢迎阅读并收藏。

第1篇:卷积神经网络的算法范文

【关键词】图像分类深度 卷积神经网络 加权压缩近邻

1 研究背景

手写数字识别是一个经典的模式识别问题。从0 到9这10 个阿拉伯数字组成。由于其类别数比较小,它在些运算量很大或者比较复杂的算法中比较容易实现。所以,在模式识别中数字识别一直都是热门的实验对象。卷积神经网络 (Convolutional Neural Networks,CNN),在手写体识别中有着良好的性能。卷积神经网络的神经元是局部连接,神经元之间能够共享权值。深度卷积神经网络不但可以解决浅层学习结构无法自动提取图像特征的问题,并且提高了分类的泛化能力和准确度。

2 深度卷积神经网络

深度卷积神经网络是一种具有多层监督的神经网络,隐含层中的卷积层和池采样层是实现深度卷积神经网络提取特征的核心模块,并通过使用梯度下降算法最小化损失函数来进行权重参数逐层反向调节,再经过迭代训练提高分类精确度。

深度卷积神经网络的首层是输入层,之后是若干个卷积层和若干个子采样层和分类器。分类器一般采用Softmax,再由分类器去输出相应的分类结果。正常情况下,一个卷积后面都跟一个子采样层。基于卷积层里权值共享和局部连接的特性,可以简化网络的样本训练参数。运算之后,获得的结果通过激活函数输出得到特征图像,再将输出值作为子采样层的输入数据。为了实现缩放、平移和扭曲保持不变,在子采样层中将之前一层对应的特征图中相邻特征通过池化操作合并成一个特征,减少特征分辨率。这样,输入的数据就可以立即传送到第一个卷积层,反复进行特征学习。将被标记的样本输入到Softmax分类器中。

CNN 能够简化网络的样本训练参数,降低计算难度。这些良好的性能是网络在有监督方式下学会的,网络的结构主要有局部连接和权值共享两个特点:

2.1 局部连接

深度卷积神经网络中,层与层之间的神经元节点是局部连接,不像BP 神经网络中的连接为全连接。深度卷积神经网络利用局部空间的相关性将相邻层的神经元节点连接相邻的上一层神经元节点。

2.2 权重共享

在深度卷积神经网络中,卷积层中每一个卷积滤波器共享相同参数并重复作用,卷积输入的图像,再将卷积的结果变为输入图像的特征图。之后提取出图像的部分特征。

在得到图像的卷积特征之后,需要用最大池采样方法对卷积特征进行降维。用若干个n×n 的不相交区域来划分卷积特征,降维后的卷积特征会被这些区域中最大的或平均特征来表示。降维后的特征更方便进行分类。

3 实验结果

为了验证卷积神经网络的有效性,本实验中使用以最经典的MNIST 和USPS 库这两个识别库作为评测标准。手写数字MNIST数据库有集60000 个训练样本集,和10000 个测试,每个样本向量为28×28=784维表示。手写数字USPS 数据库含有7291 个训练样本和2007 个测试样本,每个样本向量为16×16=256 维。

表1给出了卷积神经网络在MNIST 和USPS 库上的识别结果。从表1中可知,深度卷积神经网络对MNSIT 库识别率能够达到97.89%,与用BP 算法得到的识别率94.26%相比,提高了两个多百分点。对USPS 库识别率能够达到94.34%,与用BP 算法得到的识别率91.28%相比,也提高了三个多百分点。

因此,使用深度卷积神经网络算法训练在图像识别中获得更高识别率。因此,深度卷积神经网络在识别手写体字符时有着较好的分类效果。

4 总结

本文介绍深度卷积神经网络的理论知识、算法技术和算法的结构包括局部连接、权重共享、最大池采样以及分类器Softmax。本文通过深度卷积神经网络对两组手写识别库实验来验证CNN 有着较低的出错率。

参考文献

[1]赵元庆,吴华.多尺度特征和神经网络相融合的手写体数字识别简介[J].计算机科学,2013,40(08):316-318.

[2]王强.基于CNN的字符识别方法研究[D].天津师范大学,2014.

[3]Krizhevsky A,Sutskever I,Hinton G E.ImageNet Classification with Deep Convolutional Neural Networks.Advances in Neural Information Processing Systems,2012,25(02),1097-1105.

[4]郝红卫, 蒋蓉蓉.基于最近邻规则的神经网络训练样本选择方法[J].自动化学报,2007,33(12):1247-1251.

作者简介

关鑫(1982-),男,黑龙江省佳木斯市人。硕士研究生学历。现为中国电子科技集团公司第五十四研究所工程师。研究方向为计算机软件工程。

第2篇:卷积神经网络的算法范文

关键词:机器学习;深度学习;推荐算法;远程教育

深度学习(DeepLearning),也叫阶层学习,是机器学习领域研究的分支,它是学习样本数据的表示层次和内在规律,在学习的过程中获取某些信息,对于数据的解释有巨大帮助。比如对文字数据的学习,在网络上获取关键字,对图像数据的学习,进行人脸识别等等。

一、深度学习发展概述

深度学习是机器学习领域里一种对数据进行表征学习的方法。一句话总结三者之间的关系就是:“机器学习,实现人工智能的方法;深度学习,实现机器学习的技术。深度学习目前是机器学习和人工智能领域研究的主要方向,为计算机图形学、计算机视觉等领域带来了革命性的进步。机器学习最早在1980年被提出,1984年分类与回归树出现,直到1986年,Rumelhart等人反向传播(BackPropaga-tion,BP)算法的提出,解决了感知模型只能处理线性分类的问题,1989年出现的卷积神经网络(ConvolutionalNeuralNet-works,CNN)也因此得到了一定的发展。在1990年至2012年,机器学习逐渐成熟并施以应用,GeoffreyHinton在2006年设计出了深度信念网络,解决了反向传播算法神经网络中梯度消失的问题,正式提出了深度学习的概念,逐渐走向深度学习飞速发展的时期。随后,各种具有独特神经处理单元和复杂层次结构的神经网络不断涌现,深度学习技术不断提高人工智能领域应用方面的极限。

二、深度学习主要模型

1、卷积神经网络卷积神经网络(ConvolutionalNeuralNetworks,CNN)是指有着深度结构又包含着卷积计算的前馈神经网络。卷积物理上理解为系统某一时刻的输出是有多个输入共同叠加的结果,就是相当于对一个原图像的二次转化,提取特点的过程。卷积神经网络实际上就是一个不断提取特征,进行特征选择,然后进行分类的过程,卷积在CNN里,首先对原始图像进行特征提取。所以卷积神经网络能够得到数据的特征,在模式识别、图像处理等方面应用广泛。一个卷积神经网络主要由三层组成,即卷积层(convolutionlayer)、池化层(poolinglayer)、全连接层(fullyconnectedlayer)。卷积层是卷积神经网络的核心部分,通过一系列对图像像素值进行的卷积运算,得到图像的特征信息,同时不断地加深节点矩阵的深度,从而获得图像的深层特征;池化层的本质是对特征图像进行采样,除去冗杂信息,增加运算效率,不改变特征矩阵的深度;全连接将层间所有神经元两两连接在一起,对之前两层的数据进行分类处理。CNN的训练过程是有监督的,各种参数在训练的过程中不断优化,直到得到最好的结果。目前,卷积神经网络的改进模型也被广泛研究,如全卷积神经网络(FullyConvolutionalNeuralNetworks,FCN)和深度卷积神经网络(DeepConvolutionalNeuralNetworks,DCNN)等等。2、循环神经网络区别于卷积神经网络在图片处理领域的应用,循环神经网络(RecurrentNeuralNetwork,RNN)主要应用在自然语言处理领域。RNN最大的特点就是神经元的输出可以继续作为输入,再次利用到神经元中循环使用。RNN是以序列的方式对数据进行读取,这也是RNN最为独特的特征。RNN的串联式结构适用于时间序列的数据,可以完好保持数据中的依赖关系。循环神经网络主要有三层结构,输入层,隐藏层和输出层。隐藏层的作用是对输入层传递进来的数据进行一系列的运算,并将结果传递给输出层进行输出。RNN可用于许多不同的地方。下面是RNN应用最多的领域:1.语言建模和文本生成,给出一个词语序列,试着预测下一个词语的可能性。这在翻译任务中是很有用的,因为最有可能的句子将是可能性最高的单词组成的句子;2.语音识别;3.生成图像描述,RNN一个非常广泛的应用是理解图像中发生了什么,从而做出合理的描述。这是CNN和RNN相结合的作用。CNN做图像分割,RNN用分割后的数据重建描述。这种应用虽然基本,但可能性是无穷的;4.视频标记,可以通过一帧一帧地标记视频进行视频搜索。3、深度神经网络深度神经网络(deepneuralnetworks,DNN)可以理解为有很多隐藏层的神经网络。多层神经网络和深度神经网络DNN其实也是指的一个东西,DNN有时也叫做多层感知机(Mul-ti-Layerperceptron,MLP)。DNN内部的神经网络层也是分为三类,输入层,隐藏层和输出层,一般来说第一层是输入层,最后一层是输出层,而中间的层数都是隐藏层。深度神经网络(DNN)目前作为许多人工智能应用的基础,并且在语音识别和图像识别上有突破性应用。DNN的发展也非常迅猛,被应用到工业自动驾驶汽车、医疗癌症检测等领域。在这许多领域中,深度神经网络技术能够超越人类的准确率,但同时也存在着计算复杂度高的问题。因此,那些能够解决深度神经网络表现准确度或不会增加硬件成本高效处理的同时,又能提升效率和吞吐量的技术是现在人工智能领域能够广泛应用DNN技术的关键。

三、深度学习在教育领域的影响

1、学生学习方面通过网上学习的实时反馈数据对学生的学习模式进行研究,并修正现有教学模式存在的不足。分析网络大数据,相对于传统在线学习本质区别在于捕捉学生学习过程,有针对性,实现学生个性化学习。举个例子,在学习过程中,可以通过学习平台对学生学习课程所花费的时间,参与的程度,知识的偏好等等数据加以分析。也可以通过学生学习某门课程的次数,鼠标点击次数、停留的时间等,来推断学生学习情况。通过以上或类似数据汇总分析,可以正向引导学生学习,并给予积极的学习评价。这种利用计算机收集分析出来的客观数据,很好展示了学生学习行为的结果,总结学习规律,而不需要教师多年的教学经验来判断。对于教育研究者而言,利用深度学习技术可以更客观准确地了解学生,使教学工作良好发展更进一步。2、教学方面学习平台的数据能够对教学模式的适应度进行预测,通过学生的考试成绩和对教师的线上评价等加以分析,能够预测出某一阶段的教学方式发发是否可行,影响如何。通过学生与教师的在线互动,学生测验时完成的时间与完成的结果,都会产生大量的有效的数据,都可以为教师教学支持服务的更好开展提供帮助,从而避免低效率的教学模式造成教学资源的浪费。

四、成人远程教育中深度学习技术的可应用性

深度学习方面的应用在众多领域都取得了成功,比如电商商品推荐、图像识别、自然语言处理、棋类博弈等等。在远程教育方面,深度学习的技术还有很大的发挥空间,智能网络教育的实现是人们的众望所盼。若要将深度学习技术应用到远程教育平台,首先要清楚学生的需求和教学资源如何分配。1、针对学生的学习需求与学习特征进行分析美国斯坦福大学克里斯皮希研究团队的研究成果显示,通过对学生知识学习进行时间建模,可以精确预测出学生对知识点的掌握情况,以及学生在下一次学习中的表现。深度学习的应用可以帮助教师推测出学生的学习能力发展水平。通过学生与教学环境的交互行为,分析其学习风格,避免教师用经验进行推断而产生的误差。2、教学资源的利用与分配深度学习技术能够形成智能的分析结论。计算机实时采集数据集,对学生的学习情况加以分析,使教师对学生的学习状态、情绪状态等有更加清晰、准确的了解。有了上面良好的教学模式,教师对学生的学习状态有了更准确的掌握,对学生的学习结果就有了更科学的教学评价。基于深度学习的人工智能技术,还可以辅助教师实现智能阅卷,通过智能阅卷自动总结出学习中出现的问题,帮助教师减少重复性劳动,减轻教师负担。作为成人高校,远程教育是我们的主要教学手段,也是核心教学方式,学校的教学必定是在学生方便学习的同时,以学生的学习效果为重。通过深度学习技术,可以科学地分析出学生的学习效果,对后续教与学给予科学、可靠的数据支撑。我们可以在平台上为每位同学建立学习模型,根据学生的学习习惯为其定制个性化方案,按他们的兴趣进行培养,发挥他们专业的潜能。同时,可以将学生正式在线参加学习和考试的学习行为和非学习时间浏览网站的行为结合到一起,更加科学地分析出学生在学习网站上感兴趣的地方。采用深度学习算法,根据学生学习行为产生的海量数据推算出学生当前状态与目标状态之间的差距,做到精准及时的学习需求反馈。有助于帮助学生明确学习目标,教师确立教学目标,真正做好因材施教。基于深度学习各种智能识别技术,可以为教师的线上教学活动增光添彩,在反馈学生学习状态的同时,采用多种形式的教学方法吸引学生的注意力,增强教学活动的互动性,达到良好的教学效果。

第3篇:卷积神经网络的算法范文

关键词:卷积神经网络;深度学习;图像处理;训练时间

中图分类号:TP18 文献标识码:A 文章编号:1009-3044(2016)33-0167-04

如今在机器学习领域中,深度学习方法已经占据了相当重要的地位,通过模仿人X学习方式构造模型,在图像、文本、语音处理方面取得了显著成果[1]。目前应用较为广泛的深度学习模型包含多层感知器模型(MLP)[2],卷积神经网络模型和限制性玻尔兹曼机模型等[4]。多层感知器[2]网络结构的神经节点一般分层排列,主要由输入层,输出层和一些隐层组成,同层之间的神经元节点无连接,相邻的两层神经元进行全连接,前一层的神经元的输出作为后一层神经元的输入,但本身此种算法存在着一些问题,那就是它的学习速度非常慢,其中一个原因就是由于层与层之间进行全连接,所以它所需要训练的参数的规模是非常大的,所以对其进行改进,产生了卷积神经网络模型。卷积神经网络模型在图像识别方面的应用十分广泛[5,8,9]。从它的结构上来看,层与层之间的神经元节点采用局部连接模式,而并非MLP的全连接模型,这样就降低了需要训练的参数的规模。而在它卷积层中,它的每一个滤波器作为卷积核重复作用于整个输入图像中,对其进行卷积,而得出的结果作为输入图像的特征图[6],这样就提取出了图像的局部特征。而由于每一个卷积滤波器共享相同的参数,这样也就大大降低了训练参数的时间成本。而本文,以卷积神经网络为研究对象,在其模型的基础上通过对其结构中卷积核也就是滤波器的大小进行调整并结合卷积核个数调整和gpu加速等已有的训练提速方法,达到降低训练时间并且对识别结果并无太大影响的目的。

1 卷积神经网络

卷积神经网络在MLP的基础上,已经对结构进行了优化,通过层与层之间的局部连接以及权值共享等方式对要训练的参数的进行了大幅减低。

1.1局部连接

BP神经网络中,神经元在本层中呈线性排列状态,层与层之间进行全连接,而在卷积神经网络中,为了减少每层之间的可训练参数数量,对连接方式进行了修改,相对于BP神经网络的全连接,卷积神经网络采取了局部连接的连接方式[7],也就是说按照某种关联因素,本层的神经元只会与上层的部分神经元进行连接。

2.2 权值共享

在CNN中,卷积层中的卷积核也就是滤波器,重复作用在输入图像上,对其进行卷积,最后的输出作为他的特征图,由于每个滤波器共享相同的参数,所以说他们的权重矩阵以及偏置项是相同的。

我们从上图看出,相同箭头连线的权值是共享的,这样在原有的局部连接的基础上我们又降低了每层需要训练的参数的数量。

2.3卷积过程

特征图是通过滤波器按照特定的步长,对输入图像进行滤波,也就是说我们用一个线性的卷积核对输入图像进行卷积然后附加一个偏置项,最后对神经元进行激活。如果我们设第k层的特征图记为[hk],权重矩阵记为[Wk],偏置项记为[bk],那么卷积过程的公式如下所示(双曲函数tanh作为神经元的激活函数):

2.4 最大池采样

通过了局部连接与权值共享等减少连接参数的方式卷积神经网络中还有另外一个重要的概念那就是最大池采样方法,它是一种非线性的采样方法。最大池采样法在对减少训练参数数量的作用体现在两个方面:

1 )它减小了来自m-1层的计算复杂度。

2 )池化的单元具有平移不变性,所以即使图像在滤波后有小的位移,经过池化的特征依然会保持不变。

3卷积神经网络整体构造以及减少训练时间的方法

3.1使用GPU加速

本次论文实验中,使用了theano库在python环境下实现卷积神经网络模型,在lenet手写数字识别模型上进行改进,由于theano库本身支持GPU加速,所以在训练速度上实现了大幅度的提高。

3.2 数据集的预处理

本次实验使用的两个数据集是mnist手写数字库以及cifar_10库

Mnist手写数字库具有60000张训练集以及10000张测试集,图片的像素都为28*28,而cifar_10库是一个用于普适物体识别的数据集,它由60000张32*32像素的RGB彩色图片构成,50000张图片组成训练集,10000张组成测试集。而对于cifar_10数据集来说,由于图片都是RGB的,所以我们在进行实验的时候,先把其转换为灰度图在进行存储。由于实验是在python环境下运行,theano函数库进行算法支持,所以我们把数据集进行处理,此处我们对使用的数据集进行了格式化。格式化的文件包括三个list,分别是训练数据,验证数据和测试数据。而list中每个元素都是由图像本身和它的相对应的标签组成的。以mnist数据集为例,我们包含train_set,valid_set,test_set三个list,每个list中包含两个元素,以训练集为例,第一个元素为一个784*60000的二维矩阵,第二个元素为一个包含60000个元素的列向量,第一个元素的每一行代表一张图片的每个像素,一共60000行,第二个元素就存储了对相应的标签。而我们取训练样本的10%作为验证样本,进行相同的格式化,而测试样本为没有经过训练的10000张图片。在以cifar_10数据集为实验对象时,把其进行灰度化后,进行相同的格式化处理方式。

3.3实验模型结构

本次实验是在python环境下基于theano函数库搭建好的lenet模型进行参数的调整,以达到在实验准确度可接受情况下减少训练时间的目的。

上图为实验中的基础模型举例说明实验过程,首先以mnist数据集为例,我们的输入图像为一个28*28像素的手写数字图像,在第一层中我们进行了卷积处理,四个滤波器在s1层中我们得到了四张特征图。在这里要特别的说明一下滤波器的大小问题,滤波器的大小可根据图像像素大小和卷积神经网络整体结构进行设置,举例说明,假如说我们的输入图像为28*28像素的图像,我们把第一层卷积层滤波器大小设置为5*5,也就是说我们用一个大小为5*5的局部滑动窗,以步长为一对整张图像进行滑动滤波,则滑动窗会有24个不同的位置,也就是说经过卷积处理后的C1层特征图的大小为24*24。此处的滤波器大小可进行调整,本论文希望通过对滤波器大小的调整,已达到减少训练时间的目的,并寻找调整的理论依据。C1层的特征图个数与卷积过程中滤波器数量相同。S1层是C1经过降采样处理后得到的,也就是说四点经过降采样后变为一个点,我们使用的是最大池方法,所以取这四个点的最大值,也就是说S1层图像大小为12*12像素,具有4张特征图。而同理S1层经过卷积处理得到C2层,此时我们滤波器的大小和个数也可以自行设置,得到的C2层有6张特征图,C2到S2层进行降采样处理,最后面的层由于节点个数较少,我们就用MLP方法进行全连接。

3.4实验参数改进分析

由此可见,我们对滤波器的大小以及个数的改变,可以直接影响到卷积训练参数的个数,从而达到减少训练时间的目的。

从另一种角度来看,增大滤波器的大小,实际效果应该相似于缩小输入图像的像素大小,所以这样我们可以预测增大滤波器的大小会减少样本的训练时间,但是这样也可能会降低训练后的分类的准确率,而滤波器的大小是如何影响训练时间以及分类准确率的,我们通过对两种图片库的实验来进行分析。

4 实验结果与分析

4.1以mnist手写数字数据集作为实验数据

我们知道卷积层可训练参数的数字与滤波器的大小和数字有关,所以我们通过对卷积层滤波器大小的变化来寻找较为普遍的可减少训练参数从而达到减少训练时间的目的。在实验记录中,我们表格纵列记录两层卷积层滤波器大小,横列分别为对已经过训练图像识别和对未经过训练的验证图像进行识别的错误率,最后记录每种滤波器大小搭配的使用时间。我们设定每次试验都进行100次重复训练,每次对权重矩阵进行优化。

此处我们记录两层滤波器大小之和作为横坐标,比较滤波器大小与实验之间的关系。两层滤波器大小相加后相同的元素我们把其对应时间做平均。

4.2以cifar_10数据集作为实验数据

同样是以100次循环训练进行测试,通过改变两层中滤波器的大小来寻找减少训练时间的设定。

此处以同样的方法,记录两层滤波器大小之和作为横坐标,比较滤波器大小与实验之间的关系。

4.3实验结果分析

从两组试验中,在不同的数据集下,我们得到了滤波器的大小与训练时间成反比的关系,而在减少了训练时间的同时确实增大了训练的错误率。

5 总结

通过实验结果分析表明,增大卷积层滤波器大小的方法,在此两种数据库的情况下,是有效减小训练时间的方式,而在不同的数据库对分类准确率的影响程度不同,mnist手写数字数据库中图像之间的相似度非常高,所以滤波器的增大对准确率产生的负面影响较小,而ifar_10数据集中图像之间的相似度较小,所以增大滤波器的大小对其分类结果的准确率的负面影响较大。

参考文献:

[1]LeCun Y, Bengio Y, Hinton G. Deep learning[J]. Nature, 2015, 521(7553): 436-444.

[2] Ruck D W, Rogers S K, Kabrisky M. Feature selection using a multilayer perceptron[J]. ]Journal of Neural Network Computing, 1990, 2(2): 40-48.

[3]LeCun Y, Bengio Y. Convolutional networks for images, speech, and time series[J]. The handbook of brain theory and neural networks, 1995, 3361(10): 1995.

[4] Larochelle H, Bengio Y. Classification using discriminative restricted Boltzmann machines[C]//Proceedings of the 25th international conference on Machine learning. ACM, 2008: 536-543.

[5]Krizhevsky A, Sutskever I, Hinton G E. Imagenet classification with deep convolutional neural networks[C]//Advances in neural information processing systems. 2012: 1097-1105.

[6] Zeiler M D, Fergus R. Visualizing and understanding convolutional networks[C]//European Conference on Computer Vision. Springer International Publishing, 2014: 818-833.

[7] Jarrett K, Kavukcuoglu K, Lecun Y. What is the best multi-stage architecture for object recognition?[C]//2009 IEEE 12th International Conference on Computer Vision. IEEE, 2009: 2146-2153.

第4篇:卷积神经网络的算法范文

【关键词】视频 行为识别 检测

近年来,各种视频监控越来越深入我们的生活中。因其实时性、直观性以及设备成本日益降低在各行各业中而倍受青睐。但视频监控系统还是依靠人工来控制,没有进入数字化的全天实时监测、智能分析图像数据。要实现完全数字化的监控的关键在于人体行为的智能识别。

早些时候有人提出并且应用了智能图像识别的卷积神经网络,它是在原始的输入中应用可训练的滤波器和局部邻域池化操作,来得到一个分级的且逐渐复杂的特征表示。实践表示,采用合适的规则化项来训练,它可以达到非常好的效果。比较好的地方是对姿势、光照和复杂背景存在不变性,单只受限在2D输入的舞台。本文文章提出了一个新的3D卷积神经网络模型,用于运动识别。该模型可以从空间和时间的维度提取特征,然后进行3D卷积,以捕捉从多个连续帧得到的运动信息。为了有效的综合运动信息,文中通过在卷积神经网络的卷积层进行3D卷积,以捕捉空间上、时间上的维度,让其都具有区分性的特征。

3D卷积是通过堆叠多个连续的帧组成一个立方体,然后在立方体中运用3D卷积核。在其中,卷积层中每一个特征map都会与上一层中多个邻近的连续帧相连,以捕捉运动信息。一个卷积map的某一位置的值是通过卷积上一层的三个连续的帧的同一个位置的局部感受得到的。要强调的是:3D卷积核只能从cube中提取一种类型的特征,因为在整个cube中卷积核的权值都是一样的,也就是共享权值,都是同一个卷积核。可以采用多种卷积核,以提取多种特征。有一个通用的设计规则就是:在后面的层(离输出层近的)特征map的个数应该增加,这样就可以从低级的特征maps组合产生更多类型的特征。本文中的3D 卷积神经网络架构包含一个硬连线hardwired层、3个卷积层、2个下采样层和一个全连接层。每个3D卷积核卷积的立方体是连续7帧,每帧patch大小是60x40。

在第一层,应用了一个固定的hardwired的核去对原始的帧进行处理,产生多个通道的信息,然后对多个通道分别处理。最后再将所有通道的信息组合起来得到最终的特征描述。这个实线层实际上是编码对特征的先验知识,这比随机初始化性能要好。

每帧提取五个通道的信息,分别是:灰度、x和y方向的梯度,x和y方向的光流。其中,前面三个都可以每帧都计算。然后水平和垂直方向的光流场需要两个连续帧才确定。所以是7x3 + (7-1)x2=33个特征maps。然后用一个7x7x3的3D卷积核(7x7在空间,3是时间维)在五个通道的每一个通道分别进行卷积。为了增加特征map的个数(实际上就是提取不同的特征),在每一个位置都采用两个不同的卷积核,这样在C2层的两个特征maps组中,每组都包含23个特征maps。23是(7-3+1)x3+(6-3+1)x2前面那个是:七个连续帧,其灰度、x和y方向的梯度这三个通道都分别有7帧,然后水平和垂直方向的光流场都只有6帧。54x34是(60-7+1)x(40-7+1)。

在紧接着的下采样层S3层max pooling,在C2层的特征maps中用2x2窗口进行下采样,这样就会得到相同数目但是空间分辨率降低的特征maps。下采样后,就是27x17=(52/2)*(34/2)。 C4是在5个通道中分别采用7x6x3的3D卷积核。为了增加特征maps个数,在每个位置都采用3个不同的卷积核,这样就可以得到6组不同的特征maps,每组有13个特征maps。13是((7-3+1)-3+1)x3+((6-3+1)-3+1)x2前面那个是:七个连续帧,其灰度、x和y方向的梯度这三个通道都分别有7帧,然后水平和垂直方向的光流场都只有6帧。21x12是(27-7+1)x(17-6+1)。

S5层用的是3x3的下采样窗口,所以得到7x4. 到这个阶段,时间维上帧的个数已经很小了。在这一层,只在空间维度上面卷积,这时候使用的核是7x4,然后输出的特征maps就被减小到1x1的大小。而C6层就包含有128个特征map,每个特征map与S5层中所有78(13x6)个特征maps全连接,这样每个特征map就是1x1,也就是一个值了,而这个就是最终的特征向量了。

经过多层的卷积和下采样后,每连续7帧的输入图像都被转化为一个128维的特征向量,这个特征向量捕捉了输入帧的运动信息。输出层的节点数与行为的类型数目一致,而且每个节点与C6中这128个节点是全连接的。采用一个线性分类器来对这128维的特征向量进行分类,实现行为识别。模型中所有可训练的参数都是随机初始化的,然后通过在线BP算法进行训练。

3D 卷积神经网络模型的输入被限制为一个少的连续视频帧,因为随着输入窗口大小的增加,模型需要训练的参数也会增加。当然有些人的行为是跨越很多帧的,所以在3D 卷积神经网络模型中,有必要捕捉这种高层的运动信息。需要用大量的帧来计算运动特征,然后把这些运动特征作为辅助输出去规则化3D 卷积神经网络模型。

对于每一个需要训练的行为,提取其长时间的行为信息,作为其高级行为特征。这个运动信息因为时间够长,所以要比卷积神经网络的输入帧的立方体包含的信息要丰富很多。然后我们就迫使卷积神经网络学习一个非常接近这个特征的特征向量。这可以通过在卷积神经网络的最后一个隐层再连接一系列的辅助输出节点,然后训练过程中,使提取的特征更好的逼近这个计算好的高层的行为运动特征向量。

试验中,在原始的灰度图像中计算稠密sift描述子,然后通过这些sift描述子和运动边缘历史图像(MEHI)组合构造bag-of-words特征作为辅助特征。 因为灰度图保留了外观信息,运动边缘历史图像只关心形状和运动模式,所以可以提取这两个互补的信息作为两个连续帧的局部特征bag。先简单的计算两帧间的差分,这样就可以保留运动信息,然后对其执行一次Canny边缘检测,这样可以使得观测图像更加清楚简洁。最总的运动边缘图像就是将历史的这些图像乘以一个遗忘因子再累加起来得到。

本文中,构造不同的3D 卷积神经网络模型,它可以从输入捕捉潜在的互补信息,然后在预测阶段,每个模型都针对一个输入得到对应的输出,然后再组合这些输出得到最终的结果。

作者简介:

第5篇:卷积神经网络的算法范文

>> 用于脑运作分析的前向网络样本重组树生成算法研究 基于三角构成规则的加权有向网络拓扑生成算法 适用于网络渐进传输的多分辨率曲线生成算法 全排列生成算法比较分析 KenKen问题的生成算法研究 曲线生成算法的文献综述 基于列生成算法的集装箱班轮运输网络优化 基于全卷积神经网络的图像缩略图生成算法 传感器网络中一种基于编码的MAC生成算法 数据库关键词检索中候选元组集连接树生成算法的研究 基于分类随机算法的试卷生成算法研究 分析基于列生成算法的动车组检修计划优化 AOS自相似业务流等时帧生成算法的Matlab仿真分析 关于传统空间缓冲区生成算法的分析 基于Bresenham的直线快速生成算法 题库系统中试卷生成算法的改进 一种可用于脑神经网络分析的有向网络分解算法 形式概念演化生成算法 MPI通信代码自动生成算法 一种启发式双代号网络图自动生成算法 常见问题解答 当前所在位置:l.(Xie Qin. Framework of Brain Information Processing[Z].[2013-10-21]. .)

[30]谢勤.WAP算法连续化及其应用[C].毕业论文,2004.

[31]谢勤.一种可用于脑神经网络分析的有向网络分解算法[J].数字化用户,2014,3:113-116.(Xie Qin. An Arithmetic For Neural Network Analysis: From Directed Graph To FFN Trees [J].Digitization user,2014, 3:113-116.)

[32]谢勤.一种可用于脑神经网络分析的有向网络分解算法[C].第八届海内外华人神经科学家研讨会论文集.北京:科学出版社,2014.(Xie Qin. An Arithmetic For Neural Network Analysis: From Directed Graph To FFN Trees [C]. Proceedings of Symposium for Chinese Neuroscientists Worldwide 2014. Beijing: Science Press. 2014.)

[33]谢勤.用于脑运作分析的前向网络样本重组树生成算法研究[C].电子技术与软件工程,2016,4:258-264.(Xie Qin. FeedForward Network Sample Recombination Tree Generating Arithmetic(DG-FFN SR Trees Arithmetic) And Generation Of Sample Recombination Graph [J]. Electronic Technology & Software Engineering, 2016,4:258-264.)

(通讯作者:谢勤)

作者简介

谢勤(1982-),男,A南理工大学硕士,中国神经科学学会会员,工程师,近年在亚组委信息技术部完成核心信息系统――计时记分和成绩处理系统项目实施管理方面的工作,其中计时记分系统投资一亿。主要研究方向为计算机科学与工程、人工智能、神经生物学。

作者单位

1.广州市科技和信息化局 广东省广州市 510000

2.第16届亚运会组委会信息技术部 广东省广州市 510000

3.广州生产力促进中心 广东省广州市 510000

4.广州市科学技术信息研究所 广东省广州市 510000

5.广州市科技创新委员会 广东省广州市 510000

第6篇:卷积神经网络的算法范文

1989年贝尔实验室成功利用反向传播算法,在多层神经网络开发了一个手写邮编识别器。1998年Yann LeCun和Yoshua Bengio发表了手写识别神经网络和反向传播优化相关的论文《Gradient-based learning applied to document recognition》,开创了卷积神经网络的时代。

此后,人工智能陷入了长时间的发展沉寂阶段,直到1997年IBM的深蓝战胜国际象棋大师和2011年IBM的沃森智能系统在Jeopardy节目中胜出,人工智能才又一次为人们所关注。2016年Alpha Go击败韩国围棋九段职业选手,则标志着人工智能的又一波。从基础算法,底层硬件,工具框架到实际应用场景,目前人工智能已经全面开花。 作为人工智能核心的底层硬件AI芯片,也同样经历了多次的起伏和波折,

总体看来,AI芯片的发展前后经历了四次大的变化,其发展历程如下图所示。

(1)2007年以前,AI芯片产业一直没有发展成为成熟的产业;同时由于当时算法、数据量等因素,这个阶段AI芯片并没有特别强烈的市场需求,通用的CPU芯片即可满足应用需要。

(2)随着高清视频、VR、AR游戏等行业的发展,GPU产品取得快速的突破;同时人们发现GPU的并行计算特性恰好适应人工智能算法及大数据并行计算的需求,如GPU比之前传统的CPU在深度学习算法的运算上可以提高几十倍的效率,因此开始尝试使用GPU进行人工智能计算。

(3)进入2010年后,云计算广泛推广,人工智能的研究人员可以通过云计算借助大量CPU和GPU进行混合运算,进一步推进了AI芯片的深入应用,从而催生了各类AI芯片的研发与应用。

(4)人工智能对于计算能力的要求不断快速地提升,进入2015年后,GPU的性能功耗比不高的特点使其适用场合受到很多限制,业界开始研发针对人工智能的专用芯片,通过更好的硬件和芯片架构,在计算效率、能耗比上进一步提升。

第7篇:卷积神经网络的算法范文

关键词:图像采集和处理;图像检测;Gabor纹理滤波;神经网络

DoI:10.15938/j.jhust.2016.06.009

中图分类号:TPl83;TP391.4

文献标志码:A

文章编号:1007-2683(2016)06-0044-06

0.引言

钢铁企业为了提高竞争力,对带钢的生产提出了新的要求,也对带钢表面检测系统提出了更高的要求,既要有更高的检测速度还要有更加准确的检测精度,而与此同时,跟随机器视觉技术的发展,带钢表面检测系统也得到了广泛的研究与应用,主要研究包括:①光源技术,由于带钢检测对光源要求频度高、体积小,这限制了传统光源在其应用,激光具有方向性好、亮度高、体积小等优点,被广泛应用于带钢检测应用中,国内的徐科等提出热轧钢检测中用绿光作为激光光源,但激光照明需解决均匀性问题.②扫描技术,由于电荷耦合元件(charge-coupled device,CCD)能够实现实时检测,成为目前研究和应用的主流技术,但是,CCD电荷耦合器需在同步时钟的控制下,以行为单位一位一位地输出信息,速度较慢,而互补金属氧化物半导体(complementary metal oxide semiconductor,CMOS)光电传感器采集光信号的同时就可以取出电信号,还能同时处理各单元的图像信息,速度比CCD电荷耦合器快很多,③图像处理算法,受限于带钢加工过程的特性,带钢表面呈现出随机纹理的特点,对于随机纹理图像的处理分析,目前常用的方法有共生矩阵法、频域滤波法、分形法等,作为频域滤波法的代表,二维Gabor滤波器有着与生物视觉系统相近的特点,广泛应用于纹理图像的处理分析,但是,CPU很难满足现在的带钢检测的实时要求,④分类算法,特征选择的主流算法是主成分分析和信息增益,主成分分析存在特征向量方向不一致的问题,而且如何确定主成分存在主观性,信息增益可以衡量特征的劣,利用它可对特征进行排序,方便后面的特征选择,但信息增益适用于离散特征,信息增益率既适用于离散特征也适用于连续特征,被广泛应用于特征选择的过程中,图像分类算法主流算法包括支持向量机和BP神经网络,支持向量机不适用于大样本的分类问题,BP神经网络方法具有能够解决非线性分类问题,对噪声不敏感等优点,被广泛应用于带钢检测中,如王成明等提出的基于BP神经网络的带钢表面质量检测方法等,但是BP神经网络的超参的设定往往具有随机性,这严重影响了分类效果。

本文首先介绍了带钢表面缺陷高速高分辨率成像系统的设计,针对光源的不均匀性、图像处理速度慢等问题,提出改进方法,然后介绍了分类器的构建,针对样本划分的随机性、特征选择的随机性以及BP神经网络超参设定的随机性问题,做出改进,最后介绍试验结果。

1.带钢表面缺陷高速高分辨率的成像系统的设计

1)大功率半导体均匀发光激光器技术,激光能够保证带钢表面缺陷的检出率,本系统选用808mm半导体激光器作为照明源,出光功率可达30w,亮度可达1500流明,激光照明需解决均匀性的问题,本文采用了基于鲍威尔棱镜的激光线发生办法,解决了激光照明的均匀性问题,其光路如图1所示。

该方法首先在激光聚焦位置放置圆形球面透镜,负责将发散的激光束汇聚成准平行光,同时控制光柱的粗细,然后,利用鲍威尔棱镜的扩散效果对圆柱的一个方向进行扩束,最终形成激光线,为保证亮度及宽度的适应性,激光器出光口距离圆透镜、鲍威尔棱镜的距离可以精密调整,为了降低反射亮度损失,在透镜表面镀上808±5nm的T≥99%的增透膜。

GPU的算法分为两个流程:训练过程主要针对无缺陷图像进行,通过训练完成纹理图像的背景建模,一方面消除背景变化带来的干扰,另一方面形成有效的Gabor卷积参数,以便在检测过程中得到最优的检出效果.检测过程对实际拍摄的缺陷图像进行分析,首先按照GPU的核心数和缓存大小对图像进行分解,本文所有GPU的核心数为1024,显存2G,因此将原始图像分解为1000块,分别加载到1000个核心中,同时并发运行卷积运算.最后将各个窗口的卷积结果合并到一起,得到完成的滤波结果,最后借助于背景模式,将背景的干扰消除,得到干净的缺陷区域。

3)成像系统,根据缺陷检测的精度要求(1800m/min的检测速度,0.25mm的精度),带钢的规格要求(1900 mm规格),对带钢进行成像系统设计,基于互补金属氧化物半导体(CMOS)的成像芯片具有速度快,用电低等优势,选用两个4K线扫描CMOS相机作为成像核心器件,选用Camera Link Full接口作为数据输出,两个4K扫描中间重叠100mm作为图像拼接区,两组线激光光源与线扫描组成系统的主要成像模块,成像系统结构如图3所示。

2.构建分类器

检测缺陷类别及其特征描述如表1所示:

1)训练集和样本集划分.主要缺陷类别有5个,每个类别收集样本7000,共计35000个样本,为了避免训练集和样本集划分的盲目性,采用10一折交叉验证的方式划分训练集和测试集,即将样本集分成10份,从中选1份为测试集,剩下的为训练集,如图4所示,究竟选择哪一份作为测试集,需在后面的嵌套循环中实现。

2)特征选择,缺陷区域的长度、宽度、面积、区域对比度等共计138个特征形成初始特征集合,利用信息增益率来对各个特征排序。

上述各循环组合在一起就是一个嵌套循环,其N-S盒图如图5所示,最外层是测试集和训练集的10折交叉验证,第1层是确定最优的特征数,第3层是确定最优的隐含层节点数,第4、5层是确定最优的输入层和隐含层、隐含层和输出层的初始权值。

经以上循环,确定D3作为测试集,最优特征数为23个,最优的隐含层节点数是46个,同时也确定了最优的初始权值,对应的3层BP神经网络的网络模型如图6所示。

3.实验结果

1)鲍威尔棱镜与柱透镜进行对比在实际工作距离1.5m处,采用0.1m为间隔使用光功率计测试光源功率,如图7所示,横轴为测试点,纵轴为测试点的光功率。实验表明,鲍威尔棱镜均匀性优于柱透镜。

2)Gabor滤波方法与其他方法比较将动态阈值法+Blob分析法(方法A)和灰度共生矩阵纹理背景消除法(方法B)两种方法与Gabor滤波方法进行比较,如图8所示.由于缺陷与背景灰度相近(图(a)),致使方法A缺陷丢失(图(b)),由于缺陷与背景纹理相近(图(d)),致使方法B产生噪声(图(e)),Gabor方法取得了不错的效果(图(e)、(图(f)))。

3)GPU与CPU比较以4096×4096的图像为例,选10幅有代表性图像,利用CPU(最新的inteli7-2600处理器,4核8线程,2.6GHz,内存8G)和GPU(nVidiaGTX970,4G存显卡)进行Ga-bor运算,计算时间如表2所示,GPU计算效率明显优于CPU,其中CPU的平均耗时为290.4ms,而GPU的平均耗时为31.7ms。

4)检测效果在产线速度为1775m/min,最小检测缺陷的尺寸为0.25mm的检测系统中,对带钢的主要4种类型缺陷进行检测统计,检测结果如表3所示。

可计算出整体检出率99.9%,检测准确率99.4%。

第8篇:卷积神经网络的算法范文

计算机视觉的第一步是特征提取,即检测图像中的关键点并获取有关这些关键点的有意义信息。特征提取过程本身包含4个基本阶段:图像准备、关键点检测、描述符生成和分类。实际上,这个过程会检查每个像素,以查看是否有特征存在干该像素中。

特征提取算法将图像描述为指向图像中的关键元素的一组特征向量。本文将回顾一系列的特征检测算法,在这个过程中,看看一般目标识别和具体特征识别在这些年经历了怎样的发展。

早期特征检测器

Scale Invariant Feature Transform(SIFT)及Good Features To Track(GFTT)是特征提取技术的早期实现。但这些属于计算密集型算法,涉及到大量的浮点运算,所以它们不适合实时嵌入式平台。

以SIFT为例,这种高精度的算法,在许多情况下都能产生不错的结果。它会查找具有子像素精度的特征,但只保留类似于角落的特征。而且,尽管SIFT非常准确,但要实时实现也很复杂,并且通常使用较低的输入图像分辨率。

因此,SIFT在目前并不常用,它主要是用作一个参考基准来衡量新算法的质量。因为需要降低计算复杂度,所以最终导致要开发一套更容易实现的新型特征提取算法。

二代算法

Speeded Up Robust Features(SURF)是最早考虑实现效率的特征检测器之一。它使用不同矩形尺寸中的一系列加法和减法取代了SIFT中浩繁的运算。而且,这些运算容易矢量化,需要的内存较少。

接下来,HOG(Histograms ofOriented Gradients)这种在汽车行业中常用的热门行人检测算法可以变动,采用不同的尺度来检测不同大小的对象,并使用块之间的重叠量来提高检测质量,而不增加计算量。它可以利用并行存储器访问,而不像传统存储系统那样每次只处理一个查找表,因此根据内存的并行程度加快了查找速度。

然后,ORB(Oriented FASTand Rotated BRIEF)这种用来替代SIFT的高效算法将使用二进制描述符来提取特征。ORB将方向的增加与FAST角点检测器相结合,并旋转BRIEF描述符,使其与角方向对齐。二进制描述符与FAST和HarrisCorner等轻量级函数相结合产生了一个计算效率非常高而且相当准确的描述图。

CNN:嵌入式平台目标识别的下一个前沿领域

配有摄像头的智能手机、平板电脑、可穿戴设备、监控系统和汽车系统采用智能视觉功能将这个行业带到了一个十字路口,需要更先进的算法来实现计算密集型应用,从而提供更能根据周边环境智能调整的用户体验。因此,需要再一次降低计算复杂度来适应这些移动和嵌入式设备中使用的强大算法的严苛要求。

不可避免地,对更高精度和更灵活算法的需求会催生出矢量加速深度学习算法,如卷积神经网络(CNN),用于分类、定位和检测图像中的目标。例如,在使用交通标志识别的情况下,基于CNN的算法在识别准确度上胜过目前所有的目标检测算法。除了质量高之外,CNN与传统目标检测算法相比的主要优点是,CNN的自适应能力非常强。它可以在不改变算法代码的情况下快速地被重新“训练(tuning)”以适应新的目标。因此,CNN和其他深度学习算法在不久的将来就会成为主流目标检测方法。

CNN对移动和嵌入式设备有非常苛刻的计算要求。卷积是CNN计算的主要部分。CNN的二维卷积层允许用户利用重叠卷积,通过对同一输入同时执行一个或多个过滤器来提高处理效率。所以,对于嵌入式平台,设计师应该能够非常高效地执行卷积,以充分利用CNN流。

事实上,CNN严格来说并不是一种算法,而是一种实现框架。它允许用户优化基本构件块,并建立一个高效的神经网络检测应用,因为CNN框架是对每个像素逐一计算,而且逐像素计算是一种要求非常苛刻的运算,所以它需要更多的计算量。

不懈改进视觉处理器

第9篇:卷积神经网络的算法范文

AlphaGo真的有这么无敌吗?它的出现,对人类而言究竟是福还是祸呢?

抛开所有高大上的描述,AlphaGo本质上只是一段很长很长的程序代码。人类眼中的下围棋,在它眼里只是不停地按照代码设定做计算。人类棋手下棋时要计算每一步棋该怎样走,走这一步是优势还是劣势,同样,AlphaGo也在做类似的计算。而支撑它进行计算的是四个程序设置:策略网络、估值网络、快速部署和蒙特卡洛树搜索。要想知道AlphaGo是怎样学棋、下棋的,我们就得好好说说这四个程序设置了。

AlphaGo的策略网络,由监督学习和强化学习两种机器学习方法搭建。听上去有些高深?别急,平时刷题不止、考试不断的你一定深有体会。

所谓的监督学习,是我们给程序一个训练集,其中一部分称为例子,相当于习题;一部分称为目标,相当于答案。然后设定一个函数模型,让程序不断把训练集的例子代入函数模型,算答案,对答案。如果答案不对,程序就去调整这个函数模型里的某些参数,再重复之前的过程,直到能得出较高的正确率。接着再给程序一个测试集,相当于考试。如果程序对测试集里的例子算出的答案正确率也比较高,表明训练成功。

对于AlphaGo来说,训练集是人类在KGS围棋对战平台上下过的数万局棋谱,其中,“例子”是给定一步以后下一步该走什么,“答案”是人类走法中较多人走的且效果不错的那步,函数模型是模拟人类大脑的“深度卷积神经网络”。这里的“神经网络”指的是一类算法结构,本质是一簇互相关联的函数;“深度”指的是“神经网络”有好多层,每层负责学习不同的知识点;“卷积”则是一类数学方法,在神经网络中处理一些函数之间的关系和提炼输入数据里的有效信息。要想完全弄清楚“卷积”,大学的时候你可得好好学习高等数学哦。

接下来的强化学习,有点像平时老师让我们用学到的知识去解决某些答案并不确定的实际问题。在监督学习的过程中,AlphaGo只是参照人类的走法大致学会了预测下一步,那么下棋的效果究竟会怎么样呢?于是我们让两个策略网络互相下棋并不断调整,看哪边下赢了就保留胜方的模式和参数,这样下过3000万盘后,AlphaGo便通过这样“左右互搏”的方式提高了策略网络的“实战能力”,避免只会照猫画虎模仿人类。

估值网络与策略网络中强化学习的过程差不多,只不过在这里AlphaGo学的不是预测下一步怎么走,而是学习评估此刻棋盘上自己下在不同地方最终获胜的概率。

快速部署又是什么呢?虽然AlphaGo已经学习了很多东西,下棋的时候还是会遇到卡壳的情形,这个时候总不能干瞪眼发愣吧?于是,AlphaGo会根据经验“猜”一步――按照正确率不太高的一个函数模型进行快速计算,然后结合估值网络得出的获胜概率分布和蒙特卡洛树搜索得到的信息判定下一步该怎么下。

最后要说的是蒙特卡洛树搜索。“蒙特卡洛”并不是人名,而是一个地名。该方法的发明人之一斯塔尼斯拉夫・乌拉姆的叔叔经常在蒙特卡洛赌场输钱,赌博和这类方法都依赖概率,因此得名。它的功能是从当前一步参照估值网络和快速部署所给的信息,去评估搜索接下来的几步,再把搜索的结果传回给策略网络和估值网络。这个过程的流程图就像不断分叉的树干,选择哪一个分支深入搜索下去则是靠一定的概率,因此被称为“蒙特卡洛树搜索”。

总的来说,AlphaGo跟人类下棋时,策略网络和快速部署负责评估下一步不同走法的好坏,估值网络负责估算当前盘面的获胜概率分布,蒙特卡洛树搜索负责结合前三者帮助找到最佳的那一步。当然,这只是粗略的分工,在AlphaGo的实际运行中,这四种程序设置是互相交叉协作的。

在跟李世石九段对决中,由于比赛规则里有时间限制,AlphaGo还额外增加了一部分程序设置用于控制时间。面对复杂度高的局面,AlphaGo的计算量会显著增加,一样会出现人类棋手的“长考”现象。为避免在一步棋中耗费太多时间,时间控制部分的程序就要权衡每步棋的时间分布。