本篇文章2861字,读完约7分钟
卷积神经网络是一种前馈神经网络,是当今图像处理的主流技术。说到cnn卷积网络,必须说的是,alexkrizhevsky在2012年赢得了imagenet竞赛(由斯坦福大学李菲菲分校发起的人工智能竞赛),alexnet将图像分类的错误记录从26%减少到15%。此后,许多公司开始将深度学习作为核心技术开发。知名公司,如脸书、谷歌、亚马逊等。都使用卷积网络进行图像识别和产品推送。
Cnn卷积神经网络是一个大家族,它有以下四个关键技术用于图像应用。
& # 216;对象位置:预测包含主要对象的图像区域,以便识别该区域中的对象。
& # 216;对象识别:对分割的对象进行分类。
& # 216;对象分割:图像对象的分割和图像中像素的属性,如人和建筑物。
& # 216;关键点检测:从图像中检测目标物体上关键点的位置,如人脸的关键点信息。
Cnn网络培训数据集是开放的,它支持全世界的开发者下载培训模型数据集:
(1)mnist:最流行的深度学习数据集之一。手写数字数据集,包括60,000个示例的训练集和10,000个示例的测试集。deeplearning.net/tutorial/gettingstarted.html
(2)imagenet:由李菲菲创建的全球视觉识别挑战数据集(ilsvrc)。image-net.org/index
(3)pascal:一个标准化的优秀数据集,可用于图像分类、目标检测和图像分割。host.robots.ox.ac.uk/pascal/voc/
(4) MS-COCO: COCO是一个庞大而丰富的对象检测、分割和字幕数据集。cocodataset.org/
为什么要用有线电视新闻网来处理图像?原因很简单,因为图像特征可以在短时间内提取出来。一般来说,常用的神经网络将输入层和隐藏层完全连接起来,以保证系统能够提取图像的特征。从计算能力的角度来看,对于较小的图像,从整个图像计算特征是可行的。例如,为了提取28x28小照片的特征,目前cpu仍然是足够的。然而,如果提取大图像(例如96x96图像),则使用这种普通的神经网络全连接方法来学习整个图像的特征将是非常耗时的。你需要设计一个输入单元。如果你想学习100个特征,你需要计算一个参数。相比之下,96x96图像的计算过程比28x28图像慢100倍。每个人都知道当前的照片永远是高清晰的大图片,普通的神经网络无法预测它什么时候会按照全连接的方式进行处理。
以下内容是本部分的重点。让我们具体谈谈有线电视新闻网的实施过程。
首先,我们需要找出照片是如何输入神经网络的。众所周知,计算机适合处理矩阵运算,所以在计算机能够识别它们之前,有必要将图片转换成矩阵。所有彩色图像都由红、绿、蓝(rgb)叠加而成,形成三个通道的图像。图片在计算机中的存储也是通过这三个矩阵来完成的。
图4-23图的颜色通道
如图4-23所示,64*64像素大小的图片(例如,白色可以表示为rgb(255,255,255),该图片可以用三个64*64大小的矩阵表示。上面提到绘制三个5*4矩阵来表示64*64全尺寸矩阵。这三个矩阵,rgb,被称为图像的三个通道,也作为神经网络的输入数据。
像其他神经网络一样,cnn网络也包括输入层、隐藏层和输出层。卷积神经网络的主要运算过程如图4-24所示。
图4-24卷积神经网络处理过程
卷积器:卷积层由多个卷积单元组成,每个卷积单元的参数通过反向传播算法进行优化。卷积主要用于提取图像特征。随着卷积层数的增加,多层网络可以提取更复杂的图像特征。
线性校正线性校正单元(relu layer):主要指其激活函数使用线性校正的relu函数(relu)。
池层:经过卷积,图像仍有许多空间特征。特征矩阵被分成几个独立的块,取最大值或平均值来降低维数。
全连通层:将每个通道的所有局部特征和特征矩阵组合成向量表示,并计算每个类别的最终得分。
cnn网络的计算过程如图xxx所示,每个组件模块代表不同的计算内容。
(1)数据规范化
彩色图像输入通常分为三个通道:r(红色)、g(绿色)、b(蓝色),其中每个值介于0和255之间。
(2)卷积(卷积)
如前所述,由于普通的神经网络使用输入和隐藏层之间完全连接的方式来提取特征,当处理图像时,稍大的图像将导致巨大的计算量并且变得非常慢。卷积就是为了解决这个问题,每个隐藏单元只能连接输入单元的一部分,这可以理解为一种特征提取方法。
首先,我们定义了几个基本概念:深度、步幅、零填充、卷积核。
深度:深度指图形的深度及其控制输出单元的深度,也表示为连接同一区域的神经元数量。
步幅:用于描述卷积核运动的步长。
零填充:通过用零填充图像边缘来填充图像边缘,从而控制输出单元的空之间的大小。
卷积核:输出图像中的每个像素都是输入图像小区域中像素加权平均值的权函数。可以有许多卷积核,卷积核的参数可以通过误差反向传播来训练。
如图4-25所示,卷积计算过程中,步长=1,卷积核依次向右移动,进行卷积运算,得到相应的结果。
图4-25卷积运算过程
对于图像计算,边缘可以是零填充的。可以看出,这个过程改变了图像的操作大小,如图4-26所示。
事实上,卷积运算的过程非常简单,如图4-27所示,可以总结为公式(4.3.6)。其中b代表卷积结果,k是卷积核,a是图像的输入矩阵。
图4-27卷积运算过程
如图4-27所示,可以看出卷积核k是2*2卷积核,具体操作过程如下。
所有图像的卷积运算可以通过公式(4.3.6)进行。
(3)激活
Cnn卷积神经网络需要经过卷积后的激活过程,常用的激活函数是relu函数。relu函数的主要特性已经在前面的章节中描述过了。从图像的功能来看,单侧抑制、相对较宽的激发边界和稀疏的激活。
(4)联营
池化的目的是提取特征并减少传输到下一阶段的数据量。汇集操作相对于每个深度切片是独立的,并且汇集比例通常是2 * 2像素。与卷积运算相比,汇集层运算一般有以下几种类型:*最大汇集:取最大值4点。这是最常用的池算法。*平均分摊:取4分的平均值。*高斯模糊:根据高斯模糊的方法。
如图4-28所示,描述了最大池的计算方法。
图4-28汇集操作流程
(5)全连接层
通常,最后的步骤出现在完全连接层,它在卷积神经网络中扮演“分类器”的角色。如果卷积层、汇集层和激活函数层的操作是将原始数据映射到隐藏层特征空,则完全连通层起到将所学习的“分布式特征表示”映射到样本标记空.的作用完全连接过程是矩阵的扩展过程,也可以理解为输出矩阵和1*1卷积核之间的卷积运算,最后扩展成1*n向量。
在卷积神经网络中,全连通层通常用softmax函数来分类。Softmax函数适用于数据分类,用于确保每个分类的总概率为1。
虽然卷积神经网络的计算过程解释起来很繁琐,但对深入理解神经网络算法是非常有益的。卷积神经网络经过近30年的发展,已经有了许多网络发展的分支,并继续高速发展。其中,vgg16和vgg19具有更深的网络层,nin网络由卷积模块增强,r-cnn是一个新的网络,从分类到目标检测任务过多。图4-29显示了卷积神经网络的不同发展分支。
标题:图像处理——卷积神经网络运算过程详解
地址:http://www.hcsbodzyz.com/hcxw/243.html