论文部分内容阅读
摘要:胶囊网络(CapsuleNetwork,CapsNet)通过运用胶囊取代传统神经元,能有效解决卷积神经网络(ConventionalNeuralNetwork,CNN)中位置信息缺失的问题,近年来在图像分类中受到了极大的关注。由于胶囊网络的研究尚处于起步阶段,因此目前大多数胶囊网络研究成果在复杂数据集上表现的分类性能较差。为解决这个问题,本文提出了一种新的胶囊网络,即基于迁移学习的注意力胶囊网络。该网络通过使用迁移学习的方法改进传统的特征提取网络,并融合注意力机制模块,进而完成图像分类任务。首先,使用9层采用ELU激活函数的特征提取网络提取特征;然后,将特征提取网络在ImageNet数据集上训练所得参数,通过迁移学习用于CIFAR10数据集上;再者,在特征提取网络后加入注意力模块提取关键特征;最后,在MNIST、FashionMNIST、SVHN和CIFAR10等公开数据集上进行了对比实验。实验结果表明,本文提出的胶囊网络在简单和复杂数据集上都取得了理想的分类效果。
关键词:胶囊网络;迁移学习;注意力机制;图像分类
【Abstract】Inrecentyears,CapsuleNetwork(CapsNet)hasreceivedgreatattentioninimageclassificationbecauseitreplacestraditionalneuronswithcapsulesandovercomesthedefectsoflosingpositioninformationinConvolutionalNeuralNetwork(CNN).SincetheresearchofCapsNetisstillinitsinfancy,mostresearchresultsofCapsNethavepoorclassificationperformanceoncomplexdatasets.Tosolvethisproblem,anewcapsulenetworkisproposedtocompletetheimageclassificationtask,namedAttentionCapsuleNetworkbasedonTransferLearning,byimprovingthefeatureextractionnetworkthroughtransferlearningandintegratingtheattentionmodule.Firstly,a9-layerfeatureextractionnetworkwiththeELUactivationfunctionisusedtoextractfeatures;secondly,theparametersobtainedfromthefeatureextractionnetworktrainingontheImageNetdatasetareusedontheCIFAR10datasetthroughTransferLearning;thirdly,theattentionmoduleisstackedafterthefeatureextractionnetworktoextractkeyfeatures.Finally,experimentsonpublicdatasetsincludingCIFAR10,SVHN,MNIST,andFashionMNISTshowthattheproposedAttentionCapsuleNetworkbasedonTransferLearningcanachieveidealclassificationaccuracyonbothsimpleandcomplexdatasets.
【Keywords】CapsuleNetwork;TransferLearning;attentionmechanism;imageclassification
作者簡介:朱佳丽(1996-),女,硕士研究生,主要研究方向:图像处理;宋燕(1979-),女,博士,副教授,博士生导师,主要研究方向:大数据算法、图像处理、预测控制。
0引言
自2017年GeoffreyHinton首次提出胶囊网络(CapsuleNetwork,CapsNet)[1]以来,CapsNet受到了广泛的关注并被逐渐应用于计算机视觉的各项任务中[2-3]。CapsNet使用胶囊代替了传统卷积神经网络(ConventionalNeuralNetwork,CNN)中的神经元,利用转换矩阵表示物体之间的位置关系,极大地克服了CNN由池化操作[4-5]带来的信息丢失的缺陷,因此CapsNet在训练样本较少的情况下也能有效地提取出图像的基本特征。与传统的CNN相比,CapsNet能在目标重叠的情况下识别多个目标,并且对仿射变换具有一定的鲁棒性。
目前大部分胶囊网络在复杂数据集上的表现较差,究其原因即在于胶囊网络提取特征仅使用了一层卷积,难以有效提取出目标的有效信息,因此可以利用深度神经网络提取特征。但在深度神经网络上,仅通过CIFAR10这样的小数据集很难学习到好的参数,提取到合理的特征。近年来,迁移学习[6]也迎来了业界研究热潮,这是一种运用已有知识对不同领域问题进行求解的机器学习方法[7-8]。2016年的NIPS会议上,吴恩达指出迁移学习可以在样本不充足的情况下达到较好的分类识别效果,会在未来的人工智能领域占据着举足轻重的地位。但针对大量的特征,如何寻找出关键特征也至关重要。2018年,卷积注意力机制(ConvolutionalBlockAttentionModule,CBAM)[9]的提出,用于特征优化,在计算机视觉的各个领域均取得了显著的效果[10-11]。
因此,本文首先使用一个采用ELU激活函数[12]的深层神经网络提取特征,通过迁移学习将该特征提取网络在ImageNet数据集上训练得到的参数迁移到训练CIFAR10数据集的网络中,可以充分提取CIFAR10数据集上的特征,然后在特征提取网络后引入CBAM注意力模块,提出了一种全新的基于迁移学习的注意力胶囊网络用于图像分类。本文提出的方法具有以下优点: (1)在特征提取部分使用迁移学习,利用从大型数据集ImageNet训练得到的参数,提取CIFAR10数据集的特征,可以更充分地提取特征。
(2)在迁移学习后面加入注意力机制模块,可以从已提取的特征中提取出关键特征。
(3)使用ELU激活函数,针对ReLU的负数部分进行改进,避免了函数左侧输入为负时,梯度为0的情况。
最后,本文在MNIST、FashionMNIST、SVHN和CIFAR10数据集上进行实验,结果表明无论在简单还是复杂数据集上,本文提出的基于迁移学习的注意力胶囊网络都取得了良好的分类精度。
1胶囊网络
2迁移学习
迁移学习(TransferLearning)[6]是一种机器学习方法,可以在目标任务的高质量训练数据较少的情况下,将之前的一些任务中的知识转移到目标任务中,使得目标任务能够取得更好的学习效果。一般原始任务数据集有大量的标注数据,而目标领域数据集较小,迁移学习方法主要有基于特征的迁移学习和基于参数的迁移学习[13]。其学习过程如图3所示。
2.1基于特征的迁移学习
基于特征选择的迁移学习方法是识别出原始任务与目标任务中共有的特征表示,减少原始任务和目标任务中的差别,并利用这些特征进行知识迁移。首先利用原始任务和目标任务中的共有特征训练一个分类器,接着用目标领域中的无标签样本的特征优化分类器,那些与样本类别相关度高的特征会在训练得到的模型中被赋予更高的权重。
2.2基于参数的迁移学习
基于参数的迁移学习是找到原始数据和目标数据的空间模型之间的共同参数或者先验分布,从而可以通过原始数据的特征进一步处理目标数据,实现知识迁移,在学习原始任务中的每个模型的参数或者先验分布会共享给目标数据。
3卷积注意力机制
卷积注意力模块(CBAM)[9]是一种基于前馈卷积神经网络的注意力模块。对于给定的特征,CBAM模块通过通道和空间两个独立的维度推测注意力特征,将注意力特征与输入特征相乘得到输出特征,实现特征的优化。CBAM可以集成到任意的卷积神经网络中,其结构图如图4所示。
空间注意力模块如图6所示。将通道注意力模块输出的特征图作为输入特征图,首先基于通道进行最大池化和平均池化操作,然后将这2个结果连接生成一个特征描述符。然后经过一个卷积操作进行降维。再经过sigmoid生成空间注意力特征。最后将该特征和该模块的输入特征做乘法得到最终生成的特征。可由如下公式计算得出:
4激活函数
激活函数在神经网络中引入了非线性,是神经网络中不可或缺的一部分。如果不使用激活函数,则神经网络的每一次的输入都是上一层的线性输入,这样的网络无论有多少层,都只能表示是线性关系,但引入了激活函数后,神经网络可以拟合各种非线性函数,大大拓展了神经网络的应用[14]。常用的激活函数有sigmoid激活函数、ReLU激活函数、ELU激活函数等。
對此可做分析概述如下。
(1)sigmoid函数。作为最简单的激活函数,其数学公式可写为:
σ(x)=11 e-x,(7)
但在神经网络进行反向传播时,sigmoid函数容易导致梯度消失和梯度爆炸。
(2)ReLU激活函数。是目前使用最广泛的激活函数。当输入值小于零时,输出值为零。当输入值大于等于零时,输出值等于输入值。其数学公式可写为:
f(x)=max(0,x),(8)
ReLU激活函数训练速度很快,且当输入为正数时,不会造成梯度爆炸。但当x
关键词:胶囊网络;迁移学习;注意力机制;图像分类
【Abstract】Inrecentyears,CapsuleNetwork(CapsNet)hasreceivedgreatattentioninimageclassificationbecauseitreplacestraditionalneuronswithcapsulesandovercomesthedefectsoflosingpositioninformationinConvolutionalNeuralNetwork(CNN).SincetheresearchofCapsNetisstillinitsinfancy,mostresearchresultsofCapsNethavepoorclassificationperformanceoncomplexdatasets.Tosolvethisproblem,anewcapsulenetworkisproposedtocompletetheimageclassificationtask,namedAttentionCapsuleNetworkbasedonTransferLearning,byimprovingthefeatureextractionnetworkthroughtransferlearningandintegratingtheattentionmodule.Firstly,a9-layerfeatureextractionnetworkwiththeELUactivationfunctionisusedtoextractfeatures;secondly,theparametersobtainedfromthefeatureextractionnetworktrainingontheImageNetdatasetareusedontheCIFAR10datasetthroughTransferLearning;thirdly,theattentionmoduleisstackedafterthefeatureextractionnetworktoextractkeyfeatures.Finally,experimentsonpublicdatasetsincludingCIFAR10,SVHN,MNIST,andFashionMNISTshowthattheproposedAttentionCapsuleNetworkbasedonTransferLearningcanachieveidealclassificationaccuracyonbothsimpleandcomplexdatasets.
【Keywords】CapsuleNetwork;TransferLearning;attentionmechanism;imageclassification
作者簡介:朱佳丽(1996-),女,硕士研究生,主要研究方向:图像处理;宋燕(1979-),女,博士,副教授,博士生导师,主要研究方向:大数据算法、图像处理、预测控制。
0引言
自2017年GeoffreyHinton首次提出胶囊网络(CapsuleNetwork,CapsNet)[1]以来,CapsNet受到了广泛的关注并被逐渐应用于计算机视觉的各项任务中[2-3]。CapsNet使用胶囊代替了传统卷积神经网络(ConventionalNeuralNetwork,CNN)中的神经元,利用转换矩阵表示物体之间的位置关系,极大地克服了CNN由池化操作[4-5]带来的信息丢失的缺陷,因此CapsNet在训练样本较少的情况下也能有效地提取出图像的基本特征。与传统的CNN相比,CapsNet能在目标重叠的情况下识别多个目标,并且对仿射变换具有一定的鲁棒性。
目前大部分胶囊网络在复杂数据集上的表现较差,究其原因即在于胶囊网络提取特征仅使用了一层卷积,难以有效提取出目标的有效信息,因此可以利用深度神经网络提取特征。但在深度神经网络上,仅通过CIFAR10这样的小数据集很难学习到好的参数,提取到合理的特征。近年来,迁移学习[6]也迎来了业界研究热潮,这是一种运用已有知识对不同领域问题进行求解的机器学习方法[7-8]。2016年的NIPS会议上,吴恩达指出迁移学习可以在样本不充足的情况下达到较好的分类识别效果,会在未来的人工智能领域占据着举足轻重的地位。但针对大量的特征,如何寻找出关键特征也至关重要。2018年,卷积注意力机制(ConvolutionalBlockAttentionModule,CBAM)[9]的提出,用于特征优化,在计算机视觉的各个领域均取得了显著的效果[10-11]。
因此,本文首先使用一个采用ELU激活函数[12]的深层神经网络提取特征,通过迁移学习将该特征提取网络在ImageNet数据集上训练得到的参数迁移到训练CIFAR10数据集的网络中,可以充分提取CIFAR10数据集上的特征,然后在特征提取网络后引入CBAM注意力模块,提出了一种全新的基于迁移学习的注意力胶囊网络用于图像分类。本文提出的方法具有以下优点: (1)在特征提取部分使用迁移学习,利用从大型数据集ImageNet训练得到的参数,提取CIFAR10数据集的特征,可以更充分地提取特征。
(2)在迁移学习后面加入注意力机制模块,可以从已提取的特征中提取出关键特征。
(3)使用ELU激活函数,针对ReLU的负数部分进行改进,避免了函数左侧输入为负时,梯度为0的情况。
最后,本文在MNIST、FashionMNIST、SVHN和CIFAR10数据集上进行实验,结果表明无论在简单还是复杂数据集上,本文提出的基于迁移学习的注意力胶囊网络都取得了良好的分类精度。
1胶囊网络
2迁移学习
迁移学习(TransferLearning)[6]是一种机器学习方法,可以在目标任务的高质量训练数据较少的情况下,将之前的一些任务中的知识转移到目标任务中,使得目标任务能够取得更好的学习效果。一般原始任务数据集有大量的标注数据,而目标领域数据集较小,迁移学习方法主要有基于特征的迁移学习和基于参数的迁移学习[13]。其学习过程如图3所示。
2.1基于特征的迁移学习
基于特征选择的迁移学习方法是识别出原始任务与目标任务中共有的特征表示,减少原始任务和目标任务中的差别,并利用这些特征进行知识迁移。首先利用原始任务和目标任务中的共有特征训练一个分类器,接着用目标领域中的无标签样本的特征优化分类器,那些与样本类别相关度高的特征会在训练得到的模型中被赋予更高的权重。
2.2基于参数的迁移学习
基于参数的迁移学习是找到原始数据和目标数据的空间模型之间的共同参数或者先验分布,从而可以通过原始数据的特征进一步处理目标数据,实现知识迁移,在学习原始任务中的每个模型的参数或者先验分布会共享给目标数据。
3卷积注意力机制
卷积注意力模块(CBAM)[9]是一种基于前馈卷积神经网络的注意力模块。对于给定的特征,CBAM模块通过通道和空间两个独立的维度推测注意力特征,将注意力特征与输入特征相乘得到输出特征,实现特征的优化。CBAM可以集成到任意的卷积神经网络中,其结构图如图4所示。
空间注意力模块如图6所示。将通道注意力模块输出的特征图作为输入特征图,首先基于通道进行最大池化和平均池化操作,然后将这2个结果连接生成一个特征描述符。然后经过一个卷积操作进行降维。再经过sigmoid生成空间注意力特征。最后将该特征和该模块的输入特征做乘法得到最终生成的特征。可由如下公式计算得出:
4激活函数
激活函数在神经网络中引入了非线性,是神经网络中不可或缺的一部分。如果不使用激活函数,则神经网络的每一次的输入都是上一层的线性输入,这样的网络无论有多少层,都只能表示是线性关系,但引入了激活函数后,神经网络可以拟合各种非线性函数,大大拓展了神经网络的应用[14]。常用的激活函数有sigmoid激活函数、ReLU激活函数、ELU激活函数等。
對此可做分析概述如下。
(1)sigmoid函数。作为最简单的激活函数,其数学公式可写为:
σ(x)=11 e-x,(7)
但在神经网络进行反向传播时,sigmoid函数容易导致梯度消失和梯度爆炸。
(2)ReLU激活函数。是目前使用最广泛的激活函数。当输入值小于零时,输出值为零。当输入值大于等于零时,输出值等于输入值。其数学公式可写为:
f(x)=max(0,x),(8)
ReLU激活函数训练速度很快,且当输入为正数时,不会造成梯度爆炸。但当x