本发明属于细粒度图像分类技术领域,更为具体地讲,涉及一种基于语义特征增强的细粒度图像分类方法。
背景技术:
细粒度图像分类问题是对大类下的子类进行识别。细粒度图像分类任务相对通用图像(general/genericimages)分类任务的区别和难点在于其图像所属类别的粒度更为精细。通用图像的分类任务诉求是将“袋鼠”和“狗”这两个物体大类分开,无论从样貌、形态等方面,二者还是很容易被区分的;而细粒度图像的分类任务则要求对“狗”该类类别下细粒度的子类,即分别为“哈士奇”和“爱斯基摩犬”的图像分辨开来。正因同类别物种的不同子类往往仅在耳朵形状、毛色等细微处存在差异,可谓“差之毫厘,谬以千里”。不止对计算机,对普通人来说,细粒度图像任务的难度和挑战无疑也更为巨大。
细粒度图像分类无论在工业界还是学术界都有着广泛的研究需求与应用场景。但是,由于分类的粒度很小,细粒度图像分类非常困难,在某些类别上甚至专家都难以区分,导致收集和整理高质量的标注数据集伴随着高额的成本。现有的方法都依赖于海量高质量的标注数据,高额数据成本使得细粒度图像分类任务在众多领域无法得到应用。
技术实现要素:
本发明的目的在于克服现有技术的不足,提供一种基于语义特征增强的细粒度图像分类方法,不依赖于大规模高质量标注数据集,避免高额数据成本。
为实现上述发明目的,本发明基于语义特征增强的细粒度图像分类方法,其特征在于,包括以下步骤:
(1)、构建图像特征提取模型(imageencoder)
采用残差网络(residualnetwork)(图像特征提取模型)提取图像的特征,得到特征图x,特征图x由图像各个区域的维度为c的图像特征xij构成,其中,i表示宽度方向的位置,i=1,2,…,w,j表示高度方向的位置,j=1,2,…,h;w、h分别为特征图x的宽度和高度;
(2)、构建文本特征提取模型(textencoder)
采用卷积神经网络(cnn)作为文本特征提取模型提取文本的特征,得到维度为c的文本特征t;
(3)、构建共享分类器(classifier)
构建fbp&gmp(fbp,factorizedbilinearpooling,因式双线性池化;gmp,globalmaxpooling,全局最大池化)网络、fbp网络以及一个共享fc(全连接层)组成构建共享分类器;
(4)、训练细粒度图像分类模型
图像特征提取模型、文本特征提取模型以及共享分类器构成细粒度图像分类模型;
构建训练数据集,其每条数据包括一副图像、对应的对图像进行描述的文本以及图像类别标签;
4.1)、图像、文本特征提取
在训练过程中,从训练数据集中取出一条数据,将图像及其对应的对图像进行描述的文本,分别送入图像特征提取模型以及文本特征提取模型,得到图像特征xij以及文本特征t;
4.2)、门控语义特征增强
对于图像特征xij,门控语义特征增强为新的图像特征x′ij:
x′ij=sij·xij (1-sij)·nij
其中,sij为文本特征t与区域ij的相似度,nij为维度为c的高斯白噪声;
新的图像特征x′ij构成特征图x′;
4.3)、语义边界特征增强
对于特征图x′,输入到共享分类器的fbp&gmp网络中进行特征映射,得到维度为c′的图像特征fi;
对于文本特征t,输入到共享分类器的fbp网络中进行特征映射,得到维度为c′的文本特征ft;
对于图像特征fi,语义边界特征增强为新的图像特征fi':
其中,r表示采样半径,α表示(0,1)区间的任意实数,β表示任意方向的维度为c′的单位向量;
4.4)、图像、文本特征分类
图像特征fi'经过共享全连接层映射为图像类别;
文本特征ft经过共享全连接层映射为图像类别;
4.5)、更新细粒度图像分类模型网络参数
以输入图像的图像类别标签与图像特征fi'映射输出的图像类别、文本特征ft映射输出的图像类别分别建立损失函数,然后更新细粒度图像分类模型网络参数;
不断从训练数据集中取出数据,重复步骤4.1)~4.4),直到所有数据提取完毕,此时,细粒度图像分类模型训练完毕;
(5)、图像分类
将一张未知类别的图像,输入到图像特征提取模型,得到特征图x,然后送入fbp&gmp网络中得到图像特征fi,图像特征fi经过共享全连接层映射为图像类别。
本发明的目的是这样实现的。
本发明基于语义特征增强的细粒度图像分类方法,
传统图像分类模型包括两个重要组成部分:图像特征提取模型和特征分类模型。本发明基于语义特征增强的细粒度图像分类方法,创造性地将文本引入图像分类模型训练过程,通过让文本特征和图像特征共享分类器的方式提升模型对语义信息的决策能力。同时,在训练过程中,进一步地将两种门控语义特征增强、语义边界特征增强应用到特征提取阶段和特征分类阶段。这样利用文本的语义信息对图像特征进行约束,从而提升图像分类模型对小样本数据的泛化能力,不再依赖于大规模高质量标注数据集,避免高额数据成本。
附图说明
图1是本发明基于语义特征增强的细粒度图像分类方法一种具体实施方式流程图;
图2是本发明基于语义特征增强的细粒度图像分类方法一种具体实施方式的原理示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
图1是本发明基于语义特征增强的细粒度图像分类方法一种具体实施方式流程图。
在本实施例中,如图1所示,本发明基于语义特征增强的细粒度图像分类方法,包括以下步骤:
步骤s1:构建图像特征提取模型(imageencoder)
采用残差网络(residualnetwork)(图像特征提取模型)提取图像的特征,得到特征图x,特征图x由图像各个区域的维度为c的图像特征xij构成,其中,i表示宽度方向的位置,i=1,2,…,w,j表示高度方向的位置,j=1,2,…,h;w、h分别为特征图x的宽度和高度。
传统图像分类模型包括两个重要组成部分:图像特征提取模型和特征分类模型。本发明也包括图像特征提取模型,在本实施例中,如图2所示,采用resnet50的残差网络作为图像特征提取模型。
步骤s2:构建文本特征提取模型(textencoder)
采用卷积神经网络(cnn)作为文本特征提取模型提取文本的特征,得到维度为c的文本特征t。
在本发明中,创造性地将文本引入图像分类模型训练过程。其中,在特征提取阶段,增加了文本特征提取模型(textencoder)。
步骤s3:构建共享分类器(classifier)
构建fbp&gmp网络、fbp网络以及一个共享fc(全连接层)组成构建共享分类器。
步骤s4:训练细粒度图像分类模型
图像特征提取模型、文本特征提取模型以及共享分类器构成细粒度图像分类模型。
构建训练数据集,其每条数据包括一副图像、对应的对图像进行描述的文本以及图像类别标签。
步骤s4.1:图像、文本特征提取
在训练过程中,从训练数据集中取出一条数据,将图像及其对应的对图像进行描述的文本,分别送入图像特征提取模型以及文本特征提取模型,得到图像特征xij以及文本特征t。
步骤s4.2:门控语义特征增强
不同于传统图像分类任务,细粒度图像分类任务更依赖于图像的局部特征,这需要图像特征提取模型(imageencoder)更专注于提供分类线索的区域而忽略其他区域。本发明通过建立图像局部特征与语义的文本特征的相关性,准确定位能够提供分类线索的图像区域。具体地,在训练过程中,计算图像的各个区域与语义的文本特征的相似度,保留相似度高的包含分类线索的区域,同时对其它不包含分类线索的区域施加高斯白噪声,从而在特征层面进行增强。在数据的每一次训练过程中,通过增加不同的高斯白噪音,隐式的增加数据量,以应对数据稀少的问题。同时,迫使图像特征提取模型更专注于能够提供分类线索的区域而忽略其他区域。
具体地,对于图像特征xij,门控语义特征增强为新的图像特征x′ij:
x′ij=sij·xij (1-sij)·nij
其中,sij为文本特征t与区域ij的相似度,nij为维度为c的高斯白噪声。
新的图像特征x′ij构成特征图x′。
步骤s4.3:语义边界特征增强
得益于分类器共享方法,图像特征与其对应的文本特征将具有高度的空间相似性。根据语义空间连续性假设,即语义特征在空间中具有连续的分布,具有相同类别的语义特征在空间中具有相似的分布。因此,在图像特征和其对应的文本特征共同构成的封闭语义空间内的任意一点都表示相同的类别。本发明基于这一假设,在训练阶段,通过在该区域内采样,进一步增加数据规模,从而实现特征层面的数据增强。使得少量的训练数据也可以训练得到具备泛化能力的分类模型。
对于特征图x′,输入到共享分类器的fbp&gmp网络中进行特征映射,得到维度为c′的图像特征fi。
对于文本特征t,输入到共享分类器的fbp网络中进行特征映射,得到维度为c′的文本特征ft。
对于图像特征fi,语义边界特征增强为新的图像特征fi':
其中,r表示采样半径,α表示(0,1)区间的任意实数,β表示任意方向的维度为c′的单位向量。
步骤s4.4:图像、文本特征分类
图像特征fi'经过共享全连接层映射为图像类别,文本特征ft经过共享全连接层映射为图像类别。
步骤s4.5:更新细粒度图像分类模型网络参数
以输入图像的图像类别标签与图像特征fi'映射输出的图像类别、文本特征ft映射输出的图像类别分别建立损失函数,然后更新细粒度图像分类模型网络参数。
受限于数据规模,深度神经网络在训练过程中很容易得到对于训练数据的过拟合模型,从而失去了对真实数据的泛化能力。本发明通过分类器共享的方式(构建共享分类器),在不改变传统图像分类模型结构的前提下,将文本数据引入细粒度图像分类模型的训练。具体的,在训练过程中,图像和其对应的文本分别被送入图像特征提取模型和文本特征提取模型中,在特征分类阶段,两组特征即图片特征、文本特征被分别送入同一个分类模型即全连接层,并得到相同的分类结果。通过共享分类器的方式,使得分类模型同时具备分类文本和图像的能力,从而训练特征提取器提取得到与语义相关的特征,忽略会导致过拟合的无用特征。
不断从训练数据集中取出数据,重复步骤4.1)~4.4),直到所有数据提取完毕,此时,细粒度图像分类模型训练完毕;
步骤s5:图像分类
将一张未知类别的图像,输入到图像特征提取模型,得到特征图x,然后送入fbp&gmp网络中得到图像特征fi,图像特征fi经过共享全连接层映射为图像类别。
在本实施例中,对于一张未知类别的图像,如果还包括图像描述对应的文本,则进一步将文本输入到文本特征提取模型,得到文本特征t,文本特征t输入到共享分类器的fbp网络中进行特征映射,得到维度为c′的文本特征ft;然后,结合文本特征t对特征图x进行门控语义特征增强,得到特征图x′,特征图x′送入fbp&gmp网络中得到图像特征fi;然后,结合文本特征ft对图像特征fi进行语义边界特征增强,得到新的图像特征fi';最后,图像特征fi'送入共享全连接层映射为图像类别。
综上所述,本发明在不改变图像分类模型结构,通过在训练过程中引入文本特征,并通过特征增强方法和分类器共享,减小了图像分类模型对于小规模数据的过拟合现象,提升了图像分类模型的泛化能力。
本发明在两个细粒度图像分类数据集oxfordflowers-102和cub-bird-200上做了实验,。其中,oxfordflowers-102,内含8,189张图片,包括102种鲜花类别。cub-bird-200,内含11,788张图片,包括200种鸟类类别。为了模拟小样本数据的情况,在训练过程中,每个类别的数据,只采用其中的1张或5张进行训练,其余均用于测试。
在实验中,图像特征提取模型采用resnet50[3],文本特征提取模型采用单层lstm,最终分类器采用fbp&gmp网络和全连接层。
表1
从表1可以看出,通过文本数据的引入,本发明能够大幅度提升图像分类模型在小样本数据下的分类精度,大幅度降低了深度学习在小众领域的应用成本。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
1.一种基于语义特征增强的细粒度图像分类方法,其特征在于,包括以下步骤:
(1)、构建图像特征提取模型(imageencoder)
采用残差网络(residualnetwork)(图像特征提取模型)提取图像的特征,得到特征图x,特征图x由图像各个区域的维度为c的图像特征xij构成,其中,i表示宽度方向的位置,i=1,2,…,w,j表示高度方向的位置,j=1,2,…,h;w、h分别为特征图x的宽度和高度;
(2)、构建文本特征提取模型(textencoder)
采用卷积神经网络(cnn)作为文本特征提取模型提取文本的特征,得到维度为c的文本特征t;
(3)、构建共享分类器(classifier)
构建fbp&gmp网络、fbp网络以及一个共享fc(全连接层)组成构建共享分类器;
(4)、训练细粒度图像分类模型
图像特征提取模型、文本特征提取模型以及共享分类器构成细粒度图像分类模型;
构建训练数据集,其每条数据包括一副图像、对应的对图像进行描述的文本以及图像类别标签;
4.1)、图像、文本特征提取
在训练过程中,从训练数据集中取出一条数据,将图像及其对应的对图像进行描述的文本,分别送入图像特征提取模型以及文本特征提取模型,得到图像特征xij以及文本特征t;
4.2)、门控语义特征增强
对于图像特征xij,门控语义特征增强为新的图像特征x′ij:
x′ij=sij·xij (1-sij)·nij
其中,sij为文本特征t与区域ij的相似度,nij为维度为c的高斯白噪声;
新的图像特征x′ij构成特征图x′;
4.3)、语义边界特征增强
对于特征图x′,输入到共享分类器的fbp&gmp网络中进行特征映射,得到维度为c′的图像特征fi;
对于文本特征t,输入到共享分类器的fbp网络中进行特征映射,得到维度为c′的文本特征ft;
对于图像特征fi,语义边界特征增强为新的图像特征fi':
其中,r表示采样半径,α表示(0,1)区间的任意实数,β表示任意方向的维度为c′的单位向量;
4.4)、图像、文本特征分类
图像特征fi'经过共享全连接层映射为图像类别;
文本特征ft经过共享全连接层映射为图像类别;
4.5)、更新细粒度图像分类模型网络参数
以输入图像的图像类别标签与图像特征fi'映射输出的图像类别、文本特征ft映射输出的图像类别分别建立损失函数,然后更新细粒度图像分类模型网络参数;
不断从训练数据集中取出数据,重复步骤4.1)~4.4),直到所有数据提取完毕,此时,细粒度图像分类模型训练完毕;
(5)、图像分类
将一张未知类别的图像,输入到图像特征提取模型,得到特征图x,然后送入fbp&gmp网络中得到图像特征fi,图像特征fi经过共享全连接层映射为图像类别。
2.根据权利要求1所示的基于语义特征增强的细粒度图像分类方法,其特征在于,在步骤(5)中,对于一张未知类别的图像,如果还包括图像描述对应的文本,则进一步将文本输入到文本特征提取模型,得到文本特征t,文本特征t输入到共享分类器的fbp网络中进行特征映射,得到维度为c′的文本特征ft;然后,结合文本特征t对特征图x进行门控语义特征增强,得到特征图x′,特征图x′送入fbp&gmp网络中得到图像特征fi;然后,结合文本特征ft对图像特征fi进行语义边界特征增强,得到新的图像特征fi';最后,图像特征fi'送入共享全连接层映射为图像类别。
技术总结