本发明属于计算机视觉领域,特别地涉及一种基于组合式原型网络的小样本图像分类方法。该方法基于人类能够通过已经学习到的概念或组件来帮助他们认知新类这一事实,利用基类数据集在预训练阶段为每一个人工标注的属性初步学习一个可迁移的组件原型,并在元训练阶段进一步更新这些组件原型,随后在元测试阶段复用这些组件原型来为新类构建组合式原型,并使用一个可学习的权重生成器对组合式原型和视觉原型进行自适应融合,从而有效提升小样本图像分类的准确率。
背景技术:
1、小样本学习旨在从每类包含充足样本的基类数据集中学习先验知识,并借助这些学习到的知识,使用少量的有标注样本对来自新类的无标注样本进行分类。元学习已经成为小样本学习领域一种流行的学习范式,基于元学习的方法旨在从一系列的学习任务中提取得到可迁移的元知识,以便模型能够利用这些学到的元知识快速适应到新任务。然而,最近的研究表明在预训练阶段进行全局分类能够获得具有较强迁移性的特征提取器,仅通过复用所获得的特征提取器便能实现与现有的许多元学习方法相当甚至更好的性能。
2、现有的小样本图像分类方法大致分为三类:1.基于优化的方法,这类方法旨在学习到较好的参数初始值或者一种优化算法,使得对于不同的新任务,模型只需要少数几步参数更新就能快速收敛。2.基于度量的方法,这类方法旨在学习一个良好的嵌入函数,以便使用合适的距离度量准则对来自新类别的待分类样本进行正确分类。3.基于语义的方法,这类方法不再仅仅依靠图片所提供的视觉信息,而是引入额外的语义信息来进行多模态学习,例如属性分数向量、类别或属性的词向量、部位的位置坐标。
3、本发明提出的方法既属于基于度量的,也属于基于语义的方法。现有的方法存在一定的局限性,只复用预训练得到的特征提取器,而没有显式地考虑细粒度的属性,这样的做法限制了特征重用程度。我们注意到,人类可以从过去的学习任务中总结一些可重用的概念或组件,然后将这些概念或组件与新的学习任务联系起来,以帮助他们更好地学习新事物。基于这一观察,本发明提出的方法从基类中学习一些细粒度和可迁移的组件原型,然后重用学到的组件原型来帮助解决从新类数据集中采样出的小样本图像分类任务。
4、本发明提出的方法复用学习到的组件原型,来为新类构建组合式原型,此外,通过自适应融合组合式原型和视觉原型,结合了语义和视觉两种模态的信息,从而有效提升小样本图像分类的准确率。实验表明,该方法在性能上超越了目前最好的方法。
技术实现思路
1、本发明的目的在于提出一种基于组合式原型网络的小样本图像分类方法,技术方案分为以下步骤:
2、步骤1:预训练阶段,我们利用基类数据集来为预定义的属性集合中的每一个属性学习一个组件原型。具体地,我们利用可学习的组件原型和类属性分数向量,计算得到每一个基类的组合式原型,随后使用余弦相似度计算样本属于某一类的概率,并通过优化交叉熵损失来获得学习到的组件原型。
3、步骤2:元训练阶段,从基类数据集中采样一系列n-way k-shot任务模拟元测试阶段的情景,使用一个自适应的权重生成器用来融合组合式原型和视觉原型。通过使用融合后的原型来对测试集中的样本进行分类并优化分类损失,我们可以得到学习好的权重生成器,此外,步骤1中得到的组件原型将被进一步优化。
4、步骤3:元测试阶段,通过使用步骤2得到的组件原型和自适应的权重生成器,我们可以为支撑集中的每一个新类都计算得到一个组合式原型,并对获得的组合式原型和视觉原型进行自适应融合,随后使用融合后的原型对测试集中的样本进行分类。
5、根据本发明提出的一种基于组合式原型网络的小样本图像分类方法,具有以下优势:
6、(1)通过在基类数据集上学习细粒度的、可迁移的组件原型,并在新类数据集采样出的学习任务中重用这些学到的组件原型来构建组合式原型,进一步探索了组合式表征、并有效提升了小样本分类方法的特征可重用性。
7、(2)在元训练阶段学习了一个自适应的权重生成器,从而能够更好地结合来自于组合式原型和视觉原型的两种模态的信息,进一步提升分类性能。
1.一种基于组合式原型网络的小样本图像分类方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,步骤1中,我们在预训练阶段为预定义的属性集合中的每一个属性都设置一个组件原型,通过使用组件原型构建的组合式原型对基类数据集进行全局分类,从而进行组件原型的初步学习。
3.根据权利要求1所述的方法,其特征在于,步骤1包含以下子步骤:
4.根据权利要求1所述的方法,其特征在于,步骤2中,我们在元训练阶段,进行自适应的权重生成器的学习以及组件原型的进一步学习。
5.根据权利要求1所述的方法,其特征在于,步骤2包含以下子步骤:
6.根据权利要求1所述的方法,其特征在于,步骤3中,我们在元测试阶段,使用学习到的组件原型和权重生成器来进行元测试。
7.根据权利要求1所述的方法,其特征在于,步骤3包含以下子步骤: