APP下载

DL-MAML:一种新的蝴蝶物种自动识别模型

2024-03-23赵戈伟许升全谢娟英

计算机研究与发展 2024年3期
关键词:特征提取蝴蝶卷积

赵戈伟 许升全 谢娟英

1 (陕西师范大学计算机科学学院 西安 710119)

2 (陕西师范大学生命科学学院 西安 710119)

蝴蝶分类的依据是翅膀背和腹面的颜色、花纹和图案.目前,全球大约有18 000 种蝴蝶.蝴蝶与植物密切相关,是环境指示昆虫,对评估生态系统平衡具有重要意义.传统蝴蝶物种识别依赖于昆虫学家的知识和经验,需要将野外采集的蝴蝶制作成标本,费时费力.野外环境下的蝴蝶物种识别,不需要制作蝴蝶标本,直接依据野外环境下拍摄的蝴蝶照片进行蝴蝶种类识别,本质上是目标检测任务,包括蝴蝶(目标)位置检测和分类,但比普通目标检测更具有挑战性.因为普通的目标检测,目标往往属于不同的大类,分类容易;而野外环境下的蝴蝶物种识别的分类任务是细粒度的分类,目标同属蝴蝶大类,远比普通目标检测问题中的目标分类困难.然而,深度学习技术的飞速发展,为目标检测任务提供了新的理论和技术,并使野外环境下的蝴蝶物种识别成为可能[1-5].尽管如此,野外环境下的蝴蝶种类识别还面临蝴蝶类别标签严重依赖于专家知识,数据集的获得非常困难,现有数据集的蝴蝶种类和样本数量有限,未涵盖所有蝴蝶种类,使学习获得的蝴蝶种类分类识别系统的泛化推广非常受限,无法用于新的蝴蝶类别识别.

元学习(meta-learning)通过挖掘不同学习任务的学习方法论的共性,实现学习方法论的学习目的.因此,本文借助元学习的方法论学习优势,针对现有野外环境下蝴蝶数据集包含蝴蝶种类较少,未能涵盖所有蝴蝶种类,致使蝴蝶分类识别系统的泛化性受限问题,提出基于元学习的蝴蝶种类识别,并改进元学习的目标函数,以期解决当前蝴蝶种类识别研究面临的泛化性挑战.另外,借助深度学习的极强特征学习能力,改进元学习模型的结构,以期得到可以任意推广的野外环境下的蝴蝶识别系统.

1 相关研究

现有蝴蝶自动识别研究至今已有10 多年历史,最初只是基于蝴蝶标本图像的蝴蝶物种识别,随着深度学习的出现和发展,出现了基于野外环境下蝴蝶图像的蝴蝶物种识别研究[2-5].

基于标本照片的蝴蝶识别研究起源于10 年前.2011 年陈渊等人[6]提出改进支持向量机,对7 种蝴蝶标本进行自动识别.2012 年Wang 等人[7]使用基于内容的图像检索方法,对蝴蝶标本图像进行特征提取并进行分类识别.2013 年Kaya 等人[8]提出基于极限学习机和Gabor 滤波器的新方法,用于蝴蝶物种识别.2014 年Kaya 等人[9]采用灰度共生矩阵和局部二进制模式提取特征,用极限学习机识别蝴蝶标本图像,分别得到98.25% 和96.45% 的识别准确率.2014年Kayci 等人[10]利用GLCM(grey-level co-occurrence matrix)提取蝴蝶翅膀表面纹理特征,用MLR(mixed logistic regression)对蝴蝶标本图像进行分类,达到96.3%的分类准确率.2015 年Ertuğrul 等人[11]通过结合极限学习机和Law 纹理能量测度技术来识别蝴蝶标本图像.2018 年Li 等人[12]采用多尺度曲率直方图和图像块灰度共生矩阵提取特征,设计了一种加权K 近邻分类器对蝴蝶进行识别.2020 年Lin 等人[13]提出能提取蝴蝶细粒度特征的跳跃连接卷积神经网络,对包含56 种蝴蝶的24 836 张标本进行分类,准确率达到93.36%.

基于生态照的蝴蝶自动识别研究,源于2018 年的第3 届中国数据挖掘竞赛暨国际首次蝴蝶识别大赛.谢娟英等人[1]为竞赛提供了一个包含蝴蝶标本照和生态照的数据集,其中生态照有1 425 张,共111 种;并利用Faster R-CNN 为竞赛实现了一个baseline[2].2020 年Almryad 等人[14]创建了一个包含104 类野外环境中蝴蝶图像的数据集,其中共有44 659 张图像数据,但许多物种都只有很少量的图像样本,因此,他们选择了其中的10 类蝴蝶,共17 769 张图像用于实验,利用卷积神经网络进行蝴蝶种类识别.2020 年Xin 等人[15]提出了一个结合压缩激励模块和空间注意力模块的分类网络对野外环境中的30 类蝴蝶图像进行分类.2021 年Xie 等人[4]针对蝴蝶生态照数据集类别分布不平衡问题,提出了一种新的数据集划分方法和数据增强技术,采用RetinaNet 取得了当时基于生态照的蝴蝶物种识别的最好结果.另外,谢娟英等人[3]通过加入注意力机制改进经典目标检测算法RetinaNet,对野外环境中的蝴蝶进行识别,取得了很好的识别效果,并发现结构差异是引起误识的主要原因.2022 年,Xie 等人[5]提出了基于人类视觉机制的野外环境下蝴蝶识别系统KSRFB-Net,取得迄今为止最好的蝴蝶物种识别效果.

然而,现有蝴蝶物种自动识别研究,无论基于蝴蝶标本还是基于野外环境下的蝴蝶图像,涉及的蝴蝶种类均较少.尽管蝴蝶标本的种类相对较全,但是基于标本的蝴蝶自动识别研究涉及的种类也不多,这是由于蝴蝶分类是非常具有挑战性的细粒度分类,每种蝴蝶标本照片的数量非常有限,无法满足机器学习,特别是深度学习需要的训练样本,无法避免过拟合,从而无法实现蝴蝶多类别分类.野外环境下的蝴蝶物种自动识别还面临数据收集和标注极为困难的挑战,研究涉及的蝴蝶种类更少,每类蝴蝶的样本量也很有限,甚至有的种类仅一张照片.因此,蝴蝶物种自动识别是一个小样本分类.由于野外环境下的蝴蝶自动识别不需要制作蝴蝶标本,且与生物多样性、生态系统平衡等密切相关,研究会更有意义,因此,本文关注野外环境下的蝴蝶物种自动识别.

传统机器学习往往针对某一具体学习任务,通过训练数据学习分类模型,在样本量较多的任务中很成功,但样本量较小时,往往由于学习不足而使模型性能较差[16],深度学习更是依赖于大量训练数据[17].小样本学习(few-shot learning)作为机器学习的一个分支,通过少量样本进行学习[18].2015 年Koch 等人[19]提出了一种学习孪生神经网络的方法,采用独特的结构对输入之间的相似性进行度量,实现了少量样本下的学习.2016 年Vinyals 等人[20]采用基于深度神经特征的度量学习,利用外部记忆增强神经网络,提出了网络学习新框架,并定义了one-shot learning 问题.2017 年Ravi 等人[21]提出一个基于长短期记忆的学习机模型学习精确的优化算法,在少样本状态下训练另一个神经网络分类器,验证了元学习模型在小样本学习领域的优越性能.2017 年Finn 等人[22]提出一种与模型无关的元学习算法,兼容任何经过梯度下降训练的模型,适用于各种不同的学习问题,在小样本分类基准数据集表现出最先进的性能.

鉴于元学习在小样本分类中的优越性能,针对现有野外环境下的蝴蝶种类识别面临的样本类别和样本量少、样本获取和样本类别标注困难的挑战,提出基于元学习的蝴蝶种类识别,以解决现有野外环境下的蝴蝶种类识别模型面临的泛化推广性能差的挑战.另外,为了解决野外环境下的蝴蝶种类识别面临的蝴蝶分类特征学习困难问题,提出采用深度学习来提取蝴蝶分类特征,作为元学习的数据预处理步骤,并在元目标函数引入正则化项避免过拟合,从而得到深度学习结合元学习的野外环境下蝴蝶种类识别系统.大量实验测试表明,提出的模型对野外环境下的蝴蝶识别具有不错的效果,成功解决了蝴蝶种类识别系统的泛化问题,为蝴蝶物种自动识别开辟了新途径.

2 元学习

相比于传统意义上的机器学习(包括深度学习),元学习是更高层次的学习,即学会学习,它不同于传统机器学习,不再聚焦于某个具体的学习任务[23].元学习的学习对象由数据提升为任务,挖掘不同学习任务共有的方法论内涵,实现学习不同任务的学习方法论,以期进行方法论知识的迁移,减少超参调制,在少量数据条件下,获得良好的学习效果,提高系统的性能[24].元学习方法可以在少量训练样本的情况下,快速适应一个新的分类任务,为小样本分类提供了有效手段,为野外环境下的蝴蝶种类识别提供了新的解决方案.经典机器学习需要大量的训练数据支撑[25],在某个特定任务上训练模型,关注点是模型在当前任务上的表现.元学习关注模型对新任务的快速适应能力,因此,元学习非常适合用来解决当前野外环境下蝴蝶物种自动识别任务面临的挑战.

2.1 元学习概念

元学习通常被解释为学会学习的学习[26],其目的是通过在多个任务上学习,掌握快速学习的能力,关注点不再是模型在某个任务上的表现,而是在多个任务上的学习能力.因此,很合适用来解决传统神经网络的泛化性能不足,及其对新类别适应性较差的问题.元学习过程包含元训练(meta train)阶段和元测试(meta test)阶段.元学习的基本单元是任务,不再是面向某一任务的具体数据.元学习的训练任务集合通常包含1 组或多组任务,每个任务又被分为support set 和query set.假设元训练集为Dmeta-train,元测试集为Dmeta-test,Dmeta-train和Dmeta-test的数据无类别交叉,即Dmeta-train∩Dmeta-test=∅.元训练阶段的任务采样于Dmeta-train,元测试阶段的任务采样于Dmeta-test.元学习过程的数据划分如图1 所示.

图1 元学习过程的数据划分Fig.1 Data division of the meta-learning process

2.2 MAML 算法

MAML(model-agnostic meta-learning)[22]是一种基于初始参数的元学习方法,其基本思想是:通过学习相似任务的分布来寻找一个更好的初始参数,使得在良好的初始参数情况下,模型可以用较少的梯度更新,快速学习新任务.因此,对于一个新任务,模型不需要从随机初始化的权重开始,而是可以从最优权重开始,仅需很少的步骤就可以达到收敛,且不需要太多数据来进行训练.具体描述是:模型在一个新任务(task)上,使用基于梯度的学习规则进行微调来学习一个模型,使这个基于梯度的学习规则能在从数据集D的分布P(T)抽取的新任务上快速收敛[22].

MAML 算法包括内、外2 层循环,内循环试图学习每个任务的最优参数,外循环计算每个任务相对于其最优参数的损失,从而更新随机初始化的模型参数.即内循环学习特定任务的参数,使用梯度下降最小化损失;外循环更新模型参数,减少几个任务间的期望损失,将更新后的模型参数作为相关任务的更优初始参数.

MAML 算法的训练模型由参数化函数fθ表示,其中 θ为参数.元训练期间,从Dmeta-train中采样任务,使用的support set 中的K个样本和相应损失函数的反向传播来训练模型,得到内循环参数,这里中上标1 表达该参数是内循环参数,然后在来自的query set 新样本上测试参数来自的query set 新数据的测试损失为元学习过程任务的训练误差,依据该误差,改进外循环模型fθ.在训练阶段,当训练相同batch(batch size 设置为8)中的新任务(k≠i)时,模型的初始参数相同,也为 θ.MAML 内循环更新的参数向量使用任务的support set 的1 个或多个梯度下降更新来计算.仅考虑在的support set 的一个梯度下降的计算公式如式(1)所示,超参数 α为内循环参数更新步长,即内循环参数学习率.

对训练模型fθ的优化在模型参数 θ上进行,使用更新的模型参数来计算目标.实际上,MAML 提出的方法旨在优化模型参数,以便新任务上的1 个或少量梯度更新步骤,便产生最大有效的行为.跨任务的元优化通过随机梯度下降(stochastic gradient descent, SGD)实现.因此,模型参数 θ的更新公式如式(3)所示,其中 β是元步长,即MAML 外循环参数学习率.

2.3 改进的MAML 算法

MAML 元学习算法能通过训练少量样本实现在新任务上的快速学习,但是由于训练样本量少,网络在元训练过程中存在过拟合风险,使在元测试阶段对新类识别率低.为了降低网络在元训练过程中的过拟合,提升模型在元测试阶段对新类别的识别能力,本文对MAML 算法的元目标如2.2 节式(2)中添加L2 正则化项,得到新的元目标,如式(4)所示.其中 λ为超参数,取值范围为λ ∈[0,1].

根据式(4)的元目标更新模型参数 θ,则 θ的更新公式如式(5)所示:

3 DL-MAML 算法

MAML 算法将图像直接输入网络进行训练,然而,图像经过深层卷积后的特征具有更高级的语义[27],更能体现图像特征,因此,提出DL-MAML(deep learning advanced model-agnostic meta-learning)算法,增加独立的特征提取模块,并对MAML 结构增加2 个卷积模块,同时采用2.3 节改进MAML 算法的元目标和参数更新.

3.1 算法思想

MAML 算法对小样本的学习效率、准确率及收敛速度提升都相当可观[22],其将图像直接输入网络(4 个卷积模块和1 个Linear 分类器)进行训练来完成分类任务[22].然而,4 个卷积模块和1 个Linear 分类器组成的网络层数限制导致图像特征提取能力有限.

基于深度卷积神经网络的图像分类任务,大量卷积层本质上是提取图像的不同特征.经过深层卷积后的特征具有更高级的语义,更能体现图像的抽象特征[27].因此,提出DL-MAML 网络模型,将深度卷积神经网络作为独立的特征提取器来提取图像特征,送入改进的MAML 算法的元学习模块进行训练,在整个训练过程中,特征提取器的参数不更新.

DL-MAML 模型的贡献在于:首先,对MAML 算法进行改进,不仅增加了模型层数,同时对MAML 算法的元目标函数增加了L2 正则项,优化元目标模型参数,得到DL-MAML 模型的元学习模块.其次,DLMAML 模型的元学习模块之前,增加了特征提取模块,使元学习模块能更多地关注到图像的有用特征,从而在模型初始化参数学习方面更有针对性.

DL-MAML 模型如图2 所示,包括特征提取模块和元学习模块2 部分.其中,特征提取模块的主要任务是提取图像特征,网络训练过程中,特征提取模块的参数不更新,因此,特征提取模块可看作是对输入图像的编码.元学习模块的参数在网络训练过程中依据2.3 节所述的改进MAML 算法,即式(5)不断更新模型参数,网络训练最终得到元学习模块的初始化参数 θ.

图2 DL-MAML 模型Fig.2 DL-MAML model

3.2 元学习模块

DL-MAML 模型的元学习模块对MAML 算法进行了2 点改进:1)增加网络层数,提高网络的特征提取能力;2)元训练的元目标函数中增加L2 正则化项,如式(4)所示,减少网络对训练数据的过拟合.

Finn 等人[22]提出的MAML 算法网络结构图如图3 所示,包含4 个卷积模块和1 个Linear 分类器.每个卷积模块由卷积层(卷积层参数kernel 为3×3,stride 为1,padding 为0,filters 为32)、非线性激活函数ReLU(rectified linear unit)、 批量归一化(batch normalization,BN)[28]和最大池化层组成.前3 个卷积模块中的最大池化层大小为2×2,最后1 个卷积模块中最大池化层大小为2×1.MAML 算法采用式(3)更新网络参数.

图3 MAML 网络结构Fig.3 Network structure of MAML

DL-MAML 模型的元学习模块在MAML 网络基础上增加2 个卷积模块,如图4 所示,即MAML 前4个卷积模块参数保持不变,增加2 个由卷积层、非线性激活函数ReLU、批量归一化BN 组成的卷积模块,进一步增加元学习模块的特征提取能力.该元学习模块采用式(5)更新网络参数.元学习模块增加的第1 个卷积模块的卷积层参数kernel 为3×3,stride 为1,padding 为0,filters 为512;第2 个卷积模块参数kernel为3×3,stride 为1,padding 为0,filters 为1024.

图4 DL-MAML 的元学习模块网络结构Fig.4 Network structure of meta-learning module of DLMAML

3.3 特征提取模块

为了兼顾图像的低级和高级抽象特征,选择ResNet[29]网络构建独立的特征提取模块,与原始ResNet不同的是:作为特征提取器,本文使用的ResNet 去掉了最后的全连接层(full connection).

ResNet 残差模块,一定程度上解决了网络退化问题,使网络能够提取到图像更高层次的抽象特征,能够关注到输入图像在网络不同层次的特征图信息,从而得到一个融合的特征图.本文选择ResNet34 作为特征提取模块,特征提取器中的残差块如图5所示.

图5 DL-MAML 特征提取器的ResNet 残差块Fig.5 ResNet residual block of DL-MAML’s feature extractor

3.4 损失函数

损失函数采用式(6)所示的交叉熵损失:

其中x(j),y(j)是采样于的输入输出对.本文所涉及的所有损失计算均采用式(6).

3.5 评价指标

评价指标以元测试阶段采样自Dmeta-test的任务来测试经过训练的DL-MAML 模型的初始化参数.设任务(j=1,2,…)采样自Dmeta-test,DL-MAML 模型在的support set 上经过少量更新后(本文实验设置更新次数为5),在的query set 上测试.

本文实验为蝴蝶自动识别,即蝴蝶种类分类,采用的评价指标为式(7)所示的在元测试集Dmeta-test采样的所有任务的平均分类准确率Accuracy.

其中M是在元测试集Dmeta-test采样的总任务数,本文M=200,Accj是DL-MAML 对任务的query set 的预测准确率,计算方式如式(8)所示:

4 实验及结果分析

本文采用开源深度学习框架PyTorch1.6.1 实现DL-MAML 模型,所有实验均使用单GPU 加速网络的学习以及训练过程,显卡型号为GeForce RTX 2080Ti.

4.1 数据集

实验数据来自谢娟英等人[1-2]2018 年发表的蝴蝶生态照片数据集,含有生态照1 425 张,共111 类蝴蝶,其中17 种蝴蝶的生态照片只有1 张,多数种类的生态照片在20 张以内,每类蝴蝶至少有1 张生态照,最多有121 张.去除仅含有1 张生态照的蝴蝶样本,用于实验的数据共有1 408 张蝴蝶生态照片图像,共94 类,数据分布如图6 所示.

图6 蝴蝶生态照样本量分布Fig.6 Sample distribution of butterfly ecological photos

相比于常见的分类问题,该数据集包含类别多、样本少,属于小样本分类,且各类别样本的分布明显不平衡.这些特点给分类算法带来挑战,然而本文的元学习实验不存在类别不平衡问题.另外,本文只关注蝴蝶种类识别,实验中裁掉蝴蝶生态照背景,得到不包含或者包含很少生态背景的蝴蝶生态照图像.剪裁后的部分蝴蝶生态照如图7 所示.

图7 蝴蝶生态照部分样本Fig.7 Several samples of butterfly ecological photos

元训练集和元测试集按照7:3的比例划分94 类蝴蝶,元训练集共含65 类,元测试集包含29 类.元训练集和元测试集无类别重合.本文对样本量不足10个的类别,采用随机旋转进行数据增强,将样本量扩充为10 个.所有图像经过随机裁剪并统一调整大小为224(高)×224(宽)×3(通道)的图像.

4.2 实验设置

本文实验设置参考Vinyals 等人[20]提出的实验方案.元训练阶段,每个任务随机从元训练集Dmeta-train选择N个蝴蝶种类(本文N=5),从每个种类采样2×K个实例,即每个任务包含2×N×K个实例,使用此N个种类中每个类的K个不同实例组成此任务的support set,则support set 包含N×K个实例,其余N×K个实例组成此任务的query set.元测试阶段,每个任务随机从元测试集Dmeta-test选择N个蝴蝶种类,每个任务的support set 和query set 的设置方式与元训练阶段相同.本文称此种采样数据的方式为N-wayK-shot.其中,5-way 1-shot 实验的元测试阶段的数据集设置如图8 所示,support set 从29 个用于测试的蝴蝶种类中随机选择了5 类,每类选择1 个样本.

图8 5-way 1-shot 实验的元测试数据集设置Fig.8 Dataset setting of the 5-way 1-shot experiment in meta test

本文实验的N-wayK-shot 设置如表1 所示,共采用2 组:5-way 1-shot,5-way 5-shot.表1 所示的数据集划分的第2,3 列表示在元训练与元测试阶段,每个任务包含的样本数量,即每个任务的support set +query set 的样本量.

Table 1 Data Division Results of Different Experiments for Each Task表1 不同实验每个任务的数据划分结果

4.3 正则项权重测试实验

本节通过实验测试,验证提出的DL-MAML 算法的元学习模块的改进元目标函数的正则项权重λ设置的合理性.实验在本文改进的元学习模块(MAML+2 Modules+L2)进行,分别将 λ设置为2,0.5,0.2,0.02 进行5-way 1-shot 实验,此时λ/2分别为1,0.25,0.1,0.01.实验结果如表2 所示.

表2 显示,当 λ=0.2 时,DL-MAML 的元学习模块的性能表现最好,因此本文后续实验均设置 λ=0.2.

4.4 元学习模块消融实验

本节通过消融实验验证DL-MAML 算法的元学习模块的2 处改进(对原始MAML 增加卷积模块和改进元目标函数)的有效性,消融实验结果如表3所示.表3 中的MAML 为Finn 等人[22]使用的模型以及更新策略,也就是式(3)的更新策略;MAML+2 Modules 为增加2 个卷积模块的模型使用的原始更新策略,即式(3)的更新策略;MAML+L2 为使用MAML 模型,采用式(5)的更新策略;MAML+2 Modules+L2 为增加2 个卷积模块的模型使用式(5)的更新策略,即DL-MAML 模型的元学习模块.

Table 3 Accuracies of Butterfly Classification in Ablation Experiments of Meta Learning Module表3 元学习模块消融实验的蝴蝶分类准确率%

实验超参数设置参考Finn 等人[22]的设置,实验进行10 000 epoch,内循环的学习率 α=0.01,外循环学习率 β=0.001,batch size 设置为8,训练阶段每个任务内部进行5 次梯度更新,测试阶段每个任务进行5 次梯度更新,测试阶段每个任务的分类准确率为5 次梯度更新之后的平均准确率.训练阶段从元训练集Dmeta-train采样80 000 个任务进行训练,测试阶段从元测试集Dmeta-test采样200 个任务进行测试.DL-MAML的元目标函数的L2 正则化项参数 λ=0.2.

由表3 可见,在5-way 1-shot 实验中,分别增加卷积模块、改进MAML 算法的元目标函数、同时增加卷积模块和改进MAML 算法元目标函数这3 种策略均显著提高了模型对测试任务的分类准确率.表3 还显示,在5-way 5-shot 实验中,无论是增加2 个模块,还是给元目标函数增加正则化项,模型对测试任务的准确率都有提升,且同时增加卷积块和在元目标函数中引入正则项所得模型的分类准确率提升最多.另外,表3 还显示,在5-way 1-shot 实验中增加卷积块对模型性能的提升比改进元目标函数对模型性能的提升更强,但在5-way 5-shot 实验中则相反.这说明本文改进的MAML 元目标函数和参数更新方法在内循环样本更多时,带来的更多参数微调能进一步提升模型性能.由此可见,本文对MAML 的2 处改进明显提升了其性能.但是表3 还显示,改进模型在5-way 5-shot 实验的分类准确率的提升不及在5-way 1-shot 实验的分类准确率的提升明显.原因是5-way 5-shot 采用了更多来自新类别的样本进行测试.

4.5 特征提取模块消融实验

本节基于DL-MAML 模型的元学习模块,采用消融实验验证DL-MAML 模型的特征提取模块的性能.元学习模块参数设置与实验超参数设置与4.4 节相同,图像经过特征提取模块之前大小为224×224×3,图像经过特征提取模块之后,图像特征图大小被调整为84(高)×84(宽)×3(通道)的图像.

另外,将VGG 网络作为特征提取器替换DLMAML 模型的特征提取器进行实验比较,验证本文以ResNet 网络作为特征提取器的正确性.实验结果如表4 所示,其中“DL-MAML特征提取”表示没有特征提取模块的改进MAML,“VGG-MAML”表示用VGG 网络替换DL-MAML 模型的特征提取模块,“DL-MAML”表示本文模型.

Table 4 Classification Accuracies of Feature Extraction Module in Ablation Experiments表4 特征提取模块消融实验的分类准确率%

表4 显示,包含特征提取模块的VGG-MAML 和本文DL-MAML 模型对测试任务的分类准确率都有提升,尤其是在5-way 1-shot 实验的分类准确率提升显著,在5-way 5-shot 实验的分类准确率有提升但不及前者显著.这说明DL-MAML 模型的特征提取模块对DL-MAML 模型的性能提升有积极作用,但本文改进的MAML 元目标函数和对原始MAML 元学习模块增加的卷积模块的作用也不容忽视,特别是元目标函数和参数更新方法的改进对模型性能影响显著,这在4.4 节的消融实验已经得到验证.

4.6 与其他元学习模型的比较

本文4.4 节和4.5 节实验结果显示,DL-MAML模型相比于MAML 算法在蝴蝶分类任务上表现较优.本节将比较DL-MAML 模型与其他小样本分类方法的性能,对比实验结果如表5 所示.

Table 5 Accuracies of Different Meta-Learning Models for Classifying Butterfly Species in the Field Environments表5 不同元学习模型对野外环境下蝴蝶的分类准确率%

表5 所有实验均采用本文数据集以及本文4.1节数据划分方式进行训练与测试.对于Vinyals 等人[20]提出的基于度量的元学习方法matching nets,实验超参数采用原文作者设置,使用余弦相似度度量;对于Ravi等人[21]提出的基于模型的元学习方法meta-learner LSTM,实验超参数采用原文作者设置;MAML 算法超参数使用4.4 节设置;本文模型DL-MAML 超参数使用4.4 节设置.

表5 实验结果显示,DL-MAML 模型在元测试阶段新任务上的蝴蝶分类准确率优于MAML 算法,特别是5-way 1-shot 实验的分类准确率提升非常显著,比MAML 模型高出17.38 个百分点;在5-way 5-shot 实验的性能提升虽然不及5-way 1-shot 实验,但分类准确率也提升了1.52 个百分点.因此可以说,DL-MAML 模型比MAML 算法可以得到更好的模型初始化参数以适应新任务,更好地实现了在新任务上的快速学习.

对比其他小样本分类方法,DL-MAML 模型对野外环境下的蝴蝶物种识别也具有明显优势.尽管matching nets 方法在5-way 1-shot 实验的性能优于meta-learner LSTM 和MAML,但远不及DL-MAML.MAML 在5-way 5-shot 实验的分类准确率优于matching nets 和meta-learner LSTM 方法.

对比DL-MAML 与MAML 算法可见,DL-MAML的特征提取模块结合了深度网络的特征提取优势来弥补MAML 模型的特征提取不足;DL-MAML 模型的元学习模块通过添加卷积模块和增加正则项改进了MAML 算法的元目标函数和参数更新方法,在提升了MAML 算法表现的同时,避免了模型参数过拟合的风险,增强了模型快速适应新类的优点,有效解决了现有机器学习方法在野外环境下蝴蝶识别任务的泛化性问题.

4.7 原始图像数据集的实验

本文4.3~4.6 节所有实验均采用剔除了背景的蝴蝶生态照图像,但是尽管剔除了背景,图像中依然包含部分背景.本节将在未剔除背景的原始蝴蝶图像数据集进行实验,以测试野外环境下的蝴蝶图像背景对DL-MAML 算法性能的影响.实验结果如表6 所示,其中MAML(org) 和DL-MAML(org) 表示在未剔除背景的蝴蝶生态照片数据集的实验.

Table 6 Butterfly Classification Accuracies of Different Types of Ecological Images表6 不同生态照的蝴蝶分类准确率%

表6 显示,MAML 和DL-MAML 算法在原始蝴蝶生态图像的蝴蝶分类准确率均比它们在剔除了背景但还含有部分背景的蝴蝶生态图像的分类准确率差10 多个百分点.这说明,野外环境下的蝴蝶图像背景对模型的分类性能有直接影响.另外,表6 实验结果还显示,各模型在5-way 1-shot 实验的性能均远不如其在5-way 5-shot 实验的性能,说明在元学习获得了学习方法论之后,针对具体任务的参数微调对模型性能的影响很大.

此外,表6 的实验结果还揭示,提出的DL-MAML算法使得图像背景对模型性能的影响显著降低,特别是在5-way 1-shot 实验,使用原始图像的元学习模型DL-MAML(org)的蝴蝶分类准确率比使用剪裁背景图像的元学习模型MAML 的分类准确率高4.16 个百分点;同时,在5-way 5-shot 实验,DL-MAML(org)模型的蝴蝶分类准确率比MAML(org)模型高8.71 个百分点.

5 结论与展望

本文提出了DL-MAML 模型,对MAML 模型进行改进,增加了深度特征提取模块,同时对MAML 的元学习模块增加了2 层特征学习模块,并提出了L2正则项修正MAML 的元目标函数和模型参数更新方法.将提出的DL-MAML 模型应用于野外环境下的蝴蝶物种识别任务.消融实验与其他小样本分类模型的实验比较表明,DL-MAML 模型极大提升了MAML元学习模型的分类准确率,从新的视角解决了野外环境下蝴蝶识别任务的泛化性问题,从更高的视角(即学会学习)实现了开放环境下的蝴蝶物种识别,使得面对新环境时,只需要简单地训练就可以得到性能很好的野外环境下蝴蝶物种识别模型.

然而,本文研究重点关注野外环境下的蝴蝶物种识别任务,没有关注野外环境下的蝴蝶位置检测.如何使用元学习同时实现野外环境下的蝴蝶位置检测和分类,即用元学习解决野外环境下的蝴蝶物种自动识别这一具有挑战性的目标检测(蝴蝶位置发现和种类分类)问题是我们需要进一步研究的问题.

作者贡献声明:赵戈伟负责完成实验并撰写论文初稿;许升全提供数据,提出指导意见修改论文;谢娟英提出算法思路、实验方案,并负责撰写和修改论文.

猜你喜欢

特征提取蝴蝶卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
基于Daubechies(dbN)的飞行器音频特征提取
基于傅里叶域卷积表示的目标跟踪算法
Bagging RCSP脑电特征提取算法
为了蝴蝶
捉蝴蝶
捉蝴蝶
基于MED和循环域解调的多故障特征提取
找找看