CN111027630A - 一种基于卷积神经网络的图像分类方法 - Google Patents
一种基于卷积神经网络的图像分类方法 Download PDFInfo
- Publication number
- CN111027630A CN111027630A CN201911285439.2A CN201911285439A CN111027630A CN 111027630 A CN111027630 A CN 111027630A CN 201911285439 A CN201911285439 A CN 201911285439A CN 111027630 A CN111027630 A CN 111027630A
- Authority
- CN
- China
- Prior art keywords
- matrix
- classified
- image
- pooling
- identified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 69
- 239000011159 matrix material Substances 0.000 claims abstract description 178
- 238000011176 pooling Methods 0.000 claims abstract description 104
- 230000009467 reduction Effects 0.000 claims abstract description 39
- 239000013598 vector Substances 0.000 claims description 37
- 230000008569 process Effects 0.000 claims description 20
- 238000012549 training Methods 0.000 claims description 15
- 230000000644 propagated effect Effects 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 3
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 abstract description 15
- 230000001902 propagating effect Effects 0.000 abstract description 2
- 125000004122 cyclic group Chemical group 0.000 abstract 1
- 238000013145 classification model Methods 0.000 description 12
- 238000000513 principal component analysis Methods 0.000 description 11
- 238000009795 derivation Methods 0.000 description 10
- 230000004913 activation Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 241000282472 Canis lupus familiaris Species 0.000 description 2
- 241000282994 Cervidae Species 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 241000269350 Anura Species 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于卷积神经网络的图像分类方法,将待分类/识别图像输入卷积神经网络,利用特征图降维方法对池化层输入的待分类/识别图像的全部高维特征图进行降维,最后将降维得到的待分类/识别图像的全部低维特征图向下输入计算出损失后将其反向传播,循环迭代直至损失或分类准确度不再变化,得到图像分类/识别结果。特征图降维,是利用池化层输入的待分类/识别图像的全部高维特征图构建输入图像特征信息矩阵,提取待分类/识别图像特征信息矩阵的主成分矩阵,再初始化随机变量,对主成分矩阵进行信息加权,构建池化矩阵,由池化矩阵还原出待分类/识别图像的全部低维特征图。解决了采用卷积神经网络的图像分类方法分类精度低的问题。
Description
技术领域
本发明属于图像分类技术领域,涉及一种基于卷积神经网络的图像分类方法。
背景技术
图像分类技术在字符、人脸和物体识别以及图像检索等方面都有广泛的应用。其主要思想是:首先对样本图像中所包含的目标或者场景进行分析,然后将图像的原始像素转换为图像的特征信息即特征图,用这些特征信息表示成各个图像的描述信息,最后根据得到的这些描述信息进行图像分类,目前,基于卷积神经网络的图像分类成为研究热点。
卷积神经网络(CNN)主要由卷积层与池化层的交替结构组成,包含的卷积层越多,提取的特征就越抽象,越能提高分类精度。与传统的全连接网络相比,CNN的卷积层有局部连接与权值共享的特点,从而大大减少网络参数,提高网络的训练速度。但是CNN的网络参数数量依然较大,随网络深度增加,从输入图像(即待分类/识别图像)提取得到的是其高维特征图,造成CNN的参数数量剧增,图像分类/识别难度也随之增加、图像分类/识别效率降低,且极容易造成过拟合,造成输入图像分类/识别速度降低,输入图像分类/识别时间增加。因此有必要对提取的输入图像的高维特征图进行降维。
池化操作也称为下采样,主要用于特征的降维,可以显著减少参数的数量,减小过拟合,同时池化操作还具有旋转、平移不变性。常用的池化有最大池化、平均池化和随机池化。最大池化,顾名思义,就是取池化窗口中的最大值;平均池化是取窗口中的平均值;随机池化是以某一个值占所在窗口中所有值总和的比例为概率,随机的选区窗口中的值,由此可以看出,某一个值越大,那么取该值的可能性就越大。从池化操作中可以看到,最大池化选取窗口中的一个最大值,并没有考虑其它值的特征;而平均池化选取窗口的平均值,虽然考虑了窗口中所有值,但是取平均操作弱化了每一维的特征,没有考虑特征的独特性;随机池化相比于最大池化,不同之处在于随机池化能选择到窗口内的所有值,但是,其本质上还是选择某一个值。这些操作都会丢失大量提取的输入图像的数据信息,做不到把窗口中的信息最大化利用。丢失的信息越多,图像分类/识别的精度就越低。
发明内容
本发明实施例的目的在于提供一种基于卷积神经网络的图像分类方法,以解决现有采用卷积神经网络进行图像分类的方法容易丢失待分类/识别图像的特征信息数据造成图像分类精度较低的问题,以及现有采用卷积神经网络进行图像分类的方法随网络深度增加,对输入图像的分类/识别难度增加、速度降低的问题。
本发明实施例所采用的技术方案是,一种基于卷积神经网络的图像分类方法,按照以下步骤进行:
步骤S1、将待分类/识别图像输入卷积神经网络;
步骤S2、利用特征图降维方法对卷积神经网络的池化层输入的待分类/识别图像的全部高维特征图进行降维;
步骤S3、利用降维得到的待分类/识别图像的全部低维特征图继续向下操作直到最后计算出卷积神经网络的损失后将其反向传播,循环迭代直至损失值不再下降或者分类/识别的准确率不再上升为止,得到对输入图像的最终分类/识别结果。
进一步的,所述特征图降维方法的具体实现过程为:
步骤S21、利用卷积神经网络池化层输入的待分类/识别图像的全部高维特征图构建输入图像特征信息矩阵Sm×n;
步骤S22、利用PCA运算提取待分类/识别图像特征信息矩阵Sm×n的主成分矩阵Cm×n;
步骤S23、初始化随机变量,对主成分矩阵Cm×n进行信息加权,构建池化矩阵Pm×1;
步骤S24、由池化矩阵Pm×1构建还原出待分类/识别图像的全部低维特征图。
进一步的,所述步骤S21的具体实现过程为:选取池化窗口大小并滑动池化窗口,依次遍历卷积神经网络池化层输入的每张数据总数为k的待分类/识别图像的高维特征图,池化窗口滑动次数等于待分类/识别图像的所有高维特征图中的数据总数m,待分类/识别图像的高维特征图总数为m/k,池化窗口内的数据总数为n,每滑动一次池化窗口后取出其中的待分类/识别图像的特征信息数据组成一个行向量αi=[di1,di2,…,din],i=1,2,…,m,然后将全部行向量依次排列,组成待分类/识别图像特征信息矩阵Sm×n=[α1,α2,…,αm]T。
进一步的于,所述步骤S22按照以下步骤进行:
步骤S221、对每一个行向量αi=[di1,di2,…,din],i=1,2,…,m去中心化,进而得到去中心化的待分类/识别图像特征信息矩阵S′m×n:
步骤S222、按照下式对S′m×n进行特征值分解,得到特征向量组成的矩阵Vn×n:
其中,Um×m是由左奇异向量组成的矩阵,∑m×n是对角线上的元素为奇异值而其他元素均为零的矩阵;
步骤S223、由待分类/识别图像特征信息矩阵Sm×n和特征向量组成的矩阵Vn×n根据公式Cm×n=Sm×nVn×n得到主成分矩阵Cm×n。
进一步的,所述步骤S23按照以下步骤进行:
步骤S231、用m维的列向量βi,i=1,2,…,n,βi∈Rm,Rm是行数为m的实数矩阵,依次表示主成分矩阵Cm×n的每一列,即Cm×n=[β1,β2,…,βn];
步骤S232、对列向量βi信息加权,得到池化矩阵Pm×1=K1β1+K2β2+…+Knβn;其中K1,K2,…,Kn是初始化的随机变量,其和卷积神经网络模型参数一起训练得到最终值;
步骤S233、用p1,p2,…,pm表示Pm×1的每一行,则池化矩阵Pm×1=[p1,p2,…,pm]T,且池化矩阵的行向量pi,i=1,…,m在池化矩阵Pm×1中的位置与行向量αi,i=1,…,m在待分类/识别图像特征信息矩阵Sm×n中的位置一一对应。
进一步的,所述步骤S24是先对池化矩阵Pm×1进行分段,分成m/k段,分出的每一段均代表一张降维后的待分类/识别图像的特征图,再将每一张降维后的待分类/识别图像特征信息矩阵的特征图上的特征信息数据按照所选池化窗口大小降维到1×1窗口,对应还原成m/k张与待分类/识别图像的高维特征图一一对应的低维特征图,即是将待分类/识别图像的高维特征图上的k个多维特征信息数据降低成了k个一维特征信息数据,这k个一维特征信息数据构成待分类/识别图像的低维特征图。
进一步的,所述特征图降维方法的误差反向传播步骤如下:
进一步的,所述步骤1的具体实现过程为:
由池化矩阵Pm×1的构建步骤可知,主成分矩阵Cm×n=[β1,β2,…,βn],Pm×1=K1β1+K2β2+…+Knβn,其中K1,K2,…,Kn是随机变量;
令λ=[K1,K2,…,Kn],λ为随机初始化参数,其在使用梯度下降法训练CNN参数时一起训练得到,则池化矩阵Pm×1的表达式为:
因为:
dPm×1=(dCm×n)λT+Cm×n(dλT); (2)
其中,dPm×1表示池化矩阵Pm×1的微分;dλT表示矩阵λT的微分;
且在反向过程中满足如下关系:
进一步的,所述步骤2由推导出损失函数L对待分类/识别图像特征信息矩阵Sm×n的每一个元素的导数时,包括由直接反向传播路线,和由依次经特征向量组成的矩阵Vn×n和经过去中心化的待分类/识别图像特征信息矩阵S′m×n的间接传播路线,所以有下式:
其中,表示由直接反向传播线路上损失函数L对待分类/识别图像特征信息矩阵Sm×n的每一个元素的导数,表示由依次经特征向量组成的矩阵Vn×n和经过去中心化的待分类/识别图像特征信息矩阵S′m×n的间接传播线路上损失函数L对待分类/识别图像特征信息矩阵Sm×n的每一个元素的导数。
所述系数矩阵K由下式计算得出:
其中,rij为系数矩阵K的第i行第j列元素,η为矩阵∑m×n的对角线元素,ηi为矩阵∑m×n的第i个对角元素,ηj为矩阵∑m×n的第j个对角元素。
本发明实施例的有益效果是,本发明实施例的基于卷积神经网络的图像分类方法,提出一种特征图降维方法对CNN池化层输入的待分类/识别图像的高维特征图进行降维操作。该特征图降维方法首先将待分类/识别图像的高维特征图转换成待分类/识别图像特征信息矩阵,然后利用PCA算法得到由所有的主成分向量构成的主成分分析矩阵,即使用PCA算法来提取待分类/识别图像的所有特征信息数据,不进行特征信息数据的降维,能最大程度的保留池化窗口内待分类/识别图像的特征信息数据,提高了图像分类精度,解决了现有采用卷积神经网络进行图像分类的方法容易丢失输入的待分类/识别图像的数据信息造成图像分类精度较低的问题。其次,利用PCA运算提取特征信息数据后,使用随机初始化的参数对提取的特征信息数据进行加权求和实现降维,得到了待分类/识别图像的低维特征图。最后基于该待分类/识别图像的低维特征图进行图像分类/识别,提升了对输入图像的分类/识别的速度,降低了对输入图像分类/识别的难度,解决了现有采用卷积神经网络进行图像分类时,网络深度增加导致输入图像分类/识别难度增加、速度降低的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的特征图降维方法的流程图。
图2是本发明实施例的待分类/识别图像特征信息矩阵的构造示意图。
图3是本发明实施例的待分类/识别图像的低维特征图的构建示意图。
图4是本发明实施例的特征图降维方法的反向传播路线示意图。
图5是本发明实施例应用的一个具体网络结构示意图。
图6是采用本发明实施例的基于PCA的卷积神经网络特征图降维方法和传统池化在数据集CIFAR10上进行分类测试的分类精度对比图。
图7是采用本发明实施例的基于PCA的卷积神经网络特征图降维方法和传统池化在数据集CIFAR100上进行分类测试的分类精度对比图。
图8是采用本发明实施例的基于PCA的卷积神经网络特征图降维方法和传统池化在数据集SVHN上进行分类测试的分类精度对比图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种基于卷积神经网络的图像分类方法,
按照以下步骤进行:
步骤S1、将待分类/识别图像输入卷积神经网络;
步骤S2、利用特征图降维方法对卷积神经网络的池化层输入的待分类/识别图像的全部高维特征图进行降维;
步骤S3、利用降维得到的待分类/识别图像的全部低维特征图继续向下操作直到最后计算出卷积神经网络的损失后将其反向传播,循环迭代直至损失值不再下降或者分类/识别的准确率不再上升为止,得到对输入图像的最终分类/识别结果。
步骤S2中的特征图降维方法,如图1所示,具体按照以下步骤进行:
步骤S21,利用卷积神经网络池化层输入的待分类/识别图像的全部高维特征图构建输入图像特征信息矩阵Sm×n。
如图2所示,选取池化窗口大小并滑动池化窗口,依次遍历卷积神经网络池化层输入的每张数据总数为k的待分类/识别图像的高维特征图,池化窗口滑动次数等于待分类/识别图像的所有高维特征图中的数据总数m,待分类/识别图像的高维特征图总数为m/k,池化窗口内的数据总数为n,每滑动一次池化窗口后取出其中的待分类/识别图像的特征信息数据组成一个行向量αi=[di1,di2,…,din],i=1,2,…,m,然后将全部行向量依次排列,组成待分类/识别图像特征信息矩阵Sm×n=[α1,α2,…,αm]T。
步骤S22,利用主成分分析方法(PCA)运算提取待分类/识别图像特征信息矩阵Sm×n的主成分矩阵Cm×n,具体步骤如下:
步骤S223、得到主成分矩阵Cm×n=Sm×nVn×n,主成分矩阵Cm×n中的每一列是由主成分分析法得到的主成分向量。
步骤S23,对主成分矩阵信息加权,构建池化矩阵Pm×1:
步骤S231、用m维的列向量βi,i=1,2,…,n,βi∈Rm,Rm是行数为m的实数矩阵,依次表示主成分矩阵Cm×n的每一列,即Cm×n=[β1,β2,…,βn];
步骤S232、对列向量βi信息加权,得到池化矩阵Pm×1=K1β1+K2β2+…+Knβn,其中K1,K2,…,Kn是随机变量,初始化后K1,K2,…,Kn和神经网络参数一起训练得到最终值;
步骤S233、用p1,p2,…,pm表示Pm×1的每一行,则池化矩阵Pm×1=[p1,p2,…,pm]T。
步骤S24,由池化矩阵构建还原出低维特征图:
池化矩阵Pm×1与待分类/识别图像特征信息矩阵Sm×n的行数是对应的,将Pm×1变换成与Sm×n完全相同的形式,再按照待分类/识别图像特征信息矩阵Sm×n的组成形式,将Pm×1还原成低维特征图,还原过程如图3所示,具体是先对池化矩阵Pm×1进行分段,分成m/k段,分出的每一段均代表一张降维后的待分类/识别图像的特征图,再将每一张降维后的待分类/识别图像特征信息矩阵的特征图上的特征信息数据按照所选池化窗口大小降维到1×1窗口,对应还原成m/k张与待分类/识别图像的高维特征图一一对应的低维特征图,即是将待分类/识别图像的高维特征图上的k个多维特征信息数据降低成了k个一维特征信息数据,这k个一维特征信息数据构成待分类/识别图像的低维特征图。图3的分段后的特征图与对应的高维特征图的数据量相等,但其变小了,如图3中1×1窗口p1的数据是图2中由d11,d12,d13,d14组成的2×2窗口数据的降维结果。池化矩阵Pm×1=[p1,p2,…,pm]T的列向量与待分类/识别图像特征信息矩阵Sm×n=[α1,α2,…,αm]T的列向量一一对应,pi是αi的降维结果。
CNN网络模型的各个层共同承担两个重要责任,一是前向传递:接收输入并产生输出,即前向传播信号;二是后向传播,又称为误差反向传播:通过梯度下降算法将期望输出和实际输出之间的误差,从输出层反向传递到输入层,即后向传播误差。前向传播信号和后向传播误差两个过程周而复始的交替进行,不断的调整更新神经元的连接权重,直至损失函数不再减小,模型的训练结束。这就要求CNN分类模型必须能将误差反向传播到输入端。本发明提出的一种CNN的特征图降维方法必须能够实现反向传播才能用到CNN分类模型中,下面是反向传播的推导过程,即本实施例通过下述过程将池化层输出端的结果反向传播至池化层输入端:
图4是特征图降维方法的误差反向传播路线,包含两个阶段:
对于神经网络,有定义误差δ:
对于全连接网络,从下一层求上一层的误差,即全连接层的误差可根据下式得出:
δl=((wl+1)Tδl+1)⊙σ'(zl);
其中,δl表示第l层的误差,l≥1,A⊙B表示Hadamard乘积,A表示((wl+1)Tδl+1),B表示σ'(zl),w为第l+1层的权重矩阵,σ为激活函数,σ'(zl)表示激活函数对第l层带权输入的导数,本实施例中,选用ReLU函数作为激活函数,所以有:
对于卷积神经网络的卷积层有:
δl=δl+1*rot180(wl+1)⊙σ'(zl);
其中,*代表卷积,rot180()表示旋转卷积核180°,同样激活函数的导数σ'(zl)如上式。
对池化层有:
δl=upsample(δl+1)⊙σ'(zl);
其中,upsample()表示上采样,由于池化层没有激活函数,所以这里σ'(zl)=1。实例中我们选取softmax分类器以及交叉熵函数作为损失函数,故可以得出softmax层的误差:
其中,为网络预测值,y为标签值,x表示输入样本,M′为batchsize,实例中取128。由卷积神经网络的全连接层、卷积层的以及池化层的误差计算公式,可以根据网络结构从神经网络的最后一层即输出层的误差向前逐步推导,记本发明实施例提出的特征图降维方法为PCAPool,推出PCAPool后一层的卷积层的误差δpp+1,损失函数对还原后的特征图上每个元素的导数为:
其中,zpp+1为PCAPool后一层的卷积层的带权输入,wpp+1为PCAPool后一层的卷积层的的权重矩阵,P为池化矩阵还原成的低维特征图。
待分类/识别图像特征信息矩阵Sm×n到主成分矩阵Cm×n的正向传播实质上包含了两条路线,分别为直接传播和经过去中心化的待分类/识别图像特征信息矩阵S′m×n和特征向量组成的矩阵Vn×n的间接传播。因此,往的反向传播也包含路线Ⅰ和路线Ⅱ两条,分别对应于正向的直接传播和间接传播,由此可以得到 表示由直接反向传播线路上损失函数L对待分类/识别图像特征信息矩阵Sm×n的每一个元素的导数,表示由依次经特征向量组成的矩阵Vn×n和经过去中心化的待分类/识别图像特征信息矩阵S′m×n的间接传播线路上损失函数L对待分类/识别图像特征信息矩阵Sm×n的每一个元素的导数。
下面依次验证两个阶段的反向推导过程:
由池化矩阵Pm×1的构建步骤可知,Cm×n=[β1,β2,…,βn],Pm×1=K1β1+K2β2+…+Knβn,其中K1,K2,…,Kn是随机变量。令λ=[K1,K2,…,Kn],则池化矩阵的表达式为:
因为:
dPm×1=(dCm×n)λT+Cm×n(dλT); (2)
dPm×1表示池化矩阵Pm×1的增量,即池化矩阵Pm×1的微分;同理,dλT表示随机初始化参数λ的转换矩阵的增量,即矩阵λT的微分。
且在反向过程中满足如下关系:
随机初始化参数λ在使用梯度下降法训练CNN分类模型的网络参数时一起训练得到,用损失函数L对池化矩阵Pm×1的每一个元素求导得到的进而得到损失函数L对λ的导数将训练得到的随机初始化参数λ,和利用损失函数L对池化矩阵Pm×1的每一个元素求导得到的代入公式(3),即可得到实现由推导出的任务,完成第一阶段的误差反向传播推导。
由主成分矩阵Cm×n的提取步骤可知:主成分矩阵、待分类/识别图像特征信息矩阵和特征向量组成的矩阵之间满足Cm×n=Sm×nVn×n,此公式反映了主成分矩阵Cm×n和待分类/识别图像特征信息矩阵Sm×n之间的直接传播关系,根据下式计算直接传播的反向传播结果:
因此有:
其中,K为系数矩阵,系数矩阵K的第i行第j列元素η为矩阵∑m×n的对角线元素,ηi为矩阵∑m×n的第i个对角元素,ηj为矩阵∑m×n的第j个对角元素,((Um×m)TdS′m×nVn×n)diag表示把矩阵(Um×m)TdS′m×nVn×n所有非对角线的元素置零,((∑m×n)T(Um×m)TdS′m×n∑m×n)sym=((∑m×n)T(Um×m)TdS′m×n∑m×n)T+((∑m×n)T(Um×m)TdS′m×n∑m×n)。
用∑n×n表示∑m×n的前n行,当Um×m=(U1|U2),dU1∈Rm×n,dU2∈Rm×(m-n)时,可得:
dUm×n=(dU1|dU2); (8)
当损失函数L满足时,Rm×n代表m行n列的实数矩阵,Rm×(m-n)代表m行m-n列的实数矩阵,对应于损失函数L对Um×n的前n列分块U1的导数,对应于损失函数L对Um×n的后m-n列分块U2的导数,可得:
此时可得:
dUm×n=(C(∑n×n)-1|-U1(∑n×n)-1CTU2); (10)
其中,C=dS′m×nVn×n-Um×md∑m×nd(Vn×n)T Vn×n。
由公式(6)~(10)可得,损失函数L对去中心化的待分类/识别图像特征信息矩阵S′m×n的每一个元素求导数的结果:
Um×m和∑m×n是求去中心化的待分类/识别图像特征信息矩阵S′m×n的中间变量,不在误差传播路径中,故
由公式(12)~(13)可得:
D=0; (14)
把公式(12)~(14)代入公式(11)可得:
对于关系式Cm×n=Sm×nVn×n,由于:
将公式(16)带入公式(15)可得:
已知待分类/识别图像特征信息矩阵:
由待分类/识别图像特征信息矩阵可以得到去中心化的待分类/识别图像特征信息矩阵:
记:
又因为这是反向传播的第二条路径,且矩阵M为m×m的对称矩阵,则有:
将公式(3)代入公式(22)可得:
公式(23)中涉及的Vm×n、Sm×n已知,参数λ在训练分类模型的网络参数时一起得到,m由池化窗口的大小决定,Um×m和Σm×n是计算时产生的中间变量,由公式(7)可以确定K的大小。此时,由推导出了完成第二阶段的误差反向传播推导。
上述的推导过程证明本发明实施例提出的特征图降维方法能够胜任反向传播误差的任务,随机初始化参数λ能随网络参数一起训练得到。
用本发明实施例所提的特征图降维方法代替经典分类模型CNN_Quick中的第二个池化层,得到分类模型CNN_Quick_DimRe。分类模型CNN_Quick_DimRe的网络结构如图5所示,其中卷积层后面的数字代表输出的通道数。将两个分类模型在数据集CIFAR10、CIFAR100和数据集SVHN上做分类测试,数据集CIFAR10、CIFAR100和数据集SVHN中的图像分辨率为32×32。CIFAR10一共包含10个类别的RGB彩色图片:飞机(airplane)、汽车(automobile)、鸟类(bird)、猫(cat)、鹿(deer)、狗(dog)、蛙类(frog)、马(horse)、船(ship)和卡车(truck)。CIFAR100类似于CIFAR10但包含有100个类别。SVHN(Street ViewHouse Number)来源于谷歌的街景门牌号码,所以其类别为0-9十个数字。利用本发明提出的特征图降维方法构成分类模型的主要目的,就是实现不同图片数据的自动分类。
将数据集中的图片进行预处理后直接作为分类模型的输入,在应用时,本发明实施例PCAPool的池化窗口大小为3×3,步长为2。这时高维数据的维度为16×16×32。对应于步骤S21中,m=8×8×32=2048,k=8×8=64,窗口内池化的总数居n=3×3=9。随着池化窗口的滑动,组成输入图像特征信息矩阵S2048×9,根据步骤S221可以求得S'2048×9,随后进行步骤S222、S223可以求得主成分矩阵C2048×9。对应步骤S23,对主成分矩阵的每一列进行信息加权,在步骤S232中将会引入随机变量K1,K2,…,K9。得到池化矩阵之后,由步骤S24将池化矩阵还原成低维特征图,低维特征图的维度是8×8×32。
得到低维特征图以后继续进行之后的卷积、池化等操作计算出损失。需要注意,网络的全连接层共有两层,最后一层全连接输出数据的数量与类别相同。也就是说对于CIFAR10、SVHN数据集来说,输出的数据量为10,而对于CIFAR100,输出的数据量为100。刚开始训练时,因为网络还没有拟合输入与输出的映射关系,求得损失值会很大。这就需要反向传播算法对网络参数进行调整。在反向传播的第一个阶段,我们很容易将误差从损失函数反向传播至PCAPool的后一层卷积层,即第三个卷积层。要保证误差能够继续反向传播,就必须证明损失函数对PCAPool输入的每一个元素的偏导数。本发明已给出一般证明。随着网络参数不断调整,损失值不断下降,不断迭代至损失值不再下降或者识别的准确率不再上升为止,结束训练,得出分类结果。
分类的准确率与步数的关系如图6~8所示。从图6~8中可以看出,使用本发明实施例提出的特征图降维方法(CNN_Quick+PCApool)替代传统的池化方法(CNN_Quick)后,可以进一步提高模型的收敛速度和精度。本发明实施例提出的特征图降维方法可以替代任意一个分类模型中的传统池化方法,以提高原有分类模型的分类精度。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种基于卷积神经网络的图像分类方法,其特征在于,按照以下步骤进行:
步骤S1、将待分类/识别图像输入卷积神经网络;
步骤S2、利用特征图降维方法对卷积神经网络的池化层输入的待分类/识别图像的全部高维特征图进行降维;
步骤S3、利用降维得到的待分类/识别图像的全部低维特征图继续向下操作直到最后计算出卷积神经网络的损失后将其反向传播,循环迭代直至损失值不再下降或者分类/识别的准确率不再上升为止,得到对输入图像的最终分类/识别结果。
2.根据权利要求1所述的一种基于卷积神经网络的图像分类方法,其特征在于,所述特征图降维方法的具体实现过程为:
步骤S21、利用卷积神经网络池化层输入的待分类/识别图像的全部高维特征图构建输入图像特征信息矩阵Sm×n;
步骤S22、利用PCA运算提取待分类/识别图像特征信息矩阵Sm×n的主成分矩阵Cm×n;
步骤S23、初始化随机变量,对主成分矩阵Cm×n进行信息加权,构建池化矩阵Pm×1;
步骤S24、由池化矩阵Pm×1构建还原出待分类/识别图像的全部低维特征图。
3.根据权利要求2所述的一种基于卷积神经网络的图像分类方法,其特征在于,所述步骤S21的具体实现过程为:选取池化窗口大小并滑动池化窗口,依次遍历卷积神经网络池化层输入的每张数据总数为k的待分类/识别图像的高维特征图,池化窗口滑动次数等于待分类/识别图像的所有高维特征图中的数据总数m,待分类/识别图像的高维特征图总数为m/k,池化窗口内的数据总数为n,每滑动一次池化窗口后取出其中的待分类/识别图像的特征信息数据组成一个行向量αi=[di1,di2,…,din],i=1,2,…,m,然后将全部行向量依次排列,组成待分类/识别图像特征信息矩阵Sm×n=[α1,α2,…,αm]T。
4.根据权利要求3所述的一种基于卷积神经网络的图像分类方法,其特征在于,所述步骤S22按照以下步骤进行:
步骤S221、对每一个行向量αi=[di1,di2,…,din],i=1,2,…,m去中心化,进而得到去中心化的待分类/识别图像特征信息矩阵S′m×n:
步骤S222、按照下式对S′m×n进行特征值分解,得到特征向量组成的矩阵Vn×n:
其中,Um×m是由左奇异向量组成的矩阵,∑m×n是对角线上的元素为奇异值而其他元素均为零的矩阵;
步骤S223、由待分类/识别图像特征信息矩阵Sm×n和特征向量组成的矩阵Vn×n根据公式Cm×n=Sm×nVn×n得到主成分矩阵Cm×n。
5.根据权利要求4所述的一种基于卷积神经网络的图像分类方法,其特征在于,所述步骤S23按照以下步骤进行:
步骤S231、用m维的列向量βi,i=1,2,…,n,βi∈Rm,Rm是行数为m的实数矩阵,依次表示主成分矩阵Cm×n的每一列,即Cm×n=[β1,β2,…,βn];
步骤S232、对列向量βi信息加权,得到池化矩阵Pm×1=K1β1+K2β2+…+Knβn;其中K1,K2,…,Kn是初始化的随机变量,其和卷积神经网络模型参数一起训练得到最终值;
步骤S233、用p1,p2,…,pm表示Pm×1的每一行,则池化矩阵Pm×1=[p1,p2,…,pm]T,且池化矩阵的行向量pi,i=1,…,m在池化矩阵Pm×1中的位置与行向量αi,i=1,…,m在待分类/识别图像特征信息矩阵Sm×n中的位置一一对应。
6.根据权利要求1~5任一项所述的一种基于卷积神经网络的图像分类方法,其特征在于,所述步骤S24是先对池化矩阵Pm×1进行分段,分成m/k段,分出的每一段均代表一张降维后的待分类/识别图像的特征图,再将每一张降维后的待分类/识别图像特征信息矩阵的特征图上的特征信息数据按照所选池化窗口大小降维到1×1窗口,对应还原成m/k张与待分类/识别图像的高维特征图一一对应的低维特征图,即是将待分类/识别图像的高维特征图上的k个多维特征信息数据降低成了k个一维特征信息数据,这k个一维特征信息数据构成待分类/识别图像的低维特征图。
8.根据权利要求7所述的一种基于卷积神经网络的图像分类方法,其特征在于,所述步骤1的具体实现过程为:
由池化矩阵Pm×1的构建步骤可知,主成分矩阵Cm×n=[β1,β2,…,βn],Pm×1=K1β1+K2β2+…+Knβn,其中K1,K2,…,Kn是随机变量;
令λ=[K1,K2,…,Kn],λ为随机初始化参数,其在使用梯度下降法训练CNN参数时一起训练得到,则池化矩阵Pm×1的表达式为:
因为:
dPm×1=(dCm×n)λT+Cm×n(dλT); (2)
其中,dPm×1表示池化矩阵Pm×1的微分;dλT表示矩阵λT的微分;
且在反向过程中满足如下关系:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911285439.2A CN111027630B (zh) | 2019-12-13 | 2019-12-13 | 一种基于卷积神经网络的图像分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911285439.2A CN111027630B (zh) | 2019-12-13 | 2019-12-13 | 一种基于卷积神经网络的图像分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111027630A true CN111027630A (zh) | 2020-04-17 |
CN111027630B CN111027630B (zh) | 2023-04-07 |
Family
ID=70210783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911285439.2A Active CN111027630B (zh) | 2019-12-13 | 2019-12-13 | 一种基于卷积神经网络的图像分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111027630B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111754478A (zh) * | 2020-06-22 | 2020-10-09 | 怀光智能科技(武汉)有限公司 | 一种基于生成对抗网络的无监督域适应系统及方法 |
CN112966213A (zh) * | 2021-02-26 | 2021-06-15 | 北京三一智造科技有限公司 | 一种机械设备的数据预测方法、装置、介质及电子设备 |
CN113052254A (zh) * | 2021-04-06 | 2021-06-29 | 安徽理工大学 | 多重注意力幽灵残差融合分类模型及其分类方法 |
CN114662615A (zh) * | 2022-05-07 | 2022-06-24 | 浙江加力仓储设备股份有限公司 | 具有感应手柄的电动升降叉车及其控制方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107092960A (zh) * | 2017-04-17 | 2017-08-25 | 中国民航大学 | 一种改进的并行通道卷积神经网络训练方法 |
WO2017215284A1 (zh) * | 2016-06-14 | 2017-12-21 | 山东大学 | 基于卷积神经网络的胃肠道肿瘤显微高光谱图像处理方法 |
CN108921029A (zh) * | 2018-06-04 | 2018-11-30 | 浙江大学 | 一种融合残差卷积神经网络和pca降维的sar自动目标识别方法 |
US20190244108A1 (en) * | 2018-02-08 | 2019-08-08 | Cognizant Technology Solutions U.S. Corporation | System and Method For Pseudo-Task Augmentation in Deep Multitask Learning |
-
2019
- 2019-12-13 CN CN201911285439.2A patent/CN111027630B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017215284A1 (zh) * | 2016-06-14 | 2017-12-21 | 山东大学 | 基于卷积神经网络的胃肠道肿瘤显微高光谱图像处理方法 |
CN107092960A (zh) * | 2017-04-17 | 2017-08-25 | 中国民航大学 | 一种改进的并行通道卷积神经网络训练方法 |
US20190244108A1 (en) * | 2018-02-08 | 2019-08-08 | Cognizant Technology Solutions U.S. Corporation | System and Method For Pseudo-Task Augmentation in Deep Multitask Learning |
CN108921029A (zh) * | 2018-06-04 | 2018-11-30 | 浙江大学 | 一种融合残差卷积神经网络和pca降维的sar自动目标识别方法 |
Non-Patent Citations (2)
Title |
---|
余萍;赵继生;: "基于矩阵2-范数池化的卷积神经网络图像识别算法" * |
张芝衔;: "基于CNN的无人驾驶行人识别" * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111754478A (zh) * | 2020-06-22 | 2020-10-09 | 怀光智能科技(武汉)有限公司 | 一种基于生成对抗网络的无监督域适应系统及方法 |
CN112966213A (zh) * | 2021-02-26 | 2021-06-15 | 北京三一智造科技有限公司 | 一种机械设备的数据预测方法、装置、介质及电子设备 |
CN112966213B (zh) * | 2021-02-26 | 2023-09-29 | 北京三一智造科技有限公司 | 一种机械设备的数据预测方法、装置、介质及电子设备 |
CN113052254A (zh) * | 2021-04-06 | 2021-06-29 | 安徽理工大学 | 多重注意力幽灵残差融合分类模型及其分类方法 |
CN114662615A (zh) * | 2022-05-07 | 2022-06-24 | 浙江加力仓储设备股份有限公司 | 具有感应手柄的电动升降叉车及其控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111027630B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111027630B (zh) | 一种基于卷积神经网络的图像分类方法 | |
Wang et al. | RSNet: The search for remote sensing deep neural networks in recognition tasks | |
CN110020682B (zh) | 一种基于小样本学习的注意力机制关系对比网络模型方法 | |
CN109118564B (zh) | 一种基于融合体素的三维点云标记方法和装置 | |
CN108647742B (zh) | 基于轻量级神经网络的快速目标检测方法 | |
CN110728192B (zh) | 一种基于新型特征金字塔深度网络的高分遥感图像分类方法 | |
CN107092870B (zh) | 一种高分辨率影像语义信息提取方法 | |
CN111191583B (zh) | 基于卷积神经网络的空间目标识别系统及方法 | |
CN109978041B (zh) | 一种基于交替更新卷积神经网络的高光谱图像分类方法 | |
CN113469356A (zh) | 一种基于迁移学习的改进vgg16网络猪的身份识别方法 | |
CN111699494A (zh) | 使用通过主成分分析和重复频谱聚类进行训练的卷积神经网络的对象识别 | |
CN107622272A (zh) | 一种图像分类方法及装置 | |
CN114119979A (zh) | 基于分割掩码和自注意神经网络的细粒度图像分类方法 | |
CN111639719A (zh) | 基于时空运动和特征融合的足迹图像检索方法 | |
CN112101364B (zh) | 基于参数重要性增量学习的语义分割方法 | |
CN112699899A (zh) | 一种基于生成对抗网络的高光谱图像特征提取方法 | |
CN110880010A (zh) | 基于卷积神经网络的视觉slam闭环检测算法 | |
CN115761240B (zh) | 一种混沌反向传播图神经网络的图像语义分割方法及装置 | |
CN109886281A (zh) | 一种基于四元数超限学习机彩色图像识别方法 | |
CN103020979A (zh) | 基于稀疏遗传聚类的图像分割方法 | |
CN114937182A (zh) | 一种基于情感轮和卷积神经网络的图像情感分布预测方法 | |
CN116563683A (zh) | 一种基于卷积神经网络和多层感知机的遥感影像场景分类方法 | |
CN116977723A (zh) | 基于空间-光谱混合自注意力机制的高光谱图像分类方法 | |
CN111325259A (zh) | 一种基于深度学习和二进制编码的遥感图像分类方法 | |
CN113191361B (zh) | 一种形状识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |