CN115546840A - 基于半监督知识蒸馏的行人重识别模型训练方法及装置 - Google Patents
基于半监督知识蒸馏的行人重识别模型训练方法及装置 Download PDFInfo
- Publication number
- CN115546840A CN115546840A CN202211302270.9A CN202211302270A CN115546840A CN 115546840 A CN115546840 A CN 115546840A CN 202211302270 A CN202211302270 A CN 202211302270A CN 115546840 A CN115546840 A CN 115546840A
- Authority
- CN
- China
- Prior art keywords
- loss function
- model
- student
- teacher
- feature
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
- G06V10/7753—Incorporation of unlabelled data, e.g. multiple instance learning [MIL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/778—Active pattern-learning, e.g. online learning of image or video features
- G06V10/7784—Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors
- G06V10/7788—Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors the supervisor being a human, e.g. interactive learning with a human teacher
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本申请提供一种基于半监督知识蒸馏的行人重识别模型训练方法及装置。该方法包括:分别对教师模型和学生模型进行预训练,将有标签数据输入到训练后的教师模型和学生模型中,分别利用教师模型的预测值以及真实标签去监督学生模型的预测值,得到第一损失函数和第二损失函数;利用教师模型的预测值去监督学生模型中的无标签数据分类器输出的预测值,得到第三损失函数;利用对齐后的学生特征提取网络的特征图与教师特征提取网络的特征图计算得到第四损失函数;依据第一损失函数、第二损失函数、第三损失函数及第四损失函数,计算总损失函数;利用总损失函数对行人重识别模型进行更新和训练。本申请提高了行人重识别模型的泛化能力、精度以及识别效果。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于半监督知识蒸馏的行人重识别模型训练方法及装置。
背景技术
行人检测是利用计算机视觉技术识别图像或者视频流中是否存在行人并给予精确定位。该技术应用领域广泛,可与行人跟踪、行人重识别等技术结合,能够很好地应用于人工智能系统、车辆辅助驾驶系统、智能视频监控、人体行为分析、智能交通等现实场景领域。
目前行人重识别领域,在特定训练场景下已经取得非常高的性能,但由于不同场景之间的数据分布差异,导致模型在新的测试场景下性能明显下降。目前常用的无监督行人重识方法多数是基于伪标签的方法,主要思想是为无标记的数据产生高质量的伪标记来训练和更新神经网络,该方法思路简单清晰且性能良好。但是,现有的基于伪标记训练行人重识别模型的方法,仍存在模型泛化能力差,模型精度低,训练效果差的问题。
发明内容
有鉴于此,本申请实施例提供了一种基于半监督知识蒸馏的行人重识别模型训练方法及装置,以解决现有技术存在的模型泛化能力差,模型精度低,训练效果差的问题。
本申请实施例的第一方面,提供了一种基于半监督知识蒸馏的行人重识别模型训练方法,包括:获取预设场景下的有标签数据和无标签数据,利用有标签数据分别对教师模型和学生模型进行预训练,得到训练后的教师模型和学生模型;将有标签数据输入到训练后的教师模型和学生模型中,分别利用教师模型的预测值以及真实标签去监督学生模型的预测值,得到第一损失函数和第二损失函数;将无标签数据输入到训练后的教师模型和学生模型中,利用教师模型的预测值去监督学生模型中的无标签数据分类器输出的预测值,得到第三损失函数;将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,并利用对齐后的学生特征提取网络的特征图与教师特征提取网络的特征图计算得到第四损失函数;依据第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数;利用总损失函数对行人重识别模型的原损失函数进行更新,并利用训练集对更新损失函数后的行人重识别模型进行训练。
本申请实施例的第二方面,提供了一种基于半监督知识蒸馏的行人重识别模型训练装置,包括:预训练模块,被配置为获取预设场景下的有标签数据和无标签数据,利用有标签数据分别对教师模型和学生模型进行预训练,得到训练后的教师模型和学生模型;第一监督模块,被配置为将有标签数据输入到训练后的教师模型和学生模型中,分别利用教师模型的预测值以及真实标签去监督学生模型的预测值,得到第一损失函数和第二损失函数;第二监督模块,被配置为将无标签数据输入到训练后的教师模型和学生模型中,利用教师模型的预测值去监督学生模型中的无标签数据分类器输出的预测值,得到第三损失函数;第三监督模块,被配置为将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,并利用对齐后的学生特征提取网络的特征图与教师特征提取网络的特征图计算得到第四损失函数;计算模块,被配置为依据第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数;训练模块,被配置为利用总损失函数对行人重识别模型的原损失函数进行更新,并利用训练集对更新损失函数后的行人重识别模型进行训练。
本申请实施例的第三方面,提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述方法的步骤。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过获取预设场景下的有标签数据和无标签数据,利用有标签数据分别对教师模型和学生模型进行预训练,得到训练后的教师模型和学生模型;将有标签数据输入到训练后的教师模型和学生模型中,分别利用教师模型的预测值以及真实标签去监督学生模型的预测值,得到第一损失函数和第二损失函数;将无标签数据输入到训练后的教师模型和学生模型中,利用教师模型的预测值去监督学生模型中的无标签数据分类器输出的预测值,得到第三损失函数;将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,并利用对齐后的学生特征提取网络的特征图与教师特征提取网络的特征图计算得到第四损失函数;依据第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数;利用总损失函数对行人重识别模型的原损失函数进行更新,并利用训练集对更新损失函数后的行人重识别模型进行训练。本申请提高了行人重识别模型对未知域的泛化能力,提高行人重识别模型的精度,提高模型的蒸馏效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本申请实施例提供的基于半监督知识蒸馏的损失函数生成示意图;
图2是本申请实施例提供的基于半监督知识蒸馏的行人重识别模型训练方法的流程示意图;
图3是本申请实施例提供的基于半监督知识蒸馏的行人重识别模型训练装置的结构示意图;
图4是本申请实施例提供的电子设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
如背景技术所述,目前行人重识别领域,在特定训练场景下已经取得非常高的性能,但由于不同场景之间的数据分布差异,导致模型在新的测试场景下性能明显下降。目前常用的无监督行人重识方法多数是基于伪标签的方法,主要思想是为无标记的数据产生高质量的伪标记来训练和更新神经网络,该方法思路简单清晰且性能良好。但是,现有的基于伪标记训练行人重识别模型的方法,仍存在模型泛化能力差,模型精度低,训练效果差的问题。因此,如何有效地利用新场景中的无标注数据,训练适用于新场景的行人重识别模型,是目前行人重识别领域亟需解决的问题之一。
有鉴于此,本申请实施例为解决上述问题,提供了一种基于半监督知识蒸馏的行人重识别模型训练方法,通过利用有标签数据和无标签数据训练泛化性能更好的ReID模型(行人重识别模型),为进一步提高模型的泛化能力,本申请采用基于蒸馏的方法生成伪标签,并对蒸馏方法做了优化,从而进一步提高模型精度。下面结合附图以及具体实施例对本申请技术方案的内容进行详细描述。
图1是本申请实施例提供的基于半监督知识蒸馏的损失函数生成示意图,如图1所示,该基于半监督知识蒸馏的损失函数生成过程具体可以包括:
首先,在有标签数据上训练教师模型和学生模型,教师模型对应图1中的右侧虚线框,学生模型对应图1中的左侧虚线框,将有标签数据和无标签数据分别输入到左侧的学生模型和右侧的教师模型中去,分别利用学生模型中的特征提取网络和教师模型中的特征提取网络进行特征提取,得到特征图fs和ft。在这里,学生模型使用Resnet18作为Backbone(特征提取网络),教师模型使用Resnet101作为Backbone(特征提取网络)。
进一步地,在logits蒸馏阶段(预测值蒸馏),对于有标签数据,学生模型在教师模型预测的软标签和Ground truth硬标签上同时进行学习优化。即输出蒸馏是利用教师模型输出的logits_t(预测值)作为Ground truth(真实标签)去监督学生模型输出的logits_s(预测值),计算得到损失函数Loss1,损失函数Loss1采用JS散度损失函数。同时,Groundtruth硬标签也要监督学生模型输出的logits_s,得到损失函数Loss2,这里采用交叉熵损失函数。
对于无标签数据,在学生网络中生成一个与有标签数据分类器维度一致的分类器classfier_s',再利用教师网络的预测logit_t’去监督该分类器输出的预测logits_s’,得到损失函数Loss3,损失函数Loss3采用JS散度损失函数。
进一步地,在features蒸馏阶段(特征蒸馏),由于Teacher模型和Student模型结构的差异,导致在feature层进行蒸馏时,Student模型和Teacher模型对应层的感受野是不同的,如果直接对比feature map中pixel-wise的相似度会有语义不对齐的问题。因此,本申请制定了一个语义对齐模块(SAM),该结构重建了学生特征的相应各个组成部分,并产生了与目标教师特征对齐的学生特征。最后,根据重建后的学生特征fs′和教师特征ft得到损失函数Loss4,损失函数Loss4采用L2函数进行距离度量。
下面基于图1所示的基于半监督知识蒸馏的损失函数生成过程,对本申请基于半监督知识蒸馏的行人重识别模型训练方法的实现过程进行详细描述。
图2是本申请实施例提供的基于半监督知识蒸馏的行人重识别模型训练方法的流程示意图。图2的基于半监督知识蒸馏的行人重识别模型训练方法可以由服务器执行。如图2所示,该基于半监督知识蒸馏的行人重识别模型训练方法具体可以包括:
S201,获取预设场景下的有标签数据和无标签数据,利用有标签数据分别对教师模型和学生模型进行预训练,得到训练后的教师模型和学生模型;
S202,将有标签数据输入到训练后的教师模型和学生模型中,分别利用教师模型的预测值以及真实标签去监督学生模型的预测值,得到第一损失函数和第二损失函数;
S203,将无标签数据输入到训练后的教师模型和学生模型中,利用教师模型的预测值去监督学生模型中的无标签数据分类器输出的预测值,得到第三损失函数;
S204,将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,并利用对齐后的学生特征提取网络的特征图与教师特征提取网络的特征图计算得到第四损失函数;
S205,依据第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数;
S206,利用总损失函数对行人重识别模型的原损失函数进行更新,并利用训练集对更新损失函数后的行人重识别模型进行训练。
具体地,本申请实施例在使用有标签数据和无标签数据采用半监督蒸馏方法加入软标注数据,训练学生模型。此时冻住教师模型的参数,仅通过教师模型预测来教学生模型训练与优化。这个过程中学生模型的参数是进行反向传播的。
在一些实施例中,在得到训练后的教师模型和学生模型之后,该方法还包括:将有标签数据和无标签数据分别输入到训练后的教师模型和学生模型中,利用训练后的教师模型中的教师特征提取网络提取特征图,并利用训练后的学生模型中的学生特征提取网络提取特征图。
具体地,教师模型中包含用于提取特征图的特征提取网络,同样学生模型中也包含用于提取特征图的特征提取网络,在将有标签数据和无标签数据分别输入到训练后的教师模型和学生模型之后,利用教师模型中的特征提取网络提取特征图ft,并利用学生模型中的特征提取网络提取特征图fs,在实际应用中,学生模型中的特征提取网络可以使用Resnet18,即将作为Resnet18作为学生模型的Backbone,教师模型中的特征提取网络可以使用Resnet101,即将Resnet101作为教师模型的Backbone。
在一些实施例中,利用教师模型的预测值去监督学生模型的预测值,得到第一损失函数,包括:将教师模型输出的预测值作为标签,利用标签与学生模型输出的预测值计算第一损失函数,其中,第一损失函数采用JS散度损失函数。
具体地,在logits蒸馏中,对于有标签数据,输出蒸馏利用教师模型对有标签数据的logits_t(预测值)作为Ground truth,去监督学生模型对有标签数据输出的logits_s(预测值)来计算得到第一损失函数Loss1,在实际应用中,第一损失函数Loss1可以采用JS散度损失函数。
进一步地,在本申请实施例中,教师模型和学生模型的分类层输出均设为logits,经过softmax函数(归一化)可得到:
其中,k为当前样本类别,K为总类别数,τ为温度系数(这里设置为16)。
在一个具体示例中,有标签数据的JS散度损失Loss1公式如下:
其中,logits_t表示教师模型对有标签数据的预测值,logits_s表示学生模型对有标签数据的预测值。
在一些实施例中,利用有标签数据对应的真实标签去监督学生模型的预测值,得到第二损失函数,包括:将有标签数据的真实标签与学生模型输出的预测值计算第二损失函数,其中,第二损失函数采用交叉熵损失函数。
具体地,除了基于教师模型输出的预测值与学生模型输出的预测值计算第一损失函数外,本申请实施例中有标签数据的真实标签Ground truth也要监督学生模型输出的预测值logits_s,从而构建第二损失函数Loss2,在实际应用中,第二损失函数Loss2采用交叉熵损失函数。
进一步地,这里的真实标签是指有标签数据对应的标签,学生模型输出的预测值为学生模型对有标签数据进行预测得到的值,第二损失函数Loss2的公式如下:
其中,yi为样本i的类别,logits_s表示学生模型对有标签数据的预测值。
在一些实施例中,利用教师模型的预测值去监督学生模型中的无标签数据分类器输出的预测值,得到第三损失函数,包括:在学生模型中生成一个与有标签数据分类器具有相同维度的无标签数据分类器,将教师模型输出的预测值作为标签,利用标签与无标签数据分类器输出的预测值计算第三损失函数,其中,第三损失函数采用JS散度损失函数。
具体地,对于无标签数据而言,首先在学生模型中生成一个与有标签数据分类器维度一致的无标签数据分类器classfier_s',再利用教师模型对无标签数据的预测值logit_t’去监督学生模型的输出,即监督无标签数据分类器输出的预测值logits_s’,从而得到第三损失函数Loss3,在实际应用中,第三损失函数Loss3可以使用JS散度损失函数。
进一步地,无标签数据的JS散度损失Loss3公式如下:
其中,logits_t′表示教师模型对无标签数据的预测值,logits_s′表示学生模型对无标签数据的预测值。
在一些实施例中,将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,包括:利用预定的语义对齐模块计算学生特征提取网络的特征图与教师特征提取网络的特征图之间的相似度权重,基于相似度权重对学生特征提取网络的特征图进行重建,以使重建后的学生特征提取网络的特征图与教师特征提取网络的特征图对齐。
具体地,由于学生模型属于轻量模型,卷积层比较少,教师模型的卷积层较多,因此教师模型的感受野更大,所以导致教师模型的特征提取网络提取出来的特征图与学生模型的特征提取网络提取出来的特征图之间的感受野是不一样的,即两者之间的语义信息是不一样的。如果直接蒸馏的话,由于语义信息不对齐,会导致蒸馏效果较差,因此,本申请实施例利用语义对齐模型将两个特征图的语义进行对齐,然后再进行蒸馏算法。
进一步地,由于Teacher模型和Student模型结构的差异,导致在feature层进行蒸馏时,Student和Teacher对应层的感受野是不同的,如果直接对比feature map中pixel-wise的相似度会有语义不对齐的问题。因此,本申请实施例制定了一个语义对齐模块(SAM),利用该模块重建学生特征的各个相应组成部分,并产生了与目标教师特征对齐的学生特征。语义对齐模块采用以下公式来重建学生特征提取网络的特征图:
f′s=sigmoid(Fq(fs)·Fk(ft)T)·Fv(fs)
其中,Fq、Fk、Fv是由Conv2D+BN层组成的线性函数。
需要说明的是,在利用上述公式计算重建之后的学生模型的特征图时,首先将学生模型的特征图与教师模型的特征图之间计算相似度权重,得到相似度权重系数,将相似度权重系数与学生模型提取的特征图相乘,从而得到重建后的学生模型特征图fs′。
在一些实施例中,利用对齐后的学生特征提取网络的特征图与教师特征提取网络的特征图计算得到第四损失函数,包括:利用重建后的学生特征提取网络的特征图以及教师特征提取网络的特征图,构建第四损失函数。
具体地,在features蒸馏时(即特征蒸馏),得到重建后的学生模型特征图fs′之后,根据重建后的学生模型特征图fs′和教师模型的特征图ft计算得到第四损失函数Loss4,在实际应用中,第四损失函数Loss4采用L2函数进行距离度量。特征损失函数Loss4的公式如下:
Loss4=||fs′-ft||2
其中,fs′表示重建后的学生特征提取网络的特征图,ft表示教师特征提取网络的特征图。
在一些实施例中,依据第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数,包括采用以下公式计算总损失函数:
Lsum=Loss1+Loss2+Loss3+α*Loss4
其中,Lsum表示总损失函数,Loss1表示第一损失函数,Loss2表示第二损失函数,Loss3表示第三损失函数,Loss4表示第四损失函数,α表示超参数。
具体地,在分别计算得到第一损失函数Loss1、第二损失函数Loss2、第三损失函数Loss3和第四损失函数Loss4之后,将这四个损失函数相加,得到最终的总损失函数Lsum。
进一步地,在计算得到总损失函数Lsum之后,利用总损失函数对行人重识别模型的原损失函数进行更新,例如利用总损失函数替换掉行人重识别模型中原来的损失函数(即原损失函数),实现对行人重识别模型的损失函数的更新,并利用训练集对更新损失函数后的行人重识别模型进行训练。
根据本申请实施例提供的技术方案,本申请通过利用有标签数据和无标签数据训练泛化性能更好的ReID模型(行人重识别模型),为进一步提高模型的泛化能力,本申请采用基于蒸馏的方法生成伪标签,并对蒸馏方法做了优化,从而进一步提高模型精度。本申请设计了一种新的基于半监督蒸馏的ReID训练框架,该框架可以通过结合有标签数据和无标签数据共同训练,提高识别模型对未知域的泛化能力;另外,针对特征蒸馏,本申请制定了一个语义对齐模块,提高蒸馏效果。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图3是本申请实施例提供的基于半监督知识蒸馏的行人重识别模型训练装置的结构示意图。如图3所示,该基于半监督知识蒸馏的行人重识别模型训练装置包括:
预训练模块301,被配置为获取预设场景下的有标签数据和无标签数据,利用有标签数据分别对教师模型和学生模型进行预训练,得到训练后的教师模型和学生模型;
第一监督模块302,被配置为将有标签数据输入到训练后的教师模型和学生模型中,分别利用教师模型的预测值以及真实标签去监督学生模型的预测值,得到第一损失函数和第二损失函数;
第二监督模块303,被配置为将无标签数据输入到训练后的教师模型和学生模型中,利用教师模型的预测值去监督学生模型中的无标签数据分类器输出的预测值,得到第三损失函数;
第三监督模块304,被配置为将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,并利用对齐后的学生特征提取网络的特征图与教师特征提取网络的特征图计算得到第四损失函数;
计算模块305,被配置为依据第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数;
训练模块306,被配置为利用总损失函数对行人重识别模型的原损失函数进行更新,并利用训练集对更新损失函数后的行人重识别模型进行训练。
在一些实施例中,图3的预训练模块301在得到训练后的教师模型和学生模型之后,将有标签数据和无标签数据分别输入到训练后的教师模型和学生模型中,利用训练后的教师模型中的教师特征提取网络提取特征图,并利用训练后的学生模型中的学生特征提取网络提取特征图。
在一些实施例中,图3的第一监督模块302利用教师模型的预测值去监督学生模型的预测值,得到第一损失函数,包括:将教师模型输出的预测值作为标签,利用标签与学生模型输出的预测值计算第一损失函数,其中,第一损失函数采用JS散度损失函数。
在一些实施例中,图3的第一监督模块302利用有标签数据对应的真实标签去监督学生模型的预测值,得到第二损失函数,包括:将有标签数据的真实标签与学生模型输出的预测值计算第二损失函数,其中,第二损失函数采用交叉熵损失函数。
在一些实施例中,图3的第二监督模块303在学生模型中生成一个与有标签数据分类器具有相同维度的无标签数据分类器,将教师模型输出的预测值作为标签,利用标签与无标签数据分类器输出的预测值计算第三损失函数,其中,第三损失函数采用JS散度损失函数。
在一些实施例中,图3的第三监督模块304利用预定的语义对齐模块计算学生特征提取网络的特征图与教师特征提取网络的特征图之间的相似度权重,基于相似度权重对学生特征提取网络的特征图进行重建,以使重建后的学生特征提取网络的特征图与教师特征提取网络的特征图对齐。
在一些实施例中,图3的第三监督模块304利用重建后的学生特征提取网络的特征图以及教师特征提取网络的特征图,构建第四损失函数。
在一些实施例中,图3的计算模块305采用以下公式计算总损失函数:
Lsum=Loss1+Loss2+Loss3+α*Loss4
其中,Lsum表示总损失函数,Loss1表示第一损失函数,Loss2表示第二损失函数,Loss3表示第三损失函数,Loss4表示第四损失函数,α表示超参数。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图4是本申请实施例提供的电子设备4的结构示意图。如图4所示,该实施例的电子设备4包括:处理器401、存储器402以及存储在该存储器402中并且可以在处理器401上运行的计算机程序403。处理器401执行计算机程序403时实现上述各个方法实施例中的步骤。或者,处理器401执行计算机程序403时实现上述各装置实施例中各模块/单元的功能。
示例性地,计算机程序403可以被分割成一个或多个模块/单元,一个或多个模块/单元被存储在存储器402中,并由处理器401执行,以完成本申请。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序403在电子设备4中的执行过程。
电子设备4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等电子设备。电子设备4可以包括但不仅限于处理器401和存储器402。本领域技术人员可以理解,图4仅仅是电子设备4的示例,并不构成对电子设备4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如,电子设备还可以包括输入输出设备、网络接入设备、总线等。
处理器401可以是中央处理单元(Central Processing Unit,CPU),也可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器402可以是电子设备4的内部存储单元,例如,电子设备4的硬盘或内存。存储器402也可以是电子设备4的外部存储设备,例如,电子设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器402还可以既包括电子设备4的内部存储单元也包括外部存储设备。存储器402用于存储计算机程序以及电子设备所需的其它程序和数据。存储器402还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可以存储在计算机可读存储介质中,该计算机程序在被处理器执行时,可以实现上述各个方法实施例的步骤。计算机程序可以包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如,在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种基于半监督知识蒸馏的行人重识别模型训练方法,其特征在于,包括:
获取预设场景下的有标签数据和无标签数据,利用所述有标签数据分别对教师模型和学生模型进行预训练,得到训练后的教师模型和学生模型;
将所述有标签数据输入到训练后的所述教师模型和所述学生模型中,分别利用所述教师模型的预测值以及真实标签去监督所述学生模型的预测值,得到第一损失函数和第二损失函数;
将所述无标签数据输入到训练后的所述教师模型和所述学生模型中,利用所述教师模型的预测值去监督所述学生模型中的无标签数据分类器输出的预测值,得到第三损失函数;
将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,并利用对齐后的学生特征提取网络的特征图与所述教师特征提取网络的特征图计算得到第四损失函数;
依据所述第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数;
利用所述总损失函数对行人重识别模型的原损失函数进行更新,并利用训练集对更新损失函数后的行人重识别模型进行训练。
2.根据权利要求1所述的方法,其特征在于,在所述得到训练后的教师模型和学生模型之后,所述方法还包括:
将所述有标签数据和所述无标签数据分别输入到训练后的教师模型和学生模型中,利用训练后的教师模型中的教师特征提取网络提取特征图,并利用训练后的学生模型中的学生特征提取网络提取特征图。
3.根据权利要求1所述的方法,其特征在于,利用所述教师模型的预测值去监督所述学生模型的预测值,得到第一损失函数,包括:
将所述教师模型输出的预测值作为标签,利用所述标签与所述学生模型输出的预测值计算第一损失函数,其中,所述第一损失函数采用JS散度损失函数。
4.根据权利要求1所述的方法,其特征在于,利用所述有标签数据对应的真实标签去监督所述学生模型的预测值,得到第二损失函数,包括:
将所述有标签数据的真实标签与所述学生模型输出的预测值计算第二损失函数,其中,所述第二损失函数采用交叉熵损失函数。
5.根据权利要求1所述的方法,其特征在于,所述利用所述教师模型的预测值去监督所述学生模型中的无标签数据分类器输出的预测值,得到第三损失函数,包括:
在所述学生模型中生成一个与有标签数据分类器具有相同维度的无标签数据分类器,将所述教师模型输出的预测值作为标签,利用所述标签与所述无标签数据分类器输出的预测值计算第三损失函数,其中,所述第三损失函数采用JS散度损失函数。
6.根据权利要求1所述的方法,其特征在于,所述将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,包括:
利用预定的语义对齐模块计算所述学生特征提取网络的特征图与所述教师特征提取网络的特征图之间的相似度权重,基于所述相似度权重对所述学生特征提取网络的特征图进行重建,以使重建后的学生特征提取网络的特征图与所述教师特征提取网络的特征图对齐。
7.根据权利要求6所述的方法,其特征在于,所述利用对齐后的学生特征提取网络的特征图与所述教师特征提取网络的特征图计算得到第四损失函数,包括:
利用所述重建后的学生特征提取网络的特征图以及所述教师特征提取网络的特征图,构建所述第四损失函数。
8.根据权利要求1所述的方法,其特征在于,所述依据所述第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数,包括采用以下公式计算总损失函数:
Lsum=Loss1+Loss2+Loss3+α*Loss4
其中,Lsum表示总损失函数,Loss1表示第一损失函数,Loss2表示第二损失函数,Loss3表示第三损失函数,Loss4表示第四损失函数,α表示超参数。
9.一种基于半监督知识蒸馏的行人重识别模型训练装置,其特征在于,包括:
预训练模块,被配置为获取预设场景下的有标签数据和无标签数据,利用所述有标签数据分别对教师模型和学生模型进行预训练,得到训练后的教师模型和学生模型;
第一监督模块,被配置为将所述有标签数据输入到训练后的所述教师模型和所述学生模型中,分别利用所述教师模型的预测值以及真实标签去监督所述学生模型的预测值,得到第一损失函数和第二损失函数;
第二监督模块,被配置为将所述无标签数据输入到训练后的所述教师模型和所述学生模型中,利用所述教师模型的预测值去监督所述学生模型中的无标签数据分类器输出的预测值,得到第三损失函数;
第三监督模块,被配置为将学生特征提取网络的特征图与教师特征提取网络的特征图进行对齐,并利用对齐后的学生特征提取网络的特征图与所述教师特征提取网络的特征图计算得到第四损失函数;
计算模块,被配置为依据所述第一损失函数、第二损失函数、第三损失函数以及第四损失函数,计算得到总损失函数;
训练模块,被配置为利用所述总损失函数对行人重识别模型的原损失函数进行更新,并利用训练集对更新损失函数后的行人重识别模型进行训练。
10.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211302270.9A CN115546840A (zh) | 2022-10-24 | 2022-10-24 | 基于半监督知识蒸馏的行人重识别模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211302270.9A CN115546840A (zh) | 2022-10-24 | 2022-10-24 | 基于半监督知识蒸馏的行人重识别模型训练方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115546840A true CN115546840A (zh) | 2022-12-30 |
Family
ID=84717773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211302270.9A Pending CN115546840A (zh) | 2022-10-24 | 2022-10-24 | 基于半监督知识蒸馏的行人重识别模型训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115546840A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117474037A (zh) * | 2023-12-25 | 2024-01-30 | 深圳须弥云图空间科技有限公司 | 基于空间距离对齐的知识蒸馏方法及装置 |
CN117612214A (zh) * | 2024-01-23 | 2024-02-27 | 南京航空航天大学 | 一种基于知识蒸馏的行人搜索模型压缩方法 |
CN117993468A (zh) * | 2024-04-03 | 2024-05-07 | 杭州海康威视数字技术股份有限公司 | 一种模型训练方法、装置、存储介质和电子设备 |
-
2022
- 2022-10-24 CN CN202211302270.9A patent/CN115546840A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117474037A (zh) * | 2023-12-25 | 2024-01-30 | 深圳须弥云图空间科技有限公司 | 基于空间距离对齐的知识蒸馏方法及装置 |
CN117474037B (zh) * | 2023-12-25 | 2024-05-10 | 深圳须弥云图空间科技有限公司 | 基于空间距离对齐的知识蒸馏方法及装置 |
CN117612214A (zh) * | 2024-01-23 | 2024-02-27 | 南京航空航天大学 | 一种基于知识蒸馏的行人搜索模型压缩方法 |
CN117612214B (zh) * | 2024-01-23 | 2024-04-12 | 南京航空航天大学 | 一种基于知识蒸馏的行人搜索模型压缩方法 |
CN117993468A (zh) * | 2024-04-03 | 2024-05-07 | 杭州海康威视数字技术股份有限公司 | 一种模型训练方法、装置、存储介质和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Intra-class feature variation distillation for semantic segmentation | |
Li et al. | Segmenting objects in day and night: Edge-conditioned CNN for thermal image semantic segmentation | |
Li et al. | Challenge-aware RGBT tracking | |
Liu et al. | Structured knowledge distillation for dense prediction | |
Chen et al. | Importance-aware semantic segmentation for autonomous vehicles | |
CN115546840A (zh) | 基于半监督知识蒸馏的行人重识别模型训练方法及装置 | |
CN110910391B (zh) | 一种双模块神经网络结构视频对象分割方法 | |
Feng et al. | Double similarity distillation for semantic image segmentation | |
Fu et al. | Contextual deconvolution network for semantic segmentation | |
Wang et al. | Woodland labeling in chenzhou, China, via deep learning approach | |
Jiang et al. | Cascaded subpatch networks for effective CNNs | |
Turay et al. | Toward performing image classification and object detection with convolutional neural networks in autonomous driving systems: A survey | |
Shen et al. | Remote sensing image caption generation via transformer and reinforcement learning | |
Zhang et al. | Lightweight and efficient asymmetric network design for real-time semantic segmentation | |
Wang et al. | Learning efficient binarized object detectors with information compression | |
Guo et al. | Network pruning for remote sensing images classification based on interpretable CNNs | |
Yang et al. | Local label descriptor for example based semantic image labeling | |
Hu et al. | Cross-task transfer for geotagged audiovisual aerial scene recognition | |
Chen et al. | An attention based YOLOv5 network for small traffic sign recognition | |
Song et al. | Nighttime road scene parsing by unsupervised domain adaptation | |
Dang et al. | Improved YOLOv5 for real-time traffic signs recognition in bad weather conditions | |
CN116912585A (zh) | 基于自监督学习和知识蒸馏的sar目标识别方法 | |
Gao et al. | An object point set inductive tracker for multi-object tracking and segmentation | |
Ke et al. | Dense small face detection based on regional cascade multi‐scale method | |
Fadavi Amiri et al. | Improving image segmentation using artificial neural networks and evolutionary algorithms |
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 |