APP下载

一种基于自注意力信息补偿的服装分类算法

2023-11-24朱淑畅李文辉

吉林大学学报(理学版) 2023年6期
关键词:残差注意力准确率

朱淑畅,李文辉

(1.吉林工程技术师范学院 艺术与设计学院,长春 130052;2.吉林大学 计算机科学与技术学院,长春 130012)

近年来,服装设计行业数字化转型快速发展,大量服装款式图片可被公有访问.面对海量的服装图片,服装设计师面临着如何高效分类、管理并利用这些图片资源的挑战.传统手动分类方法耗时、耗力,且易受主观因素的影响,因此需要一种自动化且准确的方法处理海量服装图片分类任务.

为解决上述问题,人们开始研究如何对海量服装图像进行准确地分类和检索.研究人员早期使用传统的机器学习算法进行特征提取,用于服装图像的分类和检索.Thewsuwan等[1]提出了一种基于局部二元模式(LBP)和Gabor滤波器的服装分类方法;Bossard等[2]通过融合SURF(speeded up robust features)算法、方向梯度直方图(HOG),LBP,平方差之和(SSD)以及颜色特征等多种特征,用随机森林作为分类器进行分类;吴苗苗等[3]提出了一种针对不同款式服装的特征描述细粒度分类方法,采用随机森林和多类支持向量机(SVM)对结合HOG、LBP、颜色直方图和边缘算子的特征信息进行监督学习.

由于深度学习具有很强的图像深度信息提取能力,能有效处理多尺度、复杂背景和服装变形等干扰的服装图像.通过深度学习进行服装图片分类的研究与应用具有实际意义,因此,基于深度学习的服装图像分类和检索方法成为目前的主流研究方法.Liu等[4]提出了一个深度学习模型FashionNet,该模型结合了全局特征和局部特征,能有效处理服装变形和遮挡问题.此外,还创建了一个大规模的服装图像数据集DeepFashion,同时对每个图像都经过了详细注释,提供了服装的类别、属性、关键点等信息.Lü等[5]利用姿态估计获取感兴趣位置相关的局部特征,进行多特征融合的服装图像分类.Zhang等[6]提出了一种新的网络模型TS-FashionNet,其通过增强形状和纹理进行特征的提取和学习.赵宏伟等[7]引入关键点注意力机制和通道注意力机制增强对关键区域的特征表达.陈巧红等[8]在Xception网络结构的基础上嵌入SE-Net模块,提出了多尺度SE-Xception模型,能有效提取丰富的服装特性信息.Tan等[9]使用指数线性单元(exponential linear unit,ELU)和ReLU激活函数改善Xception模型非线性的学习特性,并采用L2正则化增强网络的抗干扰性.

为进一步提升服装图片分类的准确率,本文提出一种称为PSANet(parallel self-attention network)的网络.该网络在ResNet50的基础上添加了平行自注意力补偿分支,并通过自注意力机制剔除对服装分类任务无关的特征,以加强有效特征的提取质量.同时,为防止网络随深度的加深而丢失浅层细节特征,并缓解梯度消失问题,PSANet通过残差连接将初始特征提取分支与自注意补偿分支连接,进一步提升了服装分类任务中的特征提取质量.最后,本文在公共数据集DeepFashion上进行了模型性能的对比与消融实验,实验结果证明了本文模型的有效性.

1 预备知识

1.1 自注意力机制

深度学习中的自注意力是一种模仿人类注意力机制的方法,通过对输入数据中不同位置或特征的加权关注,使模型能有选择地聚焦于与当前任务相关的信息,从而提高模型的性能和泛化能力.此外,注意力机制可以更好地捕捉到不同位置之间的关联,减轻信息丢失的问题.Hu等[10]提出了Squeeze-and-Excitation(SENet)网络,是一种用于提升卷积神经网络性能的注意力机制,通过自适应地学习通道间的关系,有针对性地调整特征图的通道权重,以增强有效信息的表示能力,核心思想是在卷积神经网络中引入一个SE模块.SE模块的主要组成部分包括Squeeze和Excitation两个阶段.在Squeeze阶段,网络通过全局平均池化操作对输入特征图进行降维,将每个通道的特征转化为一个标量;在Excitation阶段,网络通过两个全连接层学习每个通道的权重,进而计算出一个通道注意力权重向量.最后,SE模块将这个通道注意力权重向量与输入特征图逐通道相乘,实现通道特征的自适应缩放.

SENet的设计思想可应用于各种不同的网络结构和任务中.通过添加SE模块,可显著改善模型性能,而不需要进行复杂的网络结构修改.它为深度学习模型的设计和应用提供了一种有效途径,已成为广泛应用于各种领域和任务的基础模块.图1为SENet结构示意图[10].

图1 SENet结构示意图Fig.1 Schematic diagram of SENet structure

1.2 ResNet

图2 ResNet两种残差块结构示意图Fig.2 Schematic diagram of two residualblock structures in ResNet

传统深度神经网络在网络层数增加时,会遇到梯度消失和梯度爆炸的问题,导致模型的训练变得困难.He等[11]提出了一种称为ResNet卷积神经网络结构,该结构引入了残差连接,通过跨层连接传递和学习残差信息,使网络在增加深度的同时能更好地保持模型的性能和收敛速度.其由卷积块与恒等残差块两个基本模块组成,并在每个残差单元中引入跳跃连接,将输入的特征图与输出特征相加,在内部使用批归一化和激活函数提高模型的性能与非线性拟合能力.这种设计使网络可更灵活地处理不同尺寸的输入,增加了网络的感受野,提高了模型的表达能力,并有效解决了传统深层网络在训练过程中的性能退化问题.ResNet两种残差块结构[10]如图2所示.

由图2可见,残差块是由跳跃连接和残差映射组成的基本单元.残差块的输入通过两个并行的主路径与跳跃连接进行特征提取.主路径用于学习输入到输出的映射关系,而跳跃连接直接将输入复制到输出上.由于残差块中的跳跃连接可以直接传递梯度,因此有助于梯度的反向传播,使网络的训练过程更稳定和高效.通过引入残差块,网络可避免由于深度加深导致的过拟合问题.同时,可减少网络的参数数量和计算量,并提高网络的效率和推理速度.

2 算法设计

2.1 平行自注意力网络PSANet

深层特征主要关注图像的高级语义信息,而浅层细节包含图像更多的低级细节和纹理信息.虽然SENet添加了残差结构,但直接插入SENet在一定程度上仍会破坏原有网络输出的初始特征信息.针对该问题,为更好地将初始特征信息与深度特征信息融合,本文提出一种平行自注意力信息补偿分支PSANet,该分支网络在ResNet50的基础上引入并行的网络结构,以一种横向方式扩展网络.在保证ResNet原有特征输出的基础上,横向添加一个与其平行的网络分支结构,该结构能通过自注意力机制自适应地学习通道权重,充分挖掘通道特征的相关性,从而提高模型对重要特征的关注程度,筛选对服装任务有益的信息,剔除无用信息.

该网络主要由初始特征提取分支与自注意信息补偿分支构成.第一个分支能屏蔽其他模块干扰,随着网络深度的加深逐步提取深层特征信息.本文将SENet作为自注意力模块,用于提升模型特征提取能力.自注意力信息补偿分支以初始特征提取分支的不同深度模块的输出为输入.首先通过自注意力模块进行特征通道重分布,增加对服装分类任务有益特征的权重,然后从浅层到深层网络逐步融合初始特征与自注意力特征,得到用于进行分类的预测特征图.该结构可以获得更全面和准确的图像表示,同时保留了图像重要的语义信息和细节信息,提高了模型对服装图像的理解和判别能力.网络整体结构如图3所示.

2.2 损失函数

在服装图像分类任务中损失函数的选择对精度有重要影响[12].Cross-entropy-loss(CE-loss)是一种常用的损失函数,主要用于分类任务中的模型训练和优化.它通过最大化正确类别的概率和最小化错误类别的概率使模型进行准确分类.同时,CE-loss在计算上也相对简单,可高效地计算梯度并进行反向传播,并能有效地惩罚预测概率分布与真实标签分布之间的差异,使模型能更关注正确的类别.这对于多类别分类任务尤为重要,可提高模型的分类准确度.

图3 PSANet整体结构示意图Fig.3 Schematic diagram of overall structure of PSANet

但CE-loss在分类任务中对噪声样本性能不稳定,甚至对错误分类的样本也会给予很高的概率,从而导致模型对噪声过于敏感,产生过拟合问题.在服装图像分类任务中,各类服装条纹等特征复杂,在一定程度上影响了模型的准确度.为提升模型的泛化能力,本文使用Label Smoothing技术,其采用了正则化的思想,将硬标签转变为软标签,使网络优化更平滑,防止模型在训练时过于自信地预测标签,从而改善泛化能力差的问题,并对模型的训练提供一定的平滑约束.这种平滑约束可帮助模型更好地学习服装图像特征的整体分布和结构,从而提高模型的泛化能力,减少过拟合的风险.

3 实 验

3.1 数据集

DeepFashion服装分类数据集[4]是DeepFashion数据集的一个子集,专门用于服装分类任务,广泛应用于计算机视觉和机器学习领域中服装分类算法的开发和评估.部分数据集示例如图4所示.

图4 DeepFashion服装分类数据集示例Fig.4 Example of DeepFashion clothing classification dataset

该数据集共包含289 222张、50种不同类别的服装图像,涵盖了上装、下装、连衣裙、外套等多个服装类别.本文从中随机选取40个服装种类,并按4∶1的比例在每个子类中将图片随机分为训练集和测试集.所有模型均在相同环境下进行对比实验.

3.2 实验环境

本文实验操作系统为Ubuntu20.04,GPU为NVIDIA Geforce GTX 3090,用Python3.8作为程序设计语言,深度学习框架为Pytorch1.13.0,CUDA版本为10.6,Cudnn版本为7.6.5.训练过程中对训练集进行在线数据增强,对训练图像进行随机缩放、反转变换.在数据集DeepFashion上使用SGD优化器优化网络参数.将初始学习率设为0.001,批量大小设为128,权重衰减设为0.000 5,动量设为0.9.每个模型迭代训练的总次数为100,在模型训练过程中的第30次、60次和90次时将学习率乘以0.1,记录最优权重进行模型评估.

3.3 实验结果

PSANet与基线ResNet50的消融实验结果列于表1.

表1 PSANet与基线ResNet50分类准确率对比

为更好地评估PSANet的准确率和有效性,本文选取常用的分类任务评估准则top-k进行模型评估,其中k表示模型前k个最高概率的预测.由表1可见,相比于主流的ResNet50分类网络,添加自注意力信息补偿分支在top1,top3,top5指标上精度分别提高了2.4%,1.8%,0.9%,证明了自注意力信息补偿分支能有效融合网络的深层和浅层信息,在提取深层高语义特征的同时保留了浅层细节信息.在此基础上,自注意力模块进一步提升了网络对服装图像的分类性能.相比于添加了自注意力信息补偿分支的ResNet50网络,进一步添加了自注意力模块的网络在top1中准确率提高了0.3%,top3准确率提高了0.5%,top5准确率提高了0.4%,证明了自注意力模块在PSANet中的有效性.

将本文模型与其他主流分类模型进行对比实验,分类准确率对比实验结果列于表2.由表2可见,在所有对比模型中,PSANet在top1,top3,top5指标上都取得了最优的准确率.top1准确率比AlexNet,VGGNet,ResNet20分别提高了37.9%,44.9%,11.3%;top3准确率分别提高了25.0%,38.5%,7.8%;top5准确率分别提高了19.7%,29.9%,5.0%.实验结果表明,PSANet中的自注意力机制与信息补偿分支,能有效提升网络的特征提取能力,在数据集DeepFashion中取得了优秀的分类效果.

表2 PSANet与其他模型的分类准确率对比

综上所述,针对传统基于内容的服装分类对图像特征有较高的要求,当服装款式较多时,其准确率难以满足服装分类应用需求的问题,提出一种基于深度学习方法的平行自注意力分类网络.该网络在ResNet50的基础上增加了平行自注意力补偿分支,该分支能提升服装分类任务中的特征提取质量,逐步补充深层网络缺失的浅层细节信息.在数据集DeepFashion上进行了对比实验,实验结果证明了该方法的有效性.

猜你喜欢

残差注意力准确率
基于双向GRU与残差拟合的车辆跟驰建模
让注意力“飞”回来
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
基于残差学习的自适应无人机目标跟踪算法
基于递归残差网络的图像超分辨率重建
高速公路车牌识别标识站准确率验证法
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things