一种基于知识蒸馏的素描图处理方法及其系统转让专利
申请号 : CN202110908616.9
文献号 : CN113360701B
文献日 : 2021-11-02
发明人 : 徐行 , 田加林 , 沈复民 , 申恒涛
申请人 : 成都考拉悠然科技有限公司
摘要 :
权利要求 :
1.一种基于知识蒸馏的素描图处理方法,其特征在于,包括:获取预训练的由图像分类模型构成的教师模型,并基于所述教师模型提取样本图像的教师特征和教师分类概率;
构建能够基于素描图进行图像分类的学生模型,并基于所述学生模型提取所述样本图像的第一学生特征和第一学生分类概率,并基于所述学生模型提取所述样本图像对应样本素描图的第二学生特征和第二学生分类概率;
基于所述教师特征、所述教师分类概率、所述第一学生特征、所述第一学生分类概率、所述第二学生特征和所述第二学生分类概率计算分类损失和蒸馏损失,并基于所述分类损失和所述蒸馏损失更新所述学生模型;
所述学生模型基于待检测素描图和待查询图像生成零样本跨模态检索结果。
2.根据权利要求1所述的素描图处理方法,其特征在于,基于所述教师特征、所述教师分类概率、所述第一学生特征、所述第一学生分类概率、所述第二学生特征和所述第二学生分类概率计算分类损失和蒸馏损失,包括:基于所述教师特征、所述教师分类概率、所述第一学生特征和所述第一学生分类概率计算所述样本图像的第一分类损失和关系蒸馏损失;
基于所述第二学生分类概率计算所述样本素描图的第二分类损失;
基于第一学生特征和所述第二学生特征的相似性计算所述样本素描图的跨模态自蒸馏损失。
3.根据权利要求2所述的素描图处理方法,其特征在于,计算所述样本图像的第一分类损失,包括:
基于所述教师分类概率和所述第一学生分类概率计算所述第一分类损失。
4.根据权利要求3所述的素描图处理方法,其特征在于,计算所述样本图像的关系蒸馏损失,包括:
计算多个所述教师特征之间的第一相似关系;
计算多个所述第一学生特征之间的第二相似关系;
计算所述第一相似关系和所述第二相似关系的第一差异;
计算所述教师分类概率和所述第一学生分类概率的第二差异;
基于所述第一差异和所述第二差异生成所述关系蒸馏损失。
5.根据权利要求4所述的素描图处理方法,其特征在于,计算所述样本素描图的跨模态自蒸馏损失,包括:
计算多组所述第一学生特征与所述第二学生特征之间的相似度数据;
基于所述相似度数据按照滑动平均的方式加权所述第一学生分类概率;
基于加权后的所述第一学生分类概率与所述第二学生分类概率生成所述跨模态自蒸馏损失。
6.根据权利要求5所述的素描图处理方法,其特征在于,所述第一相似关系和所述第二相似关系均包括对比相似关系和局部相似关系。
7.根据权利要求1所述的素描图处理方法,其特征在于,所述素描图处理方法还包括:获取人工绘制的所述样本素描图及成像单元采集的与所述样本素描图对应的所述样本图像构成训练数据集。
8.根据权利要求1所述的素描图处理方法,其特征在于,所述学生模型基于待检测素描图和待查询图像生成零样本跨模态检索结果,包括:所述学生模型基于待检测素描图提取待检测素描图特征;
所述学生模型基于待查询图像提取待查询图像特征;
计算所述待检测素描图特征与所述待查询图像特征的余弦相似度并进行排序后生成所述零样本跨模态检索结果。
9.一种基于知识蒸馏的素描图处理系统,其特征在于,包括:成像单元,用于采集多个样本图像;
数据存储单元,用于存储多个所述样本图像及其对应的样本素描图;
神经网络单元,包括预训练的由图像分类模型构成的教师模型和能够基于素描图进行图像分类的学生模型;
数据处理单元,通过所述教师模型提取样本图像的教师特征和教师分类概率和基于所述学生模型提取所述样本图像的第一学生特征和第一学生分类概率的同时,基于所述学生模型提取所述样本图像对应样本素描图的第二学生特征和第二学生分类概率,并基于所述教师特征、所述教师分类概率、所述第一学生特征、所述第一学生分类概率、所述第二学生特征和所述第二学生分类概率计算分类损失和蒸馏损失后,基于所述分类损失和所述蒸馏损失更新所述学生模型。
10.根据权利要求9所述的素描图处理系统,其特征在于,所述数据处理单元基于所述教师特征、所述教师分类概率、所述第一学生特征和所述第一学生分类概率计算所述样本图像的第一分类损失和关系蒸馏损失后,基于所述第二学生分类概率计算所述样本素描图的第二分类损失,并基于第一学生特征和所述第二学生特征的相似性计算所述样本素描图的跨模态自蒸馏损失。
说明书 :
一种基于知识蒸馏的素描图处理方法及其系统
技术领域
背景技术
检索成为了机器学习技术领域的研究热点。
询的图像所包含的类别未包含在训练模型时的类别中的情况。因此,这些方法难以应用于
检索训练时未包括的类别的图像,检索结果较差。
发明内容
像的教师特征和教师分类概率;构建能够基于素描图进行图像分类的学生模型,并基于所
述学生模型提取所述样本图像的第一学生特征和第一学生分类概率,并基于所述学生模型
提取所述样本图像对应样本素描图的第二学生特征和第二学生分类概率;基于所述教师特
征、所述教师分类概率、所述第一学生特征、所述第一学生分类概率、所述第二学生特征和
所述第二学生分类概率计算分类损失和蒸馏损失,并基于所述分类损失和所述蒸馏损失更
新所述学生模型;所述学生模型基于待检测素描图和待查询图像生成零样本跨模态检索结
果。
基于所述教师特征、所述教师分类概率、所述第一学生特征和所述第一学生分类概率计算
所述样本图像的第一分类损失和关系蒸馏损失;基于所述第二学生分类概率计算所述样本
素描图的第二分类损失;基于第一学生特征和所述第二学生特征的相似性计算所述样本素
描图的跨模态自蒸馏损失。
和所述第二相似关系的第一差异;计算所述教师分类概率和所述第一学生分类概率的第二
差异;基于所述第一差异和所述第二差异生成所述关系蒸馏损失。
权所述第一学生分类概率;基于加权后的所述第一学生分类概率与所述第二学生分类概率
生成所述跨模态自蒸馏损失。
询图像提取待查询图像特征;计算所述待检测素描图特征与所述待查询图像特征的余弦相
似度并进行排序后生成所述零样本跨模态检索结果。
经网络单元,包括预训练的由图像分类模型构成的教师模型和能够基于素描图进行图像分
类的学生模型;数据处理单元,通过所述教师模型提取样本图像的教师特征和教师分类概
率和基于所述学生模型提取所述样本图像的第一学生特征和第一学生分类概率的同时,基
于所述学生模型提取所述样本图像对应样本素描图的第二学生特征和第二学生分类概率,
并基于所述教师特征、所述教师分类概率、所述第一学生特征、所述第一学生分类概率、所
述第二学生特征和所述第二学生分类概率计算分类损失和蒸馏损失后,基于所述分类损失
和所述蒸馏损失更新所述学生模型。
所述第二学生分类概率计算所述样本素描图的第二分类损失,并基于第一学生特征和所述
第二学生特征的相似性计算所述样本素描图的跨模态自蒸馏损失。
征、第一学生分类概率、第二学生特征和第二学生分类概率,并通过计算分类损失、关系蒸
馏损失和跨模态自蒸馏损失,有效提升学生模型的分类能力和泛化性,消除不同模态之间
的模态差异问题,从而实现素描图的零样本跨模态检索,解决了现有的素描图检索方法存
在的准确率低下的问题。
附图说明
具体实施方式
本素描图对应的所述样本图像构成训练数据集;基于所述训练数据集训练所述教师模型;
将预训练好的SE‑ResNet‑50进行扩展,即,在SE‑ResNet‑50的Squeeze‑and‑Excitation
(SE)模块中增加一个输入维度,并称为CSE‑ResNet‑50。
对应样本素描图的第二学生特征和第二学生分类概率。
第一层全连接层输出学生网络的特征嵌入,第二层全连接层作为分类器输出分类概率向
量,同时额外训练一个1000维的线性分类器。
的类别空间。并且,教师模型监督学生模型学习的过程中,仅由学生模型模仿教师模型的关
系推理能力。因此,教师网络的参数是固定的,在学生网络的训练过程中保持独立性;学生
网络能够根据自身的任务和教师的监督完成自身参数的更新,参数是动态变化的。
述分类损失和所述蒸馏损失更新所述学生模型。
基于所述第二学生分类概率计算所述样本素描图的第二分类损失;S33:基于第一学生特征
和所述第二学生特征的相似性计算所述样本素描图的跨模态自蒸馏损失。
是 的参数,条件概率 由计算得到,教师模型定义为 ,学生模型定义为 , 为样本
的分类损失的均值,图像经过教师网络后得到的嵌入 ,图像经过学生网络后
得到的嵌入 ,其中, 表示任意一张图像。
关系和所述第二相似关系的第一差异;计算所述教师分类概率和所述第一学生分类概率的
第二差异;基于所述第一差异和所述第二差异生成所述关系蒸馏损失。其中,所述第一相似
关系和所述第二相似关系均包括对比相似关系和局部相似关系。
这种对比关系归一化为概率分布,再进行概率分布的匹配。具体的目标计算公式可以定义
为: , ,
衡量两个特征的相似性,并且 度量余弦距离,定义如下: 。
其中,为了避免自我比较影响对比关系的强度,对比关系的计算中用 和 排除自我
比较的情况。
模型进行分布匹配。在正式训练前,使用预训练的深度卷积网络提取所有图像的特征嵌入,
根据类别计算得到类中心 ,其中 是对应于类别的图像总数目。所有
类中心所组成的矩阵记为 。由于一个批度不可能包含所有的类别,因此假设
是一个二值掩码,长度为所有类别的数目 ,则 是由部
分类中心所组成的矩阵, 随每个批度的数据变化而变化。对于教师网络而言, 可以作
为它的一个分类器。因此,局部关系匹配可以定义为如下:
其中, 是基于教师
模型的嵌入 和类中心矩阵 的距离的分类函数,是步骤S1中所述的第二层全连接
层,用于将学生网络的嵌入 分类至具体训练类别中, 为 归一化的概率分
布,假设 的计算结果为 ,则 的所有元素之和为1。 是经过掩码
筛选后的输出向量。其中, 和 的维度是不同的,因为两个分类器所面临的类别空间是
不同的,即 用于将学生网络的嵌入分类至具体数据集所包含的类别空间,而 是分类至
预训练数据集ImageNet所包含的类别空间。
式加权所述第一学生分类概率;基于加权后的所述第一学生分类概率与所述第二学生分类
概率生成所述跨模态自蒸馏损失。
列数分别是素描图和图像的样本数量, 为样本素描图经过学生网络后得到的嵌入,
的每一行对应于一个样本素描图,每一列j对应于一个图像, 表示两者的相似度。 用
于对概率均值 进行加权,但这些相似度都未进行缩放的情况下,它们相加的和不等于1,
因此需要对每一行都进行归一化,得到 ,使其全部行的分布概率的和为1。因此,对 的行
归一化,使得满足以下两个条件: 且 。分别假设
和 为素描图和图像的分类概率矩阵,计
算公式如下: ,其中 为蒸馏的温度超参。根据相似度矩阵,
以滑动平均的方式加权素描图和图像的分类概率: , 为
加权系数,最终得到 的即为素描图的目标分布,同样依据交叉熵衡量 和 的分布差异
,并通过反向传播减小差异。
失和所述第二分类损失的损失函数;基于所述知识蒸馏过程的整体损失函数和所述分类的
损失函数生成学生模型的整体优化目标函数 ,其中, 为知识
蒸馏过程的整体损失函数的权重, 为知识蒸馏过程的整体损失函数, 为所述第
一分类损失和所述第二分类损失的损失函数;生成所述整体优化目标函数后,通过随机梯
度下降算法,减小目标函数的值,并更新学生网络的参数。训练后,学生模型能够成功模仿
教师模型在对比相似关系和局部相似关系方面的图像分类能力的同时,能够通过跨模态自
蒸馏学习到素描图的分类能力。
组单一模态数据、多组多模态数据)实验并推理后发现,其原因在于:零样本学习方法利用
各种辅助信息学习视觉空间和语义空间的映射关系,或者学习一个联合嵌入空间,又或者
学习一个条件生成网络以将零样本学习问题转变为传统的监督分类问题。但是,零样本学
习方法仅关注于单一模态的数据以及基础的分类问题,难以处理多模态数据和模态差异问
题,因此在多模态应用场景下表现较差。为解决零样本学习方法存在的难以处理多模态数
据和模态差异问题,发明人通过结合素描图的图像检索和零样本学习的特点,在多模态应
用场景下检索不可见类的嵌入。但是,该方法构建的系统仍存在素描图和图像模态之间的
异质性差异问题以及可见类和不可见类之间的语义不一致问题,并且仍需要预定义准确的
类名和额外的提取工作,使得系统从文本模型中提取的词向量和通过层次模型提取的词相
似度,来桥接可见和不可见的类。因此,该方法在预定义类名不够准确时仍存在识别准确率
较低的问题,并且会导致后端数据处理单元存在较大的算力负荷。最终,发明人基于知识蒸
馏处理两种不同模态的数据,一方面通过将教师模型针对图像模态的分类能力迁移至学生
模型,另一方面通过跨模态自蒸馏将学生模型针对图像模态的分类能力再次迁移到素描图
模态上,提升学生模型联合处理两种不同数据的能力,并最终提升学生模型在零样本跨模
态任务上的检索精度。并且,学生模型的训练和实施都无需额外的语义特征参与,降低模型
的计算和存储需求,降低了后端数据处理单元算力负荷的同时,能够提取泛化而具有判别
性的特征。
集分别为:Sketchy,TU‑Berlin和QuickDraw。这三个数据集都包含素描图,图像和类别标
签。具体的,Sketchy由125个类,75471张素描图和73002张图像构成,其中,Sketchy的图像
精剪过,并且素描图具有细腻度的细节;TU‑Berlin由250个类,20000张素描图和204489张
图像构成,素描图和图像的数量严重不平衡,并且素描图的抽象程度比Sketchy高;
QuickDraw数据量非常大,包含110类,330000张素描图和204000张图像,素描图高度抽象
化。在数据集的划分上,为了和现有技术进行公平的比较,本实施例保持相同的设置。
Sketchy有两种划分方法:一种随机选择25个类作为测试集,另一种选择固定的21个类作为
测试集(Sketchy split 2)。TU‑Berlin和QuickDraw都选择30个类作为测试集。实验中,本
实施例采用召全率(Prec)和平均召全率的均值(mAP)作为评估的标准,Prec@K和mAP@K表示
检索的前K个结果计算得到的召全率和平均召全率的均值。
嵌入的方法,观察图2和图3的结果可知,本方法远远超过对比的方法,以mAP@all指标为例,
本方法相比于最新对比算法(SAKE w/o s),在Sketchy超过0.063的mAP,在TU‑Berlin上超
过0.024,在QuickDraw上超过0.038。以其他指标来看,RPKD的提升更大。最后,将RPKD直接
和使用语义嵌入的方法比较。值得注意的是,使用语义嵌入通常来说会提升零样本素描图‑
图像检索的精度,但也提升了模型训练的资源需求和计算需求。尽管直接比较对RPKD不公
平,但RPKD在三个数据集上,依旧超越了绝大部分使用语义嵌入的方法,仅仅只在Sketchy
上落后于PDFD方法。尽管如此,本方法在TU‑Berlin上依旧以较大幅度超越了PDFD。
本素描图;神经网络单元,包括预训练的由图像分类模型构成的教师模型和能够基于素描
图进行图像分类的学生模型;数据处理单元,通过所述教师模型提取样本图像的教师特征
和教师分类概率和基于所述学生模型提取所述样本图像的第一学生特征和第一学生分类
概率的同时,基于所述学生模型提取所述样本图像对应样本素描图的第二学生特征和第二
学生分类概率,并基于所述教师特征、所述教师分类概率、所述第一学生特征、所述第一学
生分类概率、所述第二学生特征和所述第二学生分类概率计算分类损失和蒸馏损失后,基
于所述分类损失和所述蒸馏损失更新所述学生模型。
于所述第二学生分类概率计算所述样本素描图的第二分类损失,并基于第一学生特征和所
述第二学生特征的相似性计算所述样本素描图的跨模态自蒸馏损失。
其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的
装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部
分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提
下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护
范围内。
软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些
功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业
技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应
认为超出本发明的范围。
储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD‑ROM、或技术
领域内所公知的任意其它形式的存储介质中。