一种基于SE模块和自注意力机制网络的图像分类方法技术

技术编号:30441269 阅读:15 留言:0更新日期:2021-10-24 18:29
本发明专利技术公开了一种基于SE模块和自注意力机制网络的图像分类方法,首先把一张图片切片成若干个Patch,添加Patch0用作分类特征,Patch相同但位置不同对应不同类别的图片,所以要加入位置信息,利用卷积神经网络和SE模块提取每个Patch内部特征,然后利用自注意力机制提取每个Patch之间的全局特征,之后输入多层感知机,把SE模块、自注意力机制和多层感知机串行堆叠成最小单元层,堆叠L最小单元层提取更高级的全局特征,使图片的特征表示更加丰富,最后取每一最小单元层Patch0输出向量,分别赋予不同的权重,把每个Patch0加权融合,这样就提取了整张图片的更高级局部和全局特征,利用这些特征来分类,得到该图片对应的类别标签。签。签。

【技术实现步骤摘要】
一种基于SE模块和自注意力机制网络的图像分类方法


[0001]本专利技术涉及图像识别和深度学习
,尤指一种基于SE模块和自注意力机制网络的图像分类方法。

技术介绍

[0002]图像分类是计算机视觉、机器学习与深度学习领域非常活跃的研究方向,图像分类得到广泛应用,比如人脸识别、行人检测、交通场景物体识别、车牌识别、以及相册自动归类等。
[0003]图像分类是人工智能计算机视觉领域中很重要的基础任务,也是目标检测的基础,图像分类的准确性影响后续任务的性能评估。目前有基于机器学习的支持向量机图像分类方法,主流的深度学习图像分类方法主要分为两大类,一类是基于卷积神经网络有:AlexNet、VGG、GoogleNet以及ResNet等经典的神经网络;另一类是基于自注意力机制有:Vision Transformer和Transformer in Transformer。
[0004]和本专利技术最接近的是基于自注意力机制的Vision Transformer,先把整张图片切片成若干个Patch,然后利用自注意力机制提取每个Patch之间的全局特征,经过多层感知机继续传输。自注意力机制和多层感知机堆叠构成一个编码器层,通过堆叠若干个这种编码器层构成Vision Transformer框架,把最后编码器层Patch0的输出输入到softmax层得到图像类别预测结果。
[0005]和本专利技术相对接近的是基于自注意力机制的Transformer in Transformer,用两个Transformer中编码器层分别提取每个Patch之间和Patch内部的特征,两个编码器层构成一个模块,通过堆叠若干个这种模块构成Transformer in Transformer框架。

技术实现思路

[0006]本专利技术的目的其一使每个Patch的局部特征得到利用,其二使每一最小单元层的Patch0全局特征得到利用,更多特征利用以至于提高分类准确度,提出一种基于SE模块和自注意力机制网络的图像分类方法。
[0007]为了实现以上的专利技术目的,采用如下的技术方案:
[0008]一种基于SE模块和自注意力机制网络的图像分类方法,包括一下步骤:
[0009]S1:将输入的图片转换成规定大小矩阵,然后把这些数据转成张量数据类型,再输入模型。
[0010]S2:将一张图片切片成若干个Patch,添加Patch0用作分类特征,加入位置信息丰富特征表示。
[0011]S3:利用SE模块对每个Patch内部提取特征。
[0012]S4:利用自注意力机制提取每个Patch之间的特征。
[0013]S5:自注意力机制输出数据投入两层MLP。
[0014]S6:将S3、S4、S5形成的模块串行堆叠形成本专利技术提出方法的最小单元层,堆叠L最
小单元层,从而提取更高级的局部和全局特征。
[0015]S7:将上述步骤得到的全局特征用于分类。
[0016]优选的是,步骤S1所述为图片预处理,如果输入图片较少,通过数据增强方法后再转化成张量数据类型。
[0017]优选的是,步骤S2所述将一张图片,其像素为C
×
H
×
W,切片成个个Patch,每个Patch是C
×
H1×
W1,然后把每个Patch展成1
×
CH1W1的向量,实现切片要用到卷积操作和Flatten(展平)操作,其输入维度(B,C,H,W),输出维度(B,N,CH1W1),其中C为图片的通道数,B为Batch Size(批量大小)。此外还要添加Patch0用作分类特征,即有M=N+1个Patch,故本步骤输出的维度是(B,M,CH1W1)。每个Patch(包括Patch0)要加入位置信息,这样自注意力机制能更好的学习到即使是同一张图片,Patch位置不同,得到的分类结果是不一样的。
[0018]优选的是,步骤S3所述Patch内部特征提取采用卷积神经网络,所以要把上一步的输出维度(B,M,CH1W1)变成(B,M,C,H1,W1);为了使输入输出宽、高一样,使用0填充,使用CH1W1个卷积核,从CH1W1个维度提取Patch内部特征,得到CH1W1个H1×
W1特征图,即维度是(CH1W1,H1,W1);接着对每个特征图使用全局平均池化,得到(CH1W1,1,1);经过第一线性层,输出维度设置为其中β为缩放因子,激活函数Relu,公式表示如式(1),
[0019][0020]其中b1是可训练参数,X1是输入,X2是输出;第二线性层,输入维度是输出维度是dim=CH1W1,激活函数softmax,得到每个通道的权重,公式表示如式(2),
[0021][0022]其中b2是可训练参数,X2是输入,X3输出;分别与每个通道的特征图相乘,然后把所有的特征图相加,得到f是1
×
H1×
W1的特征图,该特征图包含了CH1W1维度提取的Patch内部特征信息的融合,公式表示如式(3),
[0023]f=x
31
c1+x
32
c2+

+x
3i
c
i i=1,2,

,CH1W1ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(3)
[0024]其中x
3i
是X3的元素,c
i
是用卷积神经网络提取Patch内部的每个特征图;经过Flatten后,再经过线性层,把维度升到CH1W1。可见SE模块输入输出维度都是(B,M,CH1W1),其中Batch(批量)中每张图片共享SE模块,可以减少参数量。
[0025]优选的是,步骤S4所述采用多头自注意力机制从不同维度提取全局特征,自注意力机制过程可以用下面过程展现:
[0026]先经过线性层和转化维度操作,初始化三个张量Q、K、V,其目的是为了训练这三个张量,维度都是其中B表示Batch Size,H表示多头自注意力机制的头数量,M表示输入自注意力机制Patch的数量(包括Patch0),D=C,H1,W1表示每个Patch的维度。
[0027][0028]故W的维度是(B,H,M,M),其中第2维度的第i行第j列元素代表第i个Patch对第j个Patch的权重。
[0029]A=WV
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(5)
[0030]故A的维度是A聚合了整张图片特征信息,再把A的维度转成(B,M,D)输出下一层。
[0031]优选的是,步骤S5所述两层感知机可用如下公式表示:
[0032]第一层:
[0033][0034]其中,X4是输入,X5是输出,b4是偏置,其中α是缩小倍数,W4和b4是训练参数。
[0035]第二层:
[0036][0037]其中,X5是输入,X6是输出,b5是偏置,X5和b5是训练参数。该步输出的维度也是(B本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于SE模块和自注意力机制网络的图像分类方法,其特征在于,包括以下步骤:S1:将输入的图片转换成规定大小矩阵,然后把这些数据转成张量数据类型,再输入模型。S2:将一张图片切片成若干个Patch,添加Patch0用作分类特征,加入位置信息丰富特征表示。S3:利用SE模块对每个Patch内部提取特征。S4:利用自注意力机制提取每个Patch之间的特征。S5:自注意力机制输出数据投入两层MLP(多层感知机)。S6:将S3、S4、S5形成的模块串行堆叠形成本发明提出方法的最小单元层,堆叠L最小单元层,从而提取更高级的局部和全局特征。S7:将上述步骤得到的全局特征用于分类。2.根据权利要求1所述的一种基于SE模块和自注意力机制网络的图像分类方法,其特征在于,步骤S1所述为图片预处理,如果输入图片较少,通过数据增强方法后再转化成张量数据类型。3.根据权利要求1所述的一种基于SE模块和自注意力机制网络的图像分类方法,其特征在于,步骤S2所述将一张图片,其像素为C
×
H
×
W,切片成个个Patch,每个Patch是C
×
H1×
W1,然后把每个Patch展成1
×
CH1W1的向量,实现切片要用到卷积操作和Flatten(展平)操作,其输入维度(B,C,H,W),输出维度(B,N,CH1W1),其中C为图片的通道数,B为Batch Size(批量大小)。此外还要添加Patch0用作分类特征,即有M=N+1个Patch,故本步骤输出的维度是(B,M,CH1W1)。每个Patch(包括Patch0)要加入位置信息,这样自注意力机制能更好的学习到即使是同一张图片,Patch位置不同,得到的分类结果是不一样的。4.根据权利要求1所述的一种基于SE模块和自注意力机制网络的图像分类方法,其特征在于,步骤S3所述Patch内部特征提取采用卷积神经网络,所以要把上一步的输出维度(B,M,CH1W1)变成(B,M,C,H1,W1);为了使输入输出宽、高一样,使用0填充,使用CH1W1个卷积核,从CH1W1个维度提取Patch内部特征,得到CH1W1个H1×
W1特征图,即维度是(CH1W1,H1,W1);接着对每个特征图使用全局平均池化,得到(CH1W1,1,1);经过第一线性层,输出维度设置为其中β为缩放因子,激活函数Relu,公式表示如式(1),其中b1是可训练参数,X1是输入,X2是输出;第二线性层,输入维度是输出维度是dim=CH1W1,激活函数softmax,得到每个通道的权重,公式表示如式(2),其中b2是可训练参数,X2是输入,X3输出;分别与每个通道的特征图相乘,然后把所有的特征图相加,得到f是1
×
H1×
W1的特征图,该特征图包含了CH1W1维度提
取的Patch内部特征信息的融合,公式表示如式(3),f=x
...

【专利技术属性】
技术研发人员:梁俊雄肖明郑坚燚曾旺旺廖泽宇陈俊文
申请(专利权)人:广东工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1