APP下载

基于自编码预训练的卷积神经网络分类方法

2022-04-02陈蒙蒙

计算机应用文摘·触控 2022年5期
关键词:迁移学习卷积神经网络

陈蒙蒙

关键词 自编码预训练 卷积神经网络 迁移学习

1基于自编码预训练的卷积神经网络的分类

1.1自编码的原理

自编码神经网络(见图1)是一个输入与输出相等的人工神经网络。在该网络中,左侧节点是输入层,右侧神经元是输出层,中间是隐含层。输出层的神经元数量等于输入层的神经元数量。隐藏层的神经元数量少于输出层的神经元数量。

自编码器的工作原理如图2 所示。其中,输入层和隐含层之间的参数叫作“编码器”(encoder),隐含层和输出层之间的参数叫作“解码器”(decoder)。通过对编码和解码的参数进行调整和优化,可以使模型最小化,从而学习重构误差[1] 。当模型完成最小化后,得到输入信息的一个特征表示,即特征编码。

1.2基于自编码初始参数获取的卷积神经网络

卷积神经网络通过标记数据对一定结构的网络进行训练。当卷积神经网络对图像进行分类时,输入圖像通过若干层的卷积和池化提取高层次特征,并利用softmax 进行分类,从而判定输入图像的类别。图像的分类过程如图3 所示。

通过自编码预训练可为卷积神经网络的卷积层提供初值,而不需要大量标记样本。在每层卷积中,将与本层卷积核大小相同的小图像作为自编码网络的输入xi ,输出x^i 为输入小图像的特征,将此特征重新排列为ξ^,作为本层卷积核的初始系数,得到本层卷积核之后,进入池化层(可要可不要)和激活层,此时不需要训练初始参数。

下一个卷积层重复上述过程,不过本层的输入是上层输出的结果,上层若含有m 个特征,本层的输入就为m 维矩阵,图像大小为:

在式(1)中,InputSize 代表每层输入图像的大小,filterSize 代表卷积和池化的大小,pad 代表在图像边缘补零的大小,stride 代表步长。由式(1)计算出每层输出的图像大小,从m 维图像中分割出若干小图像,小图像和本层的卷积核大小相同,将小图像作为自编码网络的输入,从而进行训练。依此类推,凡是有卷积的隐含层和全连接层,就用自编码进行训练,以获取卷积核的初始参数。将自编码训练的初始参数进行组合,得到卷积神经网络的预训练模型,此模型的参数只是在每一层最优,全局并不最优。用少量的标记样本进行参数微调,使卷积核参数实现全局最优[2] ,进而得到适合实验数据分类的模型。

通过自编码获取预训练模型,首先要设计卷积神经网络的结构,在此结构基础上,利用自编码训练网络每层卷积核的初始系数,即预训练模型。具体流程如图4 所示。

2实验环境和流程介绍

经过测试,在使用深度学习库MatConvNet 的训练过程中,使用GPU 加速训练的速度约是CPU 训练速度的7 倍,使用“GPU+cuDNN”的并行加速框架训练的速度约是CPU 训练速度的10 倍(如图5 所示)。在本实验中,硬件为拥有2GB 显存的NVIDIA GTX950显卡搭配12GB 内存;软件方面,在Windows 7 平台下使用Matlab2014a 搭配CUDA7.5 加速;卷积神经网络库选用MatConvNet 的1.0?bata18 版本[3] 。

利用自编码训练卷积网预训练模型的方法对遥感图像进行分类(流程如图6)的具体步骤为:(1)使用自编码的非监督方式,通过无标记的遥感图像样本对已设计的卷积神经网络每层的卷积核进行预训练,将学习的特征作为卷积神经网络的参数值,得到预训练模型;(2)用少量的带有标记的遥感图像数据进行训练,微调预训练模型的参数,得到适合研究区域遥感图像的分类模型,实现实验数据的分类,从而进行分类结果评价。

在获得预训练模型之后,利用少量标记的遥感影像样本重新训练网络,实现模型参数的微调整,从而得到适合分类实验数据遥感影像的模型,并用于遥感图像的分类[4] 。具体流程如图7 所示。

由于两个实验的网络结构设置和卷积层数不同,因此将卷积和池化层用虚线框表示,不同的实验数据使用不同的卷积神经网络结构。

对由实验数据分割得到的训练小图像块进行如下预处理:(1)0 均值是最常用的图像预处理方法,即把数据的每一维减去每一维的均值,使得数据变为0均值形式;(2)由于每类的数据样本数差异可能很大,为保证数据平衡,删除类别过多的数据,然后通过如图像翻转的方法增加数据量较少的类别个数,保证数据的平衡性。

2.1基于自编码和迁移学习的卷积神经网络分类实验

是否运用迁移学习方法取决于多种因素,但在训练样本较少的情况下,最重要的是保证目标数据集与源数据集在内容上保持较高相似度[5] 。实验数据源于QuickBird 的彩色合成图像裁剪的区域,在内容上的相似度较高,因此将实验数据的预训练与精调参数后的两种模型分别作为源域模型,进行迁移学习,从而对实验数据进行分类,使输入图像与同图像的大小保持一致。重新训练网络可以实现参数微调,选择标记样本的5%,即每类地物标记的50 张图像,剩下的标记点用于测试,实验数据2 非监督预训练的方法记为Un_pre,非监督基础上精调的模型记为Un_pre_f,两种模型测试精度如表1 所示。

由两种非监督预训练的分类结果可以得出:在样本较少的情况下进行迁移学习, 图像之间的内容相似度较高时,非监督预训练的模型与非监督基础上经过精调参数的模型,两种预训练模型用作源域模型进行迁移学习时,均可以得到较高的分类精度,即在训练样本较少的情况下,网络对于预训练的模型依赖度较高,避免了对标记样本的过拟合。而非监督的预训练模型是由图像不同位置训练获得,因此对于训练样本的测试与训练样本差异较大的图像分类都较好[6] 。

3总结

猜你喜欢

迁移学习卷积神经网络
迁移学习研究综述
从认知角度探讨大学英语网络教学模式
奇异值分解与移移学习在电机故障诊断中的应用
基于卷积神经网络温室智能大棚监控系统的研究
基于深度卷积神经网络的物体识别算法
深度学习算法应用于岩石图像处理的可行性研究
基于深度卷积网络的人脸年龄分析算法与实现
基于卷积神经网络的树叶识别的算法的研究
一种基于迁移极速学习机的人体行为识别模型
大数据环境下基于迁移学习的人体检测性能提升方法