CN113297906B - 一种基于知识蒸馏的行人重识别模型压缩方法及评价方法 - Google Patents

一种基于知识蒸馏的行人重识别模型压缩方法及评价方法 Download PDF

Info

Publication number
CN113297906B
CN113297906B CN202110423900.7A CN202110423900A CN113297906B CN 113297906 B CN113297906 B CN 113297906B CN 202110423900 A CN202110423900 A CN 202110423900A CN 113297906 B CN113297906 B CN 113297906B
Authority
CN
China
Prior art keywords
pedestrian
model
order
output
loss
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
CN202110423900.7A
Other languages
English (en)
Other versions
CN113297906A (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.)
Zhejiang Gongshang University
Zhejiang Lab
Original Assignee
Zhejiang Gongshang University
Zhejiang Lab
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 Zhejiang Gongshang University, Zhejiang Lab filed Critical Zhejiang Gongshang University
Priority to CN202110423900.7A priority Critical patent/CN113297906B/zh
Publication of CN113297906A publication Critical patent/CN113297906A/zh
Application granted granted Critical
Publication of CN113297906B publication Critical patent/CN113297906B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • 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
    • 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/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • 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/048Activation functions
    • 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/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种基于知识蒸馏的行人重识别模型压缩方法及评价方法,压缩方法包括如下步骤:S1:预训练行人重识别教师模型;S2:构建行人重识别学生模型;S3:构建低阶状态蒸馏损失和高阶结构蒸馏损失,将教师模型的知识迁移到学生模型,联合优化行人重识别任务损失和蒸馏损失进行训练;评价方法还包括如下步骤:S4:将底库测试集输入训练好的学生模型,获得底库行人特征;S5:将查询测试集输入训练好的学生模型,获得行人特征,与底库行人特征进行相似度计算,经度量排序找到与之具有相同身份的底库行人图片,计算时间效率和性能准确度。

Description

一种基于知识蒸馏的行人重识别模型压缩方法及评价方法
技术领域
本发明涉及人工智能及计算机视觉技术领域,尤其是涉及一种基于知识蒸馏的行人重识别模型压缩方法。
背景技术
随着城市化进程的加快,公共安全已成为了人们日益关注的焦点和需求。大学校园、主题公园、医院、街道等许多重要的公共卫生区域都广泛覆盖了监控摄像头,为利用计算机视觉技术自动化监控创造了良好的客观条件。
近年来,行人重识别作为视频监控领域的一个重要研究方向,日益受到人们的关注。具体来说,行人重识别是指在跨摄像头、跨场景下利用计算机视觉技术判断图像或视频序列中是否存在特定行人的技术。作为人脸识别技术的重要补充,该技术能够根据行人的穿着、体态、发型等信息认知行人,在实际监控场景下对无法获取清晰拍摄人脸的行人进行跨摄像头连续跟踪,增强数据的时空连续性,有助于节省大量的人力物力,具有重要的研究意义。
然而,在实际应用过程中,行人重识别模型往往十分笨重复杂,尤其在人员密集场景下,单帧行人特征提取的推理速度高达50ms-80ms,不利于实际部署应用,因此,目前亟待提出一种性能好、耗时少的行人重识别方法。
发明内容
针对现有方法的不足,提出了一种基于知识蒸馏的行人重识别模型压缩方法。该方法设计了低阶状态蒸馏和高阶结构蒸馏进行教师模型到学生模型的知识迁移,充分挖掘行人身份不变性特征和其对应图片特征的低阶输出分布和高阶结构关系,使得性能较差的学生模型学习到教师模型强大的判别性、鲁棒性和泛化性,且保留其原本轻量化的特点,在维持检索精确度的同时减少了耗时,更易于实际部署。此外,该方法利用现有深度学习的优势,通过深度残差神经网络提取特征,使得网络更加健壮稳定,容易训练。综上所述,本发明在保证性能的情况下,提升了跨摄像头下行人重识别的效率,具有良好的鲁棒性和普遍的适用性。本发明采用如下的技术方案:
一种基于知识蒸馏的行人重识别模型压缩方法,包括如下步骤:
S1:在行人重识别数据集上训练教师模型T,输出的特征维度为NT,输出的类别维度为行人重识别数据集行人身份数KT
S2:构建行人重识别学生模型S,包括如下步骤:
S2.1:行人重识别学生模型S的骨干架构采用ResNet,并在大规模图像识别数据集上进行预训练;
S2.2:在特征层增加降维层,输出维度Ns,令行人重识别学生模型S的输出特征维度NS=NT
S2.3:令ResNet的分类层输入维度为Ns,输出类别维度KS=KT
S3:构建行人重识别任务损失Ltask和蒸馏损失Lkd进行联合训练,Ltask优化学生模型S本身的表达能力,Lkd包括低阶状态蒸馏损失和高阶结构蒸馏损失,二者将教师模型的知识迁移到学生模型中去,增强学生模型S的鲁棒性。
进一步地,所述步骤S2.1中的骨干架构采用ResNet18。
进一步地,所述步骤S2.1中的大规模图像识别数据集采用ImageNet。
进一步地,所述步骤S2.2中的降维层包括卷积层、归一化层,激活层,降维层后接全局池化层。
进一步地,所述步骤S2.3中的分类层包括全连接层、softmax激活层。
进一步地,所述步骤S3包括如下步骤:
S3.1:构建行人重识别任务损失Ltask,包括分类损失Lce和度量损失Ltriplet,即:
Ltask=λceLcetripletLtriplet
其中,λce和λtriplet是分类损失Lce和度量损失Ltriplet的权重控制参数,用于调节两个损失的占比;
输入的行人训练图像集P={p1,p2,p3......pn},其对应的身份标签Q={q1,q2,q3......qn},n为P的样本数量,对于任意的pi∈P,其对应标签为qi∈Q,经过学生模型S,得到池化层特征输出
Figure GDA0003164654100000021
和分类层类别输出
Figure GDA0003164654100000022
Lce计算方式为:
Figure GDA0003164654100000031
取P中离pi最近的负样本pj,其标签为qj,和离pi最远的正样本pk,其标签为qk,其中,qi=qk≠qj,输入学生模型后,得到池化层特征输出
Figure GDA0003164654100000032
Figure GDA0003164654100000033
记:
Figure GDA0003164654100000034
我们期望sn-sp≥m,m为边界值,则度量损失Ltriplet的计算公式为:
Ltriplet=[sp-sn+m]+
其中,[·]+为hinge函数;
S3.2:构建低阶状态蒸馏损失Llow-order,训练学生模型形成与教师模型相同的输出分布和特征图分布,形成点对点、面对面的低阶知识迁移,具体来说,学生模型模拟的输出分布为教师模型全连接层的分类输出,特征图分布为教师模型的特征提取层的特征图输出;
对于任意的pi∈P,经过教师模型T,得到特征图输出
Figure GDA0003164654100000035
和分类层类别输出
Figure GDA0003164654100000036
经过学生模型S,得到池化层特征输出
Figure GDA0003164654100000037
特征图输出
Figure GDA0003164654100000038
和分类层类别输出
Figure GDA0003164654100000039
根据池化层输出特征,得到低阶状态蒸馏损失为
Figure GDA00031646541000000310
Figure GDA00031646541000000311
二者的K-L散度,计算方式如下:
Figure GDA00031646541000000312
根据特征图输出特征,得到低阶状态蒸馏损失为
Figure GDA00031646541000000313
Figure GDA00031646541000000314
的加权L2距离,计算方式如下:
Figure GDA0003164654100000041
其中,β为特征图拟合度权重控制参数;
Llow-order的计算方式为:
Llow--orer=λce-kdLlow-order-fFLlow-order-F
λce-kd为输出分布知识蒸馏损失的权重控制参数,λF为特征图输出的知识蒸馏损失权重控制参数,λce-kd与行人重识别分类任务的权重控制参数λce之和为1,即λce-kdce=1,来控制任务本身和输出分布知识蒸馏的训练平衡;
S3.3:构建高阶结构蒸馏损失Lhigh-order,训练学生模型形成与教师模型相同的输出结构关系。高阶的输出结构关系包含距离关系和角度关系。
设置二元组(pi,pj)∈P2,对应标签为(qi,qj)∈Q2,经过教师模型T,得到池化层输出特征
Figure GDA0003164654100000042
经过学生模型S,得到池化层输出特征
Figure GDA0003164654100000043
教师模型的距离关系计算方式如下:
Figure GDA0003164654100000044
学生模型的距离信息计算方式如下:
Figure GDA0003164654100000045
距离关系的知识迁移损失Lhigh-orrder-D为ΩT-D和ΩS-D的Smooth-L1损失,计算方式如下:
Figure GDA0003164654100000051
设置三元组(pi,pj,pk)∈P3,对应标签为(qi,qj,qk)∈Q3,经过教师模型T,得到池化层输出特征
Figure GDA0003164654100000052
经过学生模型S,得到池化层输出特征
Figure GDA0003164654100000053
教师模型的角度信息计算方式如下:
Figure GDA0003164654100000054
其中,
Figure GDA0003164654100000055
学生模型的角度信息计算方式如下:
Figure GDA0003164654100000056
其中,
Figure GDA0003164654100000057
角度结构知识迁移损失Lhigh-order-A为ΩT-A和ΩS-A的Smooth-L1损失,计算方式如下:
Figure GDA0003164654100000058
综上所述,高阶结构蒸馏损失为:
Lhigh-order=λhigh-order-DLhigh-order-Dhigh-order-ALhigh-order-A
其中,λhigh-order-D为高阶距离知识蒸馏损失的权重控制参数,Lhigh-order-A为高阶角度知识蒸馏损失的权重控制参数;
S3.4:构建训练学生模型S的损失函数Ltrain,采用随机梯度下降法对损失函数进行优化,Ltrain的计算方式如下:
Ltrain=Ltask+Llow-order+Lhigh-order
一种基于知识蒸馏的行人重识别模型压缩方法的评价方法,还包括如下步骤:
S4:将底库测试集输入训练好的学生模型,获得底库行人特征Fgallery
S5:将查询测试集输入训练好的学生模型,获得行人特征Fquery,与Fgallery进行相似度计算,经度量排序找到与之具有相同身份的底库行人图片,计算时间效率和性能准确度。
进一步地,所述步骤S4具体地包括如下步骤:
S4.1:底库测试集为G={g1,g2,g3......gT},其对应的标签为
Figure GDA0003164654100000061
将图片集输入训练好的学生模型S,获得底库行人池化层特征
Figure GDA0003164654100000062
并计算特征提取耗时TS
S4.2:将图片集输入训练好的教师模型T,获得底库行人池化层特征,并计算耗时TT
进一步地,所述步骤S5具体地包括如下步骤:
S5.1:查询测试集为A={a1,a2,a3......aM},其对应的标签为
Figure GDA0003164654100000063
将查询图片输入训练好的学生模型S,获得查询图片池化层特征Fquery={fa1,fa2,fa3,......,faM}.
S5.2:比较模型耗时,计算方式如下:T=TT-TS
S5.3:计算Fquery和Fgallery之间的欧氏距离,构建相似度矩阵S∈RM*T,按照距离大小进行降序排列,得到查询测试集的底库检索候选列表,并用平均精度均值mAP和首位命中率Rank@1对性能的准确度进行评估。
本发明的优势和有益效果在于:
本发明在跨摄像头下的行人图片检索及识别,构建了轻量化的行人重识别学生模型,减少耗时,充分考虑在实际应用当中,鲁棒但笨重的模型带来的耗时压力;通过迁移鲁棒但繁重的教师模型的知识到学生模型,设计了低阶状态蒸馏和高阶结构蒸馏损失,充分挖掘行人身份不变性特征和其对应图片特征的低阶输出分布和高阶结构关系,使得性能较差的学生模型学习到教师模型强大的判别性、鲁棒性和泛化性;通过联合训练行人重识别任务损失和知识蒸馏损失,使得学生模型在拟合任务分布的同时学习模型的泛化能力,提高模型准确度。
附图说明
图1是本发明中行人重识别教师模型结构图。
图2是本发明中行人重识别知识蒸馏方法示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
如图1、2所示,一种基于知识蒸馏的行人重识别模型压缩方法,包括以下步骤:
S1:预训练行人重识别教师模型T,包括如下步骤:
S1.1:构建如图1所示的行人重识别教师模型T,在行人重识别数据集上训练教师模型T,输出的特征维度为NT,输出的类别维度为行人重识别数据集行人身份数KT
S1.2:在行人重识别数据集上进行训练,联合优化行人重识别分类损失和度量损失,获得鲁棒的识别性能;
S2:构建行人重识别学生模型S,包括如下步骤:
S2.1:行人重识别学生模型S的骨干架构采用ResNet18,并在大规模图像识别数据集ImageNet上进行预训练;
S2.2:如图2所示,在ResNet18基础上增加降维层,输出维度Ns,令行人重识别学生模型S的输出特征维度NS=NT,降维层包括卷积层、归一化层,激活层,降维层后接全局池化层;
S2.3:令ResNet的分类层输入维度为Ns,输出类别维度KS=KT,分类层包括全连接层、softmax激活层;
S3:行人重识别任务损失Ltask和蒸馏损失Lkd进行联合训练,Ltask优化学生模型S本身的表达能力,Lkd包括低阶状态蒸馏损失和高阶结构蒸馏损失,二者将教师模型的知识迁移到学生模型中去,增强学生模型S的鲁棒性,包括如下步骤:
S3.1:构建行人重识别任务损失Ltask,包括分类损失Lce和度量损失Ltriplet,即:
Ltask=λceLcetripletLtriplet
其中,λce和λtriplet是分类损失Lce和度量损失Ltriplet的权重控制参数,用来调节两个损失的占比。
输入的行人训练图像集P={p1,p2,p3......pn},其对应的身份标签Q={q1,q2,q3......qn},n为P的样本数量,对于任意的pi∈P,其对应标签为qi∈Q,经过学生模型S,得到池化层特征输出
Figure GDA0003164654100000081
和分类层类别输出
Figure GDA0003164654100000082
Lce计算方式为:
Figure GDA0003164654100000083
取P中离pi最近的负样本pj,其标签为qj,和离pi最远的正样本pk,其标签为qk,其中,qi=qk≠qj,输入学生模型后,得到池化层特征输出
Figure GDA0003164654100000084
Figure GDA0003164654100000085
记:
Figure GDA0003164654100000086
我们期望sn-sp≥m,m为边界值,则度量损失Ltriplet的计算公式为:
Ltriplet=[sp-sn+m]+
其中,[·]+为hinge函数;
S3.2:构建低阶状态蒸馏损失Llow-order,训练学生模型形成与教师模型相同的输出分布和特征图分布,形成点对点、面对面的低阶知识迁移。具体来说,学生模型模拟的输出分布为教师模型全连接层的分类输出,特征图分布为教师模型的特征提取层的特征图输出;
对于任意的pi∈P,经过教师模型T,得到特征图输出
Figure GDA0003164654100000091
和分类层类别输出
Figure GDA0003164654100000092
经过学生模型S,得到池化层特征输出
Figure GDA0003164654100000093
特征图输出
Figure GDA0003164654100000094
和分类层类别输出
Figure GDA0003164654100000095
根据池化层输出特征,得到低阶状态蒸馏损失为:
Figure GDA0003164654100000096
根据特征图输出特征,得到低阶状态蒸馏损失为为
Figure GDA0003164654100000097
Figure GDA0003164654100000098
的加权L2距离,计算方式如下:
Figure GDA0003164654100000099
其中,β为特征图拟合度权重控制参数;
Llow-order的计算方式为:
Llow-order=λce-kdLlow-order-fFLlow-order-F
λce-kd为输出分布知识蒸馏损失的权重控制参数,λF为特征图输出的知识蒸馏损失权重控制参数,λce-kd与行人重识别分类任务的权重控制参数λce之和为1,即λce-kdce=1,来控制任务本身和输出分布知识蒸馏的训练平衡;
S3.3:构建高阶结构蒸馏损失Lhigh-order,训练学生模型形成与教师模型相同的输出结构关系。高阶的输出结构关系包含距离关系和角度关系。
设置二元组(pi,pj)∈P2,对应标签为(qi,qj)∈Q2,经过教师模型T,得到池化层输出特征
Figure GDA00031646541000000910
经过学生模型S,得到池化层输出特征
Figure GDA00031646541000000911
教师模型的距离关系计算方式如下:
Figure GDA0003164654100000101
学生模型的距离信息计算方式如下:
Figure GDA0003164654100000102
距离关系的知识迁移损失Lhigh-order-D为ΩT-D和ΩS-D的Smooth-L1损失,计算方式如下:
Figure GDA0003164654100000103
设置三元组(pi,pj,pk)∈P3,对应标签为(qi,qj,qk)∈Q3,经过教师模型T,得到池化层输出特征
Figure GDA0003164654100000104
经过学生模型S,得到池化层输出特征
Figure GDA0003164654100000105
教师模型的角度信息计算方式如下:
Figure GDA0003164654100000106
其中,
Figure GDA0003164654100000107
学生模型的角度信息计算方式如下:
Figure GDA0003164654100000108
其中,
Figure GDA0003164654100000109
角度结构知识迁移损失Lhigh-order-A为ΩT-A和ΩS-A的Smooth-L1损失,计算方式如下:
Figure GDA0003164654100000111
综上所述,高阶结构蒸馏损失为:
Lhigh-order=λhigh-order-DLhigh-order-Dhigh-order-ALhigh-order-A
其中,λhigh-order-D为高阶距离知识蒸馏损失的权重控制参数,Lhigh-order-A为高阶角度知识蒸馏损失的权重控制参数。令λhigh-order-D=λhigh-order-A,且λhigh-order-D+5λtriplet=5;
S3.4:构建训练学生模型S的损失函数Ltrain,采用随机梯度下降法对损失函数进行优化,Ltrain的计算方式如下:
Ltrain=Ltask+Llow-order+Lhigh-order
S4:将底库测试集输入训练好的学生模型,获得底库行人特征Fgallery,包括如下步骤:
S4.1:底库测试集为G={g1,g2,g3......gT},其对应的标签为
Figure GDA0003164654100000112
G为RGB图片,大小被调整为256×128×3,将图片集G输入训练好的学生模型S,获得底库行人池化层特征Fgallery={fg1,fg2,fg3,......,fgT},并计算特征提取耗时TS
S4.2:将图片集输入训练好的教师模型T,获得底库行人池化层特征,并计算耗时TT
S5:将查询测试集输入训练好的学生模型,获得行人特征Fquery,与Fgallery进行相似度计算,经度量排序找到与之具有相同身份的底库行人图片,计算时间效率和性能准确度,包括如下步骤:
S5.1:令查询测试集为A={a1,a2,a3......aM},其对应的标签为
Figure GDA0003164654100000113
将查询图片输入训练好的学生模型S,获得查询图片池化层特征Fquery={fa1,fa2,fa3,......,faM};
S5.2:比较模型耗时,计算方式如下:T=TT-TS
S5.3:计算Fquery和Fgallery之间的欧氏距离,构建相似度矩阵S∈RM*T,针对每个查询图片将底库图片按照相似度进行降序排列,设置查询个数s,取相似度最高的前s个待选图片作为该查询图片的检索候选列表,并用平均精度均值mAP和首位命中率Rank@1对性能的准确度进行评估。
表1是基于本发明上述实施例所提供的方法得到的教师模型与学生模型的识别准确度对比,其中,首位命中率Rank@1由91.9%提升至93.3%,接近教师模型性能,可以看出,本发明上述学生模型实施例性能有较高的提升。
表1:本实施例识别准确率结果
方法 Rank@1 mAP
知识蒸馏前的学生模型S’ 91.9% 79.6%
学生模型S 93.3% 83.9%
教师模型T 94.0% 86.2%
表2是基于本发明上述实施例所提供的方法得到的教师模型与学生模型,对每张行人图像所用耗时和模型计算力FLOPs进行对比,可以看出,本发明上述学生模型实施例在耗时上具有很大的优势。
表2:本实施例的教师模型与学生模型耗时及计算力对比
方法 时间(ms) 模型所需计算力FLOPs(次)
学生模型S 5 2.00*10<sup>9</sup>
教师模型T 14 5.47*10<sup>9</sup>
表3是基于本发明上述实施例所提供的方法得到的学生模型识别准确度。从上至下依次陈列了用以对照的其他基准方法同本实施例实施的结果比较,可以看出,本发明上述学生模型实施例有较高的性能。
表3:其他基准方法与本实施例识别准确率结果
Figure GDA0003164654100000121
Figure GDA0003164654100000131
综上所述,本发明实施例公开了一种基于知识蒸馏的行人重识别模型压缩方法,该方法构建了轻量化的行人重识别学生模型,减少耗时,充分考虑在实际应用当中,鲁棒但笨重的模型带来的耗时压力。本发明提出了一种基于知识蒸馏的行人重识别模型压缩方法,旨在迁移鲁棒但繁重的教师模型的知识到学生模型。该方法设计了低阶状态蒸馏和高阶结构蒸馏损失,充分挖掘行人身份不变性特征和其对应图片特征的低阶输出分布和高阶结构关系,使得性能较差的学生模型学习到教师模型强大的判别性、鲁棒性和泛化性。本发明通过联合训练行人重识别任务损失和知识蒸馏损失,使得学生模型在拟合任务分布的同时学习模型的泛化能力,提高模型准确度。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。

Claims (8)

1.一种基于知识蒸馏的行人重识别模型压缩方法,其特征在于包括如下步骤:
S1:在行人重识别数据集上训练教师模型T,输出的特征维度为NT,输出的类别维度为行人重识别数据集行人身份数KT
S2:构建行人重识别学生模型S,包括如下步骤:
S2.1:行人重识别学生模型S的骨干架构采用ResNet,并在大规模图像识别数据集上进行预训练;
S2.2:在特征层增加降维层,输出维度NS,令行人重识别学生模型S的输出特征维度NS=NT
S2.3:令ResNet的分类层输入维度为NS,输出类别维度KS=KT
S3:构建行人重识别任务损失Ltask和蒸馏损失Lkd进行联合训练,Ltask优化学生模型S本身的表达能力,Lkd包括低阶状态蒸馏损失和高阶结构蒸馏损失,二者将教师模型的知识迁移到学生模型中去,增强学生模型S的鲁棒性,包括如下步骤:
S3.1:构建行人重识别任务损失Ltask,包括分类损失Lce和度量损失Ltriplet,即:
Ltask=λceLcetripletLtriplet
其中,λce和λtriplet是分类损失Lce和度量损失Ltriplet的权重控制参数,用于调节两个损失的占比;
输入的行人训练图像集P={p1,p2,p3......pn},其对应的身份标签Q={q1,q2,q3......qn},n为P的样本数量,对于任意的pi∈P,其对应标签为qi∈Q,经过学生模型S,得到池化层特征输出
Figure FDA0003657056040000011
和分类层类别输出
Figure FDA0003657056040000012
Lce计算方式为:
Figure FDA0003657056040000021
取P中离pi最近的负样本pj,其标签为qj,和离pi最远的正样本pk,其标签为qk,其中,qi=qk≠qj,输入学生模型后,得到池化层特征输出
Figure FDA0003657056040000022
Figure FDA0003657056040000023
记:
Figure FDA0003657056040000024
我们期望sn-sp≥m,m为边界值,则度量损失Ltriplet的计算公式为:
Ltriplet=[sp-sn+m]+
其中,[·]+为hinge函数;
S3.2:构建低阶状态蒸馏损失Llow-order,训练学生模型形成与教师模型相同的输出分布和特征图分布,学生模型模拟的输出分布为教师模型分类层的分类输出,特征图分布为教师模型的特征提取层的特征图输出;
对于任意的pi∈P,经过教师模型T,得到特征图输出
Figure FDA0003657056040000025
和分类层类别输出
Figure FDA0003657056040000026
经过学生模型S,得到池化层特征输出
Figure FDA0003657056040000027
特征图输出
Figure FDA0003657056040000028
和分类层类别输出
Figure FDA0003657056040000029
根据分类层类别特征,得到的低阶状态蒸馏损失为
Figure FDA00036570560400000210
Figure FDA00036570560400000211
二者的K-L散度,计算方式如下:
Figure FDA00036570560400000212
根据特征图输出特征,得到的低阶状态蒸馏损失为
Figure FDA00036570560400000213
Figure FDA00036570560400000214
的加权L2距离,计算方式如下:
Figure FDA0003657056040000031
其中,β为特征图拟合度权重控制参数;
Llow-order的计算方式为:
Llow-order=λce-kdLlow-order-fFLlow-order-F
λce-kd为输出分布知识蒸馏损失的权重控制参数,λF为特征图输出的知识蒸馏损失权重控制参数,λce-kd与行人重识别分类任务的权重控制参数λce之和为1,即λce-kdce=1,来控制任务本身和输出分布知识蒸馏的训练平衡;
S3.3:构建高阶结构蒸馏损失Lhigh-order,训练学生模型形成与教师模型相同的输出结构关系,高阶的输出结构关系包含距离关系和角度关系;
设置二元组(pi,pj)∈P2,对应标签为(qi,qj)∈Q2,经过教师模型T,得到池化层输出特征
Figure FDA0003657056040000032
经过学生模型S,得到池化层输出特征
Figure FDA0003657056040000033
教师模型的距离关系计算方式如下:
Figure FDA0003657056040000034
学生模型的距离信息计算方式如下:
Figure FDA0003657056040000035
距离关系的知识迁移损失Lhigh-order-D为ΩT-D和ΩS-D的Smooth-L1损失,计算方式如下:
Figure FDA0003657056040000041
设置三元组(pi,pj,pk)∈P3,对应标签为(qi,qj,qk)∈Q3,经过教师模型T,得到池化层输出特征
Figure FDA0003657056040000042
经过学生模型S,得到池化层输出特征
Figure FDA0003657056040000043
教师模型的角度信息计算方式如下:
Figure FDA0003657056040000044
其中,
Figure FDA0003657056040000045
学生模型的角度信息计算方式如下:
Figure FDA0003657056040000046
其中,
Figure FDA0003657056040000047
角度结构知识迁移损失Lhigh-order-A为ΩT-A和ΩS-A的Smooth-L1损失,计算方式如下:
Figure FDA0003657056040000048
综上所述,高阶结构蒸馏损失为:
Lhigh-order=λhigh-order-DLhigh-order-Dhigh-order-ALhigh-order-A
其中,λhigh-order-D为高阶距离知识蒸馏损失的权重控制参数,Lhigh-order-A为高阶角度知识蒸馏损失的权重控制参数;
S3.4:构建训练学生模型S的损失函数Ltrain,采用随机梯度下降法对损失函数进行优化,Ltrain的计算方式如下:
Ltrain=Ltask+Llow-order+Lhigh-order
2.如权利要求1所述的一种基于知识蒸馏的行人重识别模型压缩方法,其特征在于所述步骤S2.1中的骨干架构采用ResNet18。
3.如权利要求1所述的一种基于知识蒸馏的行人重识别模型压缩方法,其特征在于所述步骤S2.1中的大规模图像识别数据集采用ImageNet。
4.如权利要求1所述的一种基于知识蒸馏的行人重识别模型压缩方法,其特征在于所述步骤S2.2中的降维层包括卷积层、归一化层,激活层,降维层后接全局池化层。
5.如权利要求1所述的一种基于知识蒸馏的行人重识别模型压缩方法,其特征在于所述步骤S2.3中的分类层包括全连接层、softmax激活层。
6.一种如权利要求1所述的方法的评价方法,其特征在于还包括如下步骤:
S4:将底库测试集输入训练好的学生模型,获得底库行人特征Fgallery
S5:将查询测试集输入训练好的学生模型,获得行人特征Fquery,与Fgallery进行相似度计算,经度量排序找到与之具有相同身份的底库行人图片,计算时间效率和性能准确度。
7.如权利要求6所述的评价方法,其特征在于所述步骤S4具体地包括如下步骤:
S4.1:底库测试集为G={g1,g2,g3......gT},其对应的标签为
Figure FDA0003657056040000051
将图片集输入训练好的学生模型S,获得底库行人池化层特征
Figure FDA0003657056040000052
并计算特征提取耗时TS
S4.2:将图片集输入训练好的教师模型T,获得底库行人池化层特征,并计算耗时TT
8.如权利要求7所述的评价方法,其特征在于所述步骤S5具体地包括如下步骤:
S5.1:查询测试集为A={a1,a2,a3......aM},其对应的标签为
Figure FDA0003657056040000061
将查询图片输入训练好的学生模型S,获得查询图片池化层特征
Figure FDA0003657056040000062
S5.2:比较模型耗时,计算方式如下:T=TT-TS
S5.3:计算Fquery和Fgallery之间的欧氏距离,构建相似度矩阵S∈RM*T,按照距离大小进行降序排列,得到查询测试集的底库检索候选列表,并用平均精度均值mAP和首位命中率Rank@1对性能的准确度进行评估。
CN202110423900.7A 2021-04-20 2021-04-20 一种基于知识蒸馏的行人重识别模型压缩方法及评价方法 Active CN113297906B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110423900.7A CN113297906B (zh) 2021-04-20 2021-04-20 一种基于知识蒸馏的行人重识别模型压缩方法及评价方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110423900.7A CN113297906B (zh) 2021-04-20 2021-04-20 一种基于知识蒸馏的行人重识别模型压缩方法及评价方法

Publications (2)

Publication Number Publication Date
CN113297906A CN113297906A (zh) 2021-08-24
CN113297906B true CN113297906B (zh) 2022-09-09

Family

ID=77319960

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110423900.7A Active CN113297906B (zh) 2021-04-20 2021-04-20 一种基于知识蒸馏的行人重识别模型压缩方法及评价方法

Country Status (1)

Country Link
CN (1) CN113297906B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113920540A (zh) * 2021-11-04 2022-01-11 厦门市美亚柏科信息股份有限公司 基于知识蒸馏的行人重识别方法、装置、设备及存储介质
CN114299442A (zh) * 2021-11-15 2022-04-08 苏州浪潮智能科技有限公司 一种行人重识别方法、系统、电子设备及存储介质
CN114359649B (zh) * 2021-11-22 2024-03-22 腾讯科技(深圳)有限公司 图像处理方法、装置、设备、存储介质及程序产品
CN117612214B (zh) * 2024-01-23 2024-04-12 南京航空航天大学 一种基于知识蒸馏的行人搜索模型压缩方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11556581B2 (en) * 2018-09-04 2023-01-17 Inception Institute of Artificial Intelligence, Ltd. Sketch-based image retrieval techniques using generative domain migration hashing
CN109446898B (zh) * 2018-09-20 2021-10-15 暨南大学 一种基于迁移学习和特征融合的行人重识别方法
CN110414368B (zh) * 2019-07-04 2021-12-17 华中科技大学 一种基于知识蒸馏的无监督行人重识别方法
CN112560631B (zh) * 2020-12-09 2022-06-21 昆明理工大学 一种基于知识蒸馏的行人重识别方法

Also Published As

Publication number Publication date
CN113297906A (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
CN113297906B (zh) 一种基于知识蒸馏的行人重识别模型压缩方法及评价方法
CN108805200B (zh) 基于深度孪生残差网络的光学遥感场景分类方法及装置
CN110110642B (zh) 一种基于多通道注意力特征的行人重识别方法
CN110135295A (zh) 一种基于迁移学习的无监督行人重识别方法
CN108846384A (zh) 融合视频感知的多任务协同识别方法及系统
CN109299657B (zh) 基于语义注意力保留机制的群体行为识别方法及装置
CN109670576B (zh) 一种多尺度视觉关注图像描述方法
CN109299707A (zh) 一种基于模糊深度聚类的无监督行人再识别方法
CN111753189A (zh) 一种少样本跨模态哈希检索共同表征学习方法
CN106203490A (zh) 一种安卓平台下基于属性学习和交互反馈的图像在线识别、检索方法
CN103345656A (zh) 一种基于多任务深度神经网络的数据识别方法及装置
CN109829414B (zh) 一种基于标签不确定性和人体组件模型的行人再识别方法
CN110097029B (zh) 基于Highway网络多视角步态识别的身份认证方法
CN109101629A (zh) 一种基于深度网络结构和节点属性的网络表示方法
CN115457006B (zh) 基于相似一致性自蒸馏的无人机巡检缺陷分类方法及装置
CN105654136A (zh) 一种基于深度学习的大规模遥感影像目标自动识别方法
CN109446897B (zh) 基于图像上下文信息的场景识别方法及装置
Bai et al. Multimodal information fusion for weather systems and clouds identification from satellite images
CN113177612A (zh) 一种基于cnn少样本的农业病虫害图像识别方法
CN114780866B (zh) 一种基于时空上下文兴趣学习模型的个性化智能推荐方法
CN115907122A (zh) 区域电动汽车充电负荷预测方法
CN116310647A (zh) 一种基于增量学习的劳保物品目标检测方法及系统
CN113095251B (zh) 一种人体姿态估计方法及系统
Peng et al. RSBNet: One-shot neural architecture search for a backbone network in remote sensing image recognition
Goswami et al. Automatic object recognition from satellite images using artificial neural network

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