CN109002845B - 基于深度卷积神经网络的细粒度图像分类方法 - Google Patents

基于深度卷积神经网络的细粒度图像分类方法 Download PDF

Info

Publication number
CN109002845B
CN109002845B CN201810715090.0A CN201810715090A CN109002845B CN 109002845 B CN109002845 B CN 109002845B CN 201810715090 A CN201810715090 A CN 201810715090A CN 109002845 B CN109002845 B CN 109002845B
Authority
CN
China
Prior art keywords
grained
fine
class
neural network
image classification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810715090.0A
Other languages
English (en)
Other versions
CN109002845A (zh
Inventor
张玥
龚怡宏
石伟伟
程德
陶小语
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Jiaotong University
Original Assignee
Xian Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian Jiaotong University filed Critical Xian Jiaotong University
Priority to CN201810715090.0A priority Critical patent/CN109002845B/zh
Publication of CN109002845A publication Critical patent/CN109002845A/zh
Application granted granted Critical
Publication of CN109002845B publication Critical patent/CN109002845B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24137Distances to cluster centroïds
    • G06F18/2414Smoothing the distance, e.g. radial basis function networks [RBFN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于深度卷积神经网络的细粒度图像分类方法,包括以下步骤:1)准备细粒度图像分类数据集,将训练数据划分为训练数据集和验证数据集;2)搭建细粒度图像分类的深度卷积神经网络模型,使用训练数据集训练模型,当训练的模型在验证数据集上达到设定的精度,保存网络模型参数;3)使用训练好的模型计算测试图像分类的标签或测试数据集的分类精度。本发明提出的细粒度图像分类框架独立于并可应用于任何DCNN结构,具有很好的可移植性。

Description

基于深度卷积神经网络的细粒度图像分类方法
技术领域
本发明属于计算机视觉图像分类技术领域,具体涉及一种基于深度卷积神经网络的细粒度图像分类方法。
背景技术
细粒度图像分类任务相对通用图像分类任务的区别在于其图像所属类别的粒度更为精细,不同细粒度物体类的差异仅体现在细微之处。细粒度图像分类的主要挑战在于类间相似性和类内多样性。一方面,不同的细粒度类之间的视觉差异仅仅体现在细微之处;另一方面,由于受到位置、视角、光照等条件的影响,即使是同一类的实例也可能会有变化较大的类内视觉差异。例如,Californiagull和Ringed-beak gull的差异仅仅在于鸟嘴部位的区别,但即使是同一类California gull(或Ringed-beak gull),也会表现出较大的类内差异性。
基于部分的算法细粒度图像分类方法,首先检测目标物体的不同部分,然后通过局部特征建模增加类间的区别、减小类内的差异,这类方法高度依赖精确的部件检测,容易受到遮挡、角度和姿态等影响。应用contractive和triplet损失函数训练深度卷积神经网络的方法,收敛速度较慢,计算复杂度高。
发明内容
本发明的目的在于针对现有技术的不足,提供了一种基于深度卷积神经网络的细粒度图像分类方法。
为达到上述目的,本发明采用如下技术方案:
基于深度卷积神经网络的细粒度图像分类方法,包括以下步骤:
1)准备细粒度图像分类数据集,将训练数据划分为训练数据集和验证数据集;
2)搭建细粒度图像分类的深度卷积神经网络模型,使用训练数据集训练模型,当训练的模型在验证数据集上达到设定的精度,保存网络模型参数;
3)使用训练好的模型计算测试图像分类的标签或测试数据集的分类精度。
本发明进一步的改进在于,步骤2)的具体实现方法如下:
201)搭建细粒度图像分类的深度卷积神经网络模型时,根据图像类标签层级结构特性,对通用图像分类深度卷积神经网络的结构和损失函数进行改进;
202)搭建细粒度图像分类的深度卷积神经网络模型时,在深度卷积神经网络的训练过程中,在网络的特征层使用large-margin损失函数进行监督。
本发明进一步的改进在于,步骤201)的具体实现方法如下:
2011)搭建细粒度图像分类的深度卷积神经网络模型时,在网络结构方面,用标签层数个全连接层替换通用图像分类神经网络的最后一个全连接层,网络特征层和各个全连接层两两之间有直接连接或者跨层连接;
2012)搭建细粒度图像分类的深度卷积神经网络模型时,在损失函数方面,对2011)中新增加的全连接层,使用级联softmax损失函数进行训练;
在细粒度图像分类的典型数据集中,类别标签通常根据它们的语义使用树形结构表示,其中叶节点和根节点分别对应细粒度级和粗粒度级标签;定义具有层次结构标签的图像数据集的数学符号如下:
Figure GDA0002742897120000021
表示训练样本集,其中Xi表示第i个样本图像,n表示训练样本的总数;每个样本图像Xi对应一个有层次结构的类标签
Figure GDA0002742897120000022
其中
Figure GDA0002742897120000023
Figure GDA0002742897120000024
是第j层的类标签,C(j)是第j层类标签的数量,h是层次结构标签集的层数;假设细粒度类标签是第一级类标签,即
Figure GDA0002742897120000031
是样本Xi的细粒度类标签,且C(1)是细粒度类的数量;对于图像Xi,用xi表示深度卷积神经网络特征层的输出,即xi为网络提取的Xi的特征向量;
定义级联的softmax损失函数如下:
Figure GDA0002742897120000032
其中
Figure GDA0002742897120000033
表示整个网络的参数。
本发明进一步的改进在于,步骤202)中搭建细粒度图像分类的深度卷积神经网络模型时,深度卷积神经网络的训练过程中,在网络的特征层使用large-margin损失函数进行监督,其中large-margin损失函数的定义说明如下:
对于每个给定的细粒度类c,将剩下的细粒度类划分为两个组SP(c)和
Figure GDA0002742897120000034
其中一类细粒度类与细粒度类c共享父粗粒度类别,另一类不与细粒度类c共享同一父粗粒度类别,细粒度类c的训练样本的特征向量集表示如下:
Figure GDA0002742897120000035
其中,πc是属于类别c的训练样本的索引集,
Figure GDA0002742897120000036
的平均向量表示为:
Figure GDA0002742897120000037
其中,nc=|πc|,
Figure GDA0002742897120000038
的类间距离函数表示为:
Figure GDA0002742897120000039
对于细粒度类p和细粒度类q,设特征向量集
Figure GDA00027428971200000310
Figure GDA00027428971200000311
定义如下:
Figure GDA00027428971200000312
Figure GDA00027428971200000313
Figure GDA00027428971200000314
的类间距离表示为:
Figure GDA0002742897120000041
Figure GDA0002742897120000042
其中,
Figure GDA0002742897120000043
表示
Figure GDA0002742897120000044
Figure GDA0002742897120000045
之间仿射矩阵G(p,q)的第(i,j)个元素,
Figure GDA0002742897120000046
Figure GDA0002742897120000047
Figure GDA0002742897120000048
是样本集
Figure GDA0002742897120000049
中k近邻样本对的集合,H=[x1,…,xn],Ψ(p,q)是G(p,q)的拉普拉斯矩阵,即Ψ(p,q)=D(p,q)-G(p,q)
Figure GDA00027428971200000410
tr(·)表示矩阵的迹;
给定上述定义,GLM损失函数的两个约束推导如下:
Figure GDA00027428971200000411
Figure GDA00027428971200000412
其中,α1和α2是两个预设的间隔,[x]+=max{x,0},且:
Figure GDA00027428971200000413
Figure GDA00027428971200000414
Figure GDA00027428971200000415
在上述公式中,SP(c)由与c共享同一父粗粒度类别的细粒度类组成,
Figure GDA00027428971200000416
是SP(c)中距离c最近的细粒度类别训练样本的特征向量集,
Figure GDA00027428971200000417
是SP(c)中距离c最远的细粒度类别训练样本的特征向量集;此外,
Figure GDA00027428971200000418
由与c不共享同一父粗粒度类的细粒度类组成,
Figure GDA00027428971200000419
Figure GDA00027428971200000420
中最接近类别c的训练样本的特征向量集;
使用上述定义,两级标签结构的GLM损失函数定义为:
Figure GDA0002742897120000051
同样的,三级标签结构的GLM损失函数推导如下:
首先,对于每个给定的细粒度类c,除了将其余的细粒度类划分为两个组SP(c)和
Figure GDA0002742897120000052
外,还将它们划分为SG(c)和
Figure GDA00027428971200000510
分别为与细粒度类c具有相同的祖父粗粒度类和不同的祖父粗粒度类;接下来,将第三个约束添加到GLM损失函数中:c和
Figure GDA0002742897120000053
中距离最近的细粒度类之间的距离比c和SG(c)中距离最远的细粒度类之间的距离大于预定义的间隔,用数学表达如下式:
Figure GDA0002742897120000054
其中,α3是预定义的间隔,且
Figure GDA0002742897120000055
Figure GDA0002742897120000056
使用上述定义,三层标签结构的GLM损失函数定义为:
Figure GDA0002742897120000057
其中,
Figure GDA0002742897120000058
Figure GDA0002742897120000059
分别在前面定义;
同理,将GLM损失函数扩展到一般的多层次结构标签的情况。
相对于现有技术,本发明具有如下的优点:
本发明提出的细粒度图像分类框架独立于并可应用于任何DCNN结构,具有很好的可移植性。具体的主要贡献有:本发明引入h个fc层来替换给定DCNN模型的顶层fc层,并用级联的softmax损失函数进行模型的训练,以更好地模拟细粒度图像类的h级分层标签结构。本发明提出广义大边缘(GLM损失函数)损失,使给定的DCNN模型明确地探索分级标签结构和细粒度图像类的相似性规律。
本发明利用Caffe开发平台在3个最流行的深度卷积神经网络(AlexNet、GoogLeNet和VGG-19)和3个学术界广泛利用的细粒度图像分类数据集(Stanford car、CUB-200-2011和FGVC-aircraft)上对本发明所提出的框架进行了充分的评估验证。Stanfordcar数据集包含16185张图像,共196类;CUB-200-2011数据集包含11788张图像,共200类;FGVC-aircraft数据集包含10000张图像,共100类。图5、6、7中的表格分别列出了性能比较结果,在这三个表还包含了当前一些最具代表性的方法的测试结果。从这三个表可以看出,本团队提出细粒度图像分类的深度卷积神经网络训练方法,无论在什么样的网络上都能显著提高分类精度,充分证明了本团队所提框架的有效性。
附图说明
图1为Stanford car数据集的样本图像,该数据集的类别标签具两层级关系。
图2为以改进AlexNet为例的两层标签结构细粒度图像分类方法示意图。
图3为以改进AlexNet为例的三层标签结构细粒度图像分类框架示意图。
图4为两层标签分层结构示意图。
图5为在Stanford car数据集上的性能比较结果。
图6为在CUB-200-2011数据集上的性能比较结果。
图7为在FGVC-aircraft数据集上的性能比较结果。
具体实施方式
鉴于细粒度图像分类的主要挑战(类间相似性和和类内多样性),本发明提出利用类标签层级结构关系、级联softmax loss和泛化large-margin loss来改进深度卷积神经网络的细粒度图像分类性能。具体地,本发明从以下两个方面来改进深度卷积神经网络的细粒度图像分类精度。首先,对于一个给定的深度卷积神经网络,为了更好地利用细粒度类标签之间h-level的层级结构关系,本发明提出利用h个全连接层来替换神经网络的最后一个全连接层,这些新的全连接层的参数用本发明提出的级联softmax loss来学习。其次,本发明提出了一个新的目标函数,即泛化的large-margin loss,以便充分利用细粒度类标签之间的层级结构关系和相似性关系信息来监督深度卷积神经网络的训练过程。在深度卷积神经网络所学到的特征空间中,泛化的large-margin loss不但能够减少类间相似性和类内变化,而且能够使得属于同一父类的子类之间的相似性大于那些属于不同父类的子类之间的相似性。本发明所提出的细粒度图像分类框架不依赖于任何的神经网络结构,可以应用于任何的深度卷积神经网络。
在细粒度图像分类的典型数据集中,类别标签通常根据它们的语义使用树形结构表示,其中叶节点和根节点分别对应细粒度级和粗粒度级标签。本发明定义具有层次结构标签的图像数据集的数学符号如下。
Figure GDA0002742897120000071
表示训练样本集,其中Xi表示第i个样本图像,n表示训练样本的总数。每个样本图像Xi对应一个有层次结构的类标签
Figure GDA0002742897120000072
其中
Figure GDA0002742897120000073
是第j层的类标签,C(j)是第j层类标签的数量,h是层次结构标签集的层数。假设细粒度类标签是第一级类标签,即
Figure GDA0002742897120000074
是样本Xi的细粒度类标签,并且C(1)是细粒度类的数量。对于图像Xi,本发明用xi表示DCNN倒数第二层的输出,并将xi视为网络提取的Xi的特征向量。
首先介绍级联Softmax损失函数的定义。对于具有h层标签的细粒度图像分类问题,本发明通过用h个全连接层替换其原始顶层的全连接层来修改给定的DCNN模型,并且使用级联softmax损失函数对其进行训练。为了简化说明,并且不失一般性,本发明以使用AlexNet对具有两层标签的图像数据集进行分类为例,其他基于深度卷积神经网络的细粒度图像分类问题以此类推。
原始的AlexNet由五个卷积层(conv1-5)和三个完全连接层(fc6-8)组成,其中fc7,fc8分别作为特征输出层和顶层fc层。对具有两个层次标签的图像进行分类,本发明用fc8′和fc9替换fc8,并将fc9与fc7和fc8′完全连接。本发明将从fc7到fc9的连接称为跨层连接(如图2所示)。fc8′和fc9中的神经元数分别设为C(1)和C(2)。给定输入图像Xi,fc8′和fc9输出所有叶细粒度类标签
Figure GDA0002742897120000081
Figure GDA0002742897120000082
的概率得分
Figure GDA0002742897120000083
及图像Xi所有粗类别标签
Figure GDA0002742897120000084
的得分
Figure GDA0002742897120000085
本发明引入跨层连接(fc7→fc9)为粗粒度分类层(fc9)同时提供对输入图像Xi学习的特征(fc7的输出)和对所有细粒度类别
Figure GDA0002742897120000086
的预测概率得分
Figure GDA0002742897120000087
的(fc8′的输出)。直观地说,使用上述两种类型的信息进行粗粒度图像分类优于仅使用细粒度分类的结果。因为前者同时使用了训练样本学习的语义特征和标签层级结构信息。另一方面,在迭代训练过程中,fc9的预测误差反向传播到fc8′,fc7和网络的低层,这也逐渐提高fc8′的预测精度。
对于上述改进的AlexNet,本发明在训练过程中将级联的softmax损失函数应用于fc8′和fc9,其定义如下:
Figure GDA0002742897120000088
其中w表示整个网络的参数。对于具有两层结构的标签即h=2的图像分类问题,分别将
Figure GDA0002742897120000089
Figure GDA00027428971200000810
应用于fc8′和fc9。实际上,应用级联softmax损失训练模型可以认为是一种多任务学习,其中一项任务是细粒度图像分类,另一项任务是粗粒度图像分类。通过共享这两个任务之间的特征表示,在联合训练过程中逐渐相互改进。
改进的DCNN模型的整体目标函数定义如下:
Figure GDA0002742897120000091
其中
Figure GDA0002742897120000092
为公式(1)中定义的级联softmax损失,
Figure GDA0002742897120000093
表示应用于网络的特征输出层的GLM损失函数,在下一小节具体介绍。输入包括图像数据集提取的特征向量集
Figure GDA0002742897120000094
层次类别标签集
Figure GDA0002742897120000095
λ是调节级联softmax损失与GLM损失函数权重的可调参数。
图2是改进AlexNet的双层标签结构细粒度图像分类框架,这个框架可以推广到多层次的分层标签结构,并且是独立的任何DCNN结构。图3展示了改进AlexNet的三层标签结构细粒度图像分类框架,为了简单起见,省略fc7之前的图层。与原始AlexNet相比,本发明用fc8′,fc9和fc10替换fc8。fc9完全连接到fc7和fc8′,而fc10完全连接到fc7,fc8′和fc9。fc8′,fc9和fc10的输出维度分别等于底层细粒度类别的数量、第2层粗粒度类别的数量和第3层粗粒度类别的数量。
其次介绍GLM损失函数的定义。为简单起见,本发明首先推导出两层标签结构的GLM损失函数,然后将其推广到多层标签。对于每个给定的细粒度类c,本发明将剩下的细粒度类划分为两个组SP(c)和
Figure GDA0002742897120000096
其中一类细粒度类与细粒度类c共享父粗粒度类别,另一类不共享同一父粗粒度类别,如图4所示。提出的GLM损失函数明确要求:(1)c和其在SP(c)中最近的细粒度类之间的距离比c的类内距离大预定义的间隔。(2)c和其在
Figure GDA0002742897120000097
中最近的细粒度类的距离相比c和其在SP(c)中距离最远的细粒度类之间的距离大于预定的间隔。下面,本发明将首先定义类内差异和类间距离,然后使用这些定义推导GLM损失函数。
细粒度类c的训练样本的特征向量集表示如下,
Figure GDA0002742897120000101
其中,πc是属于类别c的训练样本的索引集。
Figure GDA0002742897120000102
的平均向量表示为:
Figure GDA0002742897120000103
其中,nc=|πc|。
Figure GDA0002742897120000104
的类间距离函数表示为:
Figure GDA0002742897120000105
设特征向量
Figure GDA0002742897120000106
Figure GDA0002742897120000107
定义如下:
Figure GDA0002742897120000108
Figure GDA0002742897120000109
Figure GDA00027428971200001010
的类间距离表示为:
Figure GDA00027428971200001011
Figure GDA00027428971200001012
其中,
Figure GDA00027428971200001013
表示
Figure GDA00027428971200001014
Figure GDA00027428971200001015
之间仿射矩阵G(p,q)的第(i,j)个元素,
Figure GDA00027428971200001016
Figure GDA00027428971200001017
Figure GDA00027428971200001018
是样本集
Figure GDA00027428971200001019
中k近邻样本对的集合,H=[x1,…,xn],Ψ(p,q)是G(p,q)的拉普拉斯矩阵,即Ψ(p,q)=D(p,q)-G(p,q)
Figure GDA00027428971200001020
i=1,2,…,n,tr(·)表示矩阵的迹。
给定上述定义,GLM损失函数的两个约束推导如下:
Figure GDA00027428971200001021
Figure GDA00027428971200001022
其中,α1和α2是两个预设的间隔,[x]+=max{x,0},且:
Figure GDA0002742897120000111
Figure GDA0002742897120000112
Figure GDA0002742897120000113
在上述公式中,SP(c)由与c共享同一父粗粒度类别的细粒度类组成,
Figure GDA0002742897120000114
是SP(c)中距离c最近的细粒度类别训练样本的特征向量集,
Figure GDA0002742897120000115
是SP(c)中距离c最远的细粒度类别训练样本的特征向量集。此外,
Figure GDA0002742897120000116
由与c不共享同一
父粗粒度类的细粒度类组成,
Figure GDA00027428971200001116
Figure GDA0002742897120000118
中最接近类别c的训练样本的特征向量集。
使用上述定义,两级标签结构的GLM损失函数可以定义为:
Figure GDA0002742897120000119
到目前为止,本发明主要讨论了两层结构标签的情况。事实上,GLM损失函数可以很容易地扩展到一般的多层次结构标签,例如三级标签结构的GLM损失函数可以推导如下。首先,对于每个给定的细粒度类c,除了将其余的细粒度类划分为两个组SP(c)和
Figure GDA00027428971200001110
外,本发明还将它们划分为SG(c)和
Figure GDA00027428971200001111
分别为与细粒度类c具有相同的祖父粗粒度类和不同的祖父粗粒度类。接下来,本发明将第三个约束添加到GLM损失函数中:c和
Figure GDA00027428971200001112
中距离最近的细粒度类之间的距离比c和SG(c)中距离最远的细粒度类之间的距离大于预定义的间隔。用数学表达如下式:
Figure GDA00027428971200001115
其中,α3是预定义的间隔,且
Figure GDA00027428971200001113
Figure GDA00027428971200001114
使用上述定义,三层标签结构的GLM损失函数可定义为:
Figure GDA0002742897120000121
其中,
Figure GDA0002742897120000122
Figure GDA0002742897120000123
分别在公式(9)和公式(10)中定义。
本发明使用小批量的标准BP算法来训练改进的DCNN模型,总体目标函数如公式(2)所示。为优化模型,本发明需要计算损失函数L对于所有DCNN层响应的梯度,即相关层的误差流。softmax损失函数的梯度计算很简单,下面本发明详细说明GLM损失函数对xi的梯度计算方法。
对于两级分层标签结构,
Figure GDA0002742897120000124
对xi的导数求解如下:
Figure GDA0002742897120000125
Figure GDA0002742897120000126
Figure GDA0002742897120000127
其中,I(·)为指示函数,当条件为真则等于1,否则为0。下标符号(:,i)表示矩阵的第i列,并且:
Figure GDA0002742897120000128
Figure GDA0002742897120000129
Figure GDA00027428971200001210
Figure GDA00027428971200001211
Figure GDA00027428971200001212
Figure GDA0002742897120000131
对于三层标签结构,
Figure GDA0002742897120000132
对xi的层数计算如下:
Figure GDA0002742897120000133
其中,
Figure GDA0002742897120000134
Figure GDA0002742897120000135
分别在公式(20)和公式(21)中定义,且:
Figure GDA0002742897120000136
Figure GDA0002742897120000137
Figure GDA0002742897120000138
Figure GDA0002742897120000139
Figure GDA00027428971200001310
以8层AlexNet模型为例,本发明提出的系统框架训练流程如下:
输入:训练集
Figure GDA00027428971200001311
超参数λ,α1和α2,最大迭代次数Imax,计数器iter=0。
输出:
Figure GDA00027428971200001312
步骤:
1、从
Figure GDA00027428971200001313
选择小批量训练样本。
2、对每个样本执行前向传播,计算所有层的响应。
3、根据softmax损失计算fc9的误差流(对于粗粒度类别)。然后通过反向传播分别计算fc9到fc7和算fc8′的误差流。
4、根据softmax损失(对于细粒度类别)计算fc8′的误差流。
5、计算fc8′的总误差流,即从fc9和从softmax损失传递的误差流的总和(对于细粒度类别)。然后,用BP算法计算从fc8′到fc7的误差流。
6、根据方程式(19)和缩放因子λ计算从GLM损失函数到fc7的误差流。
7、计算fc7的总误差流,即来自fc8′,fc9和GLM损失函数的误差流总和。
8、从fc7到conv1执行反向传播,通过BP算法依次计算这些层的误差流。
9、根据各层的响应和误差流,用BP算法计算
Figure GDA0002742897120000141
10、通过梯度下降算法更新
Figure GDA0002742897120000142
11、iter←iter+1。若iter<Imax,执行步骤1。

Claims (1)

1.基于深度卷积神经网络的细粒度图像分类方法,其特征在于,包括以下步骤:
1)准备细粒度图像分类数据集,将训练数据划分为训练数据集和验证数据集;
2)搭建细粒度图像分类的深度卷积神经网络模型,使用训练数据集训练模型,当训练的模型在验证数据集上达到设定的精度,保存网络模型参数;具体实现方法如下:
201)搭建细粒度图像分类的深度卷积神经网络模型时,根据图像类标签层级结构特性,对通用图像分类深度卷积神经网络的结构和损失函数进行改进;具体实现方法如下:
2011)搭建细粒度图像分类的深度卷积神经网络模型时,在网络结构方面,用标签层数个全连接层替换通用图像分类神经网络的最后一个全连接层,网络特征层和各个全连接层两两之间有直接连接或者跨层连接;
2012)搭建细粒度图像分类的深度卷积神经网络模型时,在损失函数方面,对2011)中新增加的全连接层,使用级联softmax损失函数进行训练;
在细粒度图像分类的典型数据集中,类别标签通常根据它们的语义使用树形结构表示,其中叶节点和根节点分别对应细粒度级和粗粒度级标签;定义具有层次结构标签的图像数据集的数学符号如下:
Figure FDA0002943945230000011
表示训练样本集,其中Xi表示第i个样本图像,n表示训练样本的总数;每个样本图像Xi对应一个有层次结构的类标签
Figure FDA0002943945230000012
其中
Figure FDA0002943945230000013
Figure FDA0002943945230000014
是第l层的类标签,C(l)是第l层类标签的数量,h是层次结构标签集的层数;假设细粒度类标签是第一级类标签,即
Figure FDA0002943945230000015
是样本Xi的细粒度类标签,且C(1)是细粒度类的数量;对于图像Xi,用xi表示深度卷积神经网络特征层的输出,即xi为网络提取的Xi的特征向量;
定义级联的softmax损失函数如下:
Figure FDA0002943945230000021
其中
Figure FDA0002943945230000022
表示整个网络的参数;
202)搭建细粒度图像分类的深度卷积神经网络模型时,在深度卷积神经网络的训练过程中,在网络的特征层使用large-margin损失函数进行监督,其中large-margin损失函数的定义说明如下:
对于每个给定的细粒度类c,将剩下的细粒度类划分为两个组SP(c)和
Figure FDA0002943945230000023
其中一类细粒度类与细粒度类c共享父粗粒度类别,另一类不与细粒度类c共享同一父粗粒度类别,细粒度类c的训练样本的特征向量集表示如下:
Figure FDA0002943945230000024
其中,πc是属于类别c的训练样本的索引集,
Figure FDA0002943945230000025
的平均向量表示为:
Figure FDA0002943945230000026
其中,nc=|πc|,
Figure FDA0002943945230000027
的类间距离函数表示为:
Figure FDA0002943945230000028
对于细粒度类p和细粒度类q,设特征向量集
Figure FDA0002943945230000029
Figure FDA00029439452300000210
定义如下:
Figure FDA00029439452300000211
Figure FDA00029439452300000212
Figure FDA00029439452300000213
的类间距离表示为:
Figure FDA00029439452300000214
Figure FDA0002943945230000031
其中,
Figure FDA0002943945230000032
表示
Figure FDA0002943945230000033
Figure FDA0002943945230000034
之间仿射矩阵G(p,q)的第(i,j)个元素,
Figure FDA0002943945230000035
Figure FDA0002943945230000036
是样本集
Figure FDA0002943945230000037
中k近邻样本对的集合,H=[x1,…,xn],Ψ(p,q)是G(p,q)的拉普拉斯矩阵,即Ψ(p,q)=D(p,q)-G(p,q)
Figure FDA0002943945230000038
tr(·)表示矩阵的迹;
给定上述定义,GLM损失函数的两个约束推导如下:
Figure FDA0002943945230000039
Figure FDA00029439452300000310
其中,α1和α2是两个预设的间隔,[x]+=max{x,0},且:
Figure FDA00029439452300000311
Figure FDA00029439452300000312
Figure FDA00029439452300000313
在上述公式中,SP(c)由与c共享同一父粗粒度类别的细粒度类组成,
Figure FDA00029439452300000314
是SP(c)中距离c最近的细粒度类别训练样本的特征向量集,
Figure FDA00029439452300000315
是SP(c)中距离c最远的细粒度类别训练样本的特征向量集;此外,
Figure FDA00029439452300000316
由与c不共享同一父粗粒度类的细粒度类组成,
Figure FDA00029439452300000317
Figure FDA00029439452300000318
中最接近类别c的训练样本的特征向量集;
使用上述定义,两级标签结构的GLM损失函数定义为:
Figure FDA00029439452300000319
同样的,三级标签结构的GLM损失函数推导如下:
首先,对于每个给定的细粒度类c,除了将其余的细粒度类划分为两个组SP(c)和
Figure FDA0002943945230000041
外,还将它们划分为SG(c)和
Figure FDA0002943945230000042
分别为与细粒度类c具有相同的祖父粗粒度类和不同的祖父粗粒度类;接下来,将第三个约束添加到GLM损失函数中:c和
Figure FDA0002943945230000043
中距离最近的细粒度类之间的距离比c和SG(c)中距离最远的细粒度类之间的距离大于预定义的间隔,用数学表达如下式:
Figure FDA0002943945230000044
其中,α3是预定义的间隔,且
Figure FDA0002943945230000045
Figure FDA0002943945230000046
使用上述定义,三层标签结构的GLM损失函数定义为:
Figure FDA0002943945230000047
其中,
Figure FDA0002943945230000048
Figure FDA0002943945230000049
分别在前面定义;
同理,将GLM损失函数扩展到一般的多层次结构标签的情况;
3)使用训练好的模型计算测试图像分类的标签或测试数据集的分类精度。
CN201810715090.0A 2018-06-29 2018-06-29 基于深度卷积神经网络的细粒度图像分类方法 Active CN109002845B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810715090.0A CN109002845B (zh) 2018-06-29 2018-06-29 基于深度卷积神经网络的细粒度图像分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810715090.0A CN109002845B (zh) 2018-06-29 2018-06-29 基于深度卷积神经网络的细粒度图像分类方法

Publications (2)

Publication Number Publication Date
CN109002845A CN109002845A (zh) 2018-12-14
CN109002845B true CN109002845B (zh) 2021-04-20

Family

ID=64599002

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810715090.0A Active CN109002845B (zh) 2018-06-29 2018-06-29 基于深度卷积神经网络的细粒度图像分类方法

Country Status (1)

Country Link
CN (1) CN109002845B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109685780B (zh) * 2018-12-17 2021-05-11 河海大学 一种基于卷积神经网络的零售商品识别方法
CN109711448A (zh) * 2018-12-19 2019-05-03 华东理工大学 基于判别关键域和深度学习的植物图像细粒度分类方法
CN109784198A (zh) * 2018-12-21 2019-05-21 北方工业大学 机场遥感图像飞机辨识方法及装置
CN110097067B (zh) * 2018-12-25 2022-07-26 西北工业大学 一种基于层进式特征变换的弱监督细粒度图像分类方法
CN109919320B (zh) * 2019-01-23 2022-04-01 西北工业大学 基于语义层次结构的Triplet网络学习方法
CN111626913B (zh) * 2019-02-27 2024-04-05 顺丰科技有限公司 一种图像处理方法、装置及存储介质
CN110059718A (zh) * 2019-03-18 2019-07-26 国网浙江省电力有限公司信息通信分公司 基于多类多注意力机制的细粒度检测方法
CN111860068A (zh) * 2019-04-30 2020-10-30 四川大学 一种基于跨层精简双线性网络的细粒度鸟类识别方法
CN110309856A (zh) * 2019-05-30 2019-10-08 华为技术有限公司 图像分类方法、神经网络的训练方法及装置
CN110232370B (zh) * 2019-06-21 2022-04-26 华北电力大学(保定) 一种改进ssd模型的输电线路航拍图像金具检测方法
CN110363233B (zh) * 2019-06-28 2021-05-28 西安交通大学 一种基于块检测器及特征融合的卷积神经网络的细粒度图像识别方法及系统
CN110334236A (zh) * 2019-07-12 2019-10-15 厦门大学 一种基于施密特正交化约束的细粒度检索方法
CN110458233B (zh) * 2019-08-13 2024-02-13 腾讯云计算(北京)有限责任公司 混合粒度物体识别模型训练及识别方法、装置及存储介质
CN110929099B (zh) * 2019-11-28 2023-07-21 杭州小影创新科技股份有限公司 一种基于多任务学习的短视频帧语义提取方法及系统
CN111062438B (zh) * 2019-12-17 2023-06-16 大连理工大学 基于相关学习的图传播的弱监督细粒度图像分类算法
CN111582304A (zh) * 2020-03-26 2020-08-25 中国平安财产保险股份有限公司 基于深度学习的车辆识别方法、装置及计算机设备
CN111507403A (zh) * 2020-04-17 2020-08-07 腾讯科技(深圳)有限公司 图像分类方法、装置、计算机设备和存储介质
CN111767946B (zh) * 2020-06-19 2024-03-22 北京康夫子健康技术有限公司 医学影像分级模型训练及预测方法、装置、设备及介质
CN111814920B (zh) * 2020-09-04 2021-01-05 中国科学院自动化研究所 基于图网络的多粒度特征学习的图像精细分类方法及系统
CN112487227B (zh) * 2020-11-27 2023-12-26 北京邮电大学 一种深度学习的细粒度图像分类方法及装置
CN112686305A (zh) * 2020-12-29 2021-04-20 深圳龙岗智能视听研究院 一种自监督学习辅助下的半监督学习方法及系统
CN115879514B (zh) * 2022-12-06 2023-08-04 深圳大学 类相关性预测改进方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106570477A (zh) * 2016-10-28 2017-04-19 中国科学院自动化研究所 基于深度学习的车型识别模型构建方法及车型识别方法
CN106919951A (zh) * 2017-01-24 2017-07-04 杭州电子科技大学 一种基于点击与视觉融合的弱监督双线性深度学习方法
CN107480261A (zh) * 2017-08-16 2017-12-15 上海荷福人工智能科技(集团)有限公司 一种基于深度学习细粒度人脸图像快速检索方法
CN107886073A (zh) * 2017-11-10 2018-04-06 重庆邮电大学 一种基于卷积神经网络的细粒度车辆多属性识别方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106570477A (zh) * 2016-10-28 2017-04-19 中国科学院自动化研究所 基于深度学习的车型识别模型构建方法及车型识别方法
CN106919951A (zh) * 2017-01-24 2017-07-04 杭州电子科技大学 一种基于点击与视觉融合的弱监督双线性深度学习方法
CN107480261A (zh) * 2017-08-16 2017-12-15 上海荷福人工智能科技(集团)有限公司 一种基于深度学习细粒度人脸图像快速检索方法
CN107886073A (zh) * 2017-11-10 2018-04-06 重庆邮电大学 一种基于卷积神经网络的细粒度车辆多属性识别方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Multi-Attention Multi-Class Constraint for Fine-grained Image Recognition;Ming Sun等;《https://arxiv.org/pdf/1806.05372.pdf》;20180614;全文 *
损失函数改进之Large-Margin Softmax Loss;AI之路;《https://blog.csdn.net/u014380165/article/details/76864572》;20170808;第1-2页 *
深度区域网络方法的细粒度图像分类;翁雨辰等;《中国图象图形学报》;20171116;第20卷(第11期);第1521-1531页 *
翁雨辰等.深度区域网络方法的细粒度图像分类.《中国图象图形学报》.2017,第20卷(第11期),第1521-1531页. *

Also Published As

Publication number Publication date
CN109002845A (zh) 2018-12-14

Similar Documents

Publication Publication Date Title
CN109002845B (zh) 基于深度卷积神经网络的细粒度图像分类方法
CN108984724B (zh) 利用高维表示提高特定属性情感分类准确率方法
CN110929029A (zh) 一种基于图卷积神经网络的文本分类方法及系统
CN109948149B (zh) 一种文本分类方法及装置
CN107578061A (zh) 基于最小化损失学习的不平衡样本分类方法
CN110674850A (zh) 一种基于注意力机制的图像描述生成方法
CN114048331A (zh) 一种基于改进型kgat模型的知识图谱推荐方法及系统
CN105701507A (zh) 基于动态随机池化卷积神经网络的图像分类方法
Wang et al. Large scale automatic image annotation based on convolutional neural network
Yan et al. A New multi-instance multi-label learning approach for image and text classification
CN107292097A (zh) 基于特征组的特征选择方法、及中医主症选择方法
US20200311527A1 (en) Residual semi-recurrent neural networks
Chen et al. SS-HCNN: Semi-supervised hierarchical convolutional neural network for image classification
CN108764280A (zh) 一种基于症状向量的医学数据处理方法和系统
Wu et al. Optimized deep learning framework for water distribution data-driven modeling
CN108549692A (zh) Spark框架下的稀疏多元逻辑回归模型对文本情感分类的方法
CN106021402A (zh) 用于跨模态检索的多模态多类Boosting框架构建方法及装置
CN111222847A (zh) 基于深度学习与非监督聚类的开源社区开发者推荐方法
CN112086144A (zh) 分子生成方法、装置、电子设备及存储介质
CN113449802A (zh) 基于多粒度互信息最大化的图分类方法及装置
CN113157919A (zh) 语句文本方面级情感分类方法及系统
Zheng et al. Understanding the property of long term memory for the LSTM with attention mechanism
Shi et al. Dynamic barycenter averaging kernel in RBF networks for time series classification
CN104835181A (zh) 一种基于排序融合学习的目标跟踪方法
CN113255366A (zh) 一种基于异构图神经网络的方面级文本情感分析方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant